Você está na página 1de 101

Segurana Computacional

CRIPTOGRAFIA SIMTRICA

Bacharelado em Cincia da Computao

Flvia Coelho
flaviacoelho@ufersa.edu.br
Atualizado em Maro de 2015
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Criptologia
Esteganografia

Consiste em camuflar mensagens


Ao contrrio da Criptografia, que procura esconder a
informao de uma mensagem, a Esteganografia
procura esconder a existncia da mensagem
Criptografia torna ininteligvel uma mensagem, a terceiros,
por meio de transformaes
Esteganografia torna oculta a existncia de uma
mensagem
Exemplos
Tinta invisvel
Grelha de Cardano
Exemplo

Pode-se esconder mensagens em, por exemplo,


imagens ou textos que tenham sentido mas que
sirvam apenas de suporte
Exemplo
Trocando os bits menos significativos da imagem pelos bits da mensagem
Suponha que voc tenha os seguintes bytes representando intensidade
de cores
200 53 2 195 54 69 191 56
Em binrio
11001000 00110101 00000010 11000011 00110110 01000101 10111111
00111000
Para esconder a mensagem 109 (01101101), teramos
11001000 00110101 00000011 11000010 00110111 01000101 10111110
00111001
Que corresponde a 200 53 3 194 55 69 190 57
Para o olho humano muito difcil identificar a diferena entre os valores!!!
Limitaes
Em comparao com Criptografia

Pode exigir significativo esforo para camuflar


relativamente poucos bits de dados
Quando um sistema de esteganografia
descoberto, torna-se intil (exceto, se
depender de uma chave)
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Criptografia Simtrica

Tambm denominada Criptografia


Convencional ou de Chave nica (Secreta)
Caractersticas
Mensagem original texto claro (plaintext)
Mensagem codificada texto cifrado (ciphertext) = criptograma
Cifragem, encriptao ou criptografia processo que converte
texto claro em texto cifrado
Decifragem, decriptao ou decriptografia processo de
restaurar o texto claro, a partir do texto cifrado
Criptoanlise emprego de tcnicas para decifrar uma
mensagem sem conhecimento dos detalhes de criptografia
Modelo
Chave Criptogrfica

Entrada para o algoritmo de criptografia


Valor independente do texto claro e do
algoritmo
O algoritmo produz uma sada diferente,
dependendo da chave especfica
As substituies e transformaes, realizadas
pelo algoritmo, dependem da chave
Exemplo Chave 3DES
d0ff2d67d042926d1db7e428c35f9bea8713866250cab36f
Formalizando

Chave K Chave K

y
x fk(x)=y fk-1(y)=x x
Rede de
ORIGEM comunicao DESTINO
Requisitos de Segurana

O algoritmo de criptografia deve ser forte


Origem e destino precisam ter e manter
protegidas as cpias da chave secreta
Observao
O algoritmo no precisa ser secreto, apenas a
chave (o seu sigilo o maior problema)
Critrios de Classificao de Sistemas
Criptogrficos
Critrio #1: Tipo das operaes usadas para
transformar texto claro em cifrado
Algoritmos baseam-se em 2 princpios
Substituio, em que cada elemento no texto claro
(bit, caractere, grupo de bits ou caracteres)
mapeado em outro elemento
Transposio, em que os elementos no texto claro so
reorganizados
Requisito fundamental que as operaes sejam
reversveis
Critrios de Classificao de Sistemas
Criptogrficos
Critrio #2: Nmero de chaves usadas
Algoritmos simtricos, ou de chave nica, secreta
ou convencional
Algoritmos assimtricos, ou de duas chaves, ou
de chave pblica
Critrios de Classificao de Sistemas
Criptogrficos
Critrio #3: Modo como o texto claro
processado
Uma cifra de bloco processa a entrada de um
bloco de elementos de cada vez
Produz um bloco de sada para cada bloco de entrada
Um cifra de fluxo processa os elementos de
entrada, continuamente
Produz a sada de um elemento de entrada por vez
Ataques Criptografia Simtrica

Tipicamente, o objetivo recuperar a chave


em uso, ao invs de recuperar o texto claro de
um nico texto cifrado
Tcnicas bsicas
Criptoanlise
Ataque por fora bruta
Criptoanlise

