Авторът на VPN WireGuard пусна нова актуализация на RDRAND

Джейсън А. Доненфелд, автор на VPN WireGuard го направи известен преди няколко дни нова реализация актуализиран от генератор на случайни числа RDRAND, който отговаря за работата на устройствата / dev / random и / dev / urandom в ядрото на Linux.

В края на ноември Джейсън беше включен в списъка на поддържащите на произволния контролер и вече публикува първите резултати от работата си по преработката.

В съобщението се посочва, че новата реализация е забележителна превключването към използване на хеш функцията BLAKE2s вместо SHA1 за операции на смесване на ентропия.

Самият BLAKE2s има хубавото свойство да се базира вътрешно на
ChaCha пермутация, която RNG вече използва за разширението, така че
не би трябвало да има проблем с новост, оригиналност или невероятен процесор
поведение, тъй като се основава на нещо, което вече се използва.

Освен това се отбелязва, че промяната също така подобри сигурността на генератора на псевдослучайни числа като се отървете от обезпокоителния алгоритъм SHA1 и избегнете презаписването на вектора за инициализация на RNG. Тъй като алгоритъмът BLAKE2s изпреварва SHA1 по производителност, използването му също имаше положителен ефект върху производителността на генератора на псевдослучайни числа (тестовете на система с процесор Intel i7-11850H показаха 131% увеличение на скоростта). ) .

Друго предимство, което се откроява, е прехвърлянето на ентропийната смес към BLAKE2 е обединението на използваните алгоритми: BLAKE2 се използва в шифъра ChaCha, който вече се използва за извличане на произволни последователности.

BLAKE2s като цяло е по-бърз и със сигурност по-сигурен, Наистина е много счупен. Освен това, на Текущата компилация в RNG не използва пълната функция SHA1, т.к определя и ви позволява да презапишете IV с изхода RDRAND по някакъв начин недокументиран, дори ако RDRAND не е конфигуриран като "доверен", което което означава възможни злонамерени IV опции.

И късата му дължина означава за да запазите само половин тайна при подаване обратно към миксера тя ни дава само 2^80 бита предна секретност. С други думи, не само изборът на хеш функцията е остарял, но използването й също не е много добро.

Също така бяха направени подобрения в крипто-сигурния генератор на псевдослучайни числа CRNG, използван в getrandom извикването.

Споменава се също, че подобренията се свеждат до ограничаване на повикването към генератора на RDRAND бавно извличане на ентропия, което може да подобри производителността с коефициент 3,7. Джейсън демонстрира, че обаждането до RDRAND Има смисъл само в ситуация, в която CRNG все още не е напълно инициализиран, но ако инициализацията на CRNG е завършена, неговата стойност не влияе върху качеството на генерирания поток и в този случай е възможно да го направите без извикване RDRAND.

Този компромис има за цел да разреши тези два проблема и в същото време да поддържа обща структура и семантика, възможно най-близки до оригинала.
По-конкретно:

а) Вместо да презаписвате IV хеша с RDRAND, поставяме в документираните полета "сол" и "лични" на BLAKE2, които са създаден специално за този тип употреба.
b) Тъй като тази функция връща резултата от пълния хеш към ентропия колектор, ние връщаме само половината от дължината на hash, точно както беше направено преди. Това увеличава строителна предварителна тайна от 2 ^ 80 а 2^128 много по-удобно.
в) Вместо просто да използвате необработената функция "sha1_transform", вместо това използваме пълната и правилна функция BLAKE2s, с завършване.

Промените са планирани за включване в ядрото 5.17 и вече са прегледани от разработчиците Ted Ts'o (вторият поддържащ драйвер на произволния драйвер), Greg Kroah-Hartman (отговорен за поддържането на стабилност на ядрото на Linux) и Jean-Philippe Aumasson (автор на алгоритмите BLAKE2 /3).

И накрая, ако се интересувате да можете да научите повече за това, можете да се консултирате с подробностите в следваща връзка.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.