Бернштейн, Дэниел Джулиус

Дэниел Джулиус Бернштейн (англ. Daniel Julius Bernstein; род. 29 октября 1971) — американский математик, криптограф и специалист в области компьютерных наук. Известен как создатель алгоритмов Salsa20, ChaCha20, Curve25519 и программного обеспечения qmail и djbdns.

Общие сведения
Дэниел Джулиус Бернштейн
Daniel Julius Bernstein
Дата рождения 29 октября 1971(1971-10-29) (54 года)
Место рождения Ист-Патчог, Нью-Йорк[1]
Гражданство США, Германия[1]
Образование
Род деятельности математик, криптограф, специалист по компьютерной безопасности
Сайт cr.yp.to/djb.html

Карьера

Бернштейн является профессором компьютерных наук в Иллинойсском университете в Чикаго[2]. Он работал приглашённым профессором на факультете математики и компьютерных наук в Эйндховенском технологическом университете[3], а также приглашённым профессором в Рурском университете в Бохуме до 2023 года[4].

Ранние годы

Бернштейн учился в средней школе Беллпорта на Лонг-Айленде. Он окончил её в 1987 году в возрасте 15 лет. В том же году он занял пятое место в конкурсе Westinghouse Science Talent Search. В 1987 году он вошёл в десятку лучших на Математической олимпиаде имени Уильяма Лоуэлла Патнема[5]. В следующем году он выступал в составе команды Принстонского университета, занявшей второе место[6]. Бернштейн получил степень бакалавра математики в Нью-Йоркском университете в 1991 году. В 1995 году он получил степень доктора философии по математике в Калифорнийском университете в Беркли, где учился под руководством Хендрика Ленстры[1].

Дело «Бернштейн против США»

Экспорт криптографии из США контролировался как экспорт вооружений со времён холодной войны до изменения классификации в 1996 году. В конце 1990-х годов ограничения были дополнительно ослаблены[7]. В 1995 году Бернштейн инициировал судебное разбирательство «Бернштейн против США». Суд постановил, что программное обеспечение является формой свободы слова, защищённой Первой поправкой к Конституции США. Это решение способствовало изменению нормативной базы и снижению контроля над шифрованием[8]. Первоначально интересы Бернштейна представлял Фонд электронных рубежей[9]. Позднее он представлял себя в суде самостоятельно[10].

Криптография

Бернштейн разработал поточный шифр Salsa20 в 2005 году. Он представил его проекту eSTREAM для оценки и возможной стандартизации. В 2008 году он опубликовал вариант шифра под названием ChaCha20. В 2005 году он предложил использовать эллиптическую кривую Curve25519 в качестве основы для схем криптографии с открытым ключом. Он работал ведущим исследователем над версией Ed25519 алгоритма EdDSA. Эти алгоритмы были внедрены в популярное программное обеспечение. С 2014 года при компиляции OpenSSH без OpenSSL они обеспечивают выполнение большинства операций. Подпись пакетов в OpenBSD основана на алгоритме Ed25519[11][12].

Спустя почти десятилетие Эдвард Сноуден раскрыл информацию о массовой слежке со стороны Агентства национальной безопасности (АНБ). Исследователи обнаружили бэкдор в алгоритме АНБ Dual EC DRBG. Эти события вызвали подозрения в отношении параметров эллиптических кривых, предложенных АНБ и стандартизированных Национальным институтом стандартов и технологий (NIST)[13]. Многие исследователи опасались, что АНБ выбрало кривые, дающие агентству преимущество в криптоанализе[14][15]. Компания Google выбрала ChaCha20 вместе с разработанным Бернштейном кодом аутентичности сообщения Poly1305 для использования в протоколе TLS[16]. Многие протоколы, основанные на его работах, были приняты различными организациями по стандартизации. Они используются в таких проектах, как iOS[17], ядро Linux[18], OpenSSH[19] и Tor.

Весной 2005 года Бернштейн читал курс по высокоскоростной криптографии[20]. В тот же период он представил новые атаки по сторонним каналам на кэш против реализаций стандарта AES[21].

В апреле 2008 года[22] поточный шифр Бернштейна Salsa20 был включён в финальный портфель проекта eSTREAM.

В 2011 году Бернштейн опубликовал RFSB, вариант быстрой хеш-функции на основе синдромов (FSB).

Он является одним из редакторов книги «Постквантовая криптография», изданной в 2009 году.

В 2022 году Бернштейн подал второй иск против правительства США в соответствии с Законом о свободе информации. Он потребовал предоставить записи о роли Агентства национальной безопасности во влиянии на стандарты постквантовой криптографии NIST. По состоянию на 2025 год дело продолжается[23][24].

Программное обеспечение

Начиная с середины 1990-х годов Бернштейн написал ряд программ с акцентом на безопасность, включая qmail, ezmlm, djbdns, ucspi-tcp, daemontools и publicfile.

Бернштейн критиковал ведущий на тот момент пакет DNSBIND. Он разработал djbdns как пакет DNS, главной целью которого была безопасность. Бернштейн предлагает денежные вознаграждения за обнаружение уязвимостей в qmail и djbdns[25]. В 2005 году был опубликован эксплойт, нацеленный на qmail на 64-битных платформах[26][27]. Бернштейн заявил, что этот эксплойт не подпадает под условия его гарантии безопасности. В марте 2009 года Бернштейн выплатил 1000 долларов Мэттью Демпски за обнаружение уязвимости в djbdns[28].

В августе 2008 года Бернштейн анонсировал[29] DNSCurve, протокол для защиты DNS. DNSCurve применяет методы эллиптической криптографии для повышения производительности по сравнению с алгоритмом RSA, используемым в DNSSEC. Протокол использует существующую иерархию DNS для распространения доверия путём встраивания открытых ключей в специально отформатированные, обратно совместимые записи DNS.

Бернштейн предложил Internet Mail 2000, альтернативную систему электронной почты. Она предназначалась для замены протоколов SMTP, POP3 и IMAP[30].

Бернштейн также известен своей функцией хеширования строк djb2[31][32] и библиотекой баз данных cdb[33].

Математика

Бернштейн опубликовал ряд работ по математике и вычислениям. Многие из его статей посвящены алгоритмам и их реализациям.

В 2001 году Бернштейн распространил работу «Схемы для факторизации целых чисел: предложение»[34]. В ней предполагалось, что при приближении аппаратных реализаций к их теоретической эффективности популярные на тот момент оценки параметров безопасности могли быть занижены в три раза. Поскольку 512-битный RSA в то время уже поддавался взлому, это могло коснуться и 1536-битного RSA. Бернштейн воздержался от конкретных прогнозов и подчеркнул важность правильной интерпретации асимптотических выражений. Несколько исследователей (среди которых Арьен Ленстра, Ади Шамир, Джим Томлинсон и Эран Тромер) выразили несогласие с выводами Бернштейна.

Бернштейн является автором математических библиотек DJBFFT (быстрой переносимой библиотеки быстрого преобразования Фурье) и primegen (асимптотически быстрого решета для малых простых чисел с низким потреблением памяти, основанного на решете Аткина). Решето Аткина было разработано в соавторстве с А. О. Л. Аткином. Обе библиотеки эффективно использовались для поиска больших простых чисел.

В 2007 году Бернштейн предложил использовать скрученную кривую Эдвардса Curve25519 в качестве основы для эллиптической криптографии. Она применяется в реализации Ed25519 алгоритма EdDSA.

В феврале 2015 года Бернштейн и его соавторы опубликовали статью о постквантовой схеме подписи на основе хешей без сохранения состояния под названием SPHINCS[35]. В июле 2022 года схема подписи SPHINCS+, адаптированная Бернштейном и другими исследователями на основе SPHINCS, стала одним из четырёх алгоритмов-победителей конкурса постквантовой криптографии NIST. Это был единственный алгоритм на основе хешей среди четырёх победителей[36].

В апреле 2017 года Бернштейн и соавторы опубликовали статью о постквантовом RSA. В ней описывался алгоритм факторизации целых чисел, который, по утверждению авторов, работает быстрее алгоритма Шора[37].

Преподавание

В 2004 году Бернштейн читал курс по безопасности программного обеспечения. Он поручил каждому студенту найти десять уязвимостей в опубликованном программном обеспечении[38]. 25 студентов обнаружили 44 уязвимости, после чего класс опубликовал рекомендации по безопасности, связанные с этими проблемами[38].

Примечания

  1. 1 2 3 Bernstein, Daniel J. Curriculum vitae. cr.yp.to. Дата обращения: 4 июня 2026.
  2. Bernstein, Daniel Positions. cr.yp.to. Дата обращения: 4 июня 2026.
  3. Ruhr University Bochum and other places. ResearchGate (8 декабря 2023). Дата обращения: 4 июня 2026.
  4. CASA team (18 декабря 2023). Дата обращения: 4 июня 2026. Архивировано 18 декабря 2023 года.
  5. L. F. Klosinski; G. L. Alexanderson; L. C. Larson (1988-10). “The William Lowell Putnam Mathematical Competition”. The American Mathematical Monthly. 95 (8): 717—727. JSTOR 2322251. Проверьте дату в |date= (справка на английском)
  6. L. F. Klosinski; G. L. Alexanderson; L. C. Larson (1989-10). “The William Lowell Putnam Mathematical Competition”. The American Mathematical Monthly. 96 (8): 688—695. JSTOR 2324716. Проверьте дату в |date= (справка на английском)
  7. Koops, Bert-Jaap Crypto Law Survey - Overview per country. Bert-Jaap Koops homepage (август 2004). Дата обращения: 4 июня 2026.
  8. Dame-Boyle, Alison EFF at 25: Remembering the Case that Established Code as Speech (англ.). Electronic Frontier Foundation (16 апреля 2015). Дата обращения: 4 июня 2026.
  9. Cassidy, Peter (1996-06-01). “Reluctant Hero”. Wired. ISSN 1059-1028. Дата обращения 2026-06-04.
  10. Plaintiff's Notice Of Substitution of Counsel (7 октября 2002). Дата обращения: 4 июня 2026.
  11. Murenin, Constantine A. Soulskill: OpenSSH No Longer Has To Depend On OpenSSL. Slashdot (30 апреля 2014). Дата обращения: 4 июня 2026.
  12. Murenin, Constantine A. Soulskill: OpenBSD Moving Towards Signed Packages — Based On D. J. Bernstein Crypto. Slashdot (19 января 2014). Дата обращения: 4 июня 2026.
  13. Bernstein, Daniel J.; Lange, Tanja SafeCurves: choosing safe curves for elliptic-curve cryptography (22 января 2017). Дата обращения: 4 июня 2026.
  14. SafeCurves: Rigidity. safecurves.cr.yp.to. Дата обращения: 4 июня 2026.
  15. The NSA Is Breaking Most Encryption on the Internet - Schneier on Security. www.schneier.com (5 сентября 2013). Дата обращения: 4 июня 2026.
  16. A. Langley. ChaCha20-Poly1305 Cipher Suites for Transport Layer Security (TLS). Internet Draft (16 декабря 2015). Дата обращения: 4 июня 2026.
  17. iOS Security Guide
  18. Corbet, Jonathan. Replacing /dev/urandom. Linux Weekly News. Дата обращения: 4 июня 2026.
  19. Murenin, Constantine A. Unknown Lamer: OpenSSH Has a New Cipher — Chacha20-poly1305 — from D.J. Bernstein. Slashdot (11 декабря 2013). Дата обращения: 4 июня 2026.
  20. Daniel J. Bernstein. MCS 590, High-Speed Cryptography, Spring 2005. Authenticators and signatures. Дата обращения: 4 июня 2026.
  21. Daniel J. Bernstein. Cache timing attacks on AES. cr.yp.to (17 апреля 2004). Дата обращения: 4 июня 2026.
  22. The eSTREAM Portfolio. Дата обращения: 28 апреля 2010. Архивировано 13 августа 2012 года.
  23. Bernstein, Daniel J. NSA, NIST, and post-quantum cryptography. The cr.yp.to blog (5 августа 2022). Дата обращения: 4 июня 2026.
  24. Bernstein, Daniel J. NSA-NIST-PQC FOIA responses. Post-quantum cryptography (2025). Дата обращения: 4 июня 2026.
  25. Binnie, Chris Lighten Your DNS Load with TinyDNS. ADMIN Magazine. Дата обращения: 4 июня 2026.
  26. Georgi Guninski. Georgi Guninski security advisory #74, 2005 (31 мая 2005). Дата обращения: 4 июня 2026.
  27. James Craig Burley. My Take on Georgi Guninski's qmail Security Advisories (31 мая 2005). Дата обращения: 24 августа 2007. Архивировано 25 августа 2007 года.
  28. Daniel J. Bernstein. djbdns<=1.05 lets AXFRed subdomains overwrite domains (4 марта 2009). Дата обращения: 4 марта 2009. Архивировано 5 марта 2009 года.
  29. Daniel J. Bernstein. High-speed cryptography. Дата обращения: 4 июня 2026.
  30. Internet Mail 2000. cr.yp.to. Дата обращения: 4 июня 2026. Архивировано 25 января 2023 года.
  31. Yigit, Ozan String hash functions. Дата обращения: 4 июня 2026.
  32. Hash function constants selection discussion. Дата обращения: 4 июня 2026.
  33. cdb. Дата обращения: 4 июня 2026.
  34. Daniel J. Bernstein. Circuits for integer factorization: a proposal. cr.yp.to (9 ноября 2001). Дата обращения: 4 июня 2026.
  35. SPHINCS: practical stateless hash-based signatures. sphincs.cr.yp.to. Дата обращения: 4 июня 2026.
  36. Computer Security Division, Information Technology Laboratory Selected Algorithms 2022 - Post-Quantum Cryptography | CSRC | CSRC. CSRC | NIST (3 января 2017). Дата обращения: 4 июня 2026.
  37. Post-quantam RSA. cr.yp.to. Дата обращения: 4 июня 2026.
  38. 1 2 Lemos, Robert Students uncover dozens of Unix software flaws. CNET (16 декабря 2004). Дата обращения: 4 июня 2026.

Ссылки