Puncte:1

Cum să găsiți cele 6 proprietăți principale ale funcțiilor hash criptografice atunci când implementați o funcție hash?

drapel tn

Conform acest există cel puțin 6 „proprietăți” pe care toate funcțiile hash sigure criptografic se străduiesc să le atingă:

  • Determinat: același mesaj rezultă întotdeauna în același hash;
  • Rapid: este rapid de calculat valoarea hash pentru orice mesaj dat;
  • Funcție unidirecțională: este imposibil să generați un mesaj din valoarea lui hash decât prin încercarea tuturor mesajelor posibile;
  • Efect de avalanșă: o mică modificare a unui mesaj ar trebui să modifice valoarea hash atât de mult încât noua valoare hash pare necorelată cu vechea valoare hash;
  • Rezistent la coliziune: este imposibil să găsiți două mesaje diferite cu aceeași valoare hash
  • Rezistent la atacuri pre-imagine: un atac pre-imagine asupra funcțiilor hash criptografice încearcă să găsească un mesaj care are o anumită valoare hash. O funcție hash criptografică ar trebui să reziste atacurilor asupra imaginii sale prealabile.

Primele 3 cred că sunt destul de ușor de respectat din câte îmi pot imagina până acum (neavând implementat o funcție de hashing criptografic sigură). Dar cum proiectați ceva care are ultimele 3 totuși?

  1. Efect de avalanșă.
  2. Rezistent la coliziune.
  3. Rezistent la atacuri pre-imagine.

Există lucruri specifice pe care le puteți face atunci când proiectați o funcție de hashing pentru a o face să aibă cumva aceste 3 proprietăți? Cum fac cei care creează funcțiile hash criptografice premiate?

Dacă nu există principii de aplicat, următorul cel mai bun pariu ar fi să știi ce exemple să studiezi pentru a obține o perspectivă asupra modului în care au reușit să adere la aceste proprietăți. În acest caz, ce lucrări sau algoritmi hash sunt buni de studiat și pe ce părți să se concentreze din acele cazuri?

kelalaka avatar
drapel in
al 3-lea usor? Puteți demonstra că există o funcție unidirecțională? este legat de rezistența pre-imagine dar nu este egală. Funcțiile hash MD folosesc construcția cifrurilor bloc pentru a avea o [funcție de compresie] bună (https://en.wikipedia.org/wiki/One-way_compression_function). Efectul de avalanșă: cifrul bloc înseamnă ceva pentru tine? Vă sugerez să citiți cartea BLAKE2. KECCAK, ca o clasă diferită, pe de altă parte, folosește permutări.
kelalaka avatar
drapel in
Atacurile și cum să le atenuăm, vezi [documentul lui Joux](https://crypto.stackexchange.com/q/98092/18298) și cum SHAx este îmbunătățit de-a lungul anilor.. Până când cineva arată inversul, aproape toți sunt pretinși atâta timp cât nu există nicio dovadă a limitelor precum funcțiile hash universale
Thorham avatar
drapel jp
kelalaka - O simplă adăugare este deja un mod.

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.