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.
Definição
● De acordocom 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 cifraimplica 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
● ParaBarbosa (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-seem 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 - ChaveAssimé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 - ChaveAssimé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 - ChaveAssimé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 - ChaveAssimé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áquinaEnigma (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 algoritmoconsiste 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
dechave 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 RSAenvolve 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.