Populaire onderwerpen
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Een brief die ik in 2010 naar de SHA-3 mailinglijst heb geschreven:
Van: Zooko O'Whielacronx
Aan: hash-forum
Datum: 2010-10-14 03:46 UTC
Beste mensen:
Als een hash 32-bits pre-image-resistentie heeft, betekent dit dat een aanvaller ongeveer 2³² middelen zou kunnen besteden om een pre-image te vinden.
Als een hash 64-bits pre-image-resistentie heeft, betekent dit dat een aanvaller ongeveer 2⁶⁴ middelen zou kunnen besteden om een pre-image te vinden.
Wat als een hash 512-bits pre-image-resistentie heeft? Wat zou dat betekenen? Dat een aanvaller ongeveer 2⁵¹² middelen zou kunnen besteden om een pre-image daarin te vinden? Dat is een betekenisloze mogelijkheid om te bespreken, aangezien 2⁵¹² middelen nooit zullen bestaan in het leven van dit universum, dus het kan dat niet betekenen, of als het dat wel betekent, dan heeft het geen zin om te praten over "512-bits pre-image-resistentie". Misschien betekent het iets anders?
Bij analogie, stel je voor dat je de constructie van een brug overweegt die 10³ ton druk kan weerstaan. Je zou ook een brug kunnen overwegen die 10⁶ ton druk kan weerstaan. Als de brug zou worden ingezet in een situatie waar meer dan 10³ ton maar minder dan 10⁶ ton op zou rusten, dan zou dit een zeer belangrijke onderscheid zijn om te maken.
Maar wat zou het betekenen om een ontwerp voor een brug te bespreken die 10¹⁵⁰ ton druk kan weerstaan? Een dergelijke hoeveelheid druk zou nooit op de brug kunnen worden toegepast. Zou er enige waarde zijn in een onderscheid tussen één brugontwerp dat 10¹⁵⁰ ton druk zou weerstaan en een ander dat 10³⁰⁰ zou weerstaan? Zelfs als geen van beiden ooit zoveel als 10¹⁵⁰ ton druk zou kunnen ervaren, misschien zou de laatste brug nog steeds veiliger zijn tegen een andere bedreiging—een fout van de bouwers of ontwerpers of een stressvolle gebeurtenis die niet in het model was opgenomen dat we gebruikten om onze bruggen in de eerste plaats te evalueren.
Of misschien niet. Misschien is de brug die is ontworpen om 10³⁰⁰ ton druk te weerstaan eigenlijk waarschijnlijker om te falen dan de andere wanneer deze wordt getroffen door deze onvoorspelbare, niet-gemodelleerde gebeurtenis. Wie kan het zeggen?
Een redelijke positie om in te nemen is dat het een fout was voor NIST om te specificeren dat sommige van de SHA-3 hashes 512-bits pre-image-resistentie moesten hebben. (Als het een fout was, dan heb ik echt geen idee wat ik op dit moment moet doen!)
Die positie zegt dat er behoefte is aan een hashfunctie die veel meer CPU-tijd vereist dan SHA-3-256 om te bieden dat de kans veel kleiner is dat een aanvaller in staat zal zijn om een pre-image daarin te vinden dan in SHA-3-256, maar dat deze "veel kleinere kans" niet in enige betekenisvolle zin gecorreleerd is met het idee van "512-bits pre-image-resistentie".
Een andere redelijke positie om in te nemen is dat een hashfunctie waarvan bekend is dat deze maximaal 384-bits pre-image-resistentie heeft, waarschijnlijker zal falen dan een waarvan bekend is dat deze maximaal 512-bits pre-image-resistentie heeft. Dit is waar mijn beperkte begrip van hashfunctie-cryptanalyse eindigt. Is dat plausibel? Als ik je twee hashfuncties geef zoals die, ben je er dan zeker van dat je zou leren hoe je pre-images in de eerste kunt vinden voordat je pre-images in de tweede vindt? Hoe zeker ben je? Is het mogelijk dat het andersom zou zijn—dat je een methode zou ontdekken om pre-images in de tweede te vinden voordat je een methode ontdekt om pre-images in de eerste te vinden?
Als iemand die echte expertise in hashfunctie-cryptanalyse heeft en die de laatste positie inneemt, zou kunnen uitleggen wat ze bedoelen met "waarschijnlijker om te falen", dan zou ik het fascinerend vinden om het te horen.
In ieder geval ben ik er vrij zeker van dat, als gebruiker van hashfuncties, wat ik belangrijk vind "waarschijnlijker om te falen" (en efficiëntie) is, niet over "bits van beveiliging" voor enige bit-niveau groter dan ongeveer 128 (inclusief overweging van kwantumaanvallen, multi-target aanvallen, enz.).
Bedankt dat je de tijd hebt genomen om dit te lezen.
Met vriendelijke groet,
Zooko Wilcox-O'Hearn
4,81K
Boven
Positie
Favorieten