2. “À medida que a era digital estava no seu
alvorecer no final dos anos 1970’s, uma
enorme pedra no caminho à troca de
informações e à condução de transações
via redes de alta-velocidade era a falta
de segurança de participantes externos
que poderiam querer interceptar os
dados…”
(Resenha de Crypto (Steven Levy, 2000), por Publishers
Weekly.)
5. 30 Years of Public-Key Cryptography
(Computer History Museum, Oct 2006)
“Com a possível exceção de armas
nucleares, não consigo pensar em
nenhuma technologia que tenha tido
um impacto político e econômico
profundo sobre o mundo maior que a
criptografia. (...)
Geralmente acho que o papel da
criptografia de chave pública que tem
tido um papel fundamental na
internet moderna, é geralmente
subestimada.
Acho que é provavelmente porque ela
está tão rapidamente se tornando
parte invisível do tecido tanto da
comunicação quanto do comércio
modernos. “ (26/10/2006)
MC: John Markoff (NYT Tech columnist)
6. O que é Criptografia?
Tradicionalmente: manter sigilo na comunicação
Alice e Bob conversam enquanto Eve tenta escutar
Alice Bob
Eve
7. Sigilo deve se resumir à chave/senha
“Não se deve supor que o
método de cifragem (e
decifragem) é secreto. É
preciso admitir a
possibilidade de que tais
métodos caiam nas mãos do
adversário, e ainda assim o
sigilo da comunicação seja
mantido.”
Auguste Kerckhoffs (1835–1903) Conseqüência: segurança por
obscuridade de métodos é
perigoso. (Ex.: GSM)
8. Abordagem Matemática à
Teoria da Informação
• Claude Shannon (1916–
2001).
• A Mathematical Theory of
Communication. Bell
Systems Technical Journal
27:379–423, 623–656,
1948.
• Communication Theory of
Secrecy Systems. Bell
Systems Technical Journal
28:656–715, 1949.
9. Sigilo Perfeito
Um esquema criptográfico é perfeitamente
sigiloso se:
1. a senha tem o mesmo tamanho da
mensagem
2. a cada mensagem uma senha é sorteada
10. Tempos Modernos
• Até os anos 70’s – sobretudo área militar e confidencial
• Desde então - crescimento explosivo
– Aplicações comerciais
– Trabalho científico: relacionamento estreito com Teoria da
Complexidade Computacional
– Destaques: Diffie-Hellman, Rivest-Shamir-Adleman
• Recentemente – modelos mais sofisticados para tarefas
as mais diversas
Como manter o sigilo, a integridade e a autenticidade
em sistemas de informação e comunicação
11. Merkle Hellman Diffie
“Estamos hoje à beira de uma revolução em criptografia.”
(New Directions in Cryptography, 1976)
12. Troca de Chaves
Assinaturas Digitais
Whitfield Diffie Martin Hellman
13. Primórdios da Noção de
“Chave Pública”
1974: “Conforme as concepções
tradicionais da segurança
criptográfica, é necessário
transmitir uma chave, por meio
secreto, antes que mensagens
cifradas possam ser enviadas de
forma segura.
Este artigo mostra que é possível
selecionar uma chave sobre
canais abertos de comunicação
de tal forma que a segurança das
communicações possa ser
mantida.”
Ralph Merkle
16. Fragilidade
• Necessidade de “Certificado”
• Suscetível ao ataque “homem-no-meio”
• Tentativas de solução:
– Encriptação baseada na Identidade (Shamir 1984)
– Criptografia de Chave Pública Sem-Certificado (Al-
Riyami & Paterson 2003)
17. Criptografia Moderna e
Complexidade Computacional
Teoria da Complexidade - Criptografia Moderna-
• Estuda os recursos • Encontra maneiras de
necessários para se especificar requisitos de
resolver problemas segurança de sistemas
computacionais
– tempo, memória
• Identifica problemas • Usa a infactibilidade de
que são infactíveis de problemas de forma a
computar. obter segurança.
Essas duas áreas estão intimamente ligadas!
18. Funcionalidades da
Criptografia Moderna
• Sigilo
• Autenticação
• Integridade
• Cooperação sem perder a privacidade (ex.
leilão eletrônico; estatísticas conjuntas entre
concorrentes; pesquisas de opinião; votação
eletrônica; etc.)
19. Encriptação Totalmente Homomorfa
• Encriptação homomorfa é uma forma de
encriptação na qual uma operação algébrica
específica realizada no purotexto é
equivalente a uma outra operação algébrica
(possivelmente diferente) realizada no
cifrotexto.
20. Aplicação
• Em 2010 Riggio & Sicari apresentaram uma
aplicação prática da encriptação homomorfa a
uma rede de sensores sem-fio híbrida.
• O sistema permite monitoramento sem fio
multiponto transparente que é capaz de realizar
análise estatística de vários tipos de dados
(temperatura, humidade, etc.) vindos de uma
WSN enquanto que garante tanto a encriptação
fim–a–fim quanto a autenticação ponto-a-ponto.
21. Especificação Rigorosa de Segurança
Para definir segurança de um sistema é
preciso especificar:
1. O que constitui uma falha do sistema
2. O poder do adversário
– capacidade computacional
– acesso ao sistema
– definição precisa do que significa “quebrar” o
sistema.
22. Funções e suas inversas
Dizemos que uma função f é difícil de inverter
se, dado y=f(x) é difícil encontrar x’ tal que
y=f(x’)
– x’ não precisa ser igual a x
– Exemplos: (1) multiplicação; (2) exponenciação
• Para dizer o que é “difícil” temos que
especificar um modelo computacional
23. Modelo Computacional:
“Máquina de Turing”
Alan Turing. “On
computable
numbers, with an
application to the
Entscheidungsproble
m”, Proc. London
Mathematical
Society, Series 2,
42(1936-1937), pp.
230-265
24. Início da Criptografia Moderna
Whitfield Diffie & Martin Hellman (1976)
• Alice e Bob compartilham um primo p, a base g, e
querem estabelecer uma chave (senha)
1. Alice calcula A = ga mod p, e envia A para Bob
2. Bob calcula B = gb mod p, e envia B para Alice
3. Alice calcula KA = Ba mod p
4. Bob calcula KB = Ab mod p
– KA = Ba mod p = gba mod p = gab mod p = Ab mod p = KB
• Abelhudo só consegue aprender p, g, A e B – e é difícil
calcular K somente a partir desses valores (problema do
logaritmo discreto)
• Resultado: Estabelecimento seguro de chave (senha)
usando somente troca pública de informação
29. Fatoração em Tempo Polinomial
• “Em um computador quântico, fatorar um inteiro N, o
algoritmo de Peter Shor (1994) roda em tempo polinomial
(em log N, que é o tamanho da entrada).
• Especificamente, O((log N)3), o que mostra que o problema
da fatoração pode ser eficientemente resolvido em um
computador quântico e está portanto na classe de
complexidade BQP.
• Isso é exponencialmente mais rápido que o algoritmo
clássico mais eficiente que se conhece, to crivo de número
de campo geral, que roda em tempo sub-exponencial —
O(e1.9 (log N)1/3 (log log N)2/3).
• A eficiência se deve ao poder da transformada de Fourier
quântica, e da exponenciação modular por elevação ao
quadrado”. (Wikipédia)