Clique para saber mais...
  Home     Download     Produtos / Cursos     Revista     Vídeo Aulas     Fórum     Contato   Clique aqui para logar | 07 de Agosto de 2026
  Login

Codinome
Senha
Salvar informações

 Esqueci minha senha
 Novo Cadastro

  Usuários
72 Usuários Online

  Revista ActiveDelphi
 Assine Já!
 Edições
 Sobre a Revista

  Conteúdo
 Apostilas
 Artigos
 Componentes
 Dicas
 News
 Programas / Exemplos
 Vídeo Aulas

  Serviços
 Active News
 Fórum
 Produtos / Cursos

  Outros
 Colunistas
 Contato
 Top 10

  Publicidade

  [Artigos]  A matemática do RSA
Publicado por icemagno : Sábado, Dezembro 03, 2005 - 07:06 GMT-3 (3868 leituras)
Comentários comentar   Enviar esta notícia a um amigo Enviar para um amigo   Versão para Impressão Versão para impressão
Carlos Magno As principais aplicações de sigilo e assinatura digital só foram possíveis com a descoberta da criptografia assimétrica.

Dos algoritmos publicados até hoje, o mais usado, mundialmente, é o RSA. Aprenda como ele funciona:

Foram criados dois personagens Origem (pessoa que irá criptografar e enviar a informação) e Destino (pessoa que irá receber e decriptografar a informação).

Destino escolhe dois números primos gigantes, p e q. Os primos devem ser enormes, mas para simplicidade vamos dizer que Destino escolhe p=17 e q=11. Ele deve manter esses números em segredo.

Destino multiplica os números um pelo outro para conseguir um terceiro número, N (Módulo). Neste caso, N=187. Ele agora escolhe outro número e (expoente). Neste exemplo, ela escolhe e=7.

Destino agora pode divulgar e (expoente) e N (Módulo) por qualquer canal de publicação com garantia de integridade (como um certificado digital). Como esses números são necessários para a cifragem, eles devem estar disponíveis para consulta por parte de qualquer um que deseje cifrar uma mensagem para Destino. Juntos, esses números são chamados de chave pública. (Além de ser parte da chave pública de Destino, o e também pode ser parte da chave pública de todos. Contudo, cada pessoa deve ter um valor diferente de N, que vai depender de sua escolha de p e q.)

Para cifrar uma mensagem, ele primeiro precisa ser convertido em um numero, M. Por exemplo, uma palavra é convertida em dígitos binários ASCII e os dígitos binários podem ser considerados como um número decimal. M é então cifrado para produzir o texto cifrado C, de acordo com a fórmula.

C=Me (mod N)

Imagine que Origem quer enviar apenas a letra X para Destino. No ASCII isto é representado por 1011000, que equivale a 88 em decimais. Assim, M=88.

Para cifrar sua mensagem, Origem começa procurando a chave pública de Destino e descobre que N=187 e e=7. Isto lhe dá a fórmula de cifragem necessária para codificar as mensagens para Destino.

Com M=88, a fórmula dá C=887 (mod 187) = 40.867.559.636.992 (mod 187) = 11

Origem agora envia o texto cifrado, C=11, para Destino

Nós sabemos que exponenciais em aritmética modular são funções de mão única, de modo que é muito difícil recuperar a mensagem original, M, a partir de C=11. Alguém com acesso apenas a essas informações não pode decifrar a mensagem.

Entretanto, Destino pode decifrar a mensagem porque tem uma informação especial: conhece os valore de p e q. Ele calcula um número especial, d, a chave de decifragem, conhecida também como chave particular. O número d é calculado de acordo com a seguinte fórmula:

e x d = 1 (mod (p-1) x (q-1))
7 x d = 1 (mod 16 x 10)
7 x d = 1 (mod 160)
d = 23

Para decifrar a mensagem, Destino simplesmente usa a seguinte fórmula:

M= Cd (mod187)
M = 1123 (mod187) = 88 = X in ASCII

OBS: Este texto pertence ao link
http://www.certsign.com.br/certinews/edicoes/certinews_05/saibamais.htm
Da CertiNews.

Um Abraço,
Carlos Magno Abreu
icemagno@hotmail.com



Comentários Comentários
   Ordem:  
Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos.
  Edição 112

Revista ActiveDelphi

  50 Programas Fontes


  Produtos

Conheça Nossos Produtos

Copyright© 2001-2016 – Active Delphi – Todos os direitos reservados