Tem como base a natureza do algoritmo e o


conhecimento das caractersticas gerais do
texto claro, ou amostras de texto claro e
cifrado
Caractersticas do algoritmo so exploradas
para tentar deduzir um texto claro ou a chave
utilizada
Criptoanlise
Possibilidades de Ataques ao Texto Cifrado
TIPO CONHECIDO AO CRIPTOANALISTA
Apenas texto - Algoritmo de criptografia - Texto cifrado
cifrado
Texto claro - Algoritmo de criptografia - Texto cifrado
conhecido - Um ou mais pares de texto claro/cifrado formados com a chave
secreta

Texto claro - Algoritmo de criptografia - Texto cifrado


escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
Texto cifrado - Algoritmo de criptografia - Texto cifrado
escolhido - Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro decriptado correspondente, gerado
com a chave secreta
Texto - Algoritmo de criptografia - Texto cifrado
escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
- Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro criptografado correspondente,
gerado com a chave secreta
Criptoanlise
Possibilidades de Ataques ao Texto Cifrado
TIPO CONHECIDO AO CRIPTOANALISTA
Maior
Apenas texto - Algoritmo de criptografia - Texto cifrado dificuldade
cifrado
Texto claro - Algoritmo de criptografia - Texto cifrado
conhecido - Um ou mais pares de texto claro/cifrado formados com a chave
secreta

Texto claro - Algoritmo de criptografia - Texto cifrado


escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
Texto cifrado - Algoritmo de criptografia - Texto cifrado
escolhido - Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro decriptado correspondente, gerado
com a chave secreta
Texto - Algoritmo de criptografia - Texto cifrado
escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
- Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro criptografado correspondente,
gerado com a chave secreta
Criptoanlise
Possibilidades de Ataques ao Texto Cifrado
TIPO CONHECIDO AO CRIPTOANALISTA
Apenas texto - Algoritmo de criptografia - Texto cifrado
cifrado Meta tpica de
Texto claro - Algoritmo de criptografia projeto: resistir a
- Texto cifrado
conhecido - Um ou mais pares de texto claro/cifrado formados com a chave
esse ataque!
secreta

Texto claro - Algoritmo de criptografia - Texto cifrado


escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
Texto cifrado - Algoritmo de criptografia - Texto cifrado
escolhido - Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro decriptado correspondente, gerado
com a chave secreta
Texto - Algoritmo de criptografia - Texto cifrado
escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
- Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro criptografado correspondente,
gerado com a chave secreta
Criptoanlise
Possibilidades de Ataques ao Texto Cifrado
TIPO CONHECIDO AO CRIPTOANALISTA
Apenas texto - Algoritmo de criptografia - Texto cifrado
cifrado
Texto claro - Algoritmo de criptografia - Texto cifrado
conhecido - Um ou mais pares de texto claro/cifrado formados com a chave
secreta

Texto claro - Algoritmo de criptografia - Texto cifrado


escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
Texto cifrado - Algoritmo de criptografia - Texto cifradoSo os menos
escolhido - Texto cifrado pretendido, escolhido pelo criptoanalista,
empregados
juntamente com seu texto claro decriptado correspondente, gerado
com a chave secreta
Texto - Algoritmo de criptografia - Texto cifrado
escolhido - Mensagem de texto claro escolhida pelo criptoanalista,
juntamente com seu texto cifrado correspondente, gerado com a
chave secreta
- Texto cifrado pretendido, escolhido pelo criptoanalista,
juntamente com seu texto claro criptografado correspondente,
gerado com a chave secreta
Ataque por Fora Bruta

Cada chave possvel experimentada, em um


trecho cifrado, a fim de obter uma traduo
inteligvel
Se o espao de chaves for muito grande, isso
pode se tornar impraticvel
preciso considerar uma anlise do texto cifrado,
por exemplo, atravs de testes estatsticos
O atacante precisa ter alguma idia do tipo de
texto claro que est cifrado
Qual o idioma? executvel? um cdigo-fonte? etc...
Ataque por Fora Bruta
Tempo Mdio Exigido x Tamanho da Chave

Tamanho da Nmero de Tempo para 1 Tempo para 106


