Algoritmo RSA e números primos

Num comentário na postagem abaixo, apareceu um pedido de uma explicação sobre a ligação entre números primos e criptografia. Tem uma explicação mais detalhada aqui, mas em linhas gerais é o seguinte:
Códigos de transposição, onde um número ou letra são trocados por um outro, são vulneráveis a análises de freqüência, como a que Edgar Allan Poe exemplifica em O Escaravelho de Ouro: se “a” é a letra mais freqüente da língua portuguesa, o símbolo mais usado na mensagem em código deve ser o “a”, etc.
Um jeito de contornar isso é usar uma transposição mais complexa que uma substituição simples, por exemplo adotando uma seqüência de números – a “chave” – que seria algo do tipo 6347494041209836352719103834746 e aplicá-la à mensagem, digamos, da seguinte forma: se a primeira letra da mensagem original for “B”, a segunda letra do alfabeto, então a primeira letra da mensagem em código será 2+6 (o primeiro dígito sa chave) = 8, ou H, a oitava letra do alfabeto. Se e mensagem tiver mais letras que a chave, repete-se a chave, ad infinitum.
Essas mensagens são bastante seguras, desde que a chave não vaze para o público
A criptografia de chave pública, usada na internet e que se baseia em um sistema conhecido como algoritmo RSA, usa duas chaves, uma para encriptar a mensagem e outra, para decriptá-la; uma dessas chaves é, audaciosamente, posta em domínio público. As duas chaves, pública e privada, são determinadas – e vinculadas – pelo produto de dois números primos muito grandes. 
Isso é seguro porque não existe um método simples para fatorar números grandes: se você tiver o produto e for obrigado a descobrir quais números foram multiplicados para chegar até ele, podem-se passar séculos antes de haver uma resposta. 
Resumidamente, é essa dificuldade que permite que uma das chaves seja exposta ao público. E quanto maiores forem os primos envolvidos, maior a dificuldade. Daí, o valor prático e econômico de primos astronômicos.

Discussão - 2 comentários

  1. Júlio disse:

    Nossa que rápida a resposta 😀
    Eu já havia estudado algo sobre criptografia mas com o tempo acabei esquecendo o cerne da coisa..
    o grande problema que eu vejo em criptografia é como enviar de forma segura a chave para o destinatário sem o risco de ela ser interceptada. Isso é bem notório no primeiro exemplo com a sequência de números para representar uma letra. Como isso funciona nos algoritmos com duas chaves? O método com os números primos é justamente pra isso?

  2. cretinas disse:

    Sim! A chave pública decripta o que for encriptado com a privada, e vice-versa. E não há como interceptar a privada, porque ela nunca sai do poder de seu dono.
    O que relaciona as duas chaves é o produto dos números primos; assim, se alguém fosse capaz de fatorá-lo, teria acesso a ambas. Mas como a fatoração é (até o momento) impossível em tempo hábil, o sistema funciona.

Envie seu comentário

Seu e-mail não será divulgado. (*) Campos obrigatórios.

Categorias

Sobre ScienceBlogs Brasil | Anuncie com ScienceBlogs Brasil | Política de Privacidade | Termos e Condições | Contato


ScienceBlogs por Seed Media Group. Group. ©2006-2011 Seed Media Group LLC. Todos direitos garantidos.


Páginas da Seed Media Group Seed Media Group | ScienceBlogs | SEEDMAGAZINE.COM