O documento discute conceitos básicos de criptografia, incluindo definições, tipos de cifras, chaves públicas e privadas, criptografia simétrica e assimétrica, e algoritmos como RSA, Blowfish e TKIP.
1. CRIPTOGRAFIA
Anna Claudia
Paula Peçanha
Renan Brum
2. Definição
● De acordo com Almeida & Mendes (2005) é o “termo
formado pelas palavras gregas kryptós,
“escondido”, e gráphein, “escrever”, definido por
[Shannon, 1949]. É um conjunto de técnicas para
codificar informações, com a finalidade de evitar que
pessoas indesejadas tenham acesso a elas.”
● Trata-se de um conjunto de regras que visa codificar
a informação de forma que só o emissor e o receptor
consigam decifrá-la.
3. Cifras
● Uma cifra implica em um
método, ou sistema, de
escrita que é ilimitado no seu
uso e pelo qual deve ser
possível transformar qualquer
mensagem, sem
consideração sobre
linguagem e tamanho, para
uma forma não
compreensível, chamada
criptograma.
4. Cifras
● Segundo Almeida & Mendes (2005), a criptografia é uma
fórmula matemática. Ela trabalha com dispositivos
chamados "chaves".
● De acordo a CERT (2005), os métodos de criptografia
atuais são seguros e eficientes e baseiam-se no uso de
uma ou mais chaves.
5. Chaves
● Chave pública
- Qualquer pessoa pode saber;
- É usada para criptografar os dados.
● Chave privada
- Só o destinatário dos dados conhece,
- É usada para descriptografar os dados, ou seja,
"abrir" os dados que ficaram aparentemente sem sentido.
6. Chaves
● O interessante é que a partir da chave pública é
impossível descriptografar os dados e deduzir qual é a
chave privada.
7. Criptografia Simétrica
● Veríssimo (2002) faz a definição de criptografia
simétrica da seguinte forma: a chave para criptografar
é a mesma usada para descriptografar.
● A criptografia simétrica trabalha com algoritmos, os
mais conhecidos são:
○ Algoritmo DES (desenvolvido pela IBM)
○ AES (blocos de 128, 192 ou 256 bits)
○ Blowfish (tamanho de chaves, 132 e 448 bits).
8. Criptografia Simétrica
● Para Barbosa (2003) apud Almeida & Mendes (2005), a
criptografia simétrica é considerada um método muito
seguro, pois, usa um sistema de chaves que podem ser
detectadas,
mas não
“quebradas”.
9. Criptografia Assimétrica
● Baseia-se em um sistema que utiliza duas chaves
distintas, uma para codificar e outra para decodificar
mensagens.
● Neste método cada pessoa ou entidade mantém duas
chaves: uma pública e outra privada.
● As mensagens
codificadas com a
chave pública só
podem ser
decodificadas
com a chave
privada
correspondente.
10. Integridade da mensagem
● Criptografia garante a confidencialidade, mas não a
integridade.
● Impressão digital ou digest da
mensagem: a mensagem passa por
um algoritmo denominado função
hash.
● Uma função hash é uma equação matemática que utiliza
texto (tal como uma mensagem de e-mail) para criar um
código chamado message digest (resumo de
mensagem).
11. Exemplo - Chave Assimétrica
1. Frank escreve uma mensagem e a criptografa utilizando a
chave pública de Andréa. A chave está disponível para qualquer
pessoa.
2. Frank envia a mensagem para Andréa.
3. Andréa recebe a mensagem e a descriptografa utilizando sua
chave privada (só ela conhece).
4. Caso Andréa queira responder a mensagem, ela deverá fazer
o mesmo, porém utilizando a chave pública de Frank.
12. Exemplo - Chave Assimétrica
● Pode-se também criar uma assinatura digital.
1. Frank escreve a mensagem e a criptografa usando sua chave
privada (assinatura da mensagem).
2. Em seguida, ele criptografa a mensagem com a chave pública
de Andréa (tornando-a secreta).
3. Frank envia a mensagem duplamente criptografada para
Andréa.
4. Andréa recebe a mensagem e a descriptografa duas vezes.
Primeiro com sua chave privada e depois com a chave pública
de Frank.
13. Exemplo - Chave Assimétrica
5. Agora Andréa pode ler a mensagem e tem certeza de que
ninguém a leu e que veio de Frank. Também tem certeza de que
não foi alterada, pois para isso o invasor teria de ter acesso a
chave privada de Frank.
Problema: as chaves assimétricas são
computacionalmente intensiva, sendo necessário muito
tempo para criptografar uns poucos parágrafos.
14. Exemplo - Chave Assimétrica
● Solução: combinar os melhores aspectos da
criptografia com chave simétrica e assimétrica,
codificando a mensagem com o método da chave
simétrica e criptografando a chave simétrica com o
método da chave assimétrica:
○ Velocidade do método simétrico
○ Facilidade de distribuição de chaves do método
assimétrico
15. Exemplo - Combinação
1. Frank escreve a mensagem e a codifica usando a
criptografia com chave simétrica com uma chave gerada
aleatoriamente apenas para esta mensagem (chave de
sessão ou session key).
2. Frank criptografa essa chave de sessão com a chave
pública de Andréa (isto não toma muito tempo por que a
chave não é muito grande).
16. Exemplo - Combinação
3. Frank envia a mensagem criptografada e a chave de
sessão criptografada para Andréa.
4. Andréa descriptografa a chave de sessão com sua
chave privada.
5. Em seguida, descriptografa a mensagem usando a
chave de sessão que acabou de receber.
17. Algoritmos simétricos
● Máquina Enigma (Máquina alemã de rotores utilizada
na 2a Guerra Mundial)
● DES - Data Encryption Standard (FIPS 46-3, 1976)
● RC4 (um dos algoritmos criados pelo Prof. Ron Rivest)
● RC5 (também por Prof. Ron Rivest)
18. Algoritmos simétricos
● Blowfish (por Bruce Schneier)
● IDEA - International Data Encryption Algorithm (J
Massey e X Lai)
● AES (também conhecido como RIJNDAEL) - Advanced
Encryption Standard (FIPS 197, 2001)
● RC6 (Ron Rivest)
19. Blowfish
● O Blowfish foi desenvolvido em 1993 por Bruce Schneier
como uma alternativa grátis mais rápida para os algorítmos
criptográficos existentes.
● A cifragem do texto é feita
em blocos de 64 ou 128
bits, nos quais os bits não
são tratados
separadamente, mas em
grupos de 32 bits.
20. Blowfish
● O algoritmo consiste de duas partes:
○ Expansão da chave:
transformação da chave em subchaves, totalizando
4168 bits;
○ Criptografia dos dados:
consiste de 16 fases, sendo que, em cada uma
dessas, é feita uma permutação dependente da
chave e uma substituição dependente da chave e
dos dados.
21. Algoritmos assimétricos ou
de chave pública
● Curvas elípticas
● Diffie-Hellman
● DSA de curvas elípticas
● El Gamal
● RSA
22. RSA
● RSA é um algoritmo de criptografia de dados, que deve o
seu nome a três professores do Instituto MIT: Ronald
Rivest, Adi Shamir e Leonard Adleman, que inventaram
este algoritmo.
● Foi o primeiro algoritmo a
possibilitar criptografia e
assinatura digital, e uma das
grandes inovações em
criptografia de chave pública.
● É considerado um dos mais seguros.
23. RSA
● O RSA envolve um par de chaves, uma chave pública
que pode ser conhecida por todos e uma chave privada
que deve ser mantida em sigilo.
● Toda mensagem cifrada usando uma chave pública só
pode ser decifrada usando a respectiva chave privada.
● Sequência de passos:
○ Geração das chaves;
○ Cifração;
○ Decifração.
24. TKIP
● O TKIP (Temporal Key Integrity Protocol) é um
algoritmo de criptografia baseado em chaves que se
alteram a cada novo envio de pacote.
● Criado em 2002.
● A sua principal característica é a frequente mudanças
de chaves que garante mais segurança.
● A senha é modificada automaticamente por padrão a
cada 10.000 pacotes enviados e recebidos pela sua
placa de rede.
25. TKIP
● Faz parte do padrão WPA (Wi-Fi Protected Access).
● Utiliza o tamanho de chaves de 128 bits
● Tamanho do vetor de inicialização de 48 bits.
● A chave compartilhada entre os usuários Wireless e o
ponto de acesso é alterada de tempo em tempo.