A criptografia de chave simétrica faz
utilização de uma única chave para criptografar e descriptografar uma mensagem,
embora uma mensagem ou um grupo de mensagens possam ter diferentes chaves. A
desvantagem significativa nas cifras de criptografia simétrica se encontra na
necessária preocupação e gerenciamento das chaves. O melhor seria se duas
partes interessadas em uma comunicação pudessem compartilhar chaves diferentes
e manter a troca segura das mensagens cifradas, porém para existência deste
cenário assumindo o contexto apenas da criptografia simétrica, o número de
chaves requeridas aumentariam ao quadrado sobre o número de usuários da grande
rede mundial, e rapidamente necessitaria de um complexo sistema de
gerenciamento destas chaves para mantê-las fortemente secretas. Ainda que existissem
estas possibilidades citadas existiria outro problema, estabelecer uma chave
secreta na comunicação entre duas partes, enquanto um canal secreto ainda não
existe, ou melhor, nenhuma das duas partes conhece a chave ou não foi combinada
uma. Então como poderia determinar a chave de comunicação de maneira segura, a
garantir que nenhum terceiro pudesse interceptar a chave e consequentemente a
mensagem?
Em 1976, Whitfield Diffie e Martin
Hellman propuseram uma solução, um modelo denominado Chaves Públicas, e por
estar dentro do campo da criptografia é também o sinônimo de Criptografia
Assimétrica, onde discursam que: duas chaves matematicamente relacionadas entre
si, porém totalmente diferentes são utilizadas para cifrar e decifrar mensagens,
sendo estas chaves chamadas de Chaves Públicas e Chaves Privadas. O modelo foi
apresentado e mostrado como sendo possível em um protocolo que ficou conhecido
como “Troca de Chaves Diffie-Helllman” do inglês Diffie-Hellman Key Exchange protocol.
O sistema de chaves públicas é possibilitado quando da geração do par de chaves
(a chave pública e a chave privada), sendo que a um terceiro deve ser computacionalmente
impossível ou inviável a descoberta de uma das chaves correspondente tendo
conhecimento de alguma, ou seja, dada uma chave pública não deve ser possível
ou viável a descoberta da chave privada e vice-versa, mesmo sendo ciente de que
as duas chaves sejam matematicamente relacionadas.
Nos sistemas de criptografia de
chaves públicas, cada parte interessada na comunicação deve ter seu par de
chaves, e a propriamente dita chave pública deve ser distribuída livremente, de
maneira inversa, a chave privada deve ser mantida em total sigilo. Faz jus a
conhecimento o comum e porque não tradicional exemplo de Alice e Bob, onde para
ilustração é assumido para Alice As
como sendo a chave secreta de Alice e Ap
a sua chave pública, e ainda assumindo
para Bob Bs como a chave secreta de Bob e Bp a sua chave pública,
sendo que cada chave especifica uma função que pode ser aplicada a qualquer
mensagem dentro do conjunto de mensagens permitidas ou existentes, em outras
palavras a chave pública de Alice gera um função que é especificada por sua
chave privada e é naturalmente diferente da função especificada pela chave
secreta ou pública de Bob. Pode-se denotar as funções As() e Ap()
para chave secreta e pública de Alice
respectivamente e Bs() e Bp() para chave secreta e
pública de Bob respectivamente, onde tendo menção de que as chaves são pares
coincidentes, as mesmas geram funções que são inversas uma da outra, podendo
tirar a prova da seguinte maneira;
Seja
M uma mensagem, é válido, por
exemplo, afirmar para Alice que;
M = As( Ap( M ) );
Sendo estas funções de permutação,
não importa a ordem em que são aplicadas as funções, pois uma aplicada sobre a
outra sempre deve retornar a mensagem decifrada, então pela permutação é válido
ainda afirmar que;
M = Ap( As( M ) );
Para que a comunicação seja
fidedigna e o sistema de criptografia de chaves públicas tenha pleno sucesso é
essencial que os portadores de suas chaves privadas as mantenham em total sigilo,
e que, por exemplo, somente Alice e ninguém mais possa calcular As(M), desta maneira a informação processada por As(M) é a
garantia e assinatura de Alice nos termos de entidades lógicas ou digitais. Na
contramão desta necessidade, as chaves públicas devem existir em um diretório
de acesso público, de maneira que se, por exemplo, Bob quer enviar uma mensagem
para Alice e quer a garantia de que somente Alice terá acesso a esta mensagem,
o mesmo deverá obter a chave pública de Alice no tal diretório público,
calcular a mensagem cifrada com a função MC=Ap(M) e enviar MC para
Alice. No tráfego da mensagem até Alice, um terceiro poderá interceptar a
mensagem sem maiores problemas, porém a mensagem se encontrará ininteligível
para o mesmo, e somente Alice com sua chave secreta e calculando M=As(MC) terá conhecimento do real conteúdo
da mensagem.
A tal solução ao problema existente quanto a
criptografia simétrica, o modelo assimétrico foi apresentado e mostrado como
sendo possível em um protocolo que ficou conhecido como “Troca de Chaves
Diffie-Helllman” do inglês Diffie-Hellman
Key Exchange protocol. Em 1978,
Ronald Rivest, Adi Shamir e Len Adleman desenvolveram o RSA, sendo um outro sistema
de criptografia assimétrica baseado também nas chaves públicas. Sendo o
Diffie-Hellman e o RSA os primeiros a serem apresentados publicamente e
mostrando a alta qualidade do modelo criptográfico, se tornaram então os
algoritmos mais utilizados no contexto deste tipo cifra, porém existem outros
tão bons quanto, por exemplo, o DSA (que está para Digital Signature Algorithm), Cramer-Shoup
cryptosystem, ElGamal encryption dentre
outros que utilizam a técnica denominada de curvas elípticas. Enfim, o modelo
surgiu e também várias implementações do mesmo, dando a possibilidade aos
usuários de escolha por conta do nível de confiança no algoritmo, se houve
ataque ao mesmo, ou outros quesitos que levam a decisão por um ou por outro
sistema.
Há relatos de que o modelo de criptografia
simétrica já havia sido elaborado por volta de 1970, por um membro da GCHQ que
é um acrônimo para Government Communications Headquarters, que é a agência de
inteligência inglesa responsável pelo fornecimento de sinais e garantia de
informação ao governo das forças armadas do Reino Unido. A alegação ainda
afirma que os algoritmos Diffie-Hellman e RSA também haviam sido desenvolvidos
anteriormente por Malcolm J. Williamson e Clifford Cocks respectivamente. Porém
como a indicação fora feita tão tardiamente, os algoritmos e a história
concreta continuam a girar em meio dos nomeados algoritmos Diffie-Hellman e
RSA.
Nenhum comentário:
Postar um comentário
Obrigado por deixar seu comentário. Volte sempre.