chave (bits) chaves decriptao/s decriptaes/s
32 232 = 4,3.109 231s = 35,8 2,15
minutos milissegundos
56 256 = 7,2.1016 255s = 1142 10,01 horas
anos
128 2128 = 3,4.1038 2127s = 5,4.1018 anos
5,4.1024anos
168 2168 = 3,7.1050 2167s = 5,9.1030 anos
5,9.1036anos
26 26! = 4.1026 2.1026s = 6,4.106 anos
caracteres 6,4.1012anos
(permutao)
Quando um Algoritmo de Criptografia
Seguro?
Quando o custo de quebra for superior ao valor da
informao
OU
Quando o tempo de quebra for superior ao tempo de
vida til da informao

Nota: o problema que muito difcil estimar a


quantidade de esforo exigido para uma quebra obtida
com xito
Contedo
Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Substituio
Transposio
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Tcnicas de Substituio

Base
Caracteres do texto claro so substitudos por
outros caracteres, por nmeros ou smbolos
Se consideradas sequncias de bits, padres de
bits do texto claro so substitudos por padres
de bits do texto cifrado
Exemplo
Cifra de Csar

Idia: Substituir cada letra do alfabeto pela


letra a 3 posies adiante, no alfabeto
Exemplo
Cifra de Csar

Algoritmos
Encriptao: C = (p + 3) mod 26, onde p a posio do
caractere
Decriptao: D = (C 3) mod 26
Generalizando...
Encriptao: C = (p + k) mod 26
Decriptao: D = (C k) mod 26
k deslocamento (varia de 1 a 25) para o alfabeto de 26
caracteres h 25 chaves possveis
Cifras Monoalfabticas

Substituio caractere a caractere


Utilizando uma nica tabela de substituio (um
nico alfabeto)
Exemplo
Alfabeto do texto em claro
ABCDE FGHIJKLMNOPQRSTUVWXUZ
Alfabeto de substituio
E R T J D V B X W LAK Z I N Q C F G H M O PS UY

Texto em claro: SEG URAN CA


Texto criptografado: G D B M F E I T E
Cifras Monoalfabticas
Fraquezas

possvel explorar as regularidades de um


idioma
Os criptogramas refletem os dados de
frequncia do alfabeto original
Exemplo
Cifra de Playfair

Cifra de criptografia de mltiplas letras que trata


digramas como unidades isoladas e as traduz em
digramas de texto cifrado
Digramas so combinaes de 2 letras
Por exemplo, th em Ingls e nh em Portugus
Baseada em uma matriz 5x5
Por exemplo, usando a palavra-chave MONARCHY
M O N A R
C H Y B D
SENTIDO DE

E F G I/J K
L P Q S T
U V W X Z
Exemplo
Cifra de Playfair

O texto claro criptografado, 2 letras de cada


vez, tendo como base
1) Letras repetidas no mesmo par so separadas
por uma letra de preenchimento, como x
Por exemplo, balloon seria tratado como ba lx lo on
Exemplo
Cifra de Playfair

O texto claro criptografado, 2 letras de cada


vez, tendo como base
2) Letras que se encontrem na mesma linha da
matriz so substitudas pela letra direita, com o
primeiro elemento da linha vindo aps o ltimo de
forma circular
Por exemplo, ar criptografado como rm
M O N A R
C H Y B D
E F G I/J K
L P Q S T
U V W X Z
Exemplo
Cifra de Playfair

O texto claro criptografado, 2 letras de cada


vez, tendo como base
3) Duas letras que se encontrem na mesma coluna
so substitudas pela letra abaixo, com o elemento
de cima da coluna vindo aps o ltimo, de forma
circular
Por exemplo, mu criptografado como cm
M O N A R
C H Y B D
E F G I/J K
L P Q S T
U V W X Z
Exemplo
Cifra de Playfair

O texto claro criptografado, 2 letras de cada


vez, tendo como base
4) Caso contrrio, cada letra de texto claro em um
par substituda pela letra que se encontra em uma
sua prpria linha e na coluna ocupada pela outra
letra do texto claro
Por exemplo, hs criptografado como bp e ea, por im
M O N A R
C H Y B D
E F G I/J K
L P Q S T
U V W X Z
Exemplo
Cifra de Playfair

