ERBASE 2013 - Criptografia Moderna: Matemática para a Segurança Digital

2,603 views

Published on

Um panorama da íntima relação entre a Teoria da Complexidade Computacional e a Teoria da Criptografia de Chave Pública, apresentando os principais pilares sobre os quais está montada a Criptografia Moderna.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,603
On SlideShare
0
From Embeds
0
Number of Embeds
76
Actions
Shares
0
Downloads
42
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ERBASE 2013 - Criptografia Moderna: Matemática para a Segurança Digital

  1. 1. Criptografia Moderna:Matemática para a Segurança DigitalRuy J.G.B. de QueirozCentro de InformáticaUFPE
  2. 2. Bitcoin:Uma Cripto-Moeda
  3. 3. História da Bitcoin(Wikipédia)•  “Bitcoin é uma das primeiras implementações de umconceito chamado cripto-moeda.•  Baseada nesse conceito, bitcoin está desenhada emtorno da ideia de uma nova forma de dinheiro queusa criptografia para controlar sua criação e astransações, ao invés de ter que depender deautoridades centrais.”
  4. 4. “Bitcoin: A Peer-to-Peer ElectronicCash System”(2008)•  “Uma versão puramente peer-to-peer de dinheiroeletrônico permitiria que pagamentos online fossemenviados diretamente de uma parte a outra sempassar por uma instituição financeira.•  Assinaturas digitais propiciam parte da solução, masos principais benefícios são perdidos se uma terceiraparte confiável ainda for necessária para evitar oduplo-gasto.•  Propomos uma solução ao problema do duplo-gastousando uma rede peer-to-peer.”
  5. 5. “À medida que a era digital estava no seualvorecer no final dos anos 1970’s, umaenorme pedra no caminho à troca deinformações e à condução detransações via redes de alta-velocidadeera a falta de segurança departicipantes externos que poderiamquerer interceptar os dados…”(Resenha de Crypto (Steven Levy, 2000), porPublishers Weekly.)
  6. 6. Steven Levy(Chief Tech writer, Newsweek)
  7. 7. 30 Years of Public-Key Cryptography(Computer History Museum, Oct 2006)“Com a possível exceção de armasnucleares, não consigo pensar emnenhuma technologia que tenha tidoum impacto político e econômicoprofundo sobre o mundo maior que acriptografia. (...)Geralmente acho que o papel dacriptografia de chave pública que temtido um papel fundamental nainternet moderna, é geralmentesubestimada.Acho que é provavelmente porque ela estátão rapidamente se tornando parteinvisível do tecido tanto dacomunicação quanto do comérciomodernos. “ (26/10/2006)MC: John Markoff (NYT Tech columnist)
  8. 8. O que é Criptografia?Tradicionalmente: manter sigilo na comunicaçãoAlice e Bob conversam enquanto Eve tenta escutarAlice BobEve
  9. 9. Alice envia mensagem a Bob•  Quando Alice deseja enviar uma mensagemconfidencial a Bob:•  Alice cifra a mensagem usando uma senha•  Alice envia a mensagem cifrada pelo canal decomunicação (que pode ser escutado por Eve)•  Ao receber a mensagem cifrada:•  Bob decifra a mensagem usando a mesma senha•  Bob recupera a mensagem original em formato puro
  10. 10. Sigilo deve se resumir àchave/senha“Não se deve supor que ométodo de cifragem (edecifragem) é secreto. Épreciso admitir apossibilidade de que taismétodos caiam nas mãos doadversário, e ainda assim osigilo da comunicação sejamantido.”Conseqüência: segurança porobscuridade de métodos éperigoso. (Ex.: GSM)Auguste Kerckhoffs (1835–1903)
  11. 11. Abordagem Matemática àTeoria da Informação•  Claude Shannon (1916–2001).•  A Mathematical Theory ofCommunication. BellSystems Technical Journal27:379–423, 623–656, 1948.•  Communication Theory ofSecrecy Systems. Bell SystemsTechnical Journal 28:656–715, 1949.
  12. 12. Sigilo PerfeitoUm esquema criptográfico é perfeitamente sigiloso se:1.  a senha tem o mesmo tamanho da mensagem2.  a cada mensagem uma senha é sorteada
  13. 13. Tempos Modernos•  Até os anos 70’s – sobretudo área militar econfidencial•  Desde então - crescimento explosivo– Aplicações comerciais– Trabalho científico: relacionamento estreito com Teoria daComplexidade Computacional– Destaques: Diffie-Hellman, Rivest-Shamir-Adleman•  Recentemente – modelos mais sofisticados paratarefas as mais diversasComo manter o sigilo, a integridade e a autenticidadeem sistemas de informação e comunicação
  14. 14. Merkle Hellman Diffie“Estamos hoje à beira de uma revolução em criptografia.”(New Directions in Cryptography, 1976)
  15. 15. Whitfield Diffie Martin HellmanTroca de ChavesAssinaturas Digitais
  16. 16. Primórdios da Noção de“Chave Pública”1974: “Conforme as concepçõestradicionais da segurançacriptográfica, é necessáriotransmitir uma chave, pormeio secreto, antes quemensagens cifradas possamser enviadas de forma segura.Este artigo mostra que é possívelselecionar uma chave sobrecanais abertos decomunicação de tal formaque a segurança dascommunicações possa sermantida.”Ralph Merkle
  17. 17. Projeto rejeitado: “sua descrição está terrivelmente confusa”
  18. 18. BobAliceChaves PúblicasChave/Senha Pública
  19. 19. 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)
  20. 20. Criptografia Moderna eComplexidade ComputacionalTeoria da Complexidade -•  Estuda os recursos necessáriospara se resolver problemascomputacionais•  tempo, memória•  Identifica problemas que sãoinfactíveis de computar.Criptografia Moderna-•  Encontra maneiras de especificarrequisitos de segurança desistemas•  Usa a infactibilidade deproblemas de forma a obtersegurança.Essas duas áreas estão intimamente ligadas!
  21. 21. Funcionalidades daCriptografia Moderna•  Sigilo•  Autenticação•  Integridade•  Cooperação sem perder a privacidade (ex. leilãoeletrônico; estatísticas conjuntas entre concorrentes;pesquisas de opinião; votação eletrônica; etc.)
  22. 22. Encriptação TotalmenteHomomorfa•  Encriptação homomorfa é uma forma deencriptação na qual uma operação algébricaespecífica realizada no purotexto é equivalente auma outra operação algébrica (possivelmentediferente) realizada no cifrotexto.
  23. 23. Aplicação•  Em 2010 Riggio & Sicari apresentaram umaaplicação prática da encriptação homomorfa a umarede de sensores sem-fio híbrida.•  O sistema permite monitoramento sem fiomultiponto transparente que é capaz de realizaranálise estatística de vários tipos de dados(temperatura, humidade, etc.) vindos de uma WSNenquanto que garante tanto a encriptação fim–a–fimquanto a autenticação ponto-a-ponto.
  24. 24. Especificação Rigorosa deSegurançaPara definir segurança de um sistema é preciso especificar:1.  O que constitui uma falha do sistema2.  O poder do adversário•  capacidade computacional•  acesso ao sistema•  definição precisa do que significa “quebrar” o sistema.
  25. 25. Funções e suas inversasDizemos que uma função f é difícil deinverter se, dado y=f(x) é difícilencontrar 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 queespecificar um modelo computacional
  26. 26. Modelo Computacional:“Máquina de Turing”Alan Turing.“On computablenumbers, with anapplication to theEntscheidungsproblem”, Proc. LondonMathematical Society,Series 2,42(1936-1937), pp.230-265
  27. 27. Início da Criptografia ModernaWhitfield Diffie & Martin Hellman (1976)•  Alice e Bob compartilham um primo p, a base g, e querem estabeleceruma chave (senha)1.  Alice calcula A = ga mod p, e envia A para Bob2.  Bob calcula B = gb mod p, e envia B para Alice3.  Alice calcula KA = Ba mod p4.  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 Ksomente a partir desses valores (problema do logaritmo discreto)•  Resultado: Estabelecimento seguro de chave (senha) usando somentetroca pública de informação
  28. 28. 1973: Cocks realizou idéia de Ellis(1970): encriptação “não-secreta”
  29. 29. Rivest, Shamir & Adleman
  30. 30. RSA: artigo original: relatóriotécnico circulado em 1977
  31. 31. Fatoração em TempoPolinomial•  “Em um computador quântico, fatorar um inteiro N, o algoritmode 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 dafatoração pode ser eficientemente resolvido em um computadorquântico e está portanto na classe de complexidade BQP.•  Isso é exponencialmente mais rápido que o algoritmo clássicomais eficiente que se conhece, to crivo de número de campogeral, que roda em tempo sub-exponencial —O(e1.9 (log N)1/3 (log logN)2/3).•  A eficiência se deve ao poder da transformada de Fourierquântica, e da exponenciação modular por elevação aoquadrado”. (Wikipédia)
  32. 32. Outros ProblemasComputacionalmente Difíceis•  Problemas sobrereticulados: por exemplo,encontrar o vetor mais curto•  Problemas sobre códigos•  Problemas NP-Difíceis
  33. 33. Dave Bacon (2003)•  “Demonstramos que um computador quântico quetenha acesso a “curva temporal fechada” qubits poderesolver problemas NP-completos com apenas umnúmero polinomial de portas quânticas.”(Physical Review A, 2004)
  34. 34. Objetivos da“Criptografia Pós-Quântica”•  Desenvolver criptossistemas baseados em problemasdemonstravelmente intratáveis (pelo menos emcomputadores quânticos).•  Avaliar a segurança e a usabilidade na prática.•  Quantificar a complexidade quântica das hipótesesde intratabilidade.
  35. 35. Problemas Computacionais•  P: solúveis em tempo polinomial determinístico.•  NP: solúveis em tempo polinomial não-determinístico (ou checáveis em tempo polinomial).•  PSPACE: solúveis em espaço polinomial.•  BQP: solúveis por um computador quântico emtempo polinomial, com uma probabilidade de errode no máximo 1/3 para todas as instâncias. (Trata-sedo análogo quântico da classe de complexidadeBPP.)
  36. 36. Relação entre Classes deComplexidadeSabe-se que•  P ⊆ NP ⊆ PSPACE•  P ⊆ NP ⊆ BQP•  BPP ⊆ BQP
  37. 37. Criptossistemas MaisUtilizados•  Fatoração Inteira –IFP: RSA.•  Logaritmo Discreto e Problema de Diffie-Hellman –DLP, CDHP, DDHP, BDHP, …: (EC)DSA,(EC)DH, criptossistemas baseados ememparelhamentos (curvas elípticas).•  Tais hipóteses de intratabilidade (e várias outras) sereduzem à intratabilidade do “Problema doSubgrupo Escondido”(Hidden Subgroup Problem–HSP).
  38. 38. Problema do SubgrupoEscondidoSeja G um grupo, H ≤ G, e f uma função sobre G. Dizemos que fsepara co-conjuntos H se f(u) = f(v) ⇔ uH = vH, ∀u, v∈G.•  Problema do Subgrupo Escondido (HSP):•  Seja A um oráculo para computar uma função que separa co-conjuntos de um subgrupo H ⊂ G. Encontre um conjuntogerador para H usando a informação obtida de A.Casos especiais importantes:•  Hidden Abelian Subgroup Problem (HASP)•  Hidden Dihedral Subgroup Problem (HDSP)
  39. 39. Computação Quântica•  Algoritmos quânticos podem resolver casosparticulares do problema HASP (incluindoFatoração e Logaritmo Discreto) em tempopolinomial aleatório (i.e., classe de complexidadeR).
  40. 40. Soluções de SegurançaCriptográficaCriptografia puramente quântica:•  Quais esquemas estão disponíveis?•  Migração?Alternativas clássicas:•  Se BQP⊂NP, então sistemas baseados emproblemas que não pertencem a BQP (“post-quantum”).
  41. 41. Criptossistemas Pós-Quânticos•  Grupos Não-Abelianos•  Equivalentes (sobretudo baseados em conjugação) de esquemas DLsobre grupos de tranças, grupos hiperbólicos, …•  Redução de Reticulados•  Ajtai-Dwork, GGH, LWE, NTRU, ...•  Teoria dos Códigos•  McEliece, Niederreiter, CFS, ...•  Assinaturas de Merkle•  Outros sistemas:•  Núcleos Permutados e Perceptrons, Sistemas QuadráticosMultivariados, Equações Lineares com Restrições...
  42. 42. E se NP⊂BQP?•  Mesmo se P= NP, problemas NP-difíceis que nãopertencem a NP poderiam permanecer intratáveis.•  Em todo caso, poderia haver problemasteoricamente infactíveis (estritamente exponenciais)que sejam tratáveis na prática.•  Se nada der certo, tente usar problemas de decisãonão-recursivos, tornando os criptossistemas seguroscontra atacantes computacionalmente ilimitados!(Myasnikov-Shpilrain-Ushakov2006)
  43. 43. Criptografia e SegurançaCriptografia•  é•  uma tremenda ferramenta•  a base para muitos mecanismos de segurança•  não é•  a solução para todos os problemas de segurança•  confiável a menos que implementada corretamente•  confiável a menos que usada corretamente
  44. 44. Má Implementação“Here Come The + Ninjas”Thai Duong Juliano RizzoMay 13, 2011AbstractEste artigo introduz um ataque rápido bloco-a-bloco de purotexto-escolhido contra SSL 3.0 e TLS 1.0. Também descrevemosuma aplicação do ataque que permite um atacante decriptareficientemente e obter tokens de autenticação embutidos emsolicitações HTTPS. Os exploits resultantes funcionam nosprincipais web browsers no momento em que escrevemos oartigo.

×