O documento discute conceitos de criptografia como criptografia simétrica e assimétrica, algoritmos como DES, Triple DES, AES e RSA, assim como funções hash, autenticação de mensagens e distribuição de chaves públicas.
Criptoanálise
Ataques
Forçabruta
Noções do Plaintext
Pares de Texto Cifrado-Plaintext
Acesso ao sistema de cifragem
9.
Segurança computacional
Custoda decifragem maior do que o
valor da mensagem.
Tempo de decifragem maior do que a
vida útil da mensagem
10.
Segurança do DES
Algorítmo já estudado
exaustivamente.
Tamanho de chaves
Quebra de chave de 56 bits em 98
Implementação do Triple DES
11.
Triple DES
Usodo DES iterado 3 vezes
C = EK3
[DK2
[EK1
[P]]]
Chaves de 168 bits
12.
AES
(Advanced Encryption Standard)
Proposto por em 1997
Custo computacional baixo
Fácil implementação em hardware
Flexível
Simétrico, chave simples
Chaves de 128 a 256 bits
Blocos de 128 bits
Uma autenticaçãoocorre
quando uma entidade precisa
provar para outra a sua
identidade.
Autenticação
16.
Métodos de Autenticaçãode
Mensagens
Autenticação Utilizando Criptografia
Tradicional
Autenticação Sem Criptografia de
Mensagens
MAC (Message Authentication Code)
Os algoritmos "hash"mais
conhecidos são:
"Message-Digest" (MD2; MD4 e MD5)
(RFC 1320) - aceita mensagens de
qualquer tamanho e produz um bloco de
128 bits ("digest"),
SHA ("Secure Hash Algorithm") - aceita
mensagens de comprimento inferior a
e produz um "digest" de 160 bits.
64
2
19.
Propriedades da Função
Hash
H pode ser aplicado a blocos de
dados de qualquer tamanho .
H produz uma saída de tamanho fixo.
H(x) é fácil de calcular para qualquer
x dado.
Para qualquer bloco x dado, é
computacionalmente inviável
encontrar x tal que H(x)= h.
20.
Para qualquerbloco x dado, é
computacionalmente inviável
encontrar yx, H(y)=H(x) .
É computacionalmente inviável
encontrar um par (x,y), tal que
H(x)=H(y) .
Propriedades da Função
Hash
21.
Autenticação de mensagens
como HMAC
Um grande número de algoritmos
pode ser usado para gerar o código,
mas a alternativa mais eficiente e
popular é o HMAC.
Requisitos
1,2,3) Deve sercomputacionalmente fácil
obter o par de chaves, encriptar e
desencriptar a mensagem.
4,5) É computacionalmente irrealizável
determinar KR conhecendo KU e,
conhecendo KU e C, obter M.
6) Uma chave usada na encriptação e
outra na desencriptação
26.
Algoritmo RSA
- p,qprimos -> n = p x q
- Totient Euler -> (p-1)(q-1)
- e tal que mdc(e,n)=1
- d<n tal que d = e-1
mod n
- KU = {e,n}; KR = {d,n}
- C = Me
mod n
- M = Cd
mod n = (Me
)d
mod n = Med
mod n
27.
Algoritmo RSA (exemplo)
-p = 7,q =17 -> n = 119
- Totient Euler -> (7-1)(17-1) = 96
- e tal que mdc(e,n)=1 -> e = 5
- de=1 mod 96 -> d = 77 (77x5=385=4x96+1)
- KU = {5,119}; KR = {77,119}
- Caso M = 19
- C = 195
mod 119= 2476099/119 = 20807 R 66
- M = 6677
mod 119 = 1.27e140/119 = 1.06e138 R 19
Diffie Hellman
qaY AX
Amod=
qaY BX
B mod=
qYK AX
B mod)(=
qYK BX
A mod)(=
qYK AX
B mod)(=
qY
qqa
qaqa
qa
qqa
B
BA
BAAB
AB
AB
X
A
XX
XXXX
XX
XX
mod)(
mod)mod(
modmod
mod)(
mod)mod(
=
=
==
=
=
30.
Diffie Hellman (Exemplo)
qaYAX
A mod=
qaY BX
B mod=
qYK AX
B mod)(=
qYK BX
A mod)(=
71=p 7=α 5=AX
71mod5175
==AY
71mod4712
==BY
71mod30471mod)( 5
=== AX
BYK
71mod305171mod)( 12
=== BX
AYK
12=BX