Puncte:0

Descifrarea intrării din ieșirea cunoscută folosind SHA512?

drapel in

Întrebare de bază. Fac auto-studiu asupra funcțiilor hash.

Dacă introduc Buna ziua ca intrare într-o funcție hash SHA512 (de exemplu, folosind acest) Primesc următorul hash: 9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663547373c466323c3d99ba5c11d7c7acc6e14b8c5da0c46635473734

Am observat că algoritmul SHA512 dă aceeași ieșire indiferent dacă introduc Buna ziua azi sau mâine, sau dacă folosesc computerul meu sau al surorii mele.

Având în vedere cele de mai sus, înseamnă asta că cunoașterea codului hash rezultat mai sus a priori îmi permite să descifrez că intrarea SHA512 corespunzătoare este „bună ziua”?

pigeonburger avatar
drapel co
Da (cu excepția cazului în care există o suprapunere în care se întâmplă să se ciocnească un șir aleatoriu complet diferit și ambele au hashuri identice). Dacă memorați că un burger de vită provine de la o vacă, puteți descifra că alte chifle de burger de vită sunt probabil făcute din vaci. Singurul lucru pe care nu-l poți face este să transformi chifletul de vită înapoi într-o vacă - trebuie să ai *științe prealabile* despre cum a fost făcută. Același lucru cu hașurile.
Puncte:2
drapel my

Am observat că algoritmul SHA512 dă aceeași ieșire, indiferent dacă introduc salut azi sau mâine, sau dacă folosesc computerul meu sau al surorii mele.

Ei bine, da - funcțiile hash nu ar fi foarte utile dacă ar da răspunsuri diferite uneori.

Utilizarea clasică pentru o funcție hash este în cadrul unui algoritm de semnătură; algoritmul de bază se ocupă de obicei doar de valori de dimensiuni limitate și deseori dorim să semnăm mesaje destul de lungi. Deci, ceea ce facem este să trecem mesajul nostru lung printr-o funcție hash (pentru a crea o valoare scurtă, în acest caz, de 512 biți în lungime) și să semnăm acea valoare scurtă. Dacă verificatorul a apelat funcția hash pe același mesaj original și a primit o valoare diferită, verificarea nu ar funcționa.

Având în vedere cele de mai sus, înseamnă asta că cunoașterea codului hash rezultat a priori îmi permite să descifrez că intrarea SHA512 corespunzătoare este „bună ziua”?

Ei bine, ceea ce puteți face este să încercați să efectuați SHA512 pe diferite intrări diferite; dacă una dintre intrări se întâmplă să fie „bună ziua”, atunci da, veți vedea aceeași ieșire și veți deduce că (cu excepția unei coincidențe incredibile) intrarea inițială a fost și „bună ziua”.

Cu toate acestea, acesta este în esență cel mai bun lucru pe care îl puteți face; cu o funcție hash bună (și SHA512 este o funcție hash bună), în esență nu există nicio modalitate de a recupera șirul original (sau un alt șir care are aceeași valoare) fără a încerca diverse ghiciri.

Puncte:0
drapel ng
SSA

Funcțiile Hash criptografice nu sunt funcția de generator de ieșire aleatorie. deci cu aceeași intrare dă întotdeauna aceeași ieșire. Funcțiile Hash aici sunt utilizate pentru a verifica integritatea mesajului, astfel încât, dacă vreun bit este schimbat atunci când un receptor primește mesajul expeditorului, valoarea Hash va fi diferită și va deveni repudiabilă.


Acum, întrebarea dvs. despre cum să verificați Hash-ul dat este unică pentru o intrare. adică caracterul unu-la-unu. așa că, de-a lungul timpului, din cauza coliziunii, au apărut noi funcții hash, de ex. MD4,MD5, SHA1,SHA2.. Este extrem de dificil cu forța brută să obțineți intrarea Hash o/p pentru hash mai nou, cum ar fi SHA512 sau SHA256.


JFYI, mecanismul de stocare a parolelor folosește și funcția Hash împreună cu salt (număr aleator) pentru a evita coliziunea, deoarece mulți oameni tind să folosească o parolă care poate fi ușor de ghicit și poate duce la probleme grave.

Puncte:0
drapel it

înseamnă asta că cunoașterea codului hash rezultat a priori îmi permite să descifrez că intrarea SHA512 corespunzătoare este „bună ziua”?

Da și nu...

-- Da, puteți compara hash pentru a vă da seama că este din textul simplu „bună ziua”. Hashe-urile pe care le colectezi dintr-un cuvânt sau dintr-o frază sunt elemente ale așa-numitei tabele curcubeu în industrie. Un tabel care conține hash de o mulțime de cuvinte și modele populare cunoscute pentru parolă.

Acesta este și motivul pentru care folosirea zilei de naștere sau 123456 este o alegere proastă, deoarece hashurile lor sunt atât de ușor recunoscute de tabel.

-- Nu este nu o descifrare. Ai etichetat întrebarea drept „funcție unidirecțională”, nu? Deci, nu există o modalitate de revenire de descifrare pentru operația hash.

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.