Puncte:3

PRNG-urile sunt funcții cheie de derivare?

drapel ng

PRNG este un mecanism de producere aleatorie dintr-o sămânță aleatorie inițială, deci practic o modalitate de a obține mai multe secrete dintr-un secret.

Privind intrarea Wikipedia pentru KDF veți găsi

În criptografie, o funcție de derivare a cheilor (KDF) este un algoritm criptografic care derivă una sau mai multe chei secrete dintr-o valoare secretă, cum ar fi o cheie principală, o parolă sau o expresie de acces.

Ceea ce mi se pare ce sunt PRNGS. Deci, va fi corect să clasificăm PRNG-urile ca KDF-uri?

Puncte:2
drapel ng

În timp ce PRNG-urile nu sunt tocmai KDF-uri, există mai multe construcții de KDF-uri din PRNG-uri (de fapt, PRF-uri, dar sunt echivalente). Acest lucru este similar cu modul în care criptarea (simetrică) nu este aceeași cu un PRG, dar este simplu să construiți criptarea simetrică dintr-un PRG.

Pentru a citi mai multe despre asta, vezi NIST 800-108. Există trei construcții enumerate din PRF-uri arbitrare.

Rețineți că există și alte modalități de a construi KDF-uri. În special, un număr de KDF-uri sunt construite din hash-uri, mai degrabă decât PRF-uri. În special, cred că PBKDF2 și Argon2 sunt KDF-uri populare care folosesc hash-uri (SHA2 și Blake2) mai degrabă decât PRG-uri pentru primitivul lor pseudoaleatoriu subiacent.

Puncte:0
drapel ph
jpa

Deci, va fi corect să clasificăm PRNG-urile ca KDF-uri?

Există două diferențe importante:

  1. Eliminarea oricăror corelații în biții de ieșire care ar putea ajuta la compromiterea altor algoritmi care folosesc cheia. PRNG-urile criptografice satisfac acest lucru în mod implicit, dar de exemplu LFSR algoritmii bazați nu.

  2. În cazul în care introducerea este o parolă, este de dorit ca KDF să ia o perioadă rezonabilă de timp pentru a se executa. Nu prea lent, dar nici prea rapid - acest lucru ajută la creșterea rezistenței împotriva forței brute atunci când entropia parolei nu este suficient de mare. De obicei, KDF-urile sunt concepute pentru a limita cantitatea de accelerație disponibilă de la hardware specializat, cum ar fi GPU-uri și FPGA. Pe de altă parte, majoritatea PRNG-urilor sunt proiectate să fie cât de rapide.

Standardul NIST 800-108 menționat de celălalt răspuns specifică modalități de a repeta un PRNG de mai multe ori într-un mod specific. Acest lucru ajută atât la încetinirea procesului, cât și la reducerea oricăror părtiniri cunoscute sau necunoscute în ieșire.

SAI Peregrinus avatar
drapel si
Acest răspuns este specific KDF-urilor bazate pe parolă, nu KDF-urilor în general. KDF-urile „plate” precum HKDF sunt folosite pentru a transforma octeți aleatori neuniform (ca rezultatul unui schimb ECDH) în octeți uniform aleatori și pentru a face acest lucru cât mai eficient posibil.
drapel ph
jpa
@SAIPeregrinus Ai dreptate. Am editat putin raspunsul.

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.