Ничего не вышло, номер

редактировать
Цифры, используемые криптографами, чтобы показать, что они работают добросовестно

В криптографии, ничего особенного - любые числа, которые по своей конструкции не вызывают подозрений в отношении скрытых свойств. Они используются при создании криптографических функций, таких как хэши и шифры. Этим алгоритмам часто требуются случайные константы для смешивания или в целях инициализации. Криптограф может пожелать выбрать эти значения таким образом, чтобы продемонстрировать, что константы были выбраны не для гнусной цели, например, для создания бэкдора для алгоритм. Эти опасения можно развеять, если использовать числа, созданные таким образом, что остается мало места для корректировки. Примером может служить использование начальных цифр из числа π в качестве констант. Использование цифр в π миллионов знаков после десятичной точки не будет считаться заслуживающим доверия, потому что разработчик алгоритма мог выбрать эту отправную точку, потому что это создало секретную уязвимость, которую разработчик мог впоследствии использовать.

Считается, что цифры в позиционных представлениях вещественных чисел, таких как π, e и иррациональные корни, встречаются с одинаковой частотой (см. нормальное число ). Такие числа можно рассматривать как противоположную крайность случайных чисел Чайтина – Колмогорова в том смысле, что они кажутся случайными, но имеют очень низкую информационную энтропию. Их использование мотивировано ранними спорами по поводу стандарта шифрования данных правительства США 1975 года, который подвергся критике, поскольку не было предоставлено объяснений для констант, используемых в его S-блоке (хотя они были позже выяснилось, что они были тщательно отобраны для защиты от засекреченной тогда техники дифференциального криптоанализа ). Таким образом, возникла потребность в более прозрачном способе генерации констант, используемых в криптографии.

«Ничего в рукаве» - фраза, связанная с магами, которые иногда предваряют магический трюк, открывая рукава, чтобы показать, что внутри у них нет никаких предметов.

Содержание
  • 1 Примеры
  • 2 Контрпримеры
  • 3 Ограничения
  • 4 Сноски
  • 5 Ссылки
Примеры
  • Рон Ривест использовал тригонометрический синус для генерации констант для широко используемого хэша MD5.
  • Агентство национальной безопасности США использовало квадратные корни малых целых чисел для получения константы, используемые в его «алгоритме безопасного хеширования» SHA-1. Функции SHA-2 используют квадратные корни и кубические корни из малых простых чисел.
    • . Хэш-алгоритм SHA-1 использует 0123456789ABCDEFFEDCBA9876543210F0E1D2C3 в качестве начального хэш-значения.
  • Алгоритм шифрования Blowfish использует двоичное представление числа π (без начальных 3) для инициализации расписания ключей ..
  • RFC 3526 описывает простые числа для обмена ключами в Интернете, которые также генерируются из π.
  • S-блок шифра NewDES получен из Декларации независимости США.
  • Кандидат AES DFC извлекает все свои произвольные константы, включая все записи S-блока, из двоичного расширения e.
  • ARIA расписание ключей использует двоичное расширение 1 / π.
  • В расписании ключей шифра RC5 используются двоичные цифры как из e, так и из золотого сечения.
  • Хэш-функция BLAKE, финалист конкурса SHA-3, использует таблицу из 16 постоянных слов, которые начальные 512 или 1024 бита дробной части числа π.
  • В расписании ключей шифра KASUMI для получения модифицированного ключа используется 0x123456789ABCDEFFEDCBA9876543210.
  • Семейство шифров Salsa20 использует строку ASCII «раскрыть 32-байтовый k» в качестве констант в процессе инициализации блока.
Контрпримеры
  • Хэш-функция Стрибога S -box утверждалось, что он генерируется случайным образом, но был реконструирован и, как было доказано, генерируется алгоритмически с некоторыми «загадочными» недостатками.
  • Стандарт шифрования данных (DES) имеет константы, которые были предоставлены АНБ. Они оказались далеко не случайными, но вместо того, чтобы быть бэкдором, они сделали алгоритм устойчивым к дифференциальному криптоанализу, методу, который в то время не был широко известен.
  • Dual_EC_DRBG, рекомендованный NIST криптографический генератор псевдослучайных бит, подвергся критике в 2007 году, поскольку константы, рекомендованные для использования в алгоритме, могли быть выбраны таким образом, чтобы их автор для прогнозирования будущих результатов на основе выборки прошлых значений. В сентябре 2013 года The New York Times написала, что «внутренние записки, просочившиеся бывшим подрядчиком АНБ Эдвардом Сноуденом, предполагают, что АНБ сгенерировало один из генераторов случайных чисел, используемых в стандарте NIST 2006 года, который называется Dual EC Стандарт DRBG - который содержит лазейку для NSA ».
  • Кривые P стандартизированы NIST для криптографии с эллиптическими кривыми. Коэффициенты на этих кривых генерируются с помощью хеширования необъяснимых случайных начальных чисел, например:
    • P-224: bd713447 99d5c7fc dc45b59f a3b9ab8f 6a948bc5.
    • P -256: c49d3608 86e70493 6a6678e1 139d26b7 819f7e90.
    • P-384: a335926a a319a27a 1d00896a 6773a482 7acdac73.

Несмотря на то, что это не связано напрямую, после того, как были обнаружены подозрительные аспекты NBB в Dual_EC_DR_ константы вызвали опасения, что АНБ выбрало значения, которые давали им преимущество при поиске закрытых ключей. С тех пор многие протоколы и программы начали использовать Curve25519 в качестве альтернативы кривой NIST P-256.

Я больше не доверяю константам. Я считаю, что АНБ манипулировало ими через их отношения с промышленностью.

Брюс Шнайер, АНБ ломает большую часть шифрования в Интернете (2013)
Ограничения

Бернштейн и соавторы демонстрируют, что использование цифр «ничего в рукаве» в качестве отправной точки в сложной процедуре создания криптографических объектов, таких как эллиптические кривые, может оказаться недостаточно для предотвращения вставки лазеек. Если в процедуре выбора объекта имеется достаточно регулируемых элементов, набор возможных вариантов дизайна и очевидных простых констант может быть достаточно большим, так что поиск возможностей позволяет создать объект с желаемыми свойствами бэкдора.

Сноски
Ссылки
  • Брюс Шнайер. Прикладная криптография, второе издание. John Wiley and Sons, 1996.
  • Эли Бихам, Ади Шамир, (1990). Дифференциальный криптоанализ DES-подобных криптосистем. Достижения в криптологии - CRYPTO '90. Springer-Verlag. 2–21.
Последняя правка сделана 2021-06-01 14:40:28
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте