base58 kann keine 34-Zeichen-Ergebnisse erhalten (wie es die Bitcoin-Adresse tut), sondern 68 Zeichen

Ich versuche, Public Key Hex in Bitcoin-Adresse umzuwandeln.

Von dieser Website http://gobittest.appspot.com/Address aus kann ich einige Tests durchführen.

Zum Beispiel habe ich diesen öffentlichen Schlüssel:

04b4d653fcbb4b96000c99343f23b08a44fa306031e0587f9e657ab4a2541129368d7d9bb05cd8afbdf7705a6540d98028236965553f91bf1c5b4f70073f55b55d

Laut Website sollte die Adresse lauten:

1DU8Hi1sbHTpEP9vViBEkEw6noeUrgKkJH

das ist die Base58-Kodierung von 0088C2D2FA846282C870A76CADECBE45C4ACD72BB655DA1216.

0088C2D2FA846282C870A76CADECBE45C4ACD72BB655DA1216Wenn ich jedoch Base58 direkt auf dieser Website https://www.browserling.com/tools/base58-encode codiere , erhalte ich:

bSLwwticQjhNvEtqTMZXbn3dLmFrPvNrDGE4hmHsfADpHWb3b2ruh3XqtNzv8ESS8V6V

die sich völlig von der 34-Zeichen-Bitcoin-Adresse unterscheidet.

Weiß jemand warum?

Antworten (2)

Wenn Sie diese Site verwenden, codieren Sie das Hex als Hex-String, nicht mit den eigentlichen Bytes, die sie sein sollten. Die Base58-Codierung für Adressen arbeitet mit den Bytes selbst, die in der Hex-Zeichenfolge dargestellt werden. Diese Website codiert jedoch nur die Hex-Zeichenfolge (die als Bytes doppelt so lang ist und völlig andere Daten enthält).

Andrew Chow hat Ihnen gesagt, warum . Jetzt erzähle ich dir wie.

Konvertieren Sie zuerst Hex in ASCII (ich schlage diese Website vor )

(Ich kann das ASCII-Ergebnis unten nicht kopieren, da dies zu Problemen führen würde.)

Kopieren Sie dann den seltsam aussehenden ASCII-Text, den es erstellt hat, und fügen Sie ihn in den Base58-Encoder ein.

Geben Sie hier die Bildbeschreibung ein

Erledigt!