Puncte:2

Node.js uuid.v4 vs crypto.randomUUID.Care implementare este mai sigură criptografic?

drapel cn

De mult timp am folosit pachetul uuid npm pentru nevoile mele uuid v4. Se pare că în versiunile recente ale nodului au introdus un modul cripto încorporat cu metoda randomUUID.

niste repere au fost făcute pentru a arăta cripto.randomUUID este mult mai rapid decât uuid.v4 (aproximativ 3x +).

Cu toate acestea, nu pot găsi informații despre modul în care implementările diferă (dacă sunt deloc) în ceea ce privește modul în care aleg numere aleatorii pentru UUID-ul lor de ieșire. Este probabil cineva să folosească un RNG mai sigur?

Modulul Nod UUID

Documente Node.js pentru crypto.randomUUID

JAAAY avatar
drapel us
Ambele implementează același RFC.
fgrieu avatar
drapel ng
Acest lucru este atât de specific implementării și cu puțină criptografie (nu există nicio cheie, iar imposibilitatea de a face distincția de aleatorie nu este miezul întrebării) încât pare în afara subiectului. Ce zici să-l întrebi pe [security-SE](https://security.stackexchange.com/) sau [SO](https://stackoverflow.com/)?
Alexander D'Attore avatar
drapel cn
Aceasta este cu siguranță specifică implementării. Miezul întrebării mele este menit să fie care implementare oferă cea mai bună imposibilitate de distingere de aleatoriu.
SAI Peregrinus avatar
drapel si
Chiar și UUID-urile „aleatoare” se pot distinge de octeții aleatori, prin proiectare. Dar ambele ar trebui să aibă în esență entropie identică pentru acele părți ale UUID-ului care sunt alese aleatoriu, atunci când sunt în modul UUID aleatoriu (în loc de moduri bazate pe timp sau alte moduri specificate în RFC).
Maarten Bodewes avatar
drapel in
Diferența de 3x de viteză, din păcate, nu vă spune nimic. Un generator de numere aleatoare mai puțin sigur este în general *mult* mai rapid decât viteza de trei ori mai mare. Diferența se datorează probabil diferențelor de implementare sau modului în care sunt preluate aleatorii (de exemplu, octet cu octet sau cuvânt cu cuvânt). [Această postare](https://www.nearform.com/blog/new-crypto-capabilities-in-node-js/) pare să aprofundeze puțin diferențele.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.