Criptografia Assimetrica RSA
INTRODUÇÃO
Este artigo não pode ser considerado um artigo isolado. Ele faz parte de uma sequência de outros artigos sobre o tema. Se você não é versado no assunto da criptografia, talvez queira ler os artigos anteriores antes de prosseguir a leitura deste.
A primeira vez que escrevi sobre criptografia foi em fevereiro de 2009, com o artigoIntrodução a criptografia. Neste eu defini algumas terminologias, explicando o que é chave, criptoanálise e força bruta, além de conceituar os tipos de algoritmos existentes.
Na sequência, em março de 2009, dei continuidade ao tema com o artigo Criptografia chave simétrica de bloco e de fluxo, que descrevia o primeiro tipo, os de cifras simétricas.
Por fim, em Julho de 2009, desejava completar a série falando sobre os algoritmos assimétricos. Porém ao perceber que o artigo estava ficando demasiadamente grande, optei em dividí-lo em duas partes, sendo que a primeira parte tratou dos fundamentos matemáticos que permitiram a construção do RSA, bem como situá-lo na história (Fundamentos da criptografia assimétrica).
Este artigo é, portanto, uma segunda parte sobre algoritmos assimétricos e traz, não apenas a descrição de um algoritmo assimétrico, como também um passo a passo de como ele realmente funciona, podendo qualquer um testar.
Para usar um algoritmo de criptografia é necessário que as partes envolvidas possuam um segredo em comum, uma chave. Ao transmitir uma mensagem o emissor pode cifrar ela com um algoritmo de criptografia usando esta chave. O receptor recupera a mensagem usando a mesma chave.
Porém existe um problema que é o compartilhamento desta chave, ou seja, de que forma o emissor e receptor chegaram a um consenso sobre seu valor. Se existe a possibilidade de um encontro pessoal e físico o compartilhamento desta informação pode ser realizado com segurança, mas se o único meio de transmissão existente entre eles é inseguro,