Criptografia
Aula 1/3
Modos de operao de
cifras.
Ementa (aula 2)
Criptografia.
Certificao digital.
Protocolos criptogrficos.
Ementa (aula 3)
Criptografia.
Caractersticas dos
algoritmos
Assimtricos: RSA
Simtricos: DES, e AES
Funes hash
MD5 e SHA-1.
Esteganografia
Introduo
Criptografia
Cincia da escrita em
cdigos secretos
Prtica e estudo sobre
esconder informao
Etimologia Grega
Cripto = escondido
Grafia = escrita
Ramo da matemtica (parte
da criptologia)
Troca de mensagens secretas
entre duas partes
Introduo
Criptografia
Conceitos Bsicos
Emissor
Envia uma mensagem de forma
segura
Comumente chamado de Alice
Receptor
Recebe uma mensagem de forma
segura
Comumente chamado de bob
Adversrio
Busca interceptar e obter
conhecimento sobre a mensagem
Conceitos Bsicos
Texto em claro (plaintext,
cleartext)
Texto original
Texto cifrado (ciphertext)
Texto desordenado
Criptograma
Conceitos Bsicos
Ciframento (encryption,
encipher)
Processo de embaralhar
mensagens
Criptografia
Cifragem
Deciframento (decryption,
decipher)
Processo de desembaralhar
mensagens
Decriptografia
Decifragem
Conceitos Bsicos
Conceitos Bsicos
Criptografia (cryptography)
Arte e cincia de manter
mensagens seguras
Criptgrafos (cryptographers)
Praticam a criptografia
Criptoanalistas
(cryptoanalysts)
Praticantes da criptoanlise
Criptoanlise (cryptoanalysis)
Arte e cincia de quebrar
textos cifrados
Conceitos Bsicos
Criptologia (cryptology)
Ramo da matemtica que cobre tanto a criptografia e a
criptoanlise
Criptologistas (cryptologists)
Praticantes da criptologia
Matemtica
Criptologia
Criptografia Criptoanlise
Conceitos Bsicos
Sistema Criptogrfico
(cryptosystem)
Combinao de um
algoritmo e todas as
possiveis mensagens, textos
cifrados e chaves
Cifra ou Algoritmo
criptogrfico (cypher /
Algorithm)
Funo matemtica usada
para cifrar ou decifrar
mensagens
Conceitos Bsicos
Chave criptogrfica
Utilizada na criptografia
moderna para proteger o
texto cifrado
Somente o possuidor da
chave correta poder
decifrar o texto
Alguns algoritmos usam
chaves diferentes para cifrar
e decifrar
Toda a segurana baseada
na chave (os detalhes do
algoritmo so pblicos)
Conceitos Bsicos
Segurana de Algoritmos
Dificuldade de quebrar
Maior que o valor dos dados
cifrados
Tempo de quebrar maior
que o tempo que a
mensagem deve permanecer
secreta
Categorias de quebra
1. Total: chave encontrada
2. Deduo global: encontrado
algoritmo alternativo
equivalente (sem a chave)
Conceitos Bsicos
Categorias de quebra (cont)
3. Deduo local:
Encontrado texto em claro
correspondente a um texto
cifrado
4. Deduo de informao:
Encontrado alguma
informao sobre a chave
ou texto em claro.
Conceitos Bsicos
Viso matemtica
Ciframento de uma
mensagem m com uma
chave k por um
algoritmo E
c=Ek(m)
Deciframento de texto
cifrado c por uma chave
kb e algoritmo D
m=Dkb(c=Ekb(m))
Conceitos Bsicos
Conceitos Bsicos
Objetivos de um
criptossistema
Sigilo
(confidencialidade)
Impossibilidade de um
adversrio descobrir uma
quantidade no
desprezvel da mensagem
Integridade
Garantia de no alterao
da mensagem
Conceitos Bsicos
Objetivos de um
criptossistema
Autenticidade
(autenticao)
Garantia da identidade
do emissor
No repdio
Impossibilita ao emissor
negar o envio de uma
mensagem
Conceitos Bsicos
Segurana de um
criptossistema
Um sistema
computacionalmente seguro se o
melhor algoritmo para quebr-lo
necessita de recursos maiores que
os disponveis"
No existe uma demonstrao de
que algum sistema criptogrfico
em uso seguro com esta
definio
O melhor mtodo conhecido
requer uma quantia muito
grande de recursos (dados,
processamento, memria)
Algoritmo pblico
Conceitos Bsicos
Segurana de um
criptossistema
Segurana incondicional
No pode ser quebrado,
mesmo com recursos
computacionais infinitos.
One time pad
Criptoanlise
Tentativa de obteno do
texto original a partir do
cifrado. (Criptoanalista).
Ataques a um criptossistema
Conceitos Bsicos
Tipos de ataques
Ataque de texto cifrado
(Ciphertext-only attack):
Nesse ataque o adversrio
possui acesso somente a
uma certa quantia de texto
cifrado.
Ataque de texto em claro
conhecido (Known-plaintext
attack, KPA): O adversrio
possui acesso ao texto em
claro de uma quantidade de
dados, alm do acesso ao
texto cifrado.
Conceitos Bsicos
Tipos de ataques
Ataque de texto em claro
escolhido (Chosen-plaintext
attack, CPA): O adversrio
pode escolher quais dados e
seus respectivos textos
cifrados e ter acesso aos
mesmos
Conceitos Bsicos
Tipos de ataques
Ataque adaptativo de texto
em claro escolhido
(Adaptive chosen-plaintext
attack, CCA2): O adversrio
tem acesso ao sistema
criptogrfico e pode
escolher pares de texto
cifrado/texto em claro de
forma adaptativa.
Ataque fora bruta: Tentar
todas as chaves at achar a
correta
Sistemas clssicos
Cifrasde
substituio
Cada caracter da mensagem
substituido por outro do
mesmo alfabeto.
Sistemas clssicos
Cifras
de
permutao
Os caracteres de uma
mensagem so reordenadas,
criando um anagrama
Sistemas clssicos
Cifra de csar
Sistema monoalfabtico
aditivo (substituio)
Usado por Jlio Csar em 44
A.C.
Cada letra do alfabeto
substituida pela letra
correspondente a d posies
no alfabeto (original d=3)
Ci=mi+d (mod 26)
Criptoanlise trivial
conhecendo o algoritmo
Sistemas clssicos
Cifra de csar
d=3
ROT 13
Cifrade substituio
Encontrado em
alguns sistemas
UNIX
A = N, B=O, etc.
Rotao de 13
posies
P=ROT13(ROT13(P
))
Sistemas clssicos
Mquinas de rotor
Chaves
Conjunto de bits usado pelo algoritmo de
criptografia.
Seu tamanho determina a segurana.
Chaves
Tamanho da chave
Quanto maior, mais seguro
Quanto maior, menor
performance
Determinando o tamanho
certo
O custo de quebrar a chave
tem que ser maior que o valor
da informao protegida
Criptografia simtrica
Algoritmos de
criptografia simtricos
Mais simples
(implementao em
hardware)
Utilizam a mesma chave
para encriptar/decriptar
(chave simtrica)
Processo computacional
envolvido simples e
rpido
Para haver comunicao
criptografada, um
algoritmo comum e uma
chave so suficientes
Criptografia simtrica
Algoritmos simtricos
Data Encryption
Standard (DES)
3DES (Triple DES)
AES (Advanced
Encryption Standard)
Criptografia simtrica
Algoritmos simtricos
Vantagens
Rapidez
Possibilidade de ser
implementado via hardware
Otimizado para criptografar
grandes quantidades de dados
Problemas
Gerao segura de chaves
Distribuio segura de chaves
Mudana peridica de chaves
Criptografia assimtrica
Algoritmos assimtricos
Utilizam o conceito de par
de chaves
Uma chave pblica, disponvel
para outros usurios
Uma chave privada,
disponvel apenas para o dono
do par de chaves
Tamanho das chaves maiores
(1024, 2048, 4096 bits)
Invivel derivar uma chave
da outra
Texto cifrado com uma
chave s pode ser decifrado
com a correspondente
Criptografia assimtrica
Algoritmos assimtricos
Ron Rivest, Adi Shamir e
Leonard Adleman (RSA)
El Gamal
Criptografia simtrica
Questo Polcia Federal PCF3 (2002)
1. A quebra de sistemas criptogrficos simtricos
sempre depende da descoberta da chave secreta
utilizada no processo criptogrfico. Errado
2. Chaves criptogrficas consideradas seguras
contra ataques de fora bruta, para os padres de
processamento atuais, devem possuir pelo menos
128 bits, tanto para criptografia simtrica quanto
para criptografia assimtrica. Errado
Criptografia simtrica
Modos de operao de cifras
Cifras de bloco
Operam sobre blocos de informao
Tamanho da chave x tamanho do bloco
Cifras de fluxo
Atuam bit-a-bit do texto
Mais rpidas
No h propagao de erros
Questo PF 2002
O nico sistema criptogrfico matematicamente inviolvel o
denominado sistema de chave nica. Todos os demais sistemas,
para utilizao em condies reais de aplicao, so teoricamente
violveis, ou seja, dados recursos e tempo ilimitados e quantidade
suficiente de criptograma gerado com uma mesma chave,
possvel, sempre, determinar, de forma unvoca, a chave utilizada.
Correto
Criptografia simtrica
Questo PF 2002
Diz-se que um sistema criptogrfico tem segredo perfeito
quando, dado um criptograma c, a incerteza que se tem em
relao mensagem m que foi cifrada a mesma que se tinha
antes de conhecer o criptograma. Uma condio necessria para
que um sistema criptogrfico tenha segredo perfeito que o
espao de chaves seja pelo menos to grande quanto o espao de
mensagens, ou seja, |K| $ |M|.
Correto
Criptografia simtrica
Gerao de nmeros
aleatrios
Geradores pseudo-aleatrios
(/dev/random)
Dificuldade de gerar
nmeros realmente aleatrios
Geram incerteza na
criptografia (e maior
segurana)
Initialization Vectors
Nonces
Fontes de incerteza
Criptografia simtrica
Gerao de nmeros
aleatrios
Criptografia simtrica
Modos de cifras de bloco
Electronic CodeBook (ECB): Mensagem dividida em blocos de tamanho
igual. Cifrados com uma nica chave
Criptografia simtrica
Modos de cifras de bloco
Cipher Block Chaining (CBC): Resultado da cifragem anterior
alimentado para o prximo bloco, usando XOR
Criptografia simtrica
Modos de cifras de bloco
Cipher FeedBack (CFB): cada bloco cifrado cifrado novamente
e feito XOR com o prximo bloco de texto em claro.
Criptografia simtrica
Modos de cifras de bloco
Output FeedBack (OFB): transforma uma cifra de bloco em uma
cifra de fluxo.
Criptografia simtrica
Funes HASH
Funes que transformam uma mensagem de
tamanho arbitrrio em uma sada de tamanho
fixo.
Caractersticas
Consistncia a mesma entrada sempre causa a
mesma sada
Randmico impossibilidade de deduzir a mensagem
original
nico duas mensagens diferentes produzem sadas
diferentes
One-way A sada no reversvel
Criptografia
Funes HASH
Message Digest 4 (MD4)
Desenvolvido por Ron Rivest do MIT
Message Digest 5 (MD5)
Desenvolvido por Ron Rivest do MIT
Baseado no MD4
Processa a entrada em blocos de 512 bits e produz uma sada de
128 bits.
Criptografia
Funes HASH
Secure Hash Algorithm
(SHA)
Criado pelo National Institute
of Standards and Technology
(NIST)
Processa a entrada em blocos
de 512 e produz uma sada de
160 bits
Necessita de maior
processamento que o MD5