Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Criptografia e Certifica��o Digital

Este artigo apresenta os principais conceitos envolvendo criptografia e certifica��o digital, fundamentais para a compreens�o e implementa��o do com�rcio eletr�nico seguro na Internet. O artigo aborda:

Servi�os oferecidos pela criptografia
Criptografia sim�trica
Criptografia assim�trica
Assinatura digital
Fun��o hashing
Certificado digital

Servi�os Oferecidos

As t�cnicas de criptografia oferecem seis tipos de servi�os b�sicos. Sem estes predicados n�o � poss�vel realizar o com�rcio eletr�nico seguro na Internet:

Servi�os Descri��o
Disponibilidade Garante que uma informa��o estar� dispon�vel para acesso no momento desejado.
Integridade Garante que o conte�do da mensagem n�o foi alterado.
Controle de acesso Garante que o conte�do da mensagem somente ser� acessado por pessoas autorizadas.
Autenticidade da origem Garante a identidade de quem est� enviando a mensagem.
N�o-repudia��o Previne que algu�m negue o envio e/ou recebimento de uma mensagem.
Privacidade (confidencialidade ou sigilo) Impede que pessoas n�o autorizadas tenham acesso ao conte�do da mensagem, garantindo que apenas a origem e o destino tenham conhecimento.

Se imaginarmos uma compra pela Internet, podemos perceber a necessidade de todos os requisitos acima. Por exemplo, a informa��o que permite a transa��o - tais como valor e descri��o do produto adquirido -precisa estar dispon�vel no dia e na hora que o cliente desejar efetu�-la (disponibilidade), o valor da transa��o n�o pode ser alterado (integridade), somente o cliente que est� comprando e o comerciante devem ter acesso � transa��o (controle de acesso), o cliente que est� comprando deve ser realmente quem diz ser (autenticidade), o cliente tem como provar o pagamento e o comerciante n�o t�m como negar o recebimento (n�o-rep�dio) e o conhecimento do conte�do da transa��o fica restrito aos envolvidos (privacidade).

Criptografia Sim�trica

O ciframento de uma mensagem baseia-se em dois componentes: um algoritmo e uma chave. Um algoritmo � uma transforma��o matem�tica. Ele converte uma mensagem em claro em uma mensagem cifrada e vice-versa. Quando Alice (origem)cifra uma mensagem, ela utiliza um algoritmo de ciframento para transformar o conte�do em claro da mensagem em texto cifrado. Quando Bob (destinat�rio) decifra uma mensagem, ele utiliza o algoritmo de deciframento correspondente para converter o texto cifrado de novo em uma mensagem clara.

Antigamente, a seguran�a do ciframento estava baseada somente no sigilo do algoritmo criptogr�fico. Se Eve (um intruso) conhecesse o algoritmo sem chave, poderia decifrar uma mensagem cifrada t�o facilmente quanto Bob. Pode-se contornar o problema apresentado utilizando o segundo componente b�sico da criptografia de mensagens: a chave. Uma chave � uma cadeia aleat�ria de bits utilizada em conjunto com um algoritmo. Cada chave distinta faz com que o algoritmo trabalhe de forma ligeiramente diferente. 

Embora existam algoritmos que dispensem o uso de chaves, sua utiliza��o oferece duas importantes vantagens. A primeira � permitir a utiliza��o do mesmo algoritmo criptogr�fico para a comunica��o com diferentes receptores, apenas trocando a chave. A segunda vantagem � permitir trocar facilmente a chave no caso de uma viola��o, mantendo o mesmo algoritmo.

O n�mero de chaves poss�veis depende do tamanho (n�mero de bits) da chave. Por exemplo, uma chave de 8 bits permite uma combina��o de no m�ximo 256 chaves (28). Quanto maior o tamanho da chave, mais dif�cil quebra-la, pois estamos aumentando o n�mero de combina��es.