Consideraes
26 letras 26 x 26 = 676 digramas
fcil de ser quebrada!!!
Usado pelo Exrcito Britnico na I Guerra
Mundial, e pelos EUA e outras foras aliadas
durante a II Guerra Mundial
Utiliza a tcnica de oferecer vrios substitutos,
denominados homfonos, para uma nica letra
para aumentar a segurana no processo
Cifras Polialfabticas
Utiliza um conjunto de regras de substituio
monoalfabticas relacionadas
uma espcie de combinao do uso de vrias
substituies monoalfabticas, usadas em rotao
De acordo com um critrio ou chave
Tem como base a utilizao de vrias tabelas de
substituio
Exemplo
Usar 4 tabelas de substituio em alternncia a
cada 4 caracteres de uma mensagem
Exemplo
Cifra de Vigenre

As regras de substituio monoalfabtica


consistem nas 26 cifras de Csar, com
deslocamento de 0 a 25
Cada cifra indicada por uma letra-chave a
letra do texto cifrado que substitui a letra do
texto claro a
Por exemplo, uma cifra de Csar com deslocamento 3
indicada pela chave d
Exemplo
Cifra de Vigenre

l aro
xt oc
Te

Tabela de
Vigenre
e
h av
tr a-c
Le
Exemplo
Cifra de Vigenre

Processo
Dada uma letra-
chave x e uma
letra do texto
claro y, a letra do
texto cifrado est
na interseo da
linha rotulada x e
a coluna rotulada
yv
Exemplo
Cifra de Vigenre

Processo
Para encriptar uma
mensagem,
necessria uma
chave do mesmo
tamanho
possvel repetir a
chave
Exemplo

Chave: deceptive

deceptivedeceptivedeceptive
Texto claro: wearedicoveredsaveyourself
Texto cifrado: zicvtwqngrzgvtwavzhcqyglmgj
Exemplo
Cifra de Vigenre

Processo
Para decriptar
simples: a letra-
chave identifica a
linha, a posio da
letra do texto
cifrado na linha
determina a
coluna, e a letra
do texto claro est
no topo da coluna
Exemplo
Cifra de Vigenre

Consideraes
H mltiplas letras do texto cifrado para cada
letra do texto claro a informao da frequncia
das letras ocultada!
fcil de ser quebrada
Em funo da possibilidade de repetir a chave para a
mensagem
Exemplo
One-Time Pad (Chave de Uso nico)

Projetado por Joseph Mauborgne (oficial do


Exrcito dos EUA)
Princpios
Uso de uma nica chave aleatria do mesmo tamanho
da mensagem, de modo que a chave no seja repetida
A chave deve ser usada para encriptar/decriptar uma
nica mensagem e depois ser descartada
Produz sada aleatria que no possui nenhum
relacionamento estatstico com o texto claro
Esquema considerado inquebrvel
Exemplo
One-Time Pad (Chave de Uso nico)
Considere 2 codificaes distintas usando 2 chaves
diferentes
Usando a cifra de Vigenre
Texto cifrado: ankyodkyurepfjbyojdsplreyiunofdoiuerfpluyts
Chave 1: pxlmvmsydofuyrvzwc tnlebnecvgdypahfzzlmnyih
Texto claro: mr mustard with the candlestick in the hall
Chave 2: mfugpmiydgaxgoufhklllmhsqdqogtewbqfgyovuhwt
Texto claro: miss scarlet with the knife in the library
Se o criptoanalista encontrar estas 2 chaves, os 2 textos
claros plausveis seriam obtidos qual a chave correta?
Exemplo
One-Time Pad (Chave de Uso nico)

Consideraes
Para qualquer texto claro de tamanho igual ao do texto
cifrado, existe uma chave que produz tal texto claro
Com uma busca exaustiva de chaves, possvel encontrar
muitos textos claros legveis, sem saber qual foi o texto
claro pretendido
Segurana baseada na aleatoriedade da chave
Se o fluxo de caracteres que constitui a chave for
verdadeiramente aleatrio, o fluxo de caracteres do texto
cifrado tambm o ser
Exemplo
One-Time Pad (Chave de Uso nico)

Dificuldades prticas, a considerar


