Modos de cifra e protocolos
ECB, CBC, CTR, AEAD, repetição e acordo de chaves com Diffie-Hellman.
Modos de cifra
AES transforma blocos de 16 bytes; o modo define como proteger uma mensagem. XOR satisfaz e .
| Modo | Regra | Requisito e limite |
|---|---|---|
| ECB | Blocos iguais sob a mesma chave dão cifras iguais, revelando padrões. | |
| CBC | , | IV imprevisível e blocos completos; não autentica sozinho. |
| CTR | Nenhum bloco de contador pode repetir sob a mesma chave; não autentica sozinho. |
é um bloco em claro, a cifra, a chave e a cifra de bloco. Em CBC, decifra com : o primeiro usa IV, os seguintes a cifra anterior.
PKCS#7, com blocos de 16 bytes, acrescenta bytes de valor : 14 bytes recebem 02 02; 16 recebem dezasseis bytes de valor 16. Ao remover, valida e todos os últimos bytes. Preenchimento não autentica. CTR usa só os bytes necessários, sem este preenchimento.
Em CTR sem autenticação, aplicar máscara à cifra aplica a mesma máscara ao texto em claro. Alterar dois bits muda esses dois bits, sem propagação aos outros blocos. Confidencialidade não garante integridade.
Reutilização e autenticidade
Se e :
Conhecendo , recupera-se:
Conhecer uma mensagem e as duas cifras permite recuperar a outra. Em CTR, inícios diferentes não bastam se os intervalos se sobrepõem, como 10,11,12,13 e 12,13,14; impede também repetição por overflow.
O one-time pad só tem confidencialidade perfeita com chave uniforme, secreta, tão longa como a mensagem e usada uma única vez.
AEAD protege confidencialidade do conteúdo e integridade do conteúdo e dados associados. Estes últimos ficam visíveis. Usa construções analisadas, como AES-GCM ou ChaCha20-Poly1305, e cumpre os requisitos de nonce. Em GCM, repeti-lo com a mesma chave compromete segurança. Rejeita etiquetas inválidas antes de interpretar o conteúdo.
Contra replay, autentica sequência ou desafio e mantém estado para rejeitar repetições, tolerando a reordenação prevista pelo protocolo. A unicidade e o efeito devem ficar ligados atomicamente.
| Receção da mesma mensagem | Etiqueta | Estado do id | Decisão |
|---|---|---|---|
| Primeira | Válida | Novo | Executar e registar uma vez |
| Repetição | Válida | Usado | Não executar novamente |
Cifra e MAC
- Encrypt-then-MAC autentica a cifra: e . Verifica antes de decifrar.
- MAC-then-Encrypt cifra mensagem e etiqueta: e . Precisa de decifrar para obter a etiqueta.
- Encrypt-and-MAC envia cifra e MAC do texto em claro separadamente.
Segurança exige construção analisada, chaves e contexto apropriados. Enviar só MAC não envia a mensagem; divulgar a chave MAC permite criar etiquetas falsas.
Diffie-Hellman e autenticação
Com parâmetros públicos , Ana escolhe expoente privado e envia ; Bruno escolhe e envia . Ambos obtêm:
Exemplo inseguro de estudo: dá e segredo 2. Um protocolo real valida parâmetros/valores e deriva chaves adequadas a partir do segredo.
DH sozinho não prova a identidade. Autentica a troca e o seu contexto com assinaturas/certificados ou segredo prévio, conforme um protocolo analisado.
Chaves efémeras corretamente usadas e apagadas podem dar sigilo futuro: roubar mais tarde a chave de autenticação duradoura não revela sessões antigas gravadas. Não protege o segredo efémero da própria sessão se este foi comprometido.