Quando Alice cifra uma mensagem, ela utiliza um algoritmo de ciframento e uma chave secreta para transformar uma mensagem clara em um texto cifrado. Bob, por sua vez, ao decifrar uma mensagem, utiliza o algoritmo de deciframento correspondente e a mesma chave para transformar o texto cifrado em uma mensagem em claro. Eve, por n�o possuir a chave secreta, mesmo conhecendo o algoritmo, n�o conseguir� decifrar a mensagem. A seguran�a do sistema passa a residir n�o mais no algoritmo e sim na chave empregada. � ela que agora, no lugar do algoritmo, dever� ser mantida em segredo por Alice e Bob.

Quando a chave de ciframento � a mesma utilizada para deciframento ou esta �ltima pode facilmente ser obtida a partir do conhecimento da primeira, ambas precisam ser compartilhadas previamente entre origem e destinat�rio, antes de se estabelecer o canal criptogr�fico desejado, utilizando-se um canal seguro e independente do destinado � comunica��o sigilosa. Este tipo de ciframento emprega a criptografia conhecida como sim�trica ou de chave secreta.

Algoritmo Sim�trico Bits Descri��o
DES 56 O Data Encryption Standard (DES) � o algoritmo sim�trico mais disseminado no mundo. Foi criado pela IBM em 1977 e, apesar de permitir cerca de 72 quadrilh�es de combina��es (256), seu tamanho de chave (56 bits) � considerado pequeno, tendo sido quebrado por "for�a bruta" em 1997 em um desafio lan�ado na Internet.

O NIST (National Institute of Standards and Technology), que lan�ou o desafio mencionado, recertificou o DES pela �ltima vez em 1993 e desde ent�o est� recomendando o 3DES. O NIST est� tamb�m propondo um substituto ao DES que deve aceitar chaves de 128, 192 e 256 bits, operar com blocos de 128 bits, ser eficiente, flex�vel e estar livre de "royalties". 

O novo padr�o, denominado AES (Advanced Encryption Standard), est� sendo estudado desde 1997 a partir de v�rios algoritmos apresentados pela comunidade. Os finalistas s�o: Serpent, Mars, RC6, Twofish e Rinjdael, e o resultado dever� ser divulgado no final de 2000.

Triple DES 112 ou 168 O 3DES � uma simples varia��o do DES, utilizando-o em tr�s ciframentos suscessivos, podendo empregar um vers�o com duas ou com tr�s chaves diferentes. � seguro, por�m muito lento para ser um algoritmo padr�o.
IDEA 128 O International Data Encryption Algorithm  foi criado em 1991 por James Massey e Xuejia Lai e possui patente da su��a ASCOM Systec. O algoritmo � estruturado seguindo as mesmas linhas gerais do DES. Mas na maioria dos microprocessadores, uma implementa��o por software do IDEA � mais r�pida do que uma implementa��o por software do DES. O IDEA � utilizado principalmente no mercado financeiro e no PGP, o programa para criptografia de e-mail pessoal mais disseminado no mundo.
Blowfish 32 a 448 Algoritmo desenvolvido por Bruce Schneier, que oferece a escolhe entre maior seguran�a ou desempenho atrav�s de chaves de tamanho vari�vel. O autor aperfei�oou-o no Twofish, concorrente ao AES.
RC2 8 a 1024 Projetado por Ron Rivest (o R da empresa RSA Data Security Inc.) e utilizado no protocolo S/MIME, voltado para criptografia de e-mail corporativo. Tamb�m possui chave de tamanho vari�vel. Rivest tamb�m � o autor do RC4, RC5 e RC6, este �ltimo concorrente ao AES.

Apesar de sua simplicidade, existem alguns problemas na criptografia sim�trica:

  • Como cada par necessita de uma chave para se comunicar de forma segura, para um uma rede de n usu�rios precisar�amos de algo da ordem de n2 chaves, quantidade esta que dificulta a ger�ncia das chaves;
  • A chave deve ser trocada entre as partes e armazenada de forma segura, o que nem sempre � f�cil de ser garantido;
  • A criptografia sim�trica n�o garante a identidade de quem enviou ou recebeu a mensagem (autenticidade e n�o-repudia��o).

Criptografia Assim�trica

A maneira de contornar os problemas da criptografia sim�trica � a utiliza��o da criptografia assim�trica ou de chave p�blica. A criptografia assim�trica est� baseada no conceito de par de chaves: uma chave privada e uma chave p�blica. Qualquer uma das chaves � utilizada para cifrar uma mensagem e a outra para decifr�-la. As mensagens cifradas com uma das chaves do par s� podem ser decifradas com a outra chave correspondente. A chave privada deve ser mantida secreta, enquanto a chave p�blica dispon�vel livremente para qualquer interessado.

De uma forma simplificada, o sistema funciona assim: Bob e todos os que desejam comunicar-se de modo seguro geram uma chave de ciframento e sua correspondente chave de deciframento. Ele mant�m secreta a chave de deciframento; esta � chamada de sua chave privada. Ele torna p�blica a chave de ciframento: esta � chamada de sua chave p�blica.

A chave p�blica realmente condiz com seu nome. Qualquer pessoa pode obter uma c�pia dela. Bob inclusive encoraja isto, enviando-a para seus amigos ou publicando-a em boletins. Assim, Eve n�o tem nenhuma dificuldade em obt�-la. Quando Alice deseja enviar uma mensagem a Bob, precisa primeiro encontrar a chave p�blica dele. Feito isto, ela cifra sua mensagem utilizando a chave p�blica de Bob, despachando-a em seguida. Quando Bob recebe a mensagem, ele a decifra facilmente com sua chave privada. Eve, que interceptou a mensagem em tr�nsito, n�o conhece a chave privada de Bob, embora conhe�a sua chave p�blica. Mas este conhecimento n�o o ajuda a decifrar a mensagem. Mesmo Alice, que foi quem cifrou a mensagem com a chave p�blica de Bob, n�o pode decifr�-la agora.

A grande vantagem deste sistema � permitir que qualquer um possa enviar uma mensagem secreta, apenas utilizando a chave p�blica de quem ir� receb�-la. Como a chave p�blica est� amplamente dispon�vel, n�o h� necessidade do envio de chaves como � feito no modelo sim�trico. A confidencialidade da mensagem � garantida, enquanto a chave privada estiver segura. Caso contr�rio, quem possuir acesso � chave privada ter� acesso �s mensagens.

Seguem descri��es de alguns algoritmos assim�tricos:

Algoritmo Descri��o
RSA O RSA � um algoritmo assim�trico que possui este nome devido a seus inventores: Ron Rivest, Adi Shamir e Len Adleman, que o criaram em 1977 no MIT. �, atualmente, o algoritmo de chave p�blica mais amplamente utilizado, al�m de ser uma das mais poderosas formas de criptografia de chave p�blica conhecidas at� o momento. O RSA utiliza n�meros primos. 

A premissa por tr�s do RSA � que � f�cil multiplicar dois n�meros primos para obter um terceiro n�mero, mas muito dif�cil recuperar os dois primos a partir daquele terceiro n�mero. Isto � conhecido como fatora��o. Por exemplo, os fatores primos de 3.337 s�o 47 e 71. Gerar a chave p�blica envolve multiplicar dois primos grandes; qualquer um pode fazer isto. Derivar a chave privada a partir da chave p�blica envolve fatorar um grande n�mero. Se o n�mero for grande o suficiente e bem escolhido, ent�o ningu�m pode fazer isto em uma quantidade de tempo razo�vel. Assim, a seguran�a do RSA baseia-se na dificuldade de fatora��o de n�meros grandes. Deste modo, a fatora��o representa um limite superior do tempo necess�rio para quebrar o algoritmo. 

Uma chave RSA de 512 bits foi quebrada em 1999 pelo Instituto Nacional de Pesquisa da Holanda, com o apoio de cientistas de mais 6 pa�ses. Levou cerca de 7 meses e foram utilizadas 300 esta��es de trabalho para a quebra. Um fato preocupante: cerca de 95% dos sites de com�rcio eletr�nico utilzam chaves RSA de 512 bits.

ElGamal O ElGamal � outro algoritmo de chave p�blica utilizado para gerenciamento de chaves. Sua matem�tica difere da utilizada no RSA, mas tamb�m � um sistema comutativo. O algoritmo envolve a manipula��o matem�tica de grandes quantidades num�ricas. Sua seguran�a adv�m de algo denominado problema do logaritmo discreto. Assim, o ElGamal obt�m sua seguran�a da dificuldade de se calcular logaritmos discretos em um corpo finito, o que lembra bastante o problema da fatora��o.
Diffie-Hellman Tamb�m baseado no problema do logaritmo discreto, e o criptosistema de chave p�blica mais antigo ainda em uso. O conceito de chave p�blica ali�s foi introduzido pelos autores deste criptosistema em 1976. Contudo, ele n�o permite nem ciframento nem assinatura digital. O sistema foi projetado para permitir a dois indiv�duos entrarem em um acordo ao compartilharem um segredo tal como uma chave, muito embora eles somente troquem mensagens em p�blico.
Curvas El�pticas Em 1985, Neal Koblitz e V. S. Miller propuseram de forma independente a utiliza��o de curvas el�pticas para sistemas criptogr�ficos de chave p�blica. Eles n�o chegaram a inventar um novo algoritmo criptogr�fico com curvas el�pticas sobre corpos finitos, mas implementaram algoritmos de chave p�blica j� existentes, como o algoritmo de Diffie e Hellman, usando curvas el�pticas. Assim, os sistemas criptogr�ficos de curvas el�pticas consistem em modifica��es de outros sistemas (o ElGamal, por exemplo), que passam a trabalhar no dom�nio das curvas el�pticas, em vez de trabalharem no dom�nio dos corpos finitos. Eles possuem o potencial de proverem sistemas criptogr�ficos de chave p�blica mais seguros, com chaves de menor tamanho. 

Muitos algoritmos de chave p�blica, como o Diffie - Hellman, o ElGamal e o Schnorr podem ser implementados em curvas el�pticas sobre corpos finitos. Assim, fica resolvido um dos maiores problemas dos algoritmos de chave p�blica: o grande tamanho de suas chaves. Por�m, os algoritmos de curvas el�pticas atuais, embora possuam o potencial de serem r�pidos, s�o em geral mais demorados do que o RSA.

Assinatura Digital

Outro benef�cio da criptografia com chave p�blica � a assinatura digital, que permite garantir a autenticidade de quem envia a mensagem, associada � integridade do seu conte�do. Por exemplo, suponha que Alice (origem) queira comunicar o nascimento de sua filha para todos os seus amigos (destinat�rios = Bob), mas queira garantir aos mesmos que a mensagem foi enviada realmente por ela. E, embora n�o se importe com o sigilo da mensagem, deseja que a mesma chegue integra aos destinat�rios, sem altera��es como, por exemplo, do sexo da crian�a.

Alice ent�o cifra a mensagem com sua chave privada e a envia, em um processo denominado de assinatura digital. Cada um que receber a mensagem dever� decifr�-la, ou seja, verificar a validade da assinatura digital, utilizando para isso a chave p�blica de Alice. Como a chave p�blica de Alice apenas decifra (ou seja, verifica a validade de) mensagens cifradas com sua chave privada, fica garantida assim a autenticidade, integridade e n�o-repudia��o da mensagem. Pois se algu�m modificar um bit do conte�do da mensagem ou se outra pessoa assin�-la ao inv�s de Alice, o sistema de verifica��o n�o ir� reconhecer a assinatura digital de Alice como sendo v�lida.

� importante perceber que a assinatura digital, como descrita no exemplo anterior, n�o garante a confidencialidade da mensagem. Qualquer um poder� acess�-la e verific�-la, mesmo um intruso (Eve), apenas utilizando a chave p�blica de Alice. Para obter confidencialidade com assinatura digital, basta combinar os dois m�todos. Alice primeiro assina a mensagem, utilizando sua chave privada. Em seguida, ela criptografa a mensagem novamente, junto com sua assinatura, utilizando a chave p�blica de Bob. Este, ao receber a mensagem, deve, primeiramente, decifr�-la com sua chave privada, o que garante sua privacidade. Em seguida, "decifr�-la" novamente, ou seja, verificar sua assinatura utilizando a chave p�blica de Alice, garantindo assim sua autenticidade.

Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Segue a descri��o de alguns algoritmos utilizados para assinatura digital:

Algoritmo Descri��o
RSA Como j� mencionado, o RSA tamb�m � comutativo e pode ser utilizado para a gera��o de assinatura digital. A matem�tica � a mesma: h� uma chave p�blica e uma chave privada, e a seguran�a do sistema baseia-se na dificuldade da fatora��o de n�meros grandes.
ElGamal Como o RSA, o ElGamal tamb�m � comutativo, podendo ser utilizado tanto para assinatura digital quanto para gerenciamento de chaves; assim, ele obt�m sua seguran�a da dificuldade do c�lculo de logaritmos discretos em um corpo finito.
DSA O Digital Signature Algorithm, unicamente destinado a assinaturas digitais, foi proposto pelo NIST em agosto de 1991, para utiliza��o no seu padr�o DSS (Digital Signature Standard). Adotado como padr�o final em dezembro de 1994, trata-se de uma varia��o dos algoritmos de assinatura ElGamal e Schnorr. Foi inventado pela NSA e patenteado pelo governo americano.

Fun��o Hashing

A assinatura digital obtida atrav�s do uso da criptografia assim�trica ou de chave p�blica infelizmente n�o pode ser empregada, na pr�tica, de forma isolada, do modo como foi didaticamente descrito no item anterior. Est� faltando, portanto, descrever um mecanismo fundamental para o adequado emprego da assinatura digital. Este mecanismo � a fun��o Hashing. Sua utiliza��o como componente de assinaturas digitais se faz necess�rio devido � lentid�o dos algoritmos assim�tricos, em geral cerca de 1.000 vezes mais lentos do que os sim�tricos.

Assim, na pr�tica � invi�vel e contraproducente utilizar puramente algoritmos de chave p�blica para assinaturas digitais, principalmente quando se deseja assinar grandes mensagens, que podem levar preciosos minutos ou mesmo horas para serem integralmente "cifradas" com a chave privada de algu�m. Ao inv�s disso, � empregada uma fun��o Hashing, que gera um valor pequeno, de tamanho fixo, derivado da mensagem que se pretende assinar, de qualquer tamanho. Assim, a fun��o Hashing oferece agilidade nas assinaturas digitais, al�m de integridade confi�vel, conforme descrito a seguir.

Tamb�m denominada Message Digest, One-Way Hash Function, Fun��o de Condensa��o ou Fun��o de Espalhamento Unidirecional, a fun��o Hashing funciona como uma impress�o digital de uma mensagem gerando, a partir de uma entrada de tamanho vari�vel, um valor fixo pequeno: o digest ou valor hash.

Este valor est� para o conte�do da mensagem assim como o d�gito verificador de uma conta-corrente est� para o n�mero da conta ou o check sum est� para os valores que valida. Serve, portanto, para garantir a integridade do conte�do da mensagem que representa. Assim, ap�s o valor hash de uma mensagem ter sido calculado atrav�s do emprego de uma fun��o hashing, qualquer modifica��o em seu conte�do -mesmo em apenas um bit da mensagem - ser� detectada, pois um novo c�lculo do valor hash sobre o conte�do modificado resultar� em um valor hash bastante distinto.

Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Segue a descri��o de algumas func�es Hashing empregadas em produtos e protocolos criptogr�ficos:

Fun��es Descri��o
MD5 � uma fun��o de espalhamento unidirecional inventada por Ron Rivest, do MIT, que tamb�m trabalha para a RSA Data Security. A sigla MD significa Message Digest. Este algoritmo produz um valor hash de 128 bits, para uma mensagem de entrada de tamanho arbitr�rio. Foi inicialmente proposto em 1991, ap�s alguns ataques de criptoan�lise terem sidos descobertos contra a fun��o Hashing pr�via de Rivest: a MD4. O algoritmo foi projetado para ser r�pido, simples e seguro. Seus detalhes s�o p�blicos, e t�m sido analisados pela comunidade de criptografia. Foi descoberta uma fraqueza em parte do MD5, mas at� agora ela n�o afetou a seguran�a global do algoritmo. Entretanto, o fato dele produzir uma valor hash de somente 128 bits � o que causa maior preocupa��o; � prefer�vel uma fun��o Hashing que produza um valor maior.
SHA-1 O Secure Hash Algorithm, uma fun��o de espalhamento unidirecional inventada pela NSA, gera um valor hash de 160 bits, a partir de um tamanho arbitr�rio de mensagem. O funcionamento interno do SHA-1 � muito parecido com o observado no MD4, indicando que os estudiosos da NSA basearam-se no MD4 e fizeram melhorias em sua seguran�a. De fato, a fraqueza existente em parte do MD5, citada anteriormente, descoberta ap�s o SHA-1 ter sido proposto, n�o ocorre no SHA-1. Atualmente, n�o h� nenhum ataque de criptoan�lise conhecido contra o SHA-1. Mesmo o ataque da for�a bruta torna-se impratic�vel, devido ao seu valor hash de 160 bits. Por�m, n�o h� provas de que, no futuro, algu�m n�o possa descobrir como quebrar o SHA-1.
MD2 e MD4 O MD4 � o precursor do MD5, tendo sido inventado por Ron Rivest. Ap�s terem sido descobertas algumas fraquezas no MD4, Rivest escreveu o MD5. O MD4 n�o � mais utilizado. O MD2 � uma fun��o de espalhamento unidirecional simplificada, e produz um hash de 128 bits. A seguran�a do MD2 � dependente de uma permuta��o aleat�ria de bytes. N�o � recomend�vel sua utiliza��o, pois, em geral, � mais lento do que as outras fun��es hash citadas e acredita-se que seja menos seguro.

Criptografia Sim�trica x Assim�trica: Protocolos Criptogr�ficos

Qual o modelo de criptografia que devemos utilizar? Sim�trico ou assim�trico? A resposta � simples: devemos utilizar os dois, em um modelo denominado h�brido. O algoritmo sim�trico, por ser muito mais r�pido, � utilizado no ciframento da mensagem em si. Enquanto o assim�trico, embora lento, permite implementar a distribui��o de chaves e a assinatura digital. Al�m disso, como j� exposto no item anterior, deve-se utilizar tamb�m o mecanismo de Hashing para complemento da assinatura digital.

Criptografia Sim�trica.

Criptografia Assim�trica.

R�pida. Lenta.
Ger�ncia e distribui��o das chaves � complexa. Ger�ncia e distribui��o simples.
N�o oferece assinatura digital Oferece assinatura digital.

Em resumo, os algoritmos criptogr�ficos podem ser combinados para a implementa��o dos tr�s mecanismos criptogr�ficos b�sicos: o ciframento, a assinatura e o Hashing. Estes mecanismos s�o componentes dos protocolos criptogr�ficos, embutidos na arquitetura de seguran�a dos produtos destinados ao com�rcio eletr�nico. Estes protocolos criptogr�ficos, portanto, prov�m os servi�os associados � criptografia que viabilizam o com�rcio eletr�nico: disponibilidade, sigilo, controle de acesso, autenticidade, integridade e n�o-rep�dio.

Seguem exemplos de protocolos que empregam sistemas criptogr�ficos h�bridos:

Protocolo Descri��o
IPSec Padr�o de protocolos criptogr�ficos desenvolvidos para o IPv6. Realiza tamb�m o tunelamento de IP sobre IP. � composto de tr�s mecanismos criptogr�ficos: Authentication Header (define a fun��oHashing para assinatura digital), Encapsulation Security Payload (define o algoritmo sim�trico para ciframento) e ISAKMP (define o algoritmo assim�trico para Ger�ncia e troca de chaves de criptografia). Criptografia e tunelamento s�o independentes. Permite Virtual Private Network fim-a-fim. Futuro padr�o para todas as formas de VPN.
SSL e TLS Oferecem suporte de seguran�a criptogr�fica para os protocolos NTTP, HTTP, SMTP e Telnet. Permitem utilizar diferentes algoritmos sim�tricos, message digest (hashing) e m�todos de autentica��o e ger�ncia de chaves (assim�tricos).
PGP Inventado por Phil Zimmermman em 1991, � um programa criptogr�fico famoso e bastante difundido na Internet, destinado a criptografia de e-mail pessoal. Algoritmos suportados: hashing: MD5, SHA-1, sim�tricos: CAST-128, IDEA e 3DES, assim�tricos: RSA, Diffie-Hellman/DSS. Vers�o mais recente: 6.5.3.
S/MIME O S/MIME (Secure Multipurpose Internet Mail Extensions) consiste em um esfor�o de um cons�rcio de empresas, liderado pela RSADSI e pela Microsoft, para adicionar seguran�a a mensagens eletr�nicas no formato MIME. Apesar do S/MIME e PGP serem ambos padr�es Internet, o S/MIME dever� se estabelecer no mercado corporativo, enquanto o PGP no mundo do mail pessoal.
SET O SET � um conjunto de padr�es e protocolos, para realizar transa��es financeira seguras, como as realizadas com cart�o de cr�dito na Internet. Oferece um canal de comunica��o seguro entre todos os envolvidos na transa��o. Garante autenticidade X.509v3 e privacidade entre as partes.
X.509 Recomenda��o ITU-T, a especifica��o X.509 define o relacionamento entre as autoridades de certifica��o. Faz parte das s�ries X.500 de recomenda��es para uma estrutura de diret�rio global, baseada em nomes distintos para localiza��o. Utilizado pelo S/MIME, IPSec, SSL/TLS e SET. Baseado em criptografia com chave p�blica (RSA) e assinatura digital (com hashing).

Certificado Digital

Com um sistema de chave p�blica, o gerenciamento de chaves passa a ter dois novos aspectos: primeiro, deve-se previamente localizar a chave p�blica de qualquer pessoa com quem se deseja comunicar e, segundo, deve-se obter uma garantia de que a chave p�blica encontrada seja proveniente daquela pessoa (Bob). Sem esta garantia, um intruso Eve pode convencer os interlocutores (Alice e Bob) de que chaves p�blicas falsas pertencem a eles. Estabelecendo um processo de confian�a entre os interlocutores, Eve pode fazer-se passar por ambos.

Deste modo, quando um interlocutor (Alice) enviar uma mensagem ao outro (Bob) solicitando sua chave p�blica, o intruso poder� intercept�-la e devolver-lhe uma chave p�blica forjada por ele. Ele tamb�m pode fazer o mesmo com o recebedor (Bob), fazendo com que cada lado pense que est� se comunicando com o outro, quando na verdade est�o sendo interceptados pelo intruso. Eve ent�o pode decifrar todas as mensagens, cifr�-las novamente ou, se preferir, pode at� substitu�-las por outras mensagens. Atrav�s deste ataque, um intruso pode causar tantos danos ou at� mais do que causaria se conseguisse quebrar o algoritmo de ciframento empregado pelos interlocutores.

A garantia para evitar este ataque � representada pelos certificados de chave p�blica. Tais certificados consistem em chaves p�blicas assinadas por uma pessoa de confian�a, geralmente no formato padr�o ITU X.509v3. Servem para evitar tentativas de substitui��o de uma chave p�blica por outra. O certificado de Bob cont�m algo mais do que sua chave p�blica: cont�m informa��es sobre Bob - seu nome, endere�o e outras dados pessoais - e � assinado por algu�m em quem Alice deposita sua confian�a: uma autoridade de certifica��o ou CA (Certification Authority), que funciona como um cart�rio eletr�nico.

Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Assim, um certificado digital pode ser definido como um documento eletr�nico, assinado digitalmente por uma terceira parte confi�vel, que associa o nome (e atributos) de uma pessoa ou institui��o a uma chave criptogr�fica p�blica.

Pela assinatura da chave p�blica e das informa��es sobre Bob, a CA garante que a informa��o sobre Bob est� correta e que a chave p�blica em quest�o realmente pertence a Bob. Alice, por sua vez, confere a assinatura da CA e ent�o utiliza a chave p�blica em pauta, segura de que esta pertence a Bob e a ningu�m mais. Certificados desempenham um importante papel em um grande n�mero de protocolos e padr�es utilizados na prote��o de sistemas de com�rcio eletr�nico.

Autoridades de certifica��o, como Verisign, Cybertrust e Nortel, assinam certificados digitais garantindo sua validade. Uma CA tamb�m tem a responsabilidade de manter e divulgar uma lista com os certificados revogados (Certificate Revocation List - CRL). Certificados nesta lista podem ter sido roubados, perdidos ou, simplesmente, estar sem utilidade. As CAs podem estar encadeadas em hierarquias de certifica��o, onde a CA de um n�vel inferior valida sua assinatura com a assinatura de uma CA mais alta na hierarquia.

Quais tipos de algoritmos criptográficos podem ser usados no processo de assinatura digital?

Existem diversos tipos de cerificados, conforme descri��o feita a seguir.

  • Certificados de CA: utilizados para validar outros certificados; s�o auto-assinados ou assinados por outra CA.
  • Certificados de servidor: utilizados para identificar um servidor seguro; cont�m o nome da organiza��o e o nome DNS do servidor.
  • Certificados pessoais: cont�m nome do portador e, eventualmente, informa��es como endere�o eletr�nico, endere�o postal, etc.
  • Certificados de desenvolvedores de software: .utilizados para validar assinaturas associadas a programas.

A infra-estrutura para lidar com o gerenciamento de chaves p�blicas � definido pelo padr�o Public Key Infrastructure (PKI), que define onde os certificados digitais ser�o armazenados e recuperados, de que forma est�o armazenados, como um certificado � revogado, entre outras informa��es.

Este artigo foi escrito por Luiz Paulo Maia () e Paulo Sergio Pagliusi ().

Refer�ncias:

Security and Electronic Commerce, David Kosiur, Microsoft Press, 1997. http://mspress.microsoft.com/prod/books/sampchap/1252.htm

Cryptography and Network Security 2 ed., William Stallings, Prentice Hall, 1998.

Tese de Mestrado: "Introdu��o de Mecanismos de Seguran�a em Sistemas de Correio Eletr�nico"
Paulo Sergio Pagliusi, orientada por Cl�udio Leonardo Lucchesi e Luiz Eduardo Buzato,
UNICAMP, 1998.

Bruce Schneier: E-Mail Security - How To Keep Your Electronic Messages Private. 
John Wiley & Sons, Inc., EUA, 1995.

Bruce Schneier: Applied Cryptography. John Wiley & Sons, Inc., EUA, 1996.

Sites e Links interessantes: www.rsa.com; www.pgpi.com; e www.hackers.com.br.

Como os algoritmos de resumo criptográficos podem ser utilizados na assinatura digital?

Os algoritmos de criptografia foram desenvolvidos para garantir o acesso rápido a dados eletrônicos e evitar alteração ou compartilhamento indevidos. Dessa forma, os envolvidos na troca digital podem ter certeza de que estão acessando informações legítimas.

Qual algoritmo pode ser usado tanto para criptografia quanto para assinatura digital?

Para levar a cabo a assinatura digital existem algoritmos como o DSA, que foi proposto pelo National Institute of Standards and Technology (NIST) e mais tarde estandardizado, que se pode combinar um algoritmo de cifrado, como, por exemplo, o RSA, com alguma das funções HASH já vistas: o MD5, o MD2, o SHA-1, etc.

Qual a criptografia da assinatura digital?

A assinatura digital é um recurso que usa criptografia para validar um documento em formato digital de forma segura e confiável. Trata-se de uma chave privada e individual, exclusiva para de cada pessoa, que é vinculada a um certificado digital, funcionando como registro de autenticidade.

Quais os 3 tipos de algoritmos utilizados em criptografia?

Os principais algoritmos de criptografia simétrica são DES (Data Encryption Standard), 3DES (Triple DES), IDEA (International Data Encryption Algorithm), RC2 e RC4 e AES (Advanced Encryption Standard).