Você está na página 1de 5

Criptografia, Chaves Pblicas e Assinatura Digital para Leigos

Por Joel Guilherme

Conceitos Bsicos Suponha que algum deseja enviar uma mensagem a voc e quer ter a certeza de que mais ningum poder ler a mesma. Independente das medidas que se tome, existe sempre a possibilidade de que alguma outra pessoa possa abrir a correspondncia (papel ou eletr nica!, para dela tomar conhecimento. "ara alcan#armos uma condi#$o de sigilo da mensagem, podemos contar com as %erramentas da Criptografia (a cincia que trata deste tipo de problema! para &embaralhar' a mensagem de tal %orma que somente o destinatrio autorizado possa recuper(la. )a terminologia da *riptogra%ia a mensagem original chamada +texto claro+, ou simplesmente +mensagem+. , processo de embaralhar a mensagem de %orma a ocultar seu conte-do de outrem denominado +cifrao+, se constituindo de trans%orma#.es matemticas adequadas sobre a mensagem. / mensagem embaralhada, ou seja, ci%rada, denominada +texto cifrado+ ou +criptograma+. *laro que devemos ter o processo inverso de recuperar a mensagem a partir do criptograma, e este processo denominado +decifrao+. ,s processos de ci%ra#$o e deci%ra#$o se utilizam de um algoritmo (o processo de codi%ica#$o0embaralhamento! e de um par1metro de controle denominado +chave criptogrfica+, de %orma que a deci%ra#$o, em princ2pio, somente poss2vel conhecendo(se a chave apropriada para deci%rar, mesmo que se conhe#a o algoritmo utilizado. 3nquanto a *riptogra%ia trata de manter mensagens secretas, por outro lado existe tambm a +Criptoanlise+, que a arte de +quebrar+ os criptogramas, recuperando(se as mensagens, mesmo sem se conhecer a chave apropriada para a deci%ra#$o. "or isto, os algoritmos criptogr%icos devem satis%azer a uma srie de critrios de %orma a garantir, no maior grau poss2vel, que seja impraticvel quebrar o sistema. / *riptogra%ia trata n$o apenas dos problemas estritos de sigilo de mensagens, como tambm de problemas de autentica#$o, assinatura digital (eletr nica!, dinheiro eletr nico, e outras aplica#.es. Algoritmos Criptogrficos 3xistem duas classes de algoritmos criptogr%icos4 simtricos (ou de chave-secreta! e assimtricos (ou de chave-pblica!. ,s algoritmos simtricos utilizam uma mesma chave tanto para ci%rar como para deci%rar (ou pelo menos a chave de deci%ra#$o pode ser obtida trivialmente a partir da chave de ci%ra#$o!, ou seja, a mesma chave utilizada para &%echar o cadeado' utilizada para &abrir o cadeado'. )os algoritmos assimtricos temos chaves distintas, uma para ci%rar e outra para deci%rar e, alm disso, a chave de deci%ra#$o n$o pode ser obtida a partir do conhecimento da chave de ci%ra#$o apenas. /qui, uma chave utilizada para &%echar' e outra chave, di%erente, mas relacionada 5 primeira, tem que ser utilizada para &abrir'. "or isso, nos algoritmos assimtricos, as chaves s$o sempre geradas aos pares4 uma para ci%rar e a sua correspondente para deci%rar. "ela sua caracter2stica no uso da chave, os algoritmos simtricos exigem que a chave seja mantida secreta, do conhecimento exclusivo dos dois interlocutores. 3ste %ato traz complexidade ao manuseio destas chaves, o que di%iculta um pouco a utiliza#$o destes algoritmos isolada( mente. 6 requerido um canal seguro que permita a um usurio transmitir a chave ao seu interlo( cutor (um canal seguro pode ser, por exemplo, um portador de con%ian#a!. / %igura 7 ilustra a %orma de opera#$o de uma algoritmo criptogr%ico simtrico, onde 8ob envia uma mensagem
9oel :uilherme "gina 7 ;<0770=<7;

ci%rada para /lice, tendo antes que enviar a chave que vai utilizar, secretamente, para /lice. *have " 8ob $ensagem (abcde%...z! Cifrar *anal Seguro *have " /lice Decifrar $ensagem (abcde%...z!

Criptograma (...! *anal Inseguro

>igura 74 ?so de algoritmo criptogr%ico simtrico (chave secreta!. ,s algoritmos assimtricos permitem que a chave de cifra o possa ser tornada pblica, por exemplo, disponibilizando(a em um reposit@rio de acesso p-blico (&canal p-blico'!, e por isso denominada chave!pblica, retirando aquele problema existente nos algoritmos simtricos. Aualquer um pode ci%rar mensagens com uma dada chave(p-blica, contudo somente o destinatrio, detentor da correspondente chave de deci%ra#$o (denominada chave!privada, ou secreta!, poder deci%r(la. / chave(privada n$o precisa e nem deve ser dada a conhecer a ningum, devendo ser guardada em segredo pelo seu detentor apenas, que deve tambm ter sido o responsvel pela gera#$o do seu par de chaves, enquanto a chave(p-blica pode ser publicada livremente. )a %igura = temos uma ilustra#$o da opera#$o de um algoritmo assimtrico. /qui, /lice gera seu par de chaves, e envia (publica! sua chave(p-blica para 8ob. 3ste ci%ra a mensagem com a chave(p-blica de /lice (B"-blica!, a qual, e somente ela, ser capaz de deci%r(la, utilizando sua chave(privada (BSecreta!. *have "Pblica 8ob $ensagem (abcde%...z! Cifrar *anal "-blico *have "#ecreta /lice Decifrar $ensagem (abcde%...z!

Criptograma (...!

*anal Inseguro >igura =4 ?so de algoritmo criptogr%ico assimtrico (chave p-blica!.

:eralmente os algoritmos simtricos s$o mais e%icientes computacionalmente que os assimtricos, podendo ser bastante rpidos em sua execu#$o, permitindo altas taxas de ci%ra#$o (at da ordem de gigabits0s C 7< D bits0s!. ,s algoritmos assimtricos s$o geralmente menos e%icientes, e normalmente utiliza#$o dos dois tipos de algoritmos *have a tendncia a*anal "-blico *have em conjunto, tal que um algoritmo de chave(p-blica utilizado para ci%rar uma chave criptogr%ica, gerada "Pblica "#ecreta aleatoriamente, para ser ent$o utilizada para ci%rar a mensagem atravs de um algoritmo simtrico. a chave simtrica utilizando sua chave(privada 8ob, destinatrio ent$o primeiro deci%ra C riptograma /lice no sistema de chave(p-blica, e ap@s deci%ra a mensagem utilizando a chave recuperada no ( ! de +compartilhar o segredo da chave+ com sistema simtrico. Eesta %orma n$o h o problema %$ensagem' %$ensagem' Cifrar Decifrar ningum. / cada nova mensagem pode(se sempre repetir todo o processo. )esta situa#$o, ("! ("! se 8ob Inseguro deseja enviar uma mensagem para /lice, *anal ele primeiro escolhe uma chave ", e a envia atravs do algoritmo de chave(p-blica ci%rada com a "Pblica de /lice. 3sta recupera " deci%rando o criptograma recebido com sua chave privada "#ecreta. /gora 8ob pode enviar a mensagem real *have *have atravs do algoritmo simtrico, mais e%iciente para isto, ci%rando(a com a chave ", que /lice j " " disp.e, e enviada a ela de %orma segura.
9oel :uilherme "gina = ...! (

Criptograma

$ensagem (abcde%...z!

Cifrar

Decifrar

*anal Inseguro

$ensagem (abcde%...z!

;<0770=<7;

>igura ;4 ?so de misto de algoritmo criptogr%ico assimtrico e simtrico. Assinaturas Digitais /lguns algoritmos criptogr%icos de chave(p-blica permitem que estes sejam utilizados para gerar o que se denomina de assinaturas digitais. 3stes algoritmos tm a caracter2stica de, alm da opera#$o normal de ci%rar com a chave(p-blica e deci%rar com a chave(privada, eles permitem tambm que, &ci%rando(se' com a chave(privada, a &deci%ra#$o' com a chave(p-blica resulta na recupera#$o da mensagem. ,bviamente esta %orma de uso n$o assegura o sigilo da mensagem, uma vez que qualquer um pode &deci%rar' o criptograma, dado que a chave(p-blica de conhecimento p-blico. 3ntretanto, se esta opera#$o resulta na &mensagem esperada' podemos ter a certeza de que somente o detentor da correspondente chave(privada poderia ter realizado a opera#$o de &ci%ra#$o'. /ssim, uma assinatura digital o criptograma resultante da ci%ra#$o de um determinado bloco de dados (documento! pela utiliza#$o da chave(privada de quem assina em um algoritmo assimtrico. / veri%ica#$o da assinatura %eita &deci%rando(se' o criptograma (assinatura! com a suposta chave(p-blica correspondente. Se o resultado %or &vlido', a assinatura considerada &vlida', ou seja, autntica, uma vez que apenas o detentor da chave( privativa, par da chave(p-blica utilizada, poderia ter gerado aquele criptograma. )a %igura F ilustramos este procedimento. 8ob *anal Inseguro /lice

*have "#ecreta (8ob! Cifrar *anal Inseguro Decifrar

*have "Pblica (8ob!

&'

>igura ;4 :era#$o de Assinatura Digital de um documento. /qui, 8ob assina um &documento', ci%rando(o com sua chave(privada e enviando tanto o documento original quanto a &assinatura' para /lice. 3sta &veri%ica a assinatura &deci%rando(a'
9oel :uilherme "gina ; ;<0770=<7;

com a chave(p-blica de 8ob (de conhecimento p-blico!, e comparando o resultado com o documento recebido. Se estiverem de acordo, a assinatura &con%ere', caso contrrio a assinatura considerada invlida, signi%icando que ou n$o %oi 8ob quem assinou, ou o documento %oi adulterado ap@s a assinatura. ,bserve(se que este procedimento capaz de garantir tanto a origem (autentica#$o do emissor!, tendo em vista que supostamente somente 8ob conhece sua chave(privada e portanto somente ele capaz de gerar uma assinatura que possa ser veri%icada com sua chave(p-blica, como tambm a integridade do documento, j que, se o mesmo %or alterado, a veri%ica#$o da assinatura ir indicar isto, caso tenha vindo e%etivamente do pretenso emissor. ?sualmente, %ace 5 ine%icincia computacional dos algoritmos simtricos, os mtodos para assinatura digital empregados na prtica n$o assinam o documento que se deseja autenticar em si, mas uma smula deste, obtida pelo seu processamento atravs do que se denomina uma funo de Hashing. ?ma %un#$o de hashing uma %un#$o criptogr%ica que gera uma sa2da de tamanho %ixo (geralmente 7=G a =HI bits! independentemente do tamanho da entrada. / esta sa2da se denomina de hash da mensagem (ou documento ou o que quer que seja a entrada!. "ara ter utilidade criptogr%ica, a %un#$o de hashing deve ser tal que a! simples (e%iciente, rpido! se computar o hash de dada mensagemJ b! impraticvel se determinar a entrada a partir de seu hashJ c! impraticvel se determinar uma outra entrada que resulte no mesmo hash de uma dada entradaJ d! os valores de hash poss2veis s$o estatisticamente equiprovveis. / opera#$o de assinatura utilizando hashing %eita ent$o da seguinte %orma, como ilustrado na %igura F4 8ob D *anal Inseguro /lice D(

+ashing

+ashing

h) *have "#ecreta (8ob! h Cifrar *have "Pblica (8ob! Decifrar h((

&'

*anal Inseguro %igura F4 /ssinatura utilizando fun*es de hashing. i. ii. iii. iv. 8ob computa o hash do documento D que deseja assinar, obtendo hJ 8ob assina o hash obtido, ci%rando(o com sua chave(privada, obtendo AJ 8ob envia o documento original, D, e sua assinatura, A, para /liceJ /lice recalcula o hash do documento recebido, D(, ( %cil %azer este clculo e a %un#$o
"gina F ;<0770=<7;

9oel :uilherme

de hashing de dom2nio p-blico!, obtendo h(J v. /lice &deci%ra' a assinatura recebida com a chave p-blica de 8ob, obtendo h((J vi. Se h( h((, ent$o a assinatura con%ere e, com elevad2ssimo grau de certeza, /lice sabe que %oi 8ob que enviou o documento, e o documento recebido c@pia %iel do original. *aso contrrio, ou n$o %oi 8ob que o enviou (assinou!, ou o documento %oi adulterado ap@s a assinatura, ou ambos. Certificados Digitais e Autoridades Certificadoras Kesta um problema em rela#$o 5s chaves p-blicas4 como confiar ,ue determinada chave efetivamente pertence ao seu suposto proprietrio' "ara resolver este problema, %oi criada uma aplica#$o especial para as assinaturas digitais C os Certificados Digitais. ?m certi%icado digital nada mais que um documento (eletr nico! contendo a chave p-blica de um usurio (ou processo! e dados de identi%ica#$o do mesmo. 3ste documento deve ser assinado por uma autoridade confivel, a Autoridade Certificadora, atestando sua integridade e origem. ?sualmente, certi%icados digitais s$o utilizados para garantir a integridade e origem de chaves p-blicas depositadas em bases de dados de acesso p-blico. , padr$o mais comumente utilizado para certi%icados digitais o denominado L(H<D, o qual prev, entre outras in%orma#.es poss2veis, os seguintes dados de identi%ica#$o4 chave p-blica do usurioJ nome do usurio proprietrio da chaveJ nome da organiza#$o associadaJ data de emiss$o do certi%icadoJ per2odo de validade da chave.

Eesta %orma, obtendo(se uma chave p-blica de um usurio associada a um tal certi%icado, con%iando(se na autoridade certi%icadora e veri%icando(se sua assinatura no certi%icado, pode(se ter certeza de que a chave realmente pertence ao alegado usurio, e que, pretensamente, somente ele disp.e da correspondente chave secreta que o capacita a deci%rar mensagens ci%radas com aquela chave p-blica, ou assinar documentos com a correspondente chave secreta. *erti%icados Eigitais s$o a resposta tecnol@gica atual para o problema de autentica#$o de usurios na crescente demanda por seguran#a nos servi#os o%erecidos via Internet, desde home banking, passando por compras on-line, indo at servi#os de in%orma#$o por assinatura. 3les podem ser vistos como um Passaporte Eletrnico, onde est$o contidas as in%orma#.es e garantias necessrias sobre a identidade do portador, alm de sua chave p-blica. (x(x(x(

9oel :uilherme

"gina H

;<0770=<7;

Você também pode gostar