Criptografia é a prática e estudo de técnicas de comunicação segura na presença de terceiros denominados adversários. Seu principal objetivo é garantir a privacidade, autenticação, integridade e não repúdio de mensagens ou dados.
A arte da criptografia é tão antiga quanto a própria escrita. Inicialmente, foi utilizado para garantir que apenas os destinatários pretendidos pudessem compreender o conteúdo de uma mensagem. Os antigos egípcios, gregos e romanos desenvolveram e usaram técnicas criptográficas. Um exemplo bem conhecido é a cifra de César , uma cifra de substituição em que cada letra do texto simples é deslocada um certo número de casas no alfabeto.
Existem duas categorias principais de algoritmos criptográficos:
Criptografia é o processo de conversão de texto simples em texto cifrado, que é ilegível para qualquer pessoa, exceto o detentor da chave. A descriptografia é o processo inverso, transformando o texto cifrado novamente em texto simples legível. A relação matemática pode ser expressa como:
A Infraestrutura de Chave Pública é uma estrutura para gerenciar certificados digitais e criptografia de chaves públicas. Ele permite que usuários de uma rede pública insegura, como a Internet, troquem dados de forma segura e privada.
Funções hash são um tipo de algoritmo criptográfico que gera uma sequência de bytes de tamanho fixo (conhecida como hash) a partir de dados de entrada de qualquer tamanho. Eles são usados para garantir a integridade dos dados. Um exemplo bem conhecido é o algoritmo SHA-256 usado na mineração de Bitcoin.
As assinaturas digitais são uma técnica criptográfica que garante a origem e integridade das comunicações ou documentos digitais. Uma assinatura digital é gerada usando uma chave privada e pode ser verificada por qualquer pessoa que possua a chave pública correspondente.
Criptoanálise é o estudo da análise de sistemas de informação para compreender aspectos ocultos dos sistemas. É usado para violar sistemas de segurança criptográfica e obter acesso ao conteúdo de mensagens criptografadas.
A criptografia tem uma ampla gama de aplicações, incluindo a proteção de comunicações confidenciais, a proteção de informações em dispositivos de armazenamento, o aprimoramento da segurança da web e da rede, a proteção de transações financeiras eletrônicas e a garantia da integridade e autenticidade de assinaturas e certificados digitais.
Com o avanço do poder da computação, como a computação quântica, as técnicas criptográficas atuais enfrentam novos desafios. Os criptógrafos estão trabalhando ativamente para desenvolver novos algoritmos que possam suportar o poder computacional dos computadores quânticos.