Puncte:1

Cât de fezabil este să ghicim cheia privată a libsodium luând în considerare timpul de generare?

drapel us

Deci, să presupunem că faceți acest lucru local (deci fără zgomot de rețea) și cunoașteți și specificul exact al procesorului dvs. Este fezabil să descoperiți cheia privată (în timp ce aveți acces la cheia publică) generată de libsodium pe baza timpului necesar pentru a genera o pereche de chei?

Cum rămâne cu alți algoritmi, cât de fezabil este acest lucru în general?

kelalaka avatar
drapel in
Întrebați despre atacul de timp asupra înmulțirii scalare?
Hormoz avatar
drapel us
Mai mult sau mai puțin așa ceva.
kelalaka avatar
drapel in
Curve25519 folosește scara Montgomery și aceasta este fără atac de timp prin natura.
kelalaka avatar
drapel in
De asemenea, rețineți că, dacă generarea cheii este preluată pe computerul dvs., atacul de sincronizare este cea mai mică preocupare. Dacă este pe cloud, acest lucru este posibil numai dacă atacatorul vă poate localiza serverul **partajat* pentru a aplica atacul. Mă întreb cine folosește serverele partajate în aplicațiile lor cruciale!
Puncte:0
drapel cn

Deci, să presupunem că faceți acest lucru local (deci fără zgomot de rețea) și cunoașteți și specificul exact al procesorului dvs.

Bine. Acesta este un model de atac plauzibil, de exemplu, dacă atacatorul rulează un anunț JavaScript în browserul dvs. sau are o mașină virtuală amplasată pe același nor.

Este posibil să descoperiți cheia privată (în timp ce aveți acces la cheia publică) generată de libsodium pe baza timpului necesar pentru a genera o pereche de chei?

Utilizări de libsodiu Curba25519 taste curbe eliptice. O cheie privată Curve25519 este un șir de biți aleatoriu de o anumită lungime. (Este extins la un șir de octeți în care anumiți biți au valori fixe, dar asta nu adaugă un canal lateral de sincronizare.) Deci procesul de generare a cheii private este banal. Singurul canal lateral plauzibil se află în generatorul aleator în sine.

Unii algoritmi de generare aleatorie folosesc primitive care sunt susceptibile la canalele laterale de sincronizare. În special, CTR_DRBG se bazează pe AES, care este vulnerabil la atacurile de sincronizare a memoriei cache dacă este implementat în software într-un mod rapid naiv. CTR_DRBG rotește cheia AES foarte des, ceea ce o face oarecum mai puțin vulnerabilă decât în ​​scenariile în care adversarul poate observa criptări cu aceeași cheie AES. In orice caz, un astfel de atac poate fi practic, cel putin in conditii ideale.

Cu alți algoritmi populari DRBG (de exemplu, Hash_DRBG sau HMAC_DRBG), cu o implementare AES fără tabele (de ex.folosind accelerarea hardware, cum ar fi AES-NI, sau utilizarea bit-slicing în software), sau dacă DRBG citește entropia suficient de des (ceea ce este fezabil pe hardware-ul modern cu un TRNG dedicat, cum ar fi RDRAND pe procesoare Intel sau echivalentul pe diferite smartphone-uri procesoare), atacurile de sincronizare asupra RNG nu sunt o preocupare.

Ceea ce ar putea fi mai vulnerabil este calculul cheii publice din cheia privată. Curve25519 face relativ ușor de implementat aritmetica fără canale laterale de sincronizare, dar nu este un lucru dat.

Cum rămâne cu alți algoritmi, cât de fezabil este acest lucru în general?

Cu curbele eliptice Weierstrass și cu Diffie-Hellman cu câmp finit, o cheie privată este un număr între $2$ și $P-2$. În afară de atacurile RNG, așa cum sa discutat mai devreme, implementarea naturală a procesului de generare a cheilor nu este susceptibilă la atacuri de sincronizare. Cu toate acestea, calculul cheii publice este vulnerabil la atacuri de sincronizare dacă este implementat fără precauții.

Cu RSA, generarea cheilor este un proces complex care implică testarea (pseudo-)primalității și o aritmetică suplimentară care este potențial vulnerabilă la atacurile de sincronizare. Concret, în practică, se pare că pasul care este cel mai predispus la scurgeri este calculul GCD făcut pentru a verifica asta $p-1$ și $q-1$ sunt co-prim cu exponentul public.

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.