VPN WireGuard autors izlaida jaunu RDRAND atjauninājumu

Džeisons A. Donenfelds, VPN WireGuard autors darīja to zināmu pirms dažām dienām jauna ieviešana atjaunināts no RDRAND nejaušo skaitļu ģeneratora, kas ir atbildīgs par / dev / random un / dev / urandom ierīču darbību Linux kodolā.

Novembra beigās Džeisons tika iekļauts izlases kontroliera uzturētāju sarakstā un nu ir publicējis pirmos sava pārstrādāšanas darba rezultātus.

Paziņojumā minēts, ka jaunā ieviešana izceļas pāriet uz BLAKE2s jaucējfunkcijas izmantošanu SHA1 vietā entropijas sajaukšanas operācijām.

BLAKE2s pašam ir jauka īpašība būt iekšēji balstītai uz
ChaCha permutācija, ko RNG jau izmanto paplašināšanai, tāpēc
nevajadzētu būt problēmām ar jaunumu, oriģinalitāti vai pārsteidzošu CPU
uzvedība, jo tā ir balstīta uz kaut ko, kas jau tiek izmantots.

Papildus tam tiek uzsvērts, ka izmaiņas uzlaboja arī pseidogadījuma skaitļu ģeneratora drošību atbrīvojoties no apgrūtinošā SHA1 algoritma un izvairoties no RNG inicializācijas vektora pārrakstīšanas. Tā kā BLAKE2s algoritms veiktspējas ziņā apsteidz SHA1, tā izmantošana pozitīvi ietekmēja arī pseidogadījuma skaitļu ģeneratora veiktspēju (testi sistēmā ar Intel i7-11850H procesoru uzrādīja ātruma pieaugumu par 131%).

Vēl viena priekšrocība, kas izceļas, ir entropijas maisījuma pārnešana uz BLAKE2 ir izmantoto algoritmu apvienošana: BLAKE2 tiek izmantots ChaCha šifrēšanā, ko jau izmanto nejaušu secību iegūšanai.

BLAKE2s parasti ir ātrāks un noteikti drošāks, tas tiešām ir ļoti salauzts. Turklāt, Pašreizējā versija RNG neizmanto pilnu SHA1 funkciju, kā norāda un ļauj pārrakstīt IV ar RDRAND izvadi tā nav dokumentēts, pat ja RDRAND nav iestatīts kā “uzticams”, tas kas apzīmē iespējamās ļaunprātīgās IV opcijas.

Un tā īsais garums nozīmē lai saglabātu tikai pusi noslēpumu, barojot atpakaļ uz mikseri dod mums tikai 2 ^ 80 bitu uz priekšu slepenību. Citiem vārdiem sakot, ne tikai jaucējfunkcijas izvēle ir novecojusi, taču arī tās lietošana nav īsti laba.

Turklāt ir veikti uzlabojumi kriptogrāfijas drošā CRNG pseidogadījuma skaitļu ģeneratorā, ko izmanto nejaušā izsaukumā.

Tiek arī minēts, ka uzlabojumi ir samazināti līdz zvana ierobežošanai uz RDRAND ģeneratoru lēni, iegūstot entropiju, kas Tas var uzlabot veiktspēju par koeficientu 3,7. Džeisons pierādīja, ka zvans uz RDRAND Tam ir jēga tikai situācijā, kad CRNG vēl nav pilnībā inicializēts, bet, ja CRNG inicializācija ir pabeigta, tā vērtība neietekmē ģenerētās straumes kvalitāti un šajā gadījumā to ir iespējams izdarīt bez RDRAND izsaukšanas.

Šīs saistības mērķis ir atrisināt šīs divas problēmas un vienlaikus saglabāt vispārējā struktūra un semantika pēc iespējas tuvāk oriģinālam.
Konkrēti:

a) Tā vietā, lai pārrakstītu jaucējkodu IV ar RDRAND, tas tiks darīts ievietojām BLAKE2 dokumentētajos laukos «sāls» un «personāls», kas ir radīts speciāli šāda veida lietošanai.
b) Tā kā šī funkcija atgriež pilnīgas jaukšanas rezultātu uz entropijas savācējs, mēs atdodam tikai pusi no garuma hash, tāpat kā tas tika darīts iepriekš. Tas palielina būvniecības avansa noslēpums 2 ^ 80 a 2 ^ 128 daudz ērtāk.
c) Tā vietā, lai izmantotu tikai neapstrādātu funkciju "sha1_transform", tā vietā mēs izmantojam pilnu un atbilstošo BLAKE2s funkciju ar pabeigšanu.

Izmaiņas ir plānots iekļaut kodolā 5.17 un tos jau ir pārskatījuši izstrādātāji Teds Ts'o (otrais, kurš ir atbildīgs par izlases kontroliera uzturēšanu), Gregs Kroah-Hartman (atbildīgs par Linux kodola stabilitāti) un Jean-Philippe Aumasson (BLAKE2 algoritmu autors /3).

Visbeidzot, ja vēlaties uzzināt vairāk par to, varat skatīt sīkāku informāciju šī saite.


Esi pirmais, kas komentārus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.