Eine von Satoshi Nakamotos Kreationen zur Verwirklichung von Bitcoin ist die Base58-Verschlüsselung, eine Art kryptografischer Funktion, die speziell dafür entwickelt wurde Bitcoin Deren Hauptfunktion besteht darin, die Bytes, die aus der Synthese von Daten resultieren, die durch eine Reihe von Bytes dargestellt werden (auf die ein spezifischer kryptografischer Prozess angewendet wird, um die Ausgabe in ein standardisiertes Format innerhalb des Netzwerks umzuwandeln), in etwas umzuwandeln, das leicht lesbar und überprüfbar ist .
Die Funktion kann die Informationen nicht nur kodieren, sondern auch dekodieren und erstellen Prüfsumme Vom selben. Tatsächlich sind alle diese Funktionen im Bitcoin-Quellcode leicht zu identifizieren. Zunächst sind die Definitionen aller dieser Funktionen im Header (Funktions- und Makrodefinitionsheader in C/C++), base58.h, verfügbar im folgenden Link
Während der Funktionscode durch Überprüfen der Datei base58.cpp überprüft und verifiziert werden kann, verfügbar unter diesem anderen Link. Es sind diese beiden Teile, die es Base58 ermöglichen, innerhalb von Bitcoin zu funktionieren.
Eine Funktion zur Erleichterung der Verwendung von Bitcoin
Base58 macht also im Grunde etwas, das uns die Verwendung von Bitcoin erleichtert: die Quelldaten einer Adresse in das lesbare Format umzuwandeln, das wir über sie kennen. Etwas so Einfaches wie diese Funktion ermöglicht es uns beispielsweise, eine große Datenmenge, beispielsweise einen Schlüssel, zu reduzieren ECDSA, in etwas viel besser Verwaltbares und Lesbares, wie zum Beispiel eine Bitcoin-Adresse mit 20 Zeichen Länge (in der Standard- oder Legacy-Version dieser Adressen, die mit 1 oder 3 beginnen).
Wie läuft nun dieser ganze Prozess ab? Nun, der Prozess ist recht einfach und kann in die folgenden Schritte unterteilt werden:
- Zunächst werden die Versions-/Anwendungsdaten zusammen mit den Daten erfasst, die dem öffentlichen Schlüssel unserer Kryptowährungen entsprechen. Diese Daten werden in Bytes verarbeitet.
- Als nächstes beginnt die Berechnung des SHA-256-Hash aller verketteten Daten. Hier haben wir unseren ersten SHA-256.
- Das vorherige Ergebnis wird als Wert für eine neue Runde von SHA-256 verwendet, und damit haben wir den SHA-256-Hash des vorherigen Hashs.
- Nachdem der zweite Hash berechnet wurde, nehmen wir die ersten vier daraus resultierenden Bytes.
- Jetzt verketten wir die Daten aus dem zweiten SHA-256-Hash (Schritt 3) und fügen sie dem Datensatz aus Schritt 1 hinzu.
- Die vorherige Verkettung wird als Satz von Bytes im Big-Endian-Format (einem Datenspeicher- und -verarbeitungsformat auf rechnerischer Ebene) behandelt. An diesem Punkt beginnt die Datenkonvertierung in Base58 unter Verwendung eines speziellen Alphabets (definiert im Bild unten). Bei diesem Vorgang wird darauf geachtet, das Ergebnis so zu normalisieren, dass es keine Base58-Nullen am Anfang der Zeichenfolge enthält (in diesem Fall werden sie mit dem Wert „1“ dargestellt).
- Am Ende endet der Prozess mit einer Verkettung aller „1“ aus dem vorherigen Schritt, um den endgültigen Base58-Wert zu erhalten.
Wird in Adressen und anderen kryptografischen Daten innerhalb von Bitcoin und darüber hinaus verwendet
Wir können die Verwendung von Base58 in verschiedenen Teilen von Bitcoin sehen. Dies zeigt sich beispielsweise bei der Kodierung von Bitcoin-Adressen, da diese von der Base58-Funktion verarbeitet werden, um sie in die uns bekannten Bitcoin-Adressen umzuwandeln. Es wird auch in privaten Schlüsseln im WIF-Format verwendet. Doch nicht nur bei Bitcoin kommt es zum Einsatz, auch andere Kryptowährungen nutzen diese Funktion. Zum Beispiel Bitcoin-Derivate wie Litecoin o Dogecoin Sie verwenden Base58 in ihrer Software, andere Kryptowährungen und digitale Währungen wie Ripple, Dash, Elixier und sogar Interplanetares Dateisystem (IPFS) verwendet in seiner Software auch Base58.
Dies verdeutlicht den enormen Nutzen dieser Funktion, die nicht nur in der Welt der Kryptowährungen, sondern auch in verschiedenen Bereichen, die sich der Bereitstellung dezentraler Technologie widmen, an Bedeutung gewonnen hat und in der die Kreation von Satoshi Nakamoto nicht nur wegen ihrer extremen Funktionalität, sondern auch als solche vertreten ist eine Hommage und Erinnerung an alles, was erreicht wurde, seit er seine Schöpfung der Welt bekannt gemacht hat.