Introdução
No mundo da criptografia, frequentemente enfrentamos uma troca (trade-off) entre velocidade e segurança. Algoritmos de criptografia simétrica, como o AES, são muito rápidos e ideais para criptografar grandes volumes de dados, mas exigem uma chave secreta compartilhada que deve ser distribuída de forma segura tanto para o remetente quanto para o destinatário. Algoritmos de criptografia assimétrica, como o RSA, são excelentes para a troca segura de chaves usando um par de chaves pública/privada, mas são computacionalmente intensivos e lentos demais para criptografar dados em massa.
A criptografia híbrida resolve este problema combinando os pontos fortes de ambos os métodos. Ela utiliza a abordagem do "melhor dos dois mundos":
- Criptografia assimétrica é usada para criptografar e compartilhar de forma segura uma chave simétrica temporária e de uso único (frequentemente chamada de "chave de sessão").
- Criptografia simétrica é então usada com esta chave de sessão para criptografar os dados da mensagem reais e maiores de forma rápida e eficiente.
Neste laboratório, você implementará um esquema completo de criptografia híbrida do zero usando a ferramenta de linha de comando openssl. Você gerará um par de chaves RSA, criará uma chave de sessão AES aleatória, usará o RSA para criptografar a chave de sessão, usará o AES para criptografar uma mensagem e, finalmente, reverterá o processo para descriptografar a mensagem.



