Jump to content

НИСТ СП 800-90А

(Перенаправлено с Hash DRBG )

NIST SP 800-90A («SP» означает « специальная публикация ») — это публикация Национального института стандартов и технологий под названием «Рекомендации по генерации случайных чисел с использованием детерминированных генераторов случайных битов» . Публикация содержит спецификацию трех якобы криптографически безопасных генераторов псевдослучайных чисел для использования в криптографии : Hash DRBG (на основе хеш-функций ), HMAC DRBG (на основе HMAC ) и CTR DRBG (на основе блочных шифров в режиме счетчика ). Более ранние версии включали четвертый генератор Dual_EC_DRBG (основанный на криптографии эллиптических кривых ). Позже сообщалось, что Dual_EC_DRBG, вероятно, содержит клептографический бэкдор, США установленный Агентством национальной безопасности (АНБ).

NIST SP 800-90A был опубликован Национальным институтом стандартов и технологий в июне 2006 года под названием NIST SP 800-90 под названием « Рекомендации по генерации случайных чисел с использованием детерминированных генераторов случайных битов» . [1] Публикация содержит спецификацию трех якобы криптографически безопасных генераторов псевдослучайных чисел для использования в криптографии : Hash DRBG (на основе хеш-функций ), HMAC DRBG (на основе HMAC ) и CTR DRBG (на основе блочных шифров в режиме счетчика ).

С 24 июня 2015 года текущей версией публикации является Revision 1. Более ранние версии включали четвертый генератор Dual_EC_DRBG (на основе криптографии эллиптических кривых ). Позже сообщалось, что Dual_EC_DRBG, вероятно, содержит клептографический бэкдор США , установленный Агентством национальной безопасности (АНБ), в то время как три других генератора случайных чисел считаются бесспорными и безопасными многими криптографами. [2] [3]

Являясь разработкой федерального правительства США , NIST SP 800-90A находится в общественном достоянии и доступен бесплатно.

Анализ безопасности

[ редактировать ]

NIST утверждает, что каждая из четырех (измененных до трех) DBRG «устойчива к возврату» и «устойчива к прогнозированию». Первое — это общее понятие «прямой секретности» ГПСЧ: в случае компрометации состояния злоумышленник не может восстановить исторические состояния и выходные данные. Последнее означает, что если состояние будет скомпрометировано и впоследствии повторно заполнено с достаточной энтропией, безопасность будет восстановлена. [4]

Двойной_EC_DRBG

[ редактировать ]

Попытка доказательства безопасности для Dual_EC_DRBG гласит, что для того, чтобы Dual_EC_DRBG был безопасным, необходимо, чтобы три задачи были математически сложными: решающая проблема Диффи-Хеллмана , проблема x-логарифма и проблема усеченной точки . [5] Решающая задача Диффи-Хеллмана широко признана сложной. [5] Проблема х-логарифма не считается сложной. Приводятся некоторые доказательства того, что эта проблема сложна, но эти доказательства не являются убедительными. [5] Таким образом, доказательство безопасности является сомнительным и будет признано недействительным, если будет доказано, что проблема x-логарифма эффективно разрешима. Проблема усеченной точки требует отсечения достаточного количества битов от точки, выбранной Dual_EC_DRBG, чтобы сделать ее неотличимой от действительно случайного числа. [5] Однако усечение 16 бит, значение по умолчанию, указанное стандартом Dual_EC_DRBG, оказалось недостаточным, чтобы сделать выходные данные неотличимыми от истинного генератора случайных чисел. [6] и, следовательно, делает недействительным доказательство безопасности Dual_EC_DRBG, когда используется значение усечения по умолчанию.

Бэкдор в Dual_EC_DRBG

[ редактировать ]

В рамках программы Bullrun АНБ внедрило бэкдоры в криптографические системы. Одной из таких целей в 2013 году было предложено назвать Dual_EC_DRBG. [7] АНБ добилось этого, работая в процессе стандартизации и в конечном итоге став единственным редактором стандарта. [8] Принимая Dual_EC_DRBG в NIST SP 800-90A, АНБ сослалось на то, что известная охранная фирма RSA Security использует Dual_EC_DRBG в своих продуктах. Однако АНБ заплатило RSA Security 10 миллионов долларов за использование Dual_EC_DRBG по умолчанию в рамках сделки, которую Reuters описывает как «совершенную бизнес-лидерами, а не чистыми технологами». Поскольку контракт стоимостью 10 миллионов долларов на то, чтобы заставить RSA Security использовать Dual_EC_DRBG, был описан Reuters как секретный, люди, участвующие в процессе принятия Dual_EC_DRBG в NIST SP 800-90A, по-видимому, не были проинформированы об этом очевидном конфликте интересов. [9] Это может помочь объяснить, как генератор случайных чисел, который, как позже выяснилось, уступал альтернативам (помимо «черного хода»), попал в стандарт NIST SP 800-90A.

