You are on page 1of 15

3 Sistemas Criptogrcos a

3.1 Introduo ca ` A medida que a Internet se populariza, a quantidade de documentos e transaoes eletrnicas aumenta. A necessidade de segurana eletrnica uma c o c o e realidade, e a Criptograa o suporte bsico. So parmetros de segurana: e a a a c Condencialidade: garantir a condencialidade da mensagem em relao ca
PUC-Rio - Certificao Digital N 0115626/CA

a pessoas no autorizadas; a Integridade: garantir que a mensagem no foi modicada; a Autenticidade: garantir a origem da mensagem; e No-repdio: garantir que uma pessoa no possa negar que enviou a a u a mensagem. 3.2 Conceitos iniciais 3.2.1 Criptologia Nesta seao, detalhamos alguns conceitos iniciais sobre esta cincia. c e A palavra criptograa composta pelos termos gregos: kryptos = secreto e e grafo = escrita. Consiste na cincia e na arte de se comunicar secretamente. e Um sistema criptogrco possui 5 componentes (31): a 1.Um espao de textos em claro (T); c 2.Um espao de textos cifrados (ou criptograma, C); c 3.Um espao de chaves (K); c 4.Uma fam de transformaoes de cifragem Ee : TC, e K; lia c 5.Uma fam de transformaoes de decifragem Dd : CT, d K. lia c e E para as chaves e,d K, Dd a inversa de Ee , logo para t T temos Dd ( Ee (t) ) = t. A seguir pontuamos alguns conceitos que esto formalizados em (32): a Criptografar : converter um texto em claro em um texto cifrado (crip-

Cap tulo 3. Sistemas Criptogrcos a

23

tografado) atravs de uma operaao invers dependente de uma chave secreta e c vel C = Ee (T). Decriptografar : reconstituir o texto em claro original atravs da operaao e c inversa sobre o texto cifrado com o conhecimento da chave secreta T = Dd (C). Criptoanlise: anlise da criptograa utilizada com o objetivo de se dea a tectar fragilidades e a decriptograa do texto cifrado sem o conhecimento da chave. Criptologia: cincia que estuda a criptograa e a criptoanlise. e a Sistema criptogrco: conjunto formado por um algoritmo, a coleao de a e c textos em claro, textos cifrados e chaves. Chave secreta: informao que s o remetente e o destinatrio possuem. E ca o a utilizada para criptografar e decriptografar a mensagem. Nem sempre a chave do remetente igual a do destinatrio, mas esto sempre relacionadas. e a a Canal : meio pelo qual a mensagem trafega, pode ser seguro ou no. a Sistemas criptogrcos simtricos: fcil deduzir mutuamente o par a e e a de chaves (e,d), uma em funo da outra. Muitas vezes: e=d. ca
PUC-Rio - Certificao Digital N 0115626/CA

Sistemas criptogrcos assimtricos ou de chave pblica: coma e u e putacionalmente dif deduzir mutuamente o par de chaves (e, d), uma em cil funao da outra, onde e = chave pblica, e d = chave privativa (ou privada, c u ou secreta). 3.2.2 Segurana de um Sistema Criptogrco c a H dois enfoques na discusso de segurana em sistemas criptogrcos: a a c a sistemas computacionalmente seguros e sistemas com segurana perc feita. Um sistema computacionalmente seguro se o melhor algoritmo e para quebr-lo necessita de N operaoes, onde N um nmero muito grande. a c e u O problema que no existe uma demonstraao de que algum sistema e a c criptogrco em uso seguro com esta deniao. Na prtica, um sistema est a e c a a computacionalmente seguro se o melhor mtodo conhecido para quebrar o e sistema requer uma quantia muito grande de tempo de processamento (mas isto muito diferente de uma prova de segurana). Um outro enfoque prover e c e evidncia de segurana computacional comparando a segurana do sistema e c c criptogrco com problemas garantidamente dif a ceis (reduao matemtica). E c a importante observar que isto apenas uma prova de segurana relativa por e c reduao a algum outro problema, no uma prova absoluta de segurana. c a c Um sistema criptogrco tem segurana incondicional ou segua c rana perfeita quando no pode ser quebrado, at mesmo com recursos c a e

Cap tulo 3. Sistemas Criptogrcos a

24

computacionais innitos. A segurana incondicional de um sistema criptogrco no pode ser c a a estudada obviamente do ponto de vista da complexidade computacional, mesmo porque admitido que o tempo de computaao pode ser innito. O e c instrumento apropriado para estudar segurana incondicional a teoria das c e probabilidades. Shannon (30) deniu um modelo matemtico preciso para identicar um a sistema criptogrco seguro. O objetivo de um criptoanalista determinar a e a chave K, o texto original, ou ambos. Porm, ele pode car satisfeito com e alguma informaao probabil c stica sobre o texto original: se um arquivo de e som, ou um texto em alemo, ou dados de planilha eletrnica. a o Um sistema criptogrco tem segurana perfeita quando o texto cifrado a c no fornece nenhuma informao sobre o texto original. Em termos probaa ca bil sticos isto pode ser expresso como P(x|y) = p(x)
PUC-Rio - Certificao Digital N 0115626/CA

onde p(x) a probabilidade da mensagem original ser x e p(x|y) a e e probabilidade condicional da mensagem original ser x dado que a mensagem cifrada y. e Shannon demonstrou que para um sistema ter segurana perfeita c e necessrio que o nmero de poss a u veis chaves seja pelo menos to grande quanto a o nmero de poss u veis mensagens. Portanto, a chave deve ser pelo menos do mesmo tamanho que a mensagem, e nenhuma chave pode ser usada de novo. Um sistema conhecido de segurana perfeita o One-time Pad , que c e foi descrito primeiro por Gilbert Vernam em 1917 para uso em cifragem e decifragem automtica de mensagens de telgrafo. E interessante observar que, a e por muitos anos, o One-time Pad era considerado um sistema inquebrvel. a Todavia, no havia prova disto at Shannon desenvolver o conceito de segredo a e perfeito, mais de 30 anos depois. O sistema tambm atraente por causa da e e facilidade de cifragem e decifragem Infelizmente, existem grandes desvantagens na adoo de um sistema ca seguro como One-time Pad . Primeiro, devido ao fato de que o nmero de u chaves que deve ser enviado por meio seguro pelo menos to grande quanto e a o nmero de textos em claro. Segundo, porque necessrio que o nmero u e a u de bits da chave seja igual ao nmero de bits da mensagem. Este no seria u a um problema principal se a mesma chave pudesse ser usada para codicar mensagens diferentes. Porm, a segurana perfeita depende do fato que cada e c chave usada para uma s cifragem. Assim, uma nova chave deve ser gerada e o para cada mensagem transmitida. Se esta exigncia no for satisfeita, o sistema e a

Cap tulo 3. Sistemas Criptogrcos a

25

pode ser atacado. Por exemplo, se a mensagem original for conhecida, basta realizar um XOR entre a mensagem original e o texto cifrado para desvendar a chave. Um algoritmo de cifragem quebrvel quando computacionalmente e a e vivel testar todas as chaves poss a veis para decriptografar uma determinada mensagem. Este tipo de ataque chamado de fora bruta ou busca exaustiva e c e seu xito depende do tamanho da chave. e Uma outra tcnica que pode ser utiliza com sucesso o chamado ataque e e baseado na constataao que, em vrios textos de um mesmo estat stico. E c a idioma, a freqncia de cada letra mais ou menos xa. O inimigo usa este ue e conhecimento para comparar a freqncia de cada letra da mensagem cifrada ue com as freqncias no idioma suposto. Se o ciframento foi feito atravs de uma ue e simples substituio, a quebra imediata. ca e Duas tcnicas bsicas para a diminuiao das redundncias em uma e a c a mensagem so, de acordo com Shannon (30), confuso e difuso. A confuso a a a a oculta a relao entre o texto original e o texto cifrado. Isso diculta o estudo do ca texto cifrado na procura por redundncias e padres estat a o sticos. A substituio ca um mtodo de confuso. A difuso suaviza a redundncia do texto original de e e a a a forma que as redundncias quem espalhadas no texto cifrado. Assim, podea se dizer que uma boa cifra de substituio acrescenta confuso a informaao, ca a ` c enquanto uma boa cifra de transposio acrescenta difuso. ca a 3.2.3 Tipos de Inimigo Basicamente, temos dois tipos de inimigos: 1. Inimigo Passivo: intercepta a mensagem e tenta ganhar conhecimentos atravs dela, mas no interfere no processo de comunicaao. Possui e a c basicamente dois objetivos: Anlise do contedo: tenta descobrir o contedo (ou parte) de uma mensagem a u u cifrada. Anlise de trfego: tenta descobrir a freqncia com que as mensagens passam a a ue pelo canal, alm do destinatrio e remetente. e a 2. Inimigo Ativo: interfere na comunicaao de diversas formas: c Interrupo: o inimigo interrompe as comunicaes como um todo. Uma menca co sagem no consegue chegar no destinatrio; a a Modicaao: o inimigo intercepta e altera a mensagem; c Fabricaao: um inimigo gera mensagens falsas e insere no canal; c Impersonicaao (disfarce): o inimigo est tentando se passar por uma outra c a pessoa, falsicando mensagens ou tentando conseguir acesso a um sistema;

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

