Bitcoin verwendet sowohl SHA-256- als auch RIPEMD-160-Hashes. Meistens wird ein Double-Round-SHA-256 verwendet, aber zur Adressgenerierung wird RIPEMD-160 verwendet, da es einen kürzeren Hash-Wert generiert. RIPEMD-160 hat einen 160-Bit- oder 20-Byte-Hashwert, während SHA-256 einen 256-Bit- oder 32-Byte-Hashwert hat.
Daher wird RIPEMD-160 für seinen kürzeren Hash verwendet. SHA-1 erzeugt jedoch auch einen 160-Bit-Hash. RIPEMD-160 ist ein weniger beliebter Algorithmus, erreicht aber tatsächlich genau dasselbe wie SHA-1.
Der einzige wirkliche Unterschied, den ich im Internet finden kann, ist das folgende Fragment von der Wikipedia-Seite von RIPEMD-160 :
RIPEMD-160 wurde in der offenen akademischen Gemeinschaft entwickelt, im Gegensatz zu den von der NSA entworfenen SHA-1- und SHA-2-Algorithmen. Andererseits scheint RIPEMD-160 etwas weniger häufig verwendet zu werden als SHA-1, was dazu geführt haben könnte, dass es weniger genau untersucht wurde als SHA. Es ist nicht bekannt, dass RIPEMD-160 durch Patente eingeschränkt wird.
Sind Patentprobleme der Grund? Warum ist SHA-1 ein Problem, aber SHA-256 nicht? Ich weiß, dass SHA-1 und SHA-2 (zu denen SHA-256 gehört) unterschiedliche Iterationen der SHA-Initiative sind und daher wahrscheinlich eine sehr unterschiedliche rechtliche Umsetzung haben.
Weiß jemand wirklich, warum RIPEMD-160 vor dem populäreren SHA-1 gewählt wurde?
Es gibt eine Vielzahl von Gründen.
Wie @ThePiachu erwähnte, gibt es einen theoretischen 2^60-Bit-Angriff, der auf SHA-1 möglich ist , was bedeutet, dass der Algorithmus schwächer als vorgesehen ist.
RIPEMD-160 wurde in der offenen akademischen Gemeinschaft entwickelt, im Gegensatz zu den von der NSA entworfenen SHA-1- und SHA-2-Algorithmen.
Es ist erwähnenswert, dass Satoshi SHA2-256 zweimal hätte verwenden und den zweiten Digest auf 160 Bit kürzen können, da dies ebenso sicher ist . Die Tatsache, dass er es nicht getan hat, ist ein Beweis dafür, dass seine Entscheidung eine bewusste Entscheidung war, RIPEMD-160 anstelle der NSA-Algorithmen zu verwenden.
Schließlich glaube ich, dass RIPEMD auf einem anderen Design basiert als die SHA1/SHA2-Algorithmen, und daher sind Angriffe, die für einen gelten, möglicherweise nicht auf den anderen übertragbar (was gut ist).
Es könnte an einem theoretischen 2^60-Bit-Angriff liegen, der auf SHA-1 möglich ist , was bedeutet, dass der Algorithmus schwächer als vorgesehen ist. RIPEMD scheint solche Schwächen nicht zu haben.
Steven Rose
liamzebedee
liamzebedee
Steven Rose