Problema prtico de criar grandes quantidades
de chaves aleatrias
Qualquer sistema poderia exigir milhes de
caracteres aleatrios e, fornecer caracteres
verdadeiramente aleatrios uma tarefa significativa
Distribuir e proteger as chaves so um problema!
Afinal, para cada mensagem, uma chave do mesmo
tamanho necessria (na origem e no destino)
Como distribu-las de modo seguro?
Contedo
Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Substituio
Transposio
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Tcnicas de Transposio
Baseada na permutao dos caracteres no texto claro
Cifras de transposio pura so facilmente reconhecidas, pois
tm as mesmas frequncias dos caracteres do texto claro
Exemplo
Escrever o texto em claro por linha e obter o criptograma, por coluna
Chave: quantidade de caracteres em cada linha
Criptografia para chave = 5
C A R A C
T E R S
T I C A S
Criptograma: CTTAEIRRCAACSS
Exemplo
Chave em forma de Palavra/Frase

O objetivo da chave
numerar as colunas de
modo que a coluna 1 fique M E G A B U C K
abaixo da letra da chave 7 4 5 1 2 8 3 6
mais prxima do incio do C R I P T O G R
alfabeto, e assim por A F I A P R O V

diante E A P R I V A C
I D A D E D E M
Texto claro E N S A G E N S

CRIPTOGRAFIA PROV
PRIVACIDADE DE CRIPTOGRAMA
MENSAGENS PARDATPIEGGOAENRFADNII
PASRVCMSCAEIEORVDE
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Tipos de Cifras

Cifra de fluxo
Codifica um fluxo de dados, um bit ou byte por vez
Por exemplo, a cifra de Vigenre
Cifra de bloco
Codifica um bloco de texto claro, produzindo assim, um
bloco de texto cifrado de mesmo tamanho
Tipicamente, o tamanho do bloco 64 ou 128 bits
preciso mais esforo para a criptoanlise que as cifras
de fluxo
Estrutura de Cifra de Fluxo

Tipicamente, a cifra de fluxo criptografa o


texto claro, um byte por vez
A sada do gerador
combinada um byte de
cada vez com o fluxo de
texto claro (XOR bit-a-bit)
Um fluxo pseudo-
aleatrio
imprevisvel, sem
o conhecimento
da chave de
entrada
Estrutura de Cifra de Fluxo

Tipicamente, a cifra de fluxo criptografa o


texto claro, um byte por vez EXEMPLO
Encriptao
11001100 texto claro
A sada do gerador XOR 01101100 fluxo de chave
combinada um byte de ______________________
cada vez com o fluxo de 10100000 texto cifrado
texto claro (XOR bit-a-bit)
Decriptao
10100000 texto cifrado
XOR 01101100 fluxo de chave
______________________
11001100 texto claro
Consideraes de Projeto para Cifra de
Fluxo
O gerador de nmeros pseudo-aleatrios deve
ter um perodo grande
Para dificultar a criptoanlise
Quanto mais aleatria for a aparncia do fluxo
de chave, mais aleatrio ser o texto cifrado
Para dificultar a criptoanlise
Chaves devem ter tamanho significativo
De 128 bits, pelo menos
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
DES (Data Encryption Standard)
Desenvolvido pela IBM
Adotado, como padro, pelo NIST (National Institute of
Standards and Technology), em 1977
O algoritmo tambm denominado DEA (Data
Encryption Algorithm)
Processo
Entrada: bloco de 64 bits
Sada: bloco de 64 bits
Tamanho da chave: 56 bits (64 8 bits de paridade)
DES
Esquema Geral
aplicada uma
funo de
PERMUTAO permutao
INICIAL chave (PC1)

Ki produzida
para a i-sima
rodada:
16 rodadas, deslocamento
com funes de circular
permutao e esquerda e
substituio permutao
(PC2)

As metades da
esquerda e
PERMUTAO direita so
INICIAL trocadas
REVERSA
Permutao Inicial/Inicial Inversa

So definidas por tabelas


A entrada da tabela consiste em 64 bits
numerados de 1 a 64
As 64 entradas na tabela compreendem uma
permutao dos nmeros de 1 a 64
Cada entrada na tabela indica a posio de 1 bit
de entrada, numerada nas sadas
Permutao Inicial/Inicial Inversa

