Você está na página 1de 7

Criptografia Segurana de Computadores

RODRIGO ANGELO TOMAZI


E-mails rodrigotomazi@yahoo.com.br
rodrigo@viasoft.com.br

Acadmico de Sistemas de Informao Faculdade Mater Dei Pato Branco PR.

Palavras Chaves: Segurana Cifragem e Decifragem Confiabilidade.


rea do Conhecimento: Segurana Cincias da Computao.
RESUMO: A presente comunicao discute a criptografia, ou seja a segurana de
computadores. Aborda questes relacionadas confiabilidade e segurana de informaes
nos computadores.

INTRODUO: Criptografia representa um conjunto de tcnicas que so usadas para


manter a informao segura. Usando a criptografia, possvel transformar palavras escritas
em outros tipos de mensagem, de forma a ficarem inteligveis para receptores no
autorizados. Um receptor autorizado pode transformar as palavras ou mensagem em uma
mensagem perfeitamente compreensvel. A encriptao ou cifragem consiste na aplicao de
um algoritmo aos dados por forma a que eles se tornem ilegveis, para recuperar os dados
originais ser necessrio conhecer o algoritmo de desencriptao ou decifragem.
As aplicaes bsicas da criptografia so a confidencialidade (garantir que apenas quem
autorizado pode ler os dados) e a autenticao/integridade (garantir que os dados tm a
origem correcta e que no foram alterados entre origem e destino). A idia da criptografia
tem milhares de anos: generais gregos e romanos usavam a criptografia para enviar
mensagens em cdigo aos comandantes em campo. Estes sistemas antigos eram baseados
em duas tcnicas: substituio (substituir cada letra da mensagem por outra) e transposio
(mistura dos caracteres da mensagem). No incio do sculo XX, vrios mecanismos
eletromecnicos foram construdos na Europa e nos Estados Unidos com a finalidade de
codificar mensagens enviadas por telgrafo ou rdio. Estes sistemas baseavam-se
principalmente na substituio, pois no havia uma forma especfica para armazenar uma
mensagem inteira usando tcnicas de transposio. Hoje em dia, algoritmos de criptografia
executados em computadores digitais de alta velocidade usam combinao de transposio e
substituio, assim como outras funes matemticas.

MATERIAL E MTODOS: Na prtica, juntamente com os algoritmos utilizam-se chaves,


mesmo que os algoritmos sejam conhecidos necessria a chave correta.
A criptografia simtrica, tambm conhecida por criptografia tradicional utiliza uma nica
chave que serve tanto para cifrar como para decifrar.
No existem mecanismos de cifragem/decifragem 100% eficazes, qualquer chave pode ser
quebrada pela fora bruta (supondo que dispe de um exemplar de uma mesma mensagem
original e cifrada, e o algoritmo conhecido, basta tentar com todas as chaves possveis at
acertar).
O tempo necessrio para quebrar uma chave pela "fora bruta" depende do nmero de
chaves possveis (nmero de bits da chave) e do tempo de execuo do algoritmo.
DES ("Data Encryption Standard")
O DES um mecanismo de cifragem tradicional ("simtrico) desenvolvido nos anos setenta,
utiliza uma chave de 56 bits que aplicada a blocos de dados com 64 bits, o objectivo destes
algoritmos que seja muito difcil calcular a chave K, mesmo conhecendo o algoritmo DES,
uma mensagem cifrada C e uma mensagem original M: C = DES(K,M)
O algoritmo usado algo complexo:
A mensagem de 64 bits dividida em duas partes de 32 bits cada.
A chave de 56 bits usada para gerar 16 chaves de 18 bits cada.
aplicado sucessivamente 16 vezes um algoritmo, usando as chaves geradas.
Para fortalecer o DES seria necessrio aumentar o nmero de bits da chave, contudo o
algoritmo exige um valor fixo de 56 bits, a aplicao sucessiva de duas chaves no soluo
pois apenas duplica o nmero de aplicaes do algoritmo necessrias para quebrar a chave
(tcnica "meet-in-the middle"), corresponde por isso a aumentar apenas um bit.
Alm da "fora bruta", existem outras abordagem para descobrir chaves:
Cripto-anlise diferencial
para usar esta tcnica necessrio que se possa cifrar as mensagens que se pretende, em
funo de alteraes nessas mensagens e resultados na mensagem cifrada, no caso do
DES simples possvel reduzir as chaves a 247.
Cripto-anlise linear
tenta definir a chave por aproximao linear em funo da informao recolhida de pares
(M,C), no caso do DES simples reduz o nmero de chaves a 243.
RC5
O RC5 uma tcnica mais recente e mais flexvel, tal como o DES uma tcnica de
criptao simtrica (a mesma chave usada para cifrar e para decifrar), tambm uma
tcnica de blocos, mas ao contrrio do DES no est limitada a blocos de dimenso fixa,
igualmente a chave no tem uma dimenso fixa.
O RC5 como se pode deduzir muito flexvel, estando sujeito a uma serie de parmetros
que devem ser ajustados s necessidades particulares de cada caso.
A mensagem original fornecida ao algoritmo sob a forma de dois blocos de w bits,
correspondendo ao alinhamento mais conveniente para o sistema em causa, os valores
tpicos para w so: 16, 32 e 64. A mensagem cifrada possui forma idntica.
Outro parmetro importante o nmero de aplicaes do algoritmo (r), pode variar de 1 a
255. Para aplicar r vezes o algoritmo, vai ser gerada apartar da chave uma tabela com t =
2.(r+1) blocos de w bits.

A chave especificada pelos parmetros b e k, b especifica o nmero de bytes (octetos) que


constitui a chave e k a chave propriamente dita.
Aplicao das tcnicas de cifragem em bloco
As tcnicas de cifragem em bloco (Ex: DES e RC5) podem ser aplicadas de diversos modos
a mensagens de comprimento diferente do tamanho de bloco.
A tcnica mais simples conhecida por ECB ("Electronic Code Book"), consiste em
dividir a mensagem em blocos de tamanho adequado, cifrar os blocos em separado e
concatenar os blocos cifrados na mesma ordem. O grande inconveniente desta tcnica que
blocos de mensagem original idnticos vo produzir blocos cifrados idnticos, isso pode no
ser desejvel.
A tcnica CBC ("Cipher Block Chaining") evita este inconveniente, realiza a operao
xor entre o bloco a cifrar Mi e o bloco anteriormente cifrado Ci, s depois aplica o
algoritmo de cifragem:
Ci = cifragem( chave, Mi xor C(i-1))
Na decifragem obtm-se Mi xor C(i-1), como xor-1 = xor, utiliza-se:
Mi = decifragem( chave, Ci) xor C(i-1)
Como para o primeiro bloco no existe mensagem anterior, utiliza-se um bloco aleatrio
conhecido por IV ("Initialization Vector").
Esta tcnica pouco favorvel sob o ponto de vista da propagao de erros, uma vez que
um erro na transmisso de um bloco cifrado Ci vai inutilizar tanto o bloco Mi como o
seguinte M(i+1).
Nas tcnicas CFB ("Cipher FeedBack") e OFB ("Output FeedBack") a mensagem no
directamente cifrada, existe um vector de inicial (IV) ao qual aplicado o algoritmo de
cifragem, aplica-se ento a operao xor entre o vector cifrado e a mensagem.
A operao xor entre o vector cifrado e a mensagem realizada do seguinte modo:
Pegam-se nos n bits da esquerda do vector cifrado e realiza-se a operao xor com os n
seguintes da mensagem.
Realiza-se o "shift" para a esquerda de n bits do vector cifrado.
Injetam-se n bits no vetor original, realizando o "shift" para a esquerda.
No caso do CFB utilizam-se os n bits resultantes da operao xor.
No caso do OFB utilizam-se os n bits retirados do vector cifrado.
Quando esgotam os bits do vector cifrado aplica-se novamente o algoritmo de cifragem
ao vector original.
Os valores mais comuns para n so 1, 8 ou 64. Devido ao seu funcionamento a tcnica
OFB, tambm conhecida por OFM ("Output Feedback Mode") apenas produz um bloco de
mensagem errado quando ocorre um erro na transmisso de um bloco cifrado.
Quando o comprimento da mensagem no mltiplo do tamanho do bloco necessrio
recorrer a tcnicas de enchimento ("padding"), uma tcnica habitual adicionar um bit 1
seguido dos bits 0 necessrios.

RESULTADOS E DISCUSSO: Para estabelecer uma comunicao segura entre uma


aplicao cliente e uma aplicao servidora, o ideal seria que o servidor e o cliente
trocassem entre si as chaves na altura do estabelecimento da conexo.
Para se conseguir uma situao deste tipo existem duas solues:
Manter a criptografia de chave secreta e usar uma tcnica especial para enviar a chave,
por exemplo "puzzles".
Utilizar criptografia de chave pblica que veio alterar radicalmente o modo de ver a
criptografia.
"Puzzles"
Para fornecer a chave secreta enviado um conjunto de "puzzles", geralmente na ordem das
dezenas de milhar. Tomando o exemplo DES, cada "puzzle" constitudo por 120 bits zero,
seguido do nmero do "puzzle" com 16 bits e finalmente uma chave, DES de 56 bits. Todos
os "puzzles" so cifrados com chaves DES em que os ltimos 22 bits so zero.
O cliente escolhe um "puzzle" sorte e quebra a cifra usando fora bruta, tem de tentar
"apenas" 234 chaves, quando obtm 120 zeros no inicio sabe que consegui decifrar o
"puzzle" e portanto possuiu j a chave DES que escolheu (ltimos 56 bits do "puzzle"
decifrado). Tem agora de indicar qual o "puzzle" que escolheu, envia ento uma mensagem
com o nmero do "puzzle" cifrado com a chave DES escolhida, destinatrio (ex.:servidor)
conhece as chaves que iam nos "puzzles" e o respectivo nmero de "puzzle" e pode
facilmente descobrir qual foi a chave escolhida.
O tempo mdio que um intruso necessita para descobrir a chave situa-se na ordem dos anos
e pode ser ajustado por variao do nmero de "puzzles" em jogo.
Criptografia de chave pblica
A criptografia de chave pblica utiliza algoritmos de cifragem e decifragem que no esto
directamente relacionados, passam a existir duas chaves, uma de cifragem e outra de
decifragem.
Tipicamente a chave de cifragem pblica ( divulgada a todos os utilizadores), a chave de
decifragem secreta. Quando uma entidade A pretende enviar entidade B uma mensagem
cifra-a com a chave pblica de B antes do envio. Ningum, nem sequer a entidade A capaz
de decifrar, apenas a entidade B que possui a chave secreta adequada.
Alm de resolver definitivamente o problema da distribuio de chaves, a criptografia de
chave pblica facilita significativamente a implementao de mecanismos de autenticao de
mensagens e assinatura digital.
Embora tenham sido propostos outros algoritmos, actualmente o RSA o mais slido, o
algoritmo "Merkle-Hellman Knapsacks" demorou quatro anos a ser quebrado por Adi
Shamir, uma segunda verso, supostamente mais slida, demorou dois anos a ser quebrada.
RSA
Este algoritmo devido a Ron Rivest, Adi Shamir e Len Adleman (RSA), baseia-se no
seguinte: simples arranjar dois nmeros primos grandes, mas muito complicado
(moroso) fatorizar o seu produto. O RSA tem agentado todas as investidas dos criptoanalistas, contudo temos que atender ao fato de ser um problema matemtico, existe sempre
o risco de descoberta de uma tcnica para resolver o problema de forma eficiente.
Gerao das chaves:
Escolhem-se dois nmero primos grandes a e b.
Calcula-se n = a x b.

Calcula-se (n) = (a-1) x (b-1).


Escolhe-se um nmero pequeno p que seja primo relativo de (n) e < (n), calcula-se s
tal que (p x s) mod (n) = 1, onde mod o operador "resto da diviso inteira"
(aritmtica modulo (n)).
(Dois nmeros so primos relativos se o maior divisor comum 1)
par (n,p) constitui a chave pblica, d a chave secreta.
Aplicao:
Cifragem: C = Mp mod n
Decifragem: M = Cs mod n
, onde M e C so respectivamente a mensagem original e mensagem cifrada, ambas com
valores possveis de zero a n-1.
Uma propriedade interessante do RSA a possibilidade de inverso das chaves, pode-se
cifrar uma mensagem com a chave s, para decifrar ser agora necessria a chave pblica:
utilizvel para autenticao e assinatura digital.
Para efeitos de exemplificao tomem-se os nmeros primos a=7 e b=17:
n = a x b = 119
(n) = (a-1) x (b-1) = 96
como primo relativo de (n) podemos escolher p=5
ento para obter p x s mod 96 = 1, podemos usar s = 77
pois 5 x 77 = 385, 385 mod 96 = 1
A chave pblica (5;119) e a chave secreta 77
Gerar chaves RSA no uma operao simples, o primeiro problema arranjar dois
nmeros primos a e b com uma ordem de grandeza de 10100, usar os algoritmos
tradicionais de gerao de nmeros primos impossvel, a soluo usar testes
eliminatrios, estes testes permitem saber se um nmero no primo, ou qual a
probabilidade de ser primo, se um dado nmero depois de testado intensivamente no
eliminado ser adoptado. A segunda questo prende-se com a determinao de um primo
relativo de (n), p ou s e de seguida necessrio determinar outro nmero para verificar a
relao (p x s) mod (n) = 1.
O algoritmo RSA serve de base a muitos sistemas de segurana actuais, tais como o PGP
("Pretty Good Privacy").
Sob o ponto de vista de cripto-anlise e devido ao nmero de bits das chaves a aplicao de
fora bruta (tentar todas as chaves secretas possveis) est excluda. A abordagem tentar
obter os dois factores primos de n. Contudo tal extremamente complexo para a ordem de
grandeza usada para n, o tempo necessrio cresce exponencialmente com o valor de n.
Distribuio de chaves pblicas
As chaves pblicas destinam-se a ser divulgadas, mas esta divulgao deve ser realizada de
tal modo que no possa ser forjada por terceiros, as consequncias seriam obvias.
O correio electrnico ou sistemas de news no so de todo adequados, uma melhor soluo
ser a sua colocao na pgina WWW pessoal.
Uma opo mais segura definir uma autoridade de chaves pblicas, quando A pretende
enviar uma mensagem a B realiza as seguintes operaes:
Contacta a autoridade C enviando-lhe um pedido com etiqueta temporal

C responde enviando uma mensagem cifrada com a sua chave secreta (assim A sabe que
a mensagem veio de C), onde consta chave pblica de B e a mensagem original
Quando B recebe a primeira mensagem de A ter de realizar o mesmo procedimento
para obter a chave de B e lhe poder responder.
Apesar de mais seguro a existncia de autoridades de chave pblica coloca alguns problemas
em termos de quantidade de comunicaes necessrias, uma alternativa a emisso de
"certificados de chave pblica". Cada entidade contacta a autoridade de chave pblica que
lhe fornece um certificado contendo: uma etiqueta temporal; a identificao da entidade; a
chave pblica da entidade. O certificado encontra-se cifrado com a chave secreta da
autoridade, este facto atesta a sua origem. As diversas entidades podem agora trocar
directamente entre si estes certificados, o facto de estarem cifrados pela autoridade atesta a
sua veracidade.
Distribuio de chaves secretas (criptografia simtrica)
A criptografia de chave pblica pode ser usada para obviar um dos grandes problemas da
criptografia tradicional: a distribuio de chaves secretas. A motivao o facto de a
criptografia tradicional ser substancialmente mais rpida nas operaes de cifragem e
decifragem, proporcionando assim dbitos de dados mais elevados.
A utilizao mais directa consistiria no seguinte:
A aplicao A envia aplicao B uma mensagem com a chave publica da A.
A aplicao B gera uma chave secreta convencional (simtrica) e envia-a a A cifrada
com a respectiva chave publica.
A aplicao A decifra a mensagem com a sua chave secreta e obtm a chave secreta
convencional.
Este mecanismo pode ser contudo furado por uma entidade C com controlo sob as
transmisses:
C captura a primeira mensagem de A e fica a conhecer a chave pblica de A.
C envia para B uma cpia da mensagem de A, mas substitui a chave pblica pela sua.
C captura a resposta de B e fica a conhecer a chave secreta convencional.
para que A no note nada C envia A resposta que recebeu de B, cifrada com a chave
publica de A.
C passa ento a actuar de modo passivo, limitando-se a decifrar a conversao entre A e
B.
O problema pode ser resolvido se previamente for usado um mecanismo seguro de
distribuio de chaves publicas e forem tomadas diversas precaues quanto a
confidencialidade e autenticao:
A envia a B uma mensagem com a sua identificao e um identificador de transao
I1(nmero que identifica a transao em curso), cifrada com a chave pblica de B.
B enviar a A uma mensagem com I1 e um novo identificador I2, cifrada com a chave
pblica de A.
A tem a certeza que a mensagem veio de B devido presena de I1, envia ento a B I2,
cifrado com a chave pblica de B.
A gera a chave secreta convencional, cifra-a com a sua chave secreta e de A, cifra-a com
a chave pblica de B, e envia-a a B.
B recebe a mensagem e decifra-a aplicando primeiro a sua chave secreta e de seguida a
chave publica de A.

CONCLUSO: A partir da base constituda com os parmetros expostos, fica bastante


ntido a questo da segurana do computador, e, principalmente, pode-se dizer que mesmo
relacionando a informtica, a rea mais provida de recursos tecnolgicos, no h como
afirmar sucintamente que existe cem porcento de segurana, tratando de mquinas e de
comandos eletrnicos, melhor despistar do que confiar. Atravs deste h de mencionar
tambm que a questo de violar a segurana no uma tarefa nada fcil, preciso tempo,
inteligncia e pacincia. Segurana total ainda no podemos afirmar que existe, o que
afirmamos com certeza, que facilidade total no existe e jamais existir.
REFERNCIAS BIBLIOGRFICAS:
Simson Garfinkel e Gene Spafford, Comrcio & Segurana na WEB Riscos, Tecnologias e
Estratgias
So Paulo, Editora Market Press, 1999.

Sites utilizados atravs da pesquisa pelo assunto: Criptografia - Segurana


UEM: Universidade Estadual de Maring. - DIM: Departamento de Informtica
UFPE: Universidade Federal de Pernambuco - CIN: Centro de informtica

Você também pode gostar