Jason Donenfeld, VPN WireGuardi autor, esitas RDRANDi pseudojuhuslike arvude generaatori uuendatud rakenduse, mis haldab seadmeid /dev/random ja /dev/urandom Linuxi kärn. Novembri lõpus liideti Jason random draiveri hooldajate hulka ning nüüd on ta avaldanud oma töö esimesed tulemused selle ümberkujundamisest.
Uus rakendus on märkimisväärne ülemineku poolest BLAKE2s hash-funktsiooni kasutamisele SHA1 asemel entropia segamise operatsioonides. See muudatus parandas pseudojuhuslike arvude generaatori turvalisust, vabastades probleemsetest SHA1 algoritmidest ja vältides RNG algväärtuse uuesti kirjutamist. Kuna BLAKE2s ületab SHA1 toimivuse poolest, on selle rakendamine positiivselt mõjutanud pseudojuhuslike arvude generaatori jõudlust (testimine Intel i7-11850H protsessoriga näitas kiirusetõusu 131%). Entropia segamise üleminek BLAKE2-le on veel üks pluss, kuna see ühtlustab kasutatavaid algoritme — BLAKE2 kasutatakse juba ChaCha šifris, mida kasutatakse juhuslike järjestuste genereerimiseks.
Lisaks on parendatud krüptokindlat pseudojuhuslike arvude generaatorit CRNG, mida kasutatakse getrandomi kutsumisel. Parendused piiravad RDRANDi aeglase generaatori kutset entropia saamisel, mis suurendab jõudlust 3,7 korda. Jason näitas, et RDRANDi kutsumine on mõistlik ainult siis, kui CRNG ei ole veel täielikult initsialiseeritud, kuid kui CRNG initsialiseerimine on lõpule jõudnud, ei mõjuta selle väärtus genereeritud järjestuse kvaliteeti ning RDRANDile pöördumist ei ole sel juhul vaja.
Muutused on planeeritud kaasamiseks tuuma 5.17 ja on juba saanud arendajatelt Ted Ts’o (random draiveri teine hooldaja), Greg Kroah-Hartmani (Linuxi kärn stabiilse haru toega) ja Jean-Philippe Aumassoni (BLAKE2/3 algoritmide autor) ülevaate.
Allikas: opennet.ru