26

Repetiao (replay): o inimigo possui uma mensagem previamente intercepc tada e tenta us-la novamente; a Negao de servio (DoS): o inimigo atrapalha o funcionamento do sistema. ca c 3.2.4 Tipos de Ataque Os tipos de ataques levam em considerao o conhecimento adquirido ca pelo inimigo, ou seja, se ele possui: Somente o texto cifrado; Pares de textos em claro e cifrado (T,C), mas no pode escolher; a Pares escolhidos de textos em claro de entrada, gerando textos cifrados na sa da; Ou, se escolhe os textos cifrados e obtm os textos em claro equivalentes. e 3.2.5 N veis de Risco
PUC-Rio - Certificao Digital N 0115626/CA

O n de risco de uma aplicaao est diretamente relacionado as perdas vel c a ` nanceiras, ou mesmo humanas, que uma falha na segurana pode causar: c Baixo risco: se os dados foram descobertos ou sabotados, o remetente poder contornar o fato com relativa inconvenincia. Geralmente so a e a informaoes que no tem a atenao do atacante. c a c Mdio risco: algum grau de perda esperado e tolerado, mas srias e e e perdas podem prejudicar a empresa. Exemplo: site de vendas na Web com transaoes comerciais. Devem se proteger de ataques, pois detm uma pequena c e atenao de hackers. c Alto risco: uma falha na segurana causa danos nanceiros ou emc baraos. Exemplo: invaso de bancos, alterao de informaoes de Instituioes c a ca c c importantes do pa A segurana deve ser levada a srio, pois so o alvo natural s. c e a e cont nuo de ataques. Aplicao cr ca tica: Falhas podem causar perda de vidas humanas. Aplicaoes militares. Exemplo: automaao de fbricas e setor de transporte. A c c a segurana deve ter uma importncia no projeto inicial e revises peridicas. c a o o 3.2.6 Vulnerabilidades Para se ter um sistema seguro devemos nos preocupar com os seguintes aspectos pass veis de vulnerabilidades: algoritmos e protocolos; pessoas responsveis pelo sistema; a

Cap tulo 3. Sistemas Criptogrcos a

27

nmero de pessoas que conhecem a chave do sistema; u local de armazenamento da chave; pessoas que se relacionam com as pessoas responsveis pelo sistema. a 3.3 Sistemas Criptogrcos Clssicos a a A seguir, a descriao de alguns sistemas criptogrcos clssicos (3). c a a 3.3.1 Monoalfabticos e (a) Aditivos O exemplo mais antigo de sistemas aditivos de que se tem not o cia e conhecido como CIFRA DE CESAR, usado pelo general e estadista romano Jlio Csar em sua campanha na Glia (49 - 44 A.C.) e na correspondncia u e a e
PUC-Rio - Certificao Digital N 0115626/CA

com seus amigos. Nele, cada letra do texto-claro substitu pela letra e da correspondente a trs posioes adiante no alfabeto. e c O mtodo do sistema aditivo consiste em adicionar ao valor que representa a e posio ocupada pela letra no alfabeto o valor do desvio (chave), indicando a ca posio da letra-cifra. ca Atribui-se a ALBERTI, secretrio da Cria Romana, a invenao de um a u c dispositivo simples, na idade mdia (476 a 1453) conhecido como DISCO e DE CIFRAR. Considerando um alfabeto com 26 letras o desvio pode variar de 0 at 25. Isto funciona como a operaao de ADICAO em ARITMETICA e c MODULAR e pode ser representado, matematicamente, como: Ci = mi + d (mod 26) O total de chaves poss veis 26, considerado tambm o desvio=0 que e e reproduz o texto em claro. Obviamente, o sistema totalmente inseguro. e (b) Multiplicativos Existe, por analogia com o anterior, o sistema multiplicativo, no qual a operao de soma substitu pela multiplicaao: ca e da c Ci = mi * d (mod 26) Entretanto, algumas chaves no so aproveitveis (0, 2, 4., . . . ). Caso a a a fossem aproveitadas, a volta do criptograma para o texto em claro (decriptograa) causaria ambigidades. Por exemplo, com d = 2 a cifra B representa u

Cap tulo 3. Sistemas Criptogrcos a

28

o A ou o N ? Observa-se que somente os nmeros primos com o mdulo podem u o ser aproveitados como chaves (propriedade da aritmtica modular). e Ento, s so aproveitadas as chaves 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 e a o a 25. O total de chaves poss veis 12, considerada tambm a multiplicaao por 1 e e c que reproduz o texto em claro. O sistema, bastante inseguro como o anterior, foi usado em composio com o aditivo para gerar o conhecido como am. ca (c) Ans Conforme foi dito, combina os dois sistemas anteriores, e pode ser representado por: Ci = ( * mi ) + Sua notao freqentemente representada por [ , ], a chave do ca e u sistema. O sistema aditivo caso particular do am quando = 1 enquanto e o multiplicativo o para = 0 e O total de chaves poss veis 312 (12 * 26) considerada, tambm aqui a chave e e [ 1, 0 ] que reproduz o texto em claro. Nos trs sistemas monoalfabticos vistos at agora, o conhecimento da e e e correspondncia criptograma-texto em claro para uma unica letra denuncia a e correspondncia de todo o alfabeto. Essa fraqueza de correspondncia pode ser e e contornada pela utilizaao dos alfabetos desordenados. c Esses se enquadram nos sistemas monoalfabticos genricos, dos quais os e e anteriores so casos particulares. a (d) Genricos e Neste sistema o alfabeto-cifra pode estar em qualquer ordem. O total de chaves poss veis de 26! ( 4 * 10 26). Considerando um processador que e leve 1 microssegundo para testar cada chave, a pesquisa exaustiva de todas as chaves consumiria 1,7 * 1014 anos ( 50.000 vezes a idade estimada da Terra). Encarado sob o ponto de vista do nmero de chaves poss u veis, este sistema poderia ser considerado absolutamente seguro, como no in de sua utilizaao. cio c Em relao aos anteriores, quando o alfabeto-cifra desordenado, no ca e a proporciona o conhecimento da correspondncia das demais letras ao se e descobrir uma delas.

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

29

3.3.2 Polialfabticos e E uma combinaao ordenada de diversos sistemas monoalfabticos. Um c e exemplo o Sistema de Vigen`re: e e a chave um conjunto de p letras: ( L1 , L2 , L3 , . . . , Lp ); e a mensagem deve ser dividido em blocos de p letras: ( A1 , A2 , A3 , . . . , Ap ); texto cifrado C obtido a partir da frmula: e o C = ((A1 + L1 )mod 26, (A2 + L2 )mod 26, . . . , (Ap + Lp )mod 26) 3.3.3 Permutao ca ca e Seja um vetor de n elementos: V=(v1 , v2 , . . . , vn ). Uma Permutao uma operaao denida por um vetor P=(p1 , p2 , . . . , pm ). c P deve ter todos os nmeros entre 1 e m, sem repetiao de nenhum, isto u c faz com que P tenha uma permutaao inversa. A mensagem dividida em c e blocos de m letras e a chave deve ser aplicada para permutar as letras. 3.3.4 Esteganograa Esteganograa a arte de esconder mensagens secretas em um meio de e maneira que as mesmas passem desapercebidas. Exemplos: raspar a cabea de um mensageiro e escrever a mensagem no seu couro c cabeludo. Esperar o cabelo crescer e enviar o mensageiro; escrever uma carta com tinta invis vel; substituir os bits menos signicativos de uma imagem ou som pelos bits da mensagem que se quer esconder. 3.3.5 Rotores e Seja Me (.) um Sistema Monoalfabtico: Me (x) = (x+e) mod 26 Me 1 (x) = (x-e) mod 26 ca e c Seja e (.) um Sistema de Permutao. Um rotor uma funao R(.) do tipo: Rs;k (x) = Mk 1 [ s 1 (Mk (x)) ] Rs;k 1 (x) = Mk 1 [ s (Mk (x)) ]

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