PERMUTAO INICIAL (IP) PERMUTAO INICIAL


INVERSA (IP-1)
Detalhando uma Rodada Individual
Li = Ri-1 Ri = Li F(Ri-1, Ki)

=
Detalhando uma Rodada Individual

=
Clculo de F(R, K)

Entrada: 6 bits

Sada: 4 bits
Definio das
S-Boxes
O primeiro e o ltimo
bits da entrada para
Si formam um valor
de 2 bits para
selecionar uma das 4
linhas na tabela Si

Os 4 bits do meio
selecionam uma das
colunas na tabela Si

Em S1, para a entrada


011001, a linha 01
(linha 1) e a coluna
1100 (coluna 12)
Sada: 9 (1001)
Detalhando uma Rodada Individual

=
Gerao de Chaves 64 bits (-8 de
paridade): Cada 8o
bit ignorado

=
Gerao de Chaves

K submetida
permutao PC1

=
Gerao de Chaves

= K tratada como 2 blocos


de 28 bits (C0 e D0)
Gerao de Chaves

= Em cada rodada, Di-1 e Ci-1


esto sujeitos a um
deslocamento circular
esquerda, de 1 ou 2 bits
Gerao de Chaves

Os valores deslocados servem de


= entrada para a permutao PC2
Fora do DES
Tamanho da Chave

Chaves de 56 bits, h portanto, 256 chaves


possveis (7,2 . 1016 chaves)
Em 1998, a EEF projetou uma mquina
decifradora
Quebra em menos de 3 dias, por fora bruta
Custo de US$ 250 mil
Fora do DES
Tamanho da Chave

Em 2007, a University of Bochum and Kiel,


Alemanha, projetou um FPGA (Copacabana)
decifrador
Baseado em processamento paralelo
Quebra em 6.4 dias
Custo de US$10 mil
Fora do DES
Natureza do Algoritmo

Foco nas 8 S-boxes usadas em cada rodada


Os critrios de seu projeto no se tornaram
pblicos
Isto gera suspeitas de que elas foram construdas de
modo a facilitar a criptoanlise considerando
oponentes que conheam seus pontos fracos
At o momento, no se conhecem descobertas (e
sua publicao) do ponto fraco fatal das S-boxes
3DES

Implementao alternativa ao DES


Tipicamente, utilizando 3 chaves tamanho
efetivo de 168 bits
Atualmente, o padro o AES (Advanced
Encryption Standard)
3DES
Esquema Geral
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Modo ECB (Electronic CodeBook)

Texto claro tratado, um bloco de cada vez


Cada bloco criptografado usando-se a
mesma chave
Codebook expressa o fato de que, para cada
chave ,h um texto cifrado exclusivo para cada
bloco de b bits de texto claro
A idia refere-se a uma espcie de Lista de
Cdigos
Modo ECB
Esquema Geral
Modo ECB
Consideraes Gerais

Para um mesmo bloco de b bits de texto claro,


sempre produzir o mesmo texto cifrado
Facilita a explorao de regularidades e, assim, a cripto-
anlise
Para mensagens mais longas, o ECB pode no ser
seguro
Portanto, ideal para pequenas quantidades de
dados
Para chaves, por exemplo
Modo CBC (Cipher Block Chaining)

Criado para contornar as deficincias do ECB


A idia que para um bloco de texto, repetido na
mensagem, sejam produzidos diferentes blocos de
texto cifrado
A entrada o XOR do bloco de texto claro atual e o
bloco de texto cifrado anterior
Usando a mesma chave para todos
Observa-se um encadeamento no processamento
de blocos
Modo CBC
Esquema Geral

Padres repetitivos de b bits no so expostos


Modo CBC
Consideraes Gerais

O IV precisa ser conhecido pelo emissor e o


receptor e protegido contra alteraes no-
autorizadas
O IV pode ser enviado por meio de criptografia
ECB, por exemplo
um modo apropriado para a criptografia de
mensagens de tamanho maior que b bits
Contedo

Criptologia
Esteganografia
Criptografia Simtrica
Tcnicas Fundamentais de Criptografia
Cifras de Fluxo e Bloco
DES
Modos de Operao de Cifras
Distribuio de Chaves Simtricas
Distribuio de Chaves

