Kezdőoldal » Számítástechnika » Programozás » Van értelme a hash hashelésének?

Van értelme a hash hashelésének?

Figyelt kérdés
Nem rég kesztem a php programozást, vb.Net-ben van már tapasztalatom. A kérdésem a következő. Lehetséges az, hogy egy md5-s hash-t tovább hasheljek sha1-el vagy színtén md5-el? És ha igen annak van értelme? Mert végűl is ha a 2 hash-t encryptelik akkor csak azelső hash-t kapják meg nem? Jah és mág valami... Ha lehetséges akkor php-ban e milyen módon történik? Csak azért mert én vb-ben functionel csináltam és akkor elég volt md5(md5(md5("String")))) módon elvégezni. Vagy akkor annak se volt értelme? :D

2016. júl. 27. 16:46
1 2
 1/11 anonim ***** válasza:
Nincs.
2016. júl. 27. 16:48
Hasznos számodra ez a válasz?
 2/11 anonim ***** válasza:

PHPban is ugyanúgy lehet ahogy a példádban írtad, értelme nem sok van, ahogy annak se, hogy md5 meg sha1-et használsz. bcrypt most a divat.


A legnagyobb probléma viszont itt van:

'hash-t encryptelik' = lövésed sincs a dologról sajnos (alapozni kéne) decryptre gondolsz és hashnál az sem lehetséges mert veszteséges.

2016. júl. 27. 16:51
Hasznos számodra ez a válasz?
 3/11 anonim ***** válasza:
Másrészt egy hash(hash(hash(str))) feltörése valószínűleg nem úgy menne, hogy megkeresik sorban a hasheket, hanem a str-t változtatják, és 3x hívják meg rajta a hash függvényt... persze md5-nél lehet van (biztosan van) erre kifinomultabb módszer is.
2016. júl. 27. 17:00
Hasznos számodra ez a válasz?
 4/11 anonim ***** válasza:
Nincs.
2016. júl. 27. 17:23
Hasznos számodra ez a válasz?
 5/11 A kérdező kommentje:
Köszönöm a gyors válaszokat, ViperM véletlen írtam encryptet, de gondolom ha már hash dekódolásról szól a téma egyértelmű, hogy nem a továbbkódolásra gondoltam. Valóban nincs eget verő tudásom a téren, éppen ezért kértem segítséget. A lényeg a lényeg lehetséges a hash-t hash-elni de semmi értelme ugyanis semmivel sem tart tovább a (decrypt) mint egy egyszeri hashnél. Ami jobban érdekel az, hogy hogyan érteted azt, hogy veszteséges? Már miért lenne az? CSak gondolok itt arra, hogy pl. :adatbázis jelszavak. Vagy milyen értelemben értetted?
2016. júl. 27. 17:39
 6/11 anonim ***** válasza:
Úgy, hogy hash esetén nincs decrypt.
2016. júl. 27. 17:53
Hasznos számodra ez a válasz?
 7/11 anonim ***** válasza:

Hash algoritmusok veszteségesek, mivel azokból a forrás adat (egyértelműen) nem állítható elő. Mit jelent ez? Lehet találni több olyan bemenetet, amelyeknek ugyanaz lesz a hash-e (ezt hívják ütközésnek).

Kérdésedre válaszolva, van értelme egy hash többszöri hashelésének, sőt, gyakorlatban mindig így csinálják, csak nem 3x, hanem több ezerszer, viszont pont az ütközések miatt szoktak iterációnként még trükközni vele (pl hozzáadni a jelszót is, mint ahogy a PBKDF2 is csinálja).

MD5 kriptográfiailag gyengének számít, használj SHA2-t, de még inkább egy erre a célra szolgáló könyvtár szolgáltatásait vedd igénybe. Kriptográfia tipikusan olyan dolog, hogyha nem ért az ember hozzá, nagyon könnyen csinál hülyeséget.

2016. júl. 27. 17:56
Hasznos számodra ez a válasz?
 8/11 A kérdező kommentje:
Rendben, köszönöm szépen a válaszodat. Továbbá az ütközéseket említve: Ha egy adott oldalon (pl.: login felület) beírod a jelszót akkor azt alapból ráereszti egy valamiféle algoritmusra (legyen most md5) és az (a jelszó md5 hash-ét) hasonlítja össze az adatbázisban található hash-el. Tehát ha egy hash-hez több string is rendelhető akkor lényegében az ilyen oldalaknál ez figyelmen kívül lehet hagyni nem?
2016. júl. 27. 19:43
 9/11 anonim ***** válasza:

Ami az első hash szerint összeesik, az a végleges hash szerint is össze fog esni. Ezt tovább rontja, hogy erre használsz egy másik hasht, így ez még durvábban fog osztályozni.

A biztonság javulhat, hiszen hasonló módszereket használnak, és minél többször alkalmazzák ezeket a műveleteket, annál nehezebb visszafejteni.

De ha jót akarsz, akkor használj saltot!

2016. júl. 27. 21:06
Hasznos számodra ez a válasz?
 10/11 anonim ***** válasza:

A hashek általában nem injektívek, azaz egy hashérték több stringhez is tartozhat. Bizonyítás: Végtelen sok különböző szöveg van, és csak például 2^160 kimenet.

A hash biztonságát salttal lehet javítani. A salt egy véletlen érték, amit a hashsel együtt tárolnak el, és felhasználják a hash kiszámításához. Már az is elég, ha először számnak tekintve összeszorzod vagy összeadod a stringet és a saltot, majd erre ereszted rá a hasht. Ezzel pedig használhatatlanná válik a szivárványtábla.

2016. júl. 27. 21:11
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!