30

E uma composiao de funoes implementada com discos (rotores). A c c mquina Enigma era um sistema de 3 ou 4 discos, e cada Diviso de Exrcito a a e nazista possu uma combinaao de discos a qual era atribu uma cor. a c da 3.4 Substituio Homofnica ca o A histria da criptograa demonstra que um tipo de ataque muito o utilizado o ataque estat e stico, onde um conhecimento das particularidades de uma determinada l ngua usado heuristicamente para a quebra dos cdigos. e o Uma soluo a tcnica de substituio homofnica. ca e e ca o A substituio homofnica consegue suavizar a distribuiao de probabilca o c idades (ou frequncias) dos s e mbolos de um texto em claro. Desta forma, a tarefa do criptoanalista dicultada. A substituio homofnica convencional e ca o associa um s mbolo a um conjunto de s mbolos substitutos poss veis, chamados homofnicos, tais que a distribuiao destes novos s o c mbolos seja equiprovvel. a Assim, cada s mbolo do alfabeto original desdobrado em outros equiprovveis. e a Em 1988, Gnther (5) introduziu uma generalizao da substituiao hou ca c mofnica, uma nova forma de escolha dos homofnicos especicada. Um ano o o e mais tarde, Massey et al. (11) aplicaram conceitos de Teoria da Informaao c ` proposta de Gnther e formularam a Substituiao Homofnica de Tamanho a u c o Varivel. Este novo tipo de substituiao homofnica uma generalizaao da a c o e c convencional, onde tem-se homofnicos representados por cdigos de comprio o mentos diferentes, e ainda, cada s mbolo do alfabeto original pode ser substitu por homofnicos no equiprovveis, ou seja, os homofnicos podero do o a a o a ter probabilidades distintas. Este o objetivo da substituiao homofnica: e c o converter a seqncia de texto em claro em uma seqncia completamente ue ue aleatria. o

PUC-Rio - Certificao Digital N 0115626/CA

Figura 3.1: Um esquema geral para substituio homofnica. ca o A gura 3.1 representa um esquema de substituio genrico para repca e resentar tanto a substituiao homofnica convencional como a substituiao c o c homofnica de tamanho de varivel. O canal homofnico sem memria. O o a o e o mbolos poss veis alfabeto de entrada { u1 , u2 ,..., uL } coincide com o grupo de s e e de U. O alfabeto de sa { v1 , v2 , v3 ,... } tambm nito ou innitamente da contvel, e com probabilidades de transio P(V=vj | U=ui ). Para cada j a ca

Cap tulo 3. Sistemas Criptogrcos a

31

existe exatamente um i tal que P(V=vj | U=ui ) = 0. Cada vj com P(V=vj | a o U=ui ) > 0 ser um homofnico para ui . Quando o canal homofnico da gura 3.1 determin o e stico, todas as probabilidades de transio diferentes de zero so iguais a 1 (podemos tambm ca a e dizer que V=U ). Neste caso, ento a gura 5.1 representa uma codicaao de a c fonte usual (ou at mesmo uma compresso de dados ). e a Quando o canal homofnico no determin o e a stico mas a codicaao c binria livre de prexo simples, ou seja, todos os cdigos tm o mesmo a e o e comprimento m, ento a gura 3.1 representa substituio homofnica cona ca o vencional. Quando o canal homofnico no determin o e a stico e a codicao binria ca a livre de prexo possui comprimento varivel, ento a gura 3.1 representa a a substituiao homofnica de tamanho de varivel, como denida por Gnther c o a u (5).

PUC-Rio - Certificao Digital N 0115626/CA

Figura 3.2: Substituio homofnica convencional. ca o

Figura 3.3: Substituiao homofnica de tamanho varivel. c o a

Cap tulo 3. Sistemas Criptogrcos a

32

As guras 3.2 e 3.3 mostram dois exemplos do esquema geral de substituiao homofnica ilustrado na gura 3.1, ambos para a mesma mensagem c o de fonte binria (isto , L = 2). A substituiao de tamanho de varivel tem a e c a um comprimento mdio do cdigo E[W] = 3/2 e a substituio convencional e o ca tem E[W] = 2. Esta reduao dos s c mbolos codicados uma vantagem da e substituiao homofnica de tamanho de varivel que a torna perfeita. c o a Uma substituiao homofnica perfeita se a seqncia D-ria codicada c o e ue a e o o como X1 , X2 ,... completamente aleatria. Para o caso sem memria (fonte e canal), considerado na gura 3.1, isto equivalente ` condio que o cdigo e a ca o X1 , X2 ,... , Xw para V = V1 completamente aleatrio. e o Uma substituiao homofnica D-ria tima para uma dada mensagem c o a eo fonte, se e somente se perfeita e minimiza o comprimento mdio do cdigo e e o E[W]. Para simplicar os conceitos, foi utilizado nesta seo D = 2, ou seja, ca representaao binria. Massey et al. (11) apresentam a generalizaao correc a c spondente.
PUC-Rio - Certificao Digital N 0115626/CA