Na criptografia simtrica, emissor e receptor


precisam compartilhar a chave secreta e
proteg-la contra acessos no-autorizados
Mudanas frequentes na chave so desejveis
A fora do sistema est relacionada
distribuio de chaves
Vejamos Algumas Possibilidades
Distribuir uma chave entre Alice e Bob

Alice pode selecionar uma chave e entreg-la


fisicamente para Bob
Ateno necessidade de remessa manual
Vejamos Algumas Possibilidades
Distribuir uma chave entre Alice e Bob

Um terceiro pode selecionar uma chave e


entreg-la fisicamente a Alice e Bob
Ateno necessidade de remessa manual
Vejamos Algumas Possibilidades
Distribuir uma chave entre Alice e Bob

Se Alice e Bob tiverem usado, recentemente,


uma chave prvia, um deles pode transmitir a
'nova chave' ao outro, usando a chave antiga
Ateno se a primeira chave for descoberta, as
demais podem ser reveladas
Vejamos Algumas Possibilidades
Distribuir uma chave entre Alice e Bob

Se Alice e Bob tiverem uma conexo


criptografada com um terceiro, esta pode ser
usada para a entrega de uma chave a ambos
O terceiro?
KDC (Key Distribution Center) ou CDC (Central de
Distribuio de Chaves)
KDC

Baseia-se no uso de hierarquia de chaves


No mnimo, 2 nveis so usados
Chave de sesso
Usada durante uma conexo lgica (conexo de transporte, por
exemplo) e, depois, descartada
A comunicao entre os sistemas/usurios finais criptografada
usando tal chave
Cada chave de sesso obtida a partir do KDC
Chave-mestra
Compartilhada pelo KDC e sistema/usurio final
KDC
Chave-Mestra

Usada para criptografar as chaves de sesso


Para cada sistema/usurio final, h uma chave-
mestra exclusiva, compartilhada com o KDC
Se houver n entidades que queiram se comunicar em
pares, so necessrias n(n-1)/2 chaves de sesso
E, somente n chaves-mestra so exigidas
Como distribu-las?
Podem ser entregues de modo no-criptogrfico
Por exemplo, fisicamente
KDC
Chave de Sesso e seu Tempo de Vida

interessante a troca frequente


Assim, h atraso no incio de qualquer troca e aumento na
carga da rede
preciso considerar tais tradeoffs ao gerenciar a
segurana
Por exemplo...
Para protocolos com conexo, usa-se a mesma chave de sesso
durante toda a conexo
Para protocolos sem conexo, interessante usar a chave de
sesso por um certo perodo, para um certo nmero de transaes
KDC
Distribuindo Chaves

*Chaves-mestra
KDC
Distribuindo Chaves

*Chave de sesso
KDC
Distribuindo Chaves
Alice usa KA-KDC
para encriptar
sua comunicao
com o KDC:
requisita uma
chave de sesso
para se
comunicar com
Bob
KDC
Distribuindo Chaves
O KDC decrita a
mensagem
usando KA-KDC e
gera a chave de
sesso R1 (one-
time), que ser
usada para a
criptografia
entre Alice e Bob
KDC
Distribuindo Chaves
O KDC precisa
informar a Alice
e Bob, o valor R1
KDC
Distribuindo Chaves
O KDC envia
uma mensagem
encriptada para
Alice, usando KA-
KDC
, e contendo
R1, e o par (A,
R1), encriptado
usando KB-KDC,
KDC
Distribuindo Chaves
Alice tem
conhece R1 e a
salva. Extrai KB-
KDC
(A, R1) e a
envia para Bob
extrai, no
decripta!
KDC
Distribuindo Chaves
Bob decripta a
mensagem
usando KB-KDC e
decrita A, R1.
Assim, conhece
a chave de
sesso e a
entidade com a
qual compartilha
tal chave
Leitura e Links Recomendados

W. Stallings. Criptografia e Segurana de Redes.


Princpios e Prticas. Quarta Edio, Pearson, 2008,
pp. 17-60, 125-161, 427-442

M. Krause, H. F. Tipton. Handbook of Information


Security Management, CRC Press LLC, disponvel em
http://www.ccert.edu.cn/education/cissp/hism/ewt
oc.html