Puncte:1

Derivarea unei chei dintr-o cheie principală și apoi criptarea cu AES-GCM crește durata de viață a cheii master?

drapel cn

Să presupunem că avem o cheie principală simetrică de 256 de biți și dorim să criptăm folosind AES-GCM cu IV-uri aleatorii. Înțeleg că, cu IV-uri aleatorii, durata de viață a cheii principale este de 2^32 pentru a se conforma cerințelor NIST.

Să presupunem că dorim să creștem durata de viață a cheii principale. Putem face acest lucru adăugând un pas de derivare a cheii înainte de criptarea efectivă? Presupunând că folosim cheia principală ca material de introducere a cheii și un nonce aleatoriu în HKDF, putem prelungi durata de viață a cheii principale?

Cu alte cuvinte, este AES-GCM(HKDF(MasterKey, ...), IV, ...) oferind orice avantaj in ceea ce priveste numarul total de mesaje versus AES-GCM(MasterKey, IV, ...)?

Mai exact, presupunând că HKDF are o sare fixă ​​și un nonce aleatoriu de 128 de biți ca intrare, iar GCM utilizează un IV aleator de 96 de biți, atunci presupun că (WK, IV) au o probabilitate de coliziune mai mică decât (IV). Dacă această ipoteză este corectă, cum se poate calcula o limită pentru durata de viață a cheii principale?

Swashbuckler avatar
drapel mc
„Înțeleg că, în cazul IV-urilor aleatoare, durata de viață a cheii principale este de 2^32 pentru a se conforma cerințelor NIST.” Da dar... GCM se bazează pe modul CTR și există cercetări care sugerează că ar trebui să limitați cantitatea totală de date criptate cu o singură cheie (indiferent de câte IV-uri sunt utilizate) la aproximativ 64 GB (în funcție de toleranța dvs. la risc). „În special, arătăm că atacurile de recuperare a mesajelor împotriva modului CTR pot fi montate cu aproximativ aceleași cerințe și aceeași complexitate ca și atacurile împotriva modului CBC”. A se vedea https://eprint.iacr.org/2018/159.pdf
kelalaka avatar
drapel in
Unele calcule de coliziune se fac aici; [Derivarea mai multor chei AES dintr-o cheie principală](https://crypto.stackexchange.com/questions/76588/multiple-aes-key-derivation-from-a-master-key/76589#76589), este posibil și pentru a utiliza AES-GCM-SIV?
Puncte:1
drapel in

Să presupunem că dorim să creștem durata de viață a cheii principale.Putem face acest lucru adăugând un pas de derivare a cheii înainte de criptarea efectivă? Presupunând că folosim cheia principală ca material de introducere a cheii și un nonce aleatoriu în HKDF, putem prelungi durata de viață a cheii principale?

Da, cu siguranță oricum când vine vorba de cerințele GCM. Desigur, pot exista și alte considerații, deoarece aceeași cheie principală încă protejează o cantitate mare de mesaje.

Cu alte cuvinte, este AES-GCM(HKDF(MasterKey, ...), IV, ...) oferind orice avantaj în ceea ce privește numărul total de mesaje față de AES-GCM(MasterKey, IV, ...)?

Potențial da, depinde desigur de celelalte intrări ale HKDF, dar atâta timp cât intrarea în HKDF este unică, aveți o funcție unidirecțională sigură care face cheile derivate independente unele de altele.

Mai exact, presupunând că HKDF are o sare fixă ​​și un nonce aleatoriu de 128 de biți ca intrare, iar GCM utilizează un IV aleator de 96 de biți, atunci presupun că (WK, IV) au o probabilitate de coliziune mai mică decât (IV).

Nu există niciun „nonce” definit ca parametru de intrare pentru HKDF, dar puteți utiliza unul în cadrul Info camp.

O „sare fixă” este de puțin sau deloc folos. Cu toate acestea, puteți utiliza un parametru de sare gol și utilizați un nonce ca parte a Info parametru și să fie rezonabil de sigur.

Cu o sare nu trebuie să vă gândiți la separarea domeniului (de exemplu, folosiți cheia principală pentru orice altceva care ar putea interfera), extracția independentă de sursă (de exemplu, posibila repetare a nonceului sau a entropiei proaste a cheii principale) - dar dvs. se poate face fără.

De fapt, poți sari peste un pas dacă doriți și utilizați doar HKDF-Expand dacă cheia dvs. principală are suficientă entropie. În acest caz, nu există Sare parametru necesar.

Aș recomanda să aveți un șir constant suplimentar în câmpul Info care poate fi folosit și pentru a obține chei de la master pentru cazuri de utilizare suplimentare. De exemplu, cel Info câmpul ar putea folosi o etichetă numită „EncapKey”. Acest lucru indică pur și simplu care este cazul de utilizare al subcheilor derivate - oferă o anumită separare a domeniilor.

Dacă această ipoteză este corectă, cum se poate calcula o limită pentru durata de viață a cheii principale?

Să presupunem că scoateți chei pe 256 de biți și folosiți cel puțin SHA-256 ca hash de bază. Atunci șansa suplimentară de coliziune poate fi considerată neglijabilă; depinde în întregime de proprietățile de coliziune ale nonce furnizate.

După cum sa indicat, pot exista și alte motive pentru care doriți să vă reîmprospătați cheia principală din când în când, deoarece securitatea mesajelor depinde în continuare de acea singură cheie.

user13129201 avatar
drapel cn
Vă mulțumesc pentru răspunsul dumneavoastră. Sunt încă puțin confuz în privința asta. În https://rwc.iacr.org/2018/Slides/Gueron.pdf autorii urmează o abordare similară, dar limitele lor calculate sunt diferite. Mai mult, în lucrarea originală se afirmă că AES-GCM cu derivarea cheii nu permite criptarea mai multor mesaje atunci când IV-ul este ales aleatoriu (doar mesaje mai lungi). În răspunsul dvs., sugerați că acest lucru depinde în întregime de ieșirea HKDF sau am înțeles greșit? Intrarea HKDF se bazează pe aceeași sursă de entropie ca și IV, astfel încât problema zilei de naștere intervine atât în ​​informații, cât și în IV.
Maarten Bodewes avatar
drapel in
Ah, îmi pare rău, da, dacă utilizați un nonce **aleatoriu** pe 128 de biți, atunci trebuie să luați în considerare ziua de naștere legată pentru asta, evident. Am fost pus pe picior greșit deoarece ai făcut distincția între o sare și un nonce în întrebarea ta. Puteți indica care credeți că este diferența dintre acești doi termeni?
user13129201 avatar
drapel cn
Prin nonce am vrut să spun practic să pun 16 octeți aleatori în informații. Totuși, aș dori să generalizez această problemă în afara alegerii KDF.În teorie, adăugarea unui pas KDF înainte de pasul AESGCM face ca sistemul să gestioneze în siguranță mai mult de 2^32 de mesaje? Și dacă da, este pentru că este greu de găsit (WK, IV) coliziuni de perechi decât coliziuni simple IV (adică, cazul GCM simplu cu pasul KDF)?
Maarten Bodewes avatar
drapel in
Da, coliziunea ar fi în întregime în generarea sub-cheilor. Pe măsură ce cheia se schimbă, nu aveți nevoie deloc de un IV aleatoriu, deoarece cheia setată, IV s-ar baza acum aproape în întregime pe puterea cheii. Deci, în acest sens, este mai logic să puneți toți biții aleatorii în „Informații”. Nu cred că contează prea mult, dar are mai mult sens pentru mine să pun toți acei biți în sare - asta este o valoare aleatoare pe derivație până la urmă - și apoi să folosesc o etichetă în câmpul „Info”. Dezavantajul acestui lucru este că ar trebui să utilizați HKDF complet.
millenseed avatar
drapel in
De ce s-ar baza pe derivarea subcheilor? Nu ar trebui să înmulțim probabilitățile de coliziune ale subcheii și IV care se întâmplă împreună?
Maarten Bodewes avatar
drapel in
Da, am folosit niște calcule din partea de sus a capului și cred că nu contează atât de mult, pentru că până la urmă va trebui să le înmulțiți împreună, așa cum ați spus. Totuși, o coliziune în cheia folosită mi se pare mai periculoasă decât doar în combinație.

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.