3.4.1 Distribuio didica ca a Uma distribuiao didica uma distribuiao na qual cada probabilidade c a e c e uma potncia negativa de 2. Por exemplo, (22 , 22 , 22 , 23 , 24 , 24 ) e e uma distribuiao didica. Em uma distribuiao didica, para cada s c a c a mbolo ui de U, as probabilidades dos homofnicos de ui formam uma decomposiao de o c u e P(U = ui ) em uma soma dos nmeros referentes as potncias inteiras negativas c de 2. Por exemplo, para P(U = u2 ) = 3 a decomposiao pode ser 1 + 1 + 1 4 4 4 4 1 1 ou 2 + 4 . Milidiu et al. (18) mostram que uma codicaao cannica de Human c o para uma distribuiao didica gera um uxo de codicaao aleatrio. Esse fato c a c o utilizado para a aleatorizao de um texto cifrado resultante da codicaao e ca c (18). Massey et al. (11) mostram que se o canal timo ento a decomposiao eo a c e de P (U = ui ) para qualquer ui deve consistir em diferentes potncias negativas c de 2. Logo, para o exemplo P(U = u2 ) = 3 acima, a decomposiao correta 4 1 1 A u a 2 + 4 . Se P(U = ui ) = B.n para alguns nmeros inteiros A e B, ento a e probabilidade pode ser decomposta em uma soma nita de distintas potncias e negativas de 2. Caso contrrio, ento teremos uma soma innita de distintas a a potncias negativas de 2. e Demonstram tambm um limite superior justo de H(V) para um canal e homofnico otimo: o

Cap tulo 3. Sistemas Criptogrcos a

33

H(U) H(V) = E(W) < H(U) + 2. Esta concluso mostra que um canal homofnico timo nunca aumenta a o o a entropia de sua entrada U por mais de dois bits, independente do valor de H(U). 3.5 Sistemas Criptogrcos Simtricos a e Os sistemas criptogrcos simtricos podem ser implementados com a e cifras: de cadeia ou de uxo (stream): cifram um bit por vez a medida que o texto ` em claro vai chegando; de bloco: operam sobre blocos (grupos de bytes) do texto em claro sobre o qual a mesma chave aplicada. e Os algoritmos so geralmente rpidos, e as chaves pequenas (56, 128, a a 256 bits). Necessitam que emissor e receptor tenham conhecimento do par de chaves (e,d) atravs de um canal seguro. O algoritmo mais usado atualmente e ainda o DES (Data Encryption Standard). Existe ainda uma tentativa de e se aumentar a segurana do DES chamado de DES triplo, ou Triple-DES ou c 3DES (29). O padro atual o AES (Advanced Encryption Standard). a e Outros sistemas criptogrcos simtricos so (29): a e a variantes do DES; Lucifer; RC2, RC4, RC5, RC6; IDEA; Skipjack; Blowsh, Twosh; Safer. 3.6 Sistemas Criptogrcos de Chave Pblica a u Em um sistema criptogrco de chave pblica, temos: a u Chave que cifra = chave pblica u Chave que decifra = chave privativa Qualquer um pode mandar uma mensagem cifrada com a chave pblica, u mas apenas quem possui a chave privativa vai decifrar. E o conhecimento da chave pblica no revela conhecimento sobre a chave privativa. u a Protocolo de comunicao para a troca de mensagens com sistemas ca criptogrcos de chave pblica: a u 1.A possui uma chave pblica Pa e uma chave privativa Ra ; u

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

34

2.B possui uma chave pblica Pb e uma chave privativa Rb ; u 3.A pega a chave pblica Pb de B e manda EP b (x); u 4.B decifra: DRb [EP b (x)] = x. O algoritmo mais utilizado o RSA. e Outros sistemas criptogrcos de chave pblica so (29): a u a Knapsack; Rabin; Schnorr; ElGamal; Curvas El pticas. 3.7 Gerao de chaves ca O processo de geraao de chaves deve ser o mais randmico poss c o vel. O atacante no pode reproduzir o processo de gerao, pois isso fragiliza o a ca sistema. Geraao de uma semente randmica para um algoritmo de nmeros aleatrios: c o u o Por hardware: circuitos eletrnicos sens o veis a eventos f sicos naturais aleatrios que se convertem numa sequncia imprevis de bits; o e vel Interao com o usurio: velocidade de digitao, o usurio informa um ca a ca a nmero ou palavra qualquer, movimenta o mouse, etc.; u Semente interna: relgio do sistema, nmero de arquivos no disco r o u gido, espao livre de memria, ou ento uma combinaao destes. c o a c Duas importantes caracter sticas dos nmeros aleatrios: u o Distribuio uniforme, isto , deve existir uma chance igual para cada nmero ca e u a ser gerado; A sequncia de geraao no deve se repetir. e c a No algoritmo RSA, aps a geraao feito um teste de aleatoriedade o c e para determinar se o nmero primo. E a forma encontrada para o no u e a conhecimento de um algoritmo que gere nmeros primos grandes. u 3.8 Funoes de Resumo da Mensagem c So funoes hash one-way (29) que geram um cdigo ou resumo da a c o mensagem de tal modo que: seja dif gerar a mensagem original a partir do resumo; cil seja dif encontrar uma outra mensagem com o mesmo resumo. cil

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

35

Exemplos: MD4 (Message Digest), de 1990; MD5, de 1992; MD2, de 1992; SHA-1 (Secure Hash Algorithm), de 1992; 3.9 Assinaturas Digitais Conceitos: (i) Assinatura digital: o emissor assina o hash da mensagem cifrando com sua chave privativa. (ii) Autenticaao: o receptor calcula o hash da mensagem e compara com c o hash da mensagem decifrado usando-se a chave pblica do emissor. A gura u 3.4 mostra esse esquema de autenticao. Autenticao o processo de se ca ca e vericar a autenticidade de uma dada entidade, de tal forma que se possa ter certeza que a entidade realmente quem ela diz ser. Permite tambm garantir e e o no-repdio. a u (iii) Certicado Digital: possui uma chave pblica que ser disponibiu a lizada para algum que quer enviar uma mensagem mas quer ter a certeza da e autenticidade do dono da chave pblica. Uma Autoridade Certicadora (AC) u assina o certicado, garantindo assim a associao entre a chave pblica e o ca u dono. O padro mais utilizado hoje o X.509, que contm vrios dados, por a e e a exemplo: chave pblica; u verso; a Nmero de srie; u e Data de criao; ca Data de expirao; ca Algoritmos utilizados (ex: RSA, MD5); Dados sobre o dono (nome, e-mail, empresa, etc.); Dados sobre a AC; Assinatura da AC (ex: Verisign, Thawte). Neste cap tulo, uma coleo de tcnicas criptogrcas foi descrita. A ca e a criptograa o suporte bsico para se prover a segurana das transaoes e a c c eletrnicas, e um bom conhecimento destas tcnicas essencial para a imo e e plementaao de novas aplicaoes. c c

PUC-Rio - Certificao Digital N 0115626/CA

Cap tulo 3. Sistemas Criptogrcos a

36

PUC-Rio - Certificao Digital N 0115626/CA

Figura 3.4: Esquema de autenticaao digital. c

You might also like