Возможность бэкдора в Dual_EC_DRBG уже была задокументирована Дэном Шумоу и Нильсом Фергюсоном в 2007 году. [10] но продолжал использоваться на практике такими компаниями, как RSA Security, до открытия в 2013 году. [2] Учитывая известные недостатки Dual_EC_DRBG, впоследствии появились обвинения в том, что RSA Security сознательно внедрила в свои продукты бэкдор АНБ. RSA отрицает намеренное использование бэкдора в своих продуктах. [11]

После разоблачения бэкдора АНБ NIST возобновил процесс публичной проверки стандарта NIST SP 800-90A. [7] [12] Пересмотренная версия NIST SP 800-90A, в которой удален Dual_EC_DRBG, была опубликована в июне 2015 года. [13]

Hash_DRBG и HMAC_DRBG

[ редактировать ]

Hash_DRBG и HMAC_DRBG имеют доказательства безопасности для одного вызова для генерации псевдослучайных чисел. [14] В документе, подтверждающем безопасность Hash_DRBG и HMAC_DRBG, цитируется попытка доказательства безопасности для Dual_EC_DRBG, использованная в предыдущем абзаце, в качестве доказательства безопасности, чтобы сказать, что не следует использовать CTR_DRBG, поскольку это единственный DRBG в NIST SP 800-90A, которому не хватает безопасности. доказательство. [14]

HMAC_DRBG также имеет машинно-проверенное подтверждение безопасности. [15] Тезис, содержащий проверенное машиной доказательство безопасности, также доказывает, что компрометация правильно реализованного экземпляра HMAC_DRBG не ставит под угрозу безопасность чисел, сгенерированных до компрометации. [15]

Вудадж и Шумоу (2019) более подробно анализируют схемы NIST; в частности, они предоставляют доказательства безопасности, учитывающие начальную генерацию и повторное заполнение, которые ранее вообще не анализировались. В модели случайного оракула и при условии, что источник энтропии не зависит от оракула: [4]

  • Hash_DBRG является надежным в смысле Додиса и др., т.е. соответствует обоим требованиям безопасности NIST.
  • HMAC_DBRG является надежным при соблюдении двух условий: он должен вызываться с дополнительной входной энтропией, и указанная энтропия должна удовлетворять дополнительным условиям. Все источники энтропии, одобренные NIST, удовлетворяют этим «дополнительным условиям».
  • HMAC_DBRG не является защищенным от пересылки при вызове без дополнительных входных данных.

Было показано, что CTR_DRBG имеет теоретический недостаток при использовании с определенными параметрами, поскольку криптографы не учитывали размер блока шифра при разработке этого генератора псевдослучайных чисел. [16] CTR_DRBG кажется безопасным и неотличимым от настоящего случайного источника, когда AES используется в качестве основного блочного шифра и 112 бит берутся из этого генератора псевдослучайных чисел . [16] Когда в качестве основного блочного шифра используется AES и из каждого экземпляра берется 128 бит, требуемый уровень безопасности обеспечивается с оговоркой, что выходные данные 128-битного шифра в режиме счетчика можно отличить от истинного генератора случайных чисел. [16] Когда в качестве основного блочного шифра используется AES и из этого генератора псевдослучайных чисел берется более 128 бит, результирующий уровень безопасности ограничивается размером блока, а не размером ключа, и поэтому фактический уровень безопасности намного меньше, чем уровень безопасности. уровень, подразумеваемый размером ключа. [16] Также показано, что CTR_DRBG не обеспечивает ожидаемый уровень безопасности при использовании Triple DES , поскольку размер его 64-битного блока намного меньше размера 112-битного ключа, используемого для Triple DES. [16]

В настоящее время не существует известного способа использования этой проблемы при использовании AES.

Удаление ключа

[ редактировать ]

Схема NIST CTR_DRBG стирает ключ после вывода запрошенной случайности, создавая дополнительную случайность для замены ключа. Это расточительно с точки зрения производительности, но не сразу вызывает проблемы с прямой секретностью. Однако, осознавая влияние на производительность, NIST рекомендует «расширенный интерфейс AES-CTR-DRBG» для своих проектов пост-квантовой криптографии . Этот интерфейс позволяет генерировать несколько наборов случайных чисел без промежуточного стирания, стирая только тогда, когда пользователь явно сигнализирует об окончании запросов. В результате ключ может оставаться в памяти в течение длительного времени, если «расширенный интерфейс» используется неправильно. Альтернатива, предложенная Бернштейном, состоит в том, чтобы создать случайность для замены ключа до того, как будет выведена запрошенная случайность, как это делается в ГСЧ с «быстрым стиранием ключа». [17]

Границы безопасности, о которых сообщает Кампанья (2006), не учитывают какую-либо процедуру замены ключей. [17]

Вудадж и Шумоу (2019) представляют предварительный анализ ситуации, упомянутой Бернштейном, то есть утечки состояния, предполагающей большое количество случайности ( next), генерируемый между повторным набором ключей ( final). [4]

История версий NIST SP 800-90A

[ редактировать ]

См. также

[ редактировать ]
  1. ^ Баркер, Элейн; Келси, Джон (июнь 2006 г.). «Специальная публикация NIST 800-90: Рекомендации по генерации случайных чисел с использованием детерминированных генераторов случайных битов» (PDF) . Национальный институт стандартов и технологий . Проверено 27 ноября 2016 г.
  2. ^ Jump up to: а б Грин, Мэтью (20 сентября 2013 г.). «RSA предупреждает разработчиков не использовать продукты RSA» . Проверено 23 августа 2014 г.
  3. ^ Шнайер, Брюс (15 ноября 2007 г.). «Странная история Dual_EC_DRBG» . Проверено 25 ноября 2016 г.
  4. ^ Jump up to: а б с Вудадж, Джоан; Шумоу, Дэн (2019). «Анализ NIST SP 800-90A» (PDF) . Достижения в криптологии – EUROCRYPT 2019 . Том. 11477. стр. 151–180. дои : 10.1007/978-3-030-17656-3_6 .
  5. ^ Jump up to: а б с д Браун, Дэниел Р.Л.; Йёстин, Кристиан (15 февраля 2007 г.). «Анализ безопасности генератора случайных чисел с эллиптической кривой NIST SP 800-90» (PDF) . Проверено 19 ноября 2016 г.
  6. ^ Шенмейкерс, Берри; Сидоренко, Андрей (29 мая 2006 г.). «Криптоанализ псевдослучайного генератора двойной эллиптической кривой» (PDF) . Проверено 20 ноября 2016 г.
  7. ^ Jump up to: а б Перлрот, Николь (10 сентября 2013 г.). «Правительство объявляет о шагах по восстановлению доверия к стандартам шифрования» . Нью-Йорк Таймс . Проверено 23 августа 2014 г.
  8. ^ Болл, Джеймс; Боргер, Джулиан; Гринвальд, Гленн (5 сентября 2013 г.). «Раскрыто: как шпионские агентства США и Великобритании нарушают конфиденциальность и безопасность в Интернете» . Хранитель . Проверено 23 августа 2014 г.
  9. ^ Менн, Джозеф (20 декабря 2013 г.). «Эксклюзив: секретный контракт, связывающий АНБ и пионера индустрии безопасности» . Рейтер . Проверено 23 августа 2014 г.
  10. ^ Брюс Шнайер (15 ноября 2007 г.). «Включило ли АНБ секретный бэкдор в новый стандарт шифрования?» . Проводные новости . Архивировано из оригинала 23 ноября 2015 г. Проверено 23 августа 2014 г. Альтернативный URL
  11. ^ Гудин, Дэн (20 сентября 2013 г.). «Мы не используем бэкдоры в наших криптопродуктах, — сообщает RSA клиентам» . Арс Техника . Проверено 23 августа 2014 г.
  12. ^ «NIST предлагает комментарии к проекту SP 800-90A, редакция 1» . Национальный институт стандартов и технологий . 21 апреля 2014 г. Архивировано из оригинала 23 июля 2014 г. Проверено 23 августа 2014 г.
  13. ^ Баркер, Элейн; Келси, Джон (июнь 2015 г.). «NIST выпустил специальную публикацию (SP) 800-90A, редакция 1: Рекомендации по генерации случайных чисел с использованием детерминированных генераторов случайных битов» (PDF) . Национальный институт стандартов и технологий . doi : 10.6028/NIST.SP.800-90Ar1 . Проверено 19 ноября 2016 г.
  14. ^ Jump up to: а б Кан, Уилсон (4 сентября 2007 г.). «Анализ основных предположений в DRBG NIST» (PDF) . Проверено 19 ноября 2016 г.
  15. ^ Jump up to: а б Йе, Кэтрин Цинру (апрель 2016 г.). «Печально известная PRG: формальная проверка генератора псевдослучайных чисел HMAC-DRBG» (PDF) . Проверено 19 ноября 2016 г.
  16. ^ Jump up to: а б с д и Кампанья, Мэтью Дж. (1 ноября 2006 г.). «Границы безопасности для детерминированного генератора случайных битов на основе кодовой книги NIST» (PDF) . Проверено 19 ноября 2016 г.
  17. ^ Jump up to: а б Бернштейн, Дэниел Дж. «2017.07.23: Генераторы случайных чисел с быстрым стиранием ключей: попытка устранить несколько беспорядков одновременно. #rng #forwardsecrecy #urandom #cascade #hmac #rekeying #proofs» .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8fea4e565817058a619d53cc3413f355__1711989900
URL1:https://arc.ask3.ru/arc/aa/8f/55/8fea4e565817058a619d53cc3413f355.html
Заголовок, (Title) документа по адресу, URL1:
NIST SP 800-90A - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)