Daniel J. Bernstein

Daniel J. Bernstein
Dan Bernstein 27C3.jpg
Nascer( 1971-10-29 )29 de outubro de 1971 (51 anos)
Nacionalidadeamericano , alemão [1]
alma materUniversidade da Califórnia, Berkeley
Universidade de Nova York
Conhecido porqmail , djbdns , Salsa20 , ChaCha20 , Poly1305 , Curve25519
carreira científica
CamposMatemática , Criptografia ,
Segurança de Computadores
InstituiçõesUniversidade de Illinois em Chicago , Universidade de Tecnologia de Eindhoven , Ruhr University Bochum
Orientador de doutoradoHendrik Lenstra
Local na rede Internetcr.yp.to/djb.html

Daniel Julius Bernstein (às vezes conhecido como djb ; nascido em 29 de outubro de 1971) é um matemático americano , criptologista e cientista da computação . Ele é professor visitante no CASA [2] na Ruhr University Bochum , bem como professor pesquisador de Ciência da Computação na University of Illinois em Chicago . Antes disso, ele foi professor ("personlijk hoogleraar") no departamento de matemática e ciência da computação da Universidade de Tecnologia de Eindhoven .

Vida pregressa

Bernstein frequentou a Bellport High School , uma escola secundária pública em Long Island , graduando-se em 1987 aos 15 anos. [3] No mesmo ano, ele ficou em quinto lugar no Westinghouse Science Talent Search . [4] Em 1987 (aos 16 anos), ele alcançou o Top 10 na Competição Matemática William Lowell Putnam . [5] Bernstein é bacharel em matemática pela New York University (1991) e Ph.D. em matemática pela University of California, Berkeley (1995), onde estudou com Hendrik Lenstra .

Bernstein v. Estados Unidos

A exportação de criptografia dos Estados Unidos foi controlada como uma munição desde a Guerra Fria até a recategorização em 1996, com mais relaxamento no final dos anos 1990. [6] Em 1995, Bernstein entrou com o processo judicial Bernstein v. Estados Unidos . A decisão do caso declarou que o software era discurso protegido pela Primeira Emenda , o que contribuiu para mudanças regulatórias reduzindo os controles de criptografia. [7] Bernstein foi originalmente representado pela Electronic Frontier Foundation . [8] Mais tarde, ele se representou. [9]

Criptografia

Bernstein projetou a cifra de fluxo Salsa20 em 2005 e a submeteu ao eSTREAM para revisão e possível padronização. Mais tarde, ele publicou a variante ChaCha20 da Salsa em 2008. Em 2005, ele propôs a curva elíptica Curve25519 como base para esquemas de chave pública . Ele trabalhou como pesquisador principal na versão Ed25519 do EdDSA . Os algoritmos abriram caminho para softwares populares. Por exemplo, desde 2014, quando o OpenSSH é compilado sem o OpenSSL , eles alimentam a maioria de suas operações, e a assinatura do pacote OpenBSD é baseada no Ed25519. [10] [11]

Quase uma década depois, Edward Snowden divulgou vigilância em massa pela Agência de Segurança Nacional , e os pesquisadores descobriram um backdoor no algoritmo Dual_EC_DRBG da Agência . Esses eventos levantaram suspeitas sobre os parâmetros da curva elíptica propostos pela NSA e padronizados pelo NIST. [12] Muitos pesquisadores temiam [13] que a NSA tivesse escolhido curvas que lhes davam uma vantagem criptanalítica . [14] [15] O Google selecionou ChaCha20 junto com o código de autenticação de mensagem Poly1305 de Bernstein para uso em TLS, que é amplamente usado para segurança na Internet. [16] Muitos protocolos baseados em seus trabalhos foram adotados por várias organizações de padrões e são usados ​​em uma variedade de aplicativos , como Apple iOS , [17] o kernel do Linux , [18] OpenSSH , [19] [20] e Tor . [21]

Na primavera de 2005, Bernstein ministrou um curso sobre "criptografia de alta velocidade". [22] Ele introduziu novos ataques contra implementações de AES (ataques de cache) no mesmo período. [23]

Em abril de 2008, [24] a cifra de fluxo de Bernstein " Salsa20 " foi selecionada como membro do portfólio final do projeto eSTREAM , parte de uma diretiva de pesquisa da União Européia .

Em 2011, Bernstein publicou RFSB, uma variante da função Fast Syndrome Based Hash .

Ele é um dos editores do livro Post-Quantum Cryptography de 2009 . [25]

Programas

A partir de meados da década de 1990, Bernstein escreveu vários programas de segurança, incluindo qmail , ezmlm , djbdns , ucspi-tcp , daemontools e publicfile.

Bernstein criticou o pacote DNS líder na época, BIND , e escreveu djbdns como um pacote DNS com a segurança como objetivo principal. [26] Bernstein oferece "garantias de segurança" para qmail e djbdns na forma de recompensas monetárias pela identificação de falhas. [27] [28] Uma suposta exploração visando o qmail rodando em plataformas de 64 bits foi publicada em 2005, [29] [30] mas Bernstein acredita que a exploração não se enquadra nos parâmetros de sua garantia de segurança do qmail. Em março de 2009, Bernstein concedeu $ 1.000 a Matthew Dempsky por encontrar uma falha de segurança no djbdns . [31]

Em agosto de 2008, Bernstein anunciou [32] DNSCurve , uma proposta para proteger o Domain Name System . O DNSCurve aplica técnicas de criptografia de curva elíptica para fornecer um grande aumento no desempenho em relação ao algoritmo de chave pública RSA usado pelo DNSSEC . Ele usa a hierarquia DNS existente para propagar a confiança incorporando chaves públicas em registros DNS especialmente formatados e compatíveis com versões anteriores.

Bernstein propôs o Internet Mail 2000 , um sistema alternativo para correio eletrônico, destinado a substituir o Simple Mail Transfer Protocol (SMTP), o Post Office Protocol (POP3) e o Internet Message Access Protocol (IMAP). [33]

Bernstein também é conhecido por sua função de hashing de strings djb2 [34] [35] e pela biblioteca de banco de dados cdb . [36]

Matemática

Bernstein publicou vários artigos sobre matemática e computação . Muitos de seus trabalhos tratam de algoritmos ou implementações.

Em 2001, Bernstein circulou "Circuits for integer factorization : a propôs", [37] que sugeria que, se as implementações de hardware físico pudessem ser aproximadas de sua eficiência teórica, as estimativas então populares de parâmetros de segurança adequados poderiam estar erradas por um fator de três. Como o RSA de 512 bits era quebrável na época, o mesmo pode acontecer com o RSA de 1536 bits. Bernstein teve o cuidado de não fazer previsões reais e enfatizou a importância de interpretar corretamente as expressões assintóticas . Vários pesquisadores proeminentes (entre eles Arjen Lenstra , Adi Shamir , Jim Tomlinson e Eran Tromer) discordaram fortemente das conclusões de Bernstein. [38]Bernstein recebeu financiamento para investigar se esse potencial pode ser realizado.

Bernstein também é o autor das bibliotecas matemáticas DJBFFT, uma biblioteca FFT portátil rápida , e primegen, uma pequena peneira principal assintoticamente rápida com baixo consumo de memória baseada na peneira de Atkin (em vez da peneira mais comum de Eratóstenes ). Ambos têm sido usados ​​efetivamente na busca de grandes números primos .

Em 2007, Bernstein propôs o uso de uma curva de Edwards (torcida) , Curve25519 , como base para criptografia de curva elíptica ; é empregado na implementação Ed25519 de EdDSA .

Em fevereiro de 2015, Bernstein e outros publicaram um artigo sobre assinaturas baseadas em hash pós-quântico sem estado , chamado SPHINCS. [39]

Em abril de 2017, Bernstein e outros publicaram um artigo sobre Post-Quantum RSA que inclui um algoritmo de fatoração inteira que afirma ser "muitas vezes muito mais rápido que o de Shor ". [40]

Ensino

Em 2004, Bernstein ministrou um curso sobre segurança de software de computador , no qual designou a cada aluno a tarefa de encontrar dez vulnerabilidades em software publicado. [41] Os 25 alunos descobriram 44 vulnerabilidades e a classe publicou avisos de segurança sobre os problemas. [41]

Veja também

Referências

  1. ^ abc Bernstein, Daniel J. "Curriculum vitae" (PDF) . cr.yp.to . Acesso em 20 de março de 2019 .
  2. ^ "Equipe CASA" . Recuperado em 22 de fevereiro de 2021 .
  3. ^ "Nova-iorquinos Excel no Concurso" . New York Times . 21-01-1987 . Acesso em 9 de novembro de 2008 .
  4. ^ "DUAS GAROTAS GANHAM COMPETIÇÃO DA WESTINGHOUSE". New York Times . 21-01-1987 . Acessado em 14 de março de 2011 .
  5. ^ LF Klosinski; GL Alexanderson ; LC Larson (outubro de 1988). "A competição matemática de William Lowell Putnam". O mensal matemático americano . Vol. 95, nº. 8. pp. 717–727. JSTOR  2322251.
  6. ^ Koops, Bert-Jaap (agosto de 2004). "Pesquisa de Lei de Criptomoedas - Visão geral por país". Página inicial de Bert-Jaap Koops . Recuperado 2019-03-21 .
  7. ^ Dame-Boyle, Alison (2015-04-16). "EFF aos 25: Relembrando o caso que instituiu o código como discurso". Fundação Fronteira Eletrônica . Recuperado 2019-03-21 .
  8. ^ Cassidy, Peter (01/06/1996). "Herói Relutante". Com fio . ISSN  1059-1028 . Recuperado 2019-03-21 .
  9. ^ "Aviso do autor sobre a substituição do advogado" (PDF) . 2002-10-07 . Recuperado 2019-03-20 .
  10. ^ Murenin, Constantine A. (2014-04-30). Soulskill (ed.). "OpenSSH não precisa mais depender do OpenSSL". Slashdot . Recuperado 2014-12-26 .
  11. ^ Murenin, Constantine A. (2014-01-19). Soulskill (ed.). "OpenBSD se movendo em direção a pacotes assinados - com base no DJ Bernstein Crypto" . Slashdot . Recuperado 2014-12-27 .
  12. ^ Bernstein, Daniel J.; Lange, Tanja (2017-01-22). "SafeCurves: escolhendo curvas seguras para criptografia de curva elíptica" . Recuperado 2019-03-20 .
  13. ^ Maxwell, Gregory (8 de setembro de 2013). "[tor-talk] Criptografia aprovada pelo NIST no Tor?" . Recuperado 2015-05-20 .
  14. ^ "SafeCurves: Rigidez" . safecurves.cr.yp.to . Recuperado 2015-05-20 .
  15. ^ "A NSA está quebrando a maior parte da criptografia na Internet - Schneier on Security" . www.schneier.com . Recuperado 2015-05-20 .
  16. ^ A. Langley, W. Chang, N. Mavrogiannopoulos, J. Strombergson, S. Josefsson (2015-12-16). "ChaCha20-Poly1305 Cipher Suites para Transport Layer Security (TLS)" . Rascunho Internet .{{cite news}}: CS1 maint: usa o parâmetro authores ( link )
  17. ^ Guia de segurança do iOS
  18. Corbet, Jonathan. "Substituindo /dev/urandom". Notícias Semanais do Linux . Recuperado 2016-09-20 .
  19. ^ Miller, Damien (2016-05-03). "ssh/PROTOCOL.chacha20poly1305". Referência cruzada BSD do superusuário: PROTOCOL.chacha20poly1305 . Recuperado 2016-09-07 .
  20. ^ Murenin, Constantine A. (2013-12-11). Desconhecido Lamer (ed.). "OpenSSH tem uma nova cifra — Chacha20-poly1305 — do DJ Bernstein". Slashdot . Recuperado 2016-09-07 .
  21. ^ Roger Dingledine & Nick Mathewson. "Especificações do protocolo Tor - Blog" . Acesso em 20 de dezembro de 2014 .
  22. ^ Daniel J. Bernstein. "MCS 590, criptografia de alta velocidade, primavera de 2005". Autenticadores e assinaturas . Recuperado em 23 de setembro de 2005 .
  23. ^ Daniel J. Bernstein (2004-04-17). "Ataques de sincronização de cache no AES" (PDF) . cd9faae9bd5308c440df50fc26a517b4. {{cite journal}}: Citar periódico requer |journal=( ajuda )
  24. ^ Steve Babbage; Christophe De Canniere; Ana Canteaut ; Carlos Cid; Henri Gilbert; Thomas Johansson; Mateus Parker; Bart Prenel; Vincent Rijmen; Matheus Robshaw. "O portfólio eSTREAM" (PDF) . Acesso em 28 de abril de 2010 .
  25. ^ Bernstein, Daniel J.; Buchmann, Johannes; Dahmen, Erik, editores. (2009). Criptografia pós-quântica. Berlim Heidelberg: Springer-Verlag. doi : 10.1007/978-3-540-88702-7. ISBN 9783540887010.
  26. ^ Bauer, Michael D. (2005). Segurança do Servidor Linux. "O'Reilly Media, Inc.". pp. 172–173. ISBN 9780596006709.
  27. ^ Hagen, William von (2007-03-26). Bíblia Ubuntu Linux. John Wiley & Filhos. pág. 769. ISBN 9780470124543.
  28. ^ Binnie, Chris. "Ilumine sua carga de DNS com TinyDNS" . Revista ADMIN . Recuperado 2019-03-21 .
  29. ^ Georgi Guninski (2005-05-31). "Georgi Guninski comunicado de segurança # 74, 2005" . Recuperado em 23 de setembro de 2005 .
  30. ^ James Craig Burley (2005-05-31). "Minha opinião sobre os avisos de segurança qmail de Georgi Guninski" .
  31. ^ Daniel J. Bernstein (2009-03-04). "djbdns<=1.05 permite que subdomínios AXFRed sobrescrevam domínios". Arquivado do original em 2009-03-05 . Recuperado 2009-03-04 .
  32. ^ Daniel J. Bernstein. "Criptografia de alta velocidade".
  33. ^ "Correio da Internet 2000" . cr.yp.to . Arquivado do original em 25 de janeiro de 2023 . Acesso em 13 de março de 2023 .
  34. ^ Yigit, Ozan. "Funções de hash de string".
  35. ^ "Discussão de seleção de constantes de função hash" .
  36. ^ "cdb".
  37. ^ Daniel J. Bernstein (2001-11-09). "Circuitos para fatoração inteira: uma proposta". {{cite journal}}: Citar periódico requer |journal=( ajuda )
  38. ^ Arjen K. Lenstra; Adi Shamir; Jim Tomlinson; Eran Tromer (2002). "Análise do circuito de fatoração de Bernstein". Proc. Asiacrypt . LNCS 2501: 1–26.
  39. ^ https://sphincs.cr.yp.to/
  40. ^ https://cr.yp.to/papers/pqrsa-20170419.pdf [ URL simples PDF ]
  41. ^ ab Lemos, Robert (2004-12-16). "Estudantes descobrem dezenas de falhas de software Unix" . CNET . Recuperado 2019-03-21 .

links externos

  • Website oficial
  • DJBFFT
  • Daniel Bernstein na página do corpo docente da UIC
  • Página do corpo docente da Universidade de Tecnologia de Eindhoven Arquivado em 23/11/2016 na Wayback Machine
  • Daniel J. Bernstein no Mathematics Genealogy Project