Puncte:2

reutilizarea cheilor: cunoașterea H(S) dezvăluie HMAC(S)

drapel ug
aep

dat un hash H() , cum ar fi sha256 și un text secret S și o sare publică P

cunoașterea H(S) va dezvălui HMAC(P, S)?

pentru a clarifica: întrebarea este dacă este posibil să înveți rezumatul, nu secretul. În cazul meu specific, HMAC(S) este de fapt HKDF(S), dar presupun că pentru această întrebare partea legată de siguranță este doar faza de extragere.

protocolul este următorul:

Alice->Bob: preluați mesajul2 după mesajul1 care avea conținut H(mesaj1)
Bob->Alice: mesajul2 de la Charlie spune: chacha(HKDF(mesaj1), simplu)

Pare destul de evident că forțarea brută a S este încă imposibilă:

Pentru fiecare rundă, un atacator ar avea capacitatea de a testa împotriva H(S) sau HMAC(S), dar acest lucru nu ajută, deoarece efortul este identic. Testarea împotriva ambilor face doar de două ori mai lent.

Cu toate acestea, ne pasă de secretul hashului în sine, deoarece aceasta este cheia derivată. Chiar dacă presupunem că ar putea fi posibilă „reluarea” unei funcții hash doar din rezumatul acesteia [1] și apoi continuați-l ca HMAC, ar funcționa numai cu H(S+sare), nu cu H(sare+S), care HKDF este [2]

Acum ultimul lucru pe care pur și simplu nu îl înțeleg este entropia. Dezvăluirea hash-ului lui S reduce entropia, astfel încât hmac-ul să fie mai slab? Din câte înțeleg, un digerat a ceva dispersează de fapt entropia, astfel încât să nu se distingă de aleatorie. Deci, nu puteți „reface” aceeași dispersie, dacă a dispărut deja.


  1. https://stackoverflow.com/questions/20895009/what-state-needs-to-be-stored-to-allow-resumable-hash-computations
  2. De ce folosește HKDF HMAC (sare, cheie) în loc de HMAC (cheie, sare)?
kelalaka avatar
drapel in
Punctul cheie este că extinderea lungimii este posibilă sau nu!
Maarten Bodewes avatar
drapel in
H este un fel, iar HKDF, așa cum ați indicat, nu folosește $H(S)$ nicăieri, așa că așa spune totul. S-ar putea să știți $H(sare \oplus ipad)$ ca prefix al lui $S$ și $H(S)$, dar în cele din urmă va trebui să știți $H(sare \oplus ipad) \| S$ și asta va fi dificil.

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.