hugogspereira / secure-real-time-streaming-2

Repository for the Network and Computer Systems Security Course of 2022/2023.
0 stars 0 forks source link

Tornar flexível o Protocolo utilizado #20

Closed hugogspereira closed 1 year ago

hugogspereira commented 1 year ago

Nós podiamos ter somente um protocolo (classe) para o projeto e liamos de um ficheiro de configuração com tudo lá. Algo assim:

C1: RSA-2048_DH-512_AES/CCM/NoPadding-128 C2: RSA-2048_DH-512_AES/CCM/NoPadding-256 C3: RSA-2048_DH-512_AES/CTR/NoPadding-128 C4: RSA-2048_DH-512_AES/CTR/NoPadding-256 C5: RSA-2048_DH-512_RC6/CCM/NoPadding-128 C6: RSA-2048_DH-512_RC6/CCM/NoPadding-256 C7: RSA-2048_DH-512_RC6/CTR/NoPadding-128 C8: RSA-2048_DH-512_RC6/CTR/NoPadding-256

C9: RSA-2048_KG_AES/CCM/NoPadding-128 C10: RSA-2048_KG_AES/CCM/NoPadding-256 C11: RSA-2048_KG_AES/CTR/NoPadding-128 C12: RSA-2048_KG_AES/CTR/NoPadding-256 C13: RSA-2048_KG_RC6/CCM/NoPadding-128 C14: RSA-2048_KG_RC6/CCM/NoPadding-256 C15: RSA-2048_KG_RC6/CTR/NoPadding-128 C16: RSA-2048_KG_RC6/CTR/NoPadding-256

E no protocolo de SE podiamos enviar na primeira mensagem junto do certificado a lista de ciphersuites e assim fica praticamente igual ao outro protocolo DH, enviavamos sempre os Dh parameters e depois do outro lado no server viamos se fosse DH continuava senao, n ligava e fazia o SE. Isto é uma forma de pronto estar mais flexivel.

Mas tbm me surge outra questão, a primeira mensagem do DH tem de ir assinada, ou seja, se as ciphersuites escolhidas tiverem mais do que uma opção na parte da assinatura, como é q fazemos ? Isto tudo parece que não fica escalável. E a primeira mensagem tinha de ir com os diffie-hellman parameters como é q sabiamos se eram 512 ou 1024, etc ?

A minha vontade era alterar para algo do genero que apresentei em cima, porque o Professor disse que preferia que a informação estivesse toda junta, mas faz sentido que esteja num à parte porque vai ser comum a todas as ciphersuites, senao dá problemas.

Perguntar isto ao Professor