RdRand

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

RdRand (також RDRAND) — додаткова команда процесора для ефективної генерації випадкових чисел за допомогою вбудованого в електронний чип генератора випадкових чисел DRBG (англ. deterministic random bit generator)[1].

RdRand[ред. | ред. код]

RdRand вперше з'явився в сімействі процесорів Ivy Bridge і є командою для Intel 64 і IA-32 архітектур. Генератор випадкових чисел DRBG відповідає стандартам безпеки та криптографічних стандартів NIST SP 800-90А, FIPS 140-2 та ANSI X9.82 та гарантує, що числа, які повертаються RDRAND є статистично рівномірними, неперіодичними і недетермінованими. Щоб перевірити чи процесор підтримує RdRand, можна використати команду CPUID. Після виклику стандартної функції CPUID, біт 40 регістра ECX отримує значення 01H[2].

Intel Secure Key[ред. | ред. код]

Intel Secure Key — це кодова назва для технології «RdRand інструкція + генератор випадкових чисел (DRBG) в апаратній реалізації»[1].

DRBG використовує джерело ентропії в самому процесорі, яке передає випадкові біти через AES модуль для перетворення ентропії на випадкові числа. Генератор випадкових чисел здійснює безперервно також самостійну перевірку ентропії випадкових даних, які він породжує[3].

Критика[ред. | ред. код]

У світлі численних скандалів щодо участі АНБ в глобальному стеженні за користувачами, відомий розробник ядра Linux Theodore Ts'o заявив, що він дуже радий що вистояв тиск інженерів Intel, котрі намагалися нав'язати зміни щодо залежності виводу /dev/random тільки на інструкцію RDRAND. «Використання виключно апаратних генераторів випадкових чисел, реалізації яких зашиті намертво всередині електронного чипа, котрий не піддається аудиту криптографічної стійкості є поганою ідеєю»[4]

Раніше відомий фахівець з криптографії Брюс Шнайєр наголошував, що розробку одного з стандартів, а саме NIST SP800-90 (котрому RDRAND відповідає), керував співробітник АНБ і містив в собі перекручені стандарти щодо випадковості чисел[5]. Він не рекомендує еліптичні криптографічні системи, котрі базуються на еліптичних кривих; ці стандарти містять в собі константи, зміст і значення котрих не пояснюється докладно і котрі були запропоновані АНБ[6].

Примітки[ред. | ред. код]

  1. а б Intel Digital Random Number Generator (DRNG): Software Implementation Guide, Revision 1.1 (PDF). Intel Corporation. 7 серпня 2012. Архів оригіналу (PDF) за 18 травня 2013. Процитовано 25 листопада 2012.
  2. Volume 1, Section 7.3.17, 'Random Number Generator Instruction' (PDF). Intel® 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes: 1, 2A, 2B, 2C, 3A, 3B and 3C. Intel Corporation. June 2013. с. 177. Архів оригіналу (PDF) за 4 листопада 2013. Процитовано 24 червня 2013.
  3. Taylor, Greg; Cox, George (September 2011). Behind Intel's New Random-Number Generator. IEEE Spectrum. Архів оригіналу за 1 липня 2019. Процитовано 18 липня 2013.
  4. Theodore Ts'o Google+ Повідомлення 5 вересня 2013 року
  5. Bruce Schneier «Did NSA Put a Secret Backdoor in New Encryption Standard?»
  6. Bruce Schneier NSA surveillance: A guide to staying secure. Архів оригіналу за 11 вересня 2013. Процитовано 11 вересня 2013.