Você está na página 1de 52

Sistemas Seguros

Criptografia Simtrica e Assimtrica


Prof. Paulo Fernando da Silva
Criptografia
Conceitos Bsicos;
Criptografia Simtrica;
Algoritmos Simtricos;
Criptografia Assimtrica;
Algoritmos Assimtricos;
Hash e algoritmos;
Assinatura digital;
Conceitos Bsicos
Criptografia a cincia da escrita secreta;
a base para a implementao de vrios
servios de segurana;
Um dos primeiros algoritmos o cifrador de
csar:
Y = E(X) = x+3;
X = D(Y) = x-3;
Conceitos Bsicos
Conceitos Bsicos
Crifrador de csar no possui chave;
A fora est no algoritmo;

A chave tira a responsabilidade do algoritmo;
Chave um seletor de algoritmos;
Como seria o cifrador de csar sem chave?
Conceitos Bsicos
Conceitos Bsicos
Criptografia Simtrica
Usam a mesma chave para cifrar e decifrar;
Tambm chamados de algoritmos de chave
secreta;

So algoritmos geralmente rpidos;

Criptografia Simtrica
Criptografia Simtrica
Segurana se baseia na qualidade do
algoritmo;
Tambm no tamanho de chave;

Segurana no se baseia no conhecimento do
algoritmo;
Criptografia Simtrica
Possui um problema srio na distribuio de
chave;
A chave deve ser compartilhada, mas deve ser
secreta;

Para um grupo de n participantes, sero
necessrias n(n-1)/2 chave distintas;

Criptografia Simtrica
Algoritmos Simtricos
Algoritmos:
DES;
3DES ou DES-EDE;
IDEA;
Blowfish;
Cast-128;
RC6;
AES: atual padro americano;
Algortimos Simtricos
Segurana est:
Tamanho de chave;
Princpio do confuso: complexidade entre texto
cifrado e chave;
Princpio da difuso: complexidade entre o texto
plano e chave;
Algoritmo DES
Tamanho de bloco de 64 bits e chave de 56
bits;
O DES tem 16 rounds;
So geradas 16 sub-chaves, uma para cada
rodada;
Algoritmo 3DES
Utiliza duas chaves da seguinte maneira:
Encripta com K1;
Decripta com K2;
Encripta novamente com K1;
Para decifrar:
Decripta com K1;
Encripta com K2;
Decripta novamente com K1;
Algoritmo AES
Governo americano fez concurso para eleger
novo algoritmo;
Vencedor em 2001 foi o Rijndael;
Mudou de nome para AES;
Padronizado na FIPS PUB 197;
Blocos de 128 bits;
Chave de 128, 192 ou 256 bits;
Algoritmos Simtricos
IDEA:
Bloco 64 bits;
Chave 128 bits;
Livre apenas para uso no comercial;
RC6:
Bloco e chave varivel at 255bits;
Nmero de rodadas varivel;
Testar exemplo...
Exemplo do DESCipher.java
Criptografia Assimtrica
Criado em 1976 por Dffie & Hellman;
Tambm conhecido como criptografia de
chave pblica;
Motivado pelo problema de distribuio de
chaves simtricas;
Criptografia Assimtrica
Usa uma chave pblica e ou chave privada;
As chaves formam um par e trabalham em
conjunto;
O que uma chave cifra a outra chave decifra;

Criptografia Assimtrica
A chave pblica todos podem conhecer;
A chave privada apenas o dono pode
conhecer;
Funo de chaves: f(x) = y;
Conhecendo y muito difcil descobrir o valor
de x;
Baseado na complexidade matemtica;
Criptografia Assimtrica
Criptografia Assimtrica
Fornece servios de confidencialidade e
autenticidade;
Autenticidade quando a origem cifra com sua
chave privada;
Confidencialidade quando a origem cifra com
a chave pblica do destino;
Criptografia Assimtrica
Criptografia Assimtrica
Criptografia Assimtrica
Criptografia Assimtrica
Criptografia Assimtrica
Algoritmos Assimtricos
Como fazer um algoritmo assimtrico vlido?

Usam duas tcnicas:
Aritmtica exponencial modular;
Curvas elpticas;
Algoritmos Assimtricos
Dois algoritmos mais conhecidos:
RSA e ElGamal;
Algoritmos RSA:
o mais usado comercialmente;
Cifra blocos de tamanho variado = n;

Algoritmo RSA
O par de chaves derivado de n;
n um nmero muito grande;
n resultado de dois nmeros primos muito
grandes = p & q;
p & q devem ter mais de 100 dgitos cada um;

Algoritmo RSA
Um invasor pode conhecer a chave pblica e o
nmero n;
Mas no conhece p & q;
Logo ele no consegue gerar a chave privada;
Algoritmo RSA
Escolher dois nmeros primos grandes (>
10^100) p e q
Calcular n = p * q
Escolher um nmero e relativamente primo
com (p 1) * (q 1)
Calcular d de forma que e * d = 1 mod (p 1) *
(q 1), isto , d = e-1 mod (p 1) * (q 1)
Publicar (n, e) chave pblica, manter (n, d)
chave privada e p, q em segredo
Algoritmo RSA
KU = {e, n}
KR = {d, n}
Cifrar: M^e mod n
Decifrar: C^d mod n

Invasor no consegue descobrir d a partir de
e e n
Algoritmo RSA
p= 7 e q = 17;
n = 119;
Totiente de n = 96;
e relativamente primo a 96 = 5;
d = 77;
KU = {5, 119}
KR = {77,119}
Algoritmo RSA
KU = {5, 119}
KR = {77, 119}
M = 19
Cifrar: 19^5 mod 119 = 66
C = 66
Decifrar: 66^77 mod 119 = 19
Obs: na prtica a chave bem maior, mais de 130
dgitos;
Testar exemplo...
Exemplo Cifra RSA
Hash e algoritmos
Funes hash, ou message digests ou funes
one-way;
Funo hash: y = f(x);
y facilmente calculado;
x computacionalmente complexo;
Hash e algoritmos
Uma funo hash gera um resumo de sua
entrada;
A partir do resumo no deve ser possvel
encontrar-se a entrada;
No deve ser possvel encontrar uma entrada
que gere um resumo especfico;
Hash e algoritmos
usado para gerar impresso digital de
arquivos (por exemplo);

Tambm usado em certificados e assinatura
digital;

Hash e algoritmos
Alguns algoritmos so: MD5, SHA-1, SHA-2 ou
SHA-256;

SHA o padro do NIST;
SHA-224, 256, 384 e 512;
Hash e algoritmos
Mensagem 100...0
K bits
L x 512 bits = N x 32 bits
Padding
(1 a 512 bits)
Tamanho da
Mensagem
(K mod2
64
)
Y
0
Y
1
512 bits 512 bits
H
SHA
H
SHA
Y
q
512 bits
H
SHA
Y
L-1
512 bits
H
SHA
512 512 512 512
160 160 160 160
CV
1
CV
q
CV
L-1
160 bits
digest
Valor
Inicial
A = 67452301 B = EFCDAB89
C = 98BADCFE D = 10325476
E = C3D2E1F0
Testar exemplo...
Exemplo resumo.java
Assinatura Digital
A criptografia assimtrica permite a
implementao de assinatura digital;
Assinar cifrar algo com a chave privada;

Assinar toda a informao a ser enviada um
processo muito caro computacionalmente;
Assinatura Digital
M
E
M
M
D
KR
a

E
KRa
(M)
Fonte Destino
KU
a

Assinatura Digital

necessrio cifrar todo o contedo para
garantir a origem?


Assinatura Digital
No!!!
Basta cifrar apenas o hash do contedo;
O hash ir garantir a autenticidade e a
integridade de todo o contedo;
Assinatura Digital Transmisso
Assinatura Digital Recepo
Assinatura com DSS
Testar Exemplo...
Exemplo assinatura.java

Você também pode gostar