A palavra criptografia é um termo genérico que designa o conjunto das técnicas que permitem codificar mensagens, ou seja, torná-las ininteligíveis sem uma ação específica. O verbo criptografar é, às vezes, utilizado, mas preferimos usar o verbo codificar.
O homem sempre sentiu a necessidade de dissimular informações, mesmo antes do aparecimento dos primeiros computadores e máquinas de calcular.
Desde a sua criação, a Internet evoluiu tanto que se tornou um instrumento essencial de comunicação. No entanto, esta comunicação põe cada vez mais em jogo problemas estratégicos ligados à atividade das empresas na Web. As transações feitas através da rede podem ser interceptadas, ainda mais que as leis têm dificuldade em se impor na Internet. Desta maneira, é preciso garantir a segurança destas informações, e é a criptografia que se encarrega disso.
A criptografia baseia-se essencialmente na aritmética. No caso de um texto, trata-se de transformar as letras que compõem a mensagem em uma sucessão de números (sob a forma de bits, no caso da informática, pois o funcionamento dos PCs é baseado no código binário) e, em seguida, fazer cálculos com estes números para alterá-los de maneira a que fiquem incompreensíveis.
O resultado desta modificação (a mensagem codificada) chama-se criptograma em oposição à mensagem inicial, chamada de normal. Por outro lado, também é preciso garantir que o destinatário da mensagem entenda seu conteúdo quando recebê-la. O fato de codificar uma mensagem de maneira a torná-la secreta chama-se codificação e o método oposto, que consiste em encontrar a mensagem original, decodificação:
De um modo geral, a codificação é feita com a ajuda de uma chave de codificaçãoe, por sua vez, a decodificação requer uma chave de decodificação. Distinguimos, então, dois tipos de chave, as chaves simétricas, também chamada de codificações com chave secreta, que são utilizadas tanto para a codificação quanto para a decodificação e as chaves assimétricas, utilizadas em casos da codificação assimétrica (também chamadas de codificações com chave pública). Neste caso, usamos chaves diferentes para a codificação e para a decodificação.
A criptografia é utilizada tradicionalmente para dissimular mensagens de certos usuários. Esta utilização tem hoje um interesse ainda maior pois as comunicações via Internet circulam em infraestruturas das quais não se pode garantir a fiabilidade e a confidencialidade. Hoje em dia, a criptografia serve não apenas para preservar a confidencialidade dos dados mas também para garantir a sua integridade e a sua autenticidade.
Chamamos criptoanálise a reconstrução de uma mensagem codificada no seu formato original, com a ajuda de métodos matemáticos. Assim, qualquer criptossistema deve, necessariamente, ser resistente aos métodos de criptoanálise. Quando um método de criptoanálise permite decifrar uma mensagem codificada com a ajuda de um criptossistema, diz-se que o algoritmo de codificação 'foi quebrado'.
Decodificar é o fato de tentar decifrar ilegitimamente uma mensagem (quer a chave decodificação seja conhecida ou não pelo hacker). Quando a chave de decodificação é conhecida pelo hacker, fala-se de criptoanálise
Criptologia é a ciência que estuda os aspectos científicos destas técnicas, ou seja, ela engloba a criptografia e a criptoanálise.
Normalmente, distinguimos quatro métodos de criptoanálise: um ataque ao texto codificado apenas, que consiste em encontrar a chave de decodificação de uma ou mais mensagens cifradas; um ataque em texto normal conhecido, que consiste em encontrar a chave de decodificação por meio de uma ou várias mensagens cifradas, conhecendo o texto normal correspondente; um ataque ao texto normal escolhido, que consiste em encontrar a chave de decodificação a partir de um ou vários textos codificados, tendo o hacker a possibilidade de gerá-los a partir de textos normais; um ataque ao texto codificado escolhido, que consiste em encontrar a chave de decodificação a partir de um ou vários textos codificados, tendo o hacker a possibilidade de gera-los a partir de textos normais.