Er is een implementatie van /dev/random voorgesteld voor de Linux-kernel, bevrijd van binding aan SHA-1

Jason A. Donenfeld, auteur van VPN WireGuard, heeft een bijgewerkte implementatie voorgesteld van de RDRAND pseudo-willekeurige nummergenerator die verantwoordelijk is voor de werking van de /dev/random en /dev/urandom apparaten in de Linux-kernel. Eind november werd Jason opgenomen in het aantal beheerders van de willekeurige driver en heeft nu de eerste resultaten van zijn werk over de verwerking ervan gepubliceerd.

De nieuwe implementatie valt op door de overstap naar het gebruik van de BLAKE2s-hashfunctie in plaats van SHA1 voor entropiemengbewerkingen. De wijziging verbeterde de veiligheid van de generator van pseudo-willekeurige getallen door het problematische SHA1-algoritme te elimineren en het overschrijven van de RNG-initialisatievector te elimineren. Omdat het BLAKE2s-algoritme qua prestaties superieur is aan SHA1, had het gebruik ervan ook een positief effect op de prestaties van de pseudo-willekeurige getalgenerator (testen op een systeem met een Intel i7-11850H-processor lieten een snelheidstoename van 131% zien). Een ander voordeel van het overbrengen van entropiemenging naar BLAKE2 was de unificatie van de gebruikte algoritmen - BLAKE2 wordt gebruikt in het ChaCha-cijfer, dat al wordt gebruikt om willekeurige reeksen te extraheren.

Daarnaast zijn er verbeteringen aangebracht aan de crypto-beveiligde pseudo-willekeurige nummergenerator CRNG die wordt gebruikt bij de getrandom-oproep. De verbeteringen komen neer op het beperken van de oproep naar de langzame RDRAND-generator bij het extraheren van entropie, wat de prestaties met 3.7 keer verbetert. Jason liet zien dat het aanroepen van RDRAND alleen zin heeft in een situatie waarin de CRNG nog niet volledig is geΓ―nitialiseerd, maar als de initialisatie van de CRNG voltooid is, heeft de waarde ervan geen invloed op de kwaliteit van de gegenereerde reeks en in dit geval de aanroep naar RDRAND kan worden afgezien.

De wijzigingen zijn gepland voor opname in de 5.17-kernel en zijn al beoordeeld door ontwikkelaars Ted Ts'o (tweede onderhouder van de willekeurige driver), Greg Kroah-Hartman (verantwoordelijk voor het onderhouden van de stabiele tak van de Linux-kernel) en Jean-Philippe Aumasson (auteur van de BLAKE2/3-algoritmen).

Bron: opennet.ru

Voeg een reactie