Door Krakatau: Door Anoniem: Door Krakatau: Je geeft het antwoord op je eigen vraag toch al?
Original Poster De hashing formule(s) gooien informatie weg, waardoor je dus nooit de originele tekst kan terughalen.
Ergo, bij gebruik met wachtwoorden:
(1) de gebruiker stelt een wachtwoord in en dat wordt met een secure hash functie naar een getal A omgezet, wat wordt opgeslagen (in een database meestal);
(2) later, bij het inloggen van de gebruiker geeft deze een wachtwoord op, wat met dezelfde secure hash functie naar een getal B wordt omgezet; dit getal B wordt met het opgeslagen getal A vergeleken en als ze gelijk zijn dan is de gebruiker geauthenticeerd.
Geen noodzaak voor 'terug' rekenen dus, er wordt alleen maar 'voortuit' gerekend.
Gut, ondanks alle posts, en herhaalde vraag, snap je nog steeds de vraag niet.
Het gaat NIET er niet om dat er geen noodzaak is om terug te rekenen.
Noch om het feit dat je vanwege informatie verlies geen zekerheid kunt krijgen wat de originele input was.
De vraag is, waarom het moeilijk is om gegeven het hash resultaat _een_ input te vinden die dat resultaat geeft.
De voorbeelden van een niet-sterke hash zoals MOD , checksum, optellen laten dat niet zien.
Want daar kun je *wel* inputs vinden die een gegegeven uitkomst als resultaat hebben.
Of dat de originele input was weet je niet. Boeit ook, vanuit een password perspectief.
Als jhgjhagdjkajkaghd en "mysecret01" dezelfde hash opleveren, kun je met allebei inloggen.
Waarom dat nu moeilijk is voor een crypto hash is een terechte vraag, en er is geen makkelijk antwoord op te geven.
Het enige wat ik verder kan toevoegen aan mijn antwoord van 2:08 voor de OP is om een beschrijving van MD5 te nemen, en (gewoon op papier) te proberen om zelfs maar 1 ronde terug te tellen, voor elke bit te kijken hoe die bit 0 dan wel 1 geworden is.
Wat lul je nou toch? Je verzint op basis van de warrige originele post een nog warrigere 'vraag' en pretendeert de enige te zijn die 'dat' heeft begrepen en 'de vraag' kan beantwoorden.
Jouw verhaal is een 'vooruit' verhaal en de poster wil juist 'teruguit' (dat denkt z/hij zelf in ieder geval, gezien het veelvuldig gebruik van 'terugrekenen').
Maar over jouw verhaal: de term die je zoekt is Collision Resistance
Klik maar op de link in de header als je er meer over wilt weten. Succes!
Als je die link niet alleen gegeven, maar ook gelezen had, had je ook geweten wat ik gisteren 2:08 al zei.
P1. Pre-image resistance: Given a hash value h it should be hard to find any message m such that h = H(m).
(pagina 4 van de introductie).
De OP vraagt, m.i. duidelijk genoeg, "Als je maar terugrekent met de formules krijg je toch een wachtwoord die de juiste hash oplevert? Waarom kan je niet terugrekenen, de formule is immers bekend."
En zegt er inderdaad al zelf bij dat dat niet het originele wachtwoord hoeft te zijn, maar iets wat werkt.
Dat is , in de juiste termen, de vraag naar een (First) pre-image attack . Gegeven een hash output h, het vinden van any message m zodanig dat h = H(m).
Cq de vraag waarom dat nou moeilijk is als je de hash functie kent.
Bij een collision attack mag je twee messages m en m' construeren, met als voorwaarde dat ze dezelfde hash output opleveren. De hash output staat daarbij niet vast, en de twee messages dus ook niet.
Dat is, als je vragen hebt over het terugrekenen van gegeven hashes vanuit een password file, niet zinvol.
Lees nou je antwoorden nog eens, en zeg dan waarom die een antwoord zouden zijn op de vraag van de OP.
In de intro van het afstudeerverslag wat je linkt worden de basisbegrippen (first) pre-image resistance, second pre-image resistance en collision resistance gedefinieerd.
Een collision attack is boeiend, en knap, en zeker een slechte eigenschap voor een cryptografische hash om te hebben, en ook genoeg om de hash als 'broken' te beschouwen, maar het is GEEN pre-image attack.
En een collision attack is zeker ook niet zomaar om te bouwen of uit te breiden naar een pre-image attack, of naar een second pre-image attack.
In de 18 jaar werk tussen dat van Den Boer/Bosselaers (1993),Hans Dobbertin (1996) en heden is er ook geen succesvolle pre-image attack op MD5 bekend geworden.
(dictionary attacks, rainbow tables of het brute-forcen van een klein stukje message space worden niet gezien als het falen in pre-image resistance voor MD5 of een andere serieuze cryptografische hash).