Бернштейн, Дэниел Джулиус
Дэниел Джулиус Бернштейн (англ. Daniel Julius Bernstein; род. 29 октября 1971) — американский математик, криптограф и специалист в области компьютерных наук. Известен как создатель алгоритмов Salsa20, ChaCha20, Curve25519 и программного обеспечения qmail и djbdns.
Общие сведения
| Дэниел Джулиус Бернштейн | |
|---|---|
| Daniel Julius Bernstein | |
| Дата рождения | 29 октября 1971 (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.
Бернштейн критиковал ведущий на тот момент пакет DNS — BIND. Он разработал 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].
Примечания
Ссылки
- cr.yp.to/djb.html — официальный сайт Дэниел Джулиус Бернштейн
- DJBFFT
- Daniel Bernstein on the Faculty Page at UIC
- Бернштейн, Дэниел Джулиус (англ.) в проекте «Математическая генеалогия»