ajuda de um criptosistema, diz-se que o algoritmo de codificacao foi quebrado. Distinguem-se habitualmente quatro metodos de criptanalise: Um ataque apenas sobre texto codificado consiste em reencontrar a chave de decodificacao a partir de um ou varios textos codificados; Um ataque sobre texto normal conhecido consiste em reencontrar a chave de decodificacao a partir de um ou varios textos codificados, conhecendo o texto original normal correspondente; Um ataque sobre texto normal escolhido consiste em reencontrar a chave de decodificacao a partir de um ou varios textos codificados, tendo o atacante a possibilidade de gera-los a partir de textos normais; Um ataque sobre texto codificado escolhido consiste em reencontrar a chave decodificacao a partir de um ou varios textos codificados, tendo o atacante a possibilidade de gera-los a partir de textos normais.A codificacao por substituicaoA codificacao por substituicao consiste em substituir numa mensagem uma ou varias entidades (geralmente letras) por uma ou varias outras entidades. Distinguem-se geralmente varios tipos de criptosistemas por substituicao: A substituicao monoalfabetica consiste em substituir cada letra da mensagem por outra letra do alfabeto A substituicao polialfabetica consiste em utilizar uma sequencia de numeros monoalfabetica reutilizada periodicamente A substituicao homofonica permite fazer corresponder a cada letra da mensagem normal um conjunto possivel de outros caracteres A substituicao de poligramas consiste em substituir um grupo de caracteres (poligrame) na mensagem por outro grupo de caracteresA codificacao de CesarEste codigo de cifragem e um dos mais antigos, na medida em que teria sido utilizado por Julio Cesar. O principio de codificacao assenta na adicao de um valor constante ao conjunto caracteres da mensagem, ou mais exatamente o seu codigo ASCII (para uma versao informatica desta codificacao). Trata-se simplesmente de deslocar o conjunto dos valores dos caracteres da mensagem de certo numero de posicoes, quer dizer, em certa medida substituir cada letra por outra. Por exemplo, deslocando a mensagem COMMENT CA MARCHE de 3 posicoes, obtem-se FRPPHQW FD PDUFKH. Quando a adicao do valor da uma letra que excede a letra Z, e suficiente continuar partindo de A. Por exemplo, no filme A odisseia do espaco, o computador tem o nome de HAL. Este apelido e, com efeito, IBM deslocado de 1 posicao para baixo... Chama-se chave ao caracter que corresponde ao valor que se acrescenta a mensagem para efetuar a cifragem. No nosso caso, a chave e C, porque e a 3.a letra do alfabeto. Este sistema de cifragem e certamente simples de aplicar, mas tem o inconveniente de ser totalmente simetrico, isto significa que basta fazer uma subtracao para conhecer a mensagem inicial. Um metodo primario pode consistir numa subtracao basica dos numeros 1 a 26 para ver se um destes numeros da uma mensagem compreensivel. Um metodo mais evoluido consiste em calcular as frequencias de aparecimento das letras na mensagem codificada (isto e mais facil de fazer quanto mais longa for a mensagem). Efetivamente, dependendo da lingua, certas letras aparecem mais correntemente do que outras (em portugues, por exemplo, a letra mais utilizada e a letra E), assim a letra que aparece mais frequentemente num texto cifrado pelo calculo