Public Addresses und Private Keys

Die Herausforderung

Wenn du dir eine neue E-Mail Adresse anlegst wird zuerst überprüft ob diese schon existiert, denn E-Mail Adressen sind einmalig. Dies ist in einem zentralen System leicht, da alle E-Mail Adressen in einer Datenbank gespeichert sind. Allerdings hat damit der E-Mail Anbieter die Macht über die Adressen und sollte seinen Dienst schließen wird deine E-Mail Adresse inkl. aller E-Mails ebenfalls gelöscht.

In einem dezentralen System kann dies nicht passieren. Allerdings gibt es auch keine zentrale Partei, die überprüfen kann, ob die von die gewählte Adresse bereits vergeben ist oder nicht. Die Lösung sind Public Addresses (zu Deutsch: öffentliche Adressen) und Private Keys (zu Deutsch: private Schlüssel). Es gibt – beinahe – unendlich verschiedene Private Keys und wenn du dich dann „registrierst“ wird dir per Zufallsprinzip eine zugelost.

Was ist eine Public Address und ein Private Key?

Stellen wir uns eine unzerbrechliche, durchsichtige Spardose vor. Jede Spardose hat eine einmalige Adresse (Public Address), um diese zu lokalisieren. Warum muss eine Spardose lokalisiert werden? Stellen wir uns vor es gibt nahezu unendlich viele Adressen und ich würde dir gerne Bitcoins schicken. Um zu wissen wo sich deine Spardose befindet, brauche ich deren Adresse. Jeder, der diese Adresse besitzt, kann den Inhalt der durchsichtigen Spardose einsehen und auch Coins einwerfen –> Daher der Begriff Public Address.

Allerdings kann man mit dieser Public Address keine Coins aus der Dose entnehmen. Dafür ist ein sogenannter Private Key notwendig, der zum Öffnen der Spardose als Schlüssel dient. Sobald die Dose geöffnet ist, können Coins entnommen und versendet werden.

Public Address: Diese Adresse kann weitergegeben werden. Man kann es auch mit einer E-Mail Adresse vergleichen. Jeder der diese besitzt kann selbst E-Mails an sie senden.

Private Key: Die ist euer privater geheimer Schlüssel und darf niemals hergegeben werden. Besitzt jemand euren Private Key ist es als ob er das Passwort zu eurem E-Mail Account kennt. Er kann sich einloggen, E-Mails lesen und versenden.

Wie werden Public Addresses erzeugt?

Dies ist ein Thema, dass meiner Erfahrung nach selbst Leuten die sich gut mit Blockchain auskennen nicht klar ist. Public Addresses werden mithilfe einer speziellen und sehr komplexen, kryptographischen Formel aus dem Private Key abgeleitet. Stellen wir uns vor du müsstest um eine neue E-Mail Adresse anzulegen nur dein Passwort angeben. Anhand des Passworts wird dann die E-Mail Adresse erzeugt. Das Erstellen der Public Address ist dabei einfach, aber das „zurückrechnen“ von der Public Address zum Private Key mit heutiger Rechenpower unmöglich.

Private Key mittels Kryptographie in Public Key umwandeln einfach möglich, aber umgekehrt unmöglich
Quelle: Eigene Darstellung

Nehmen wir an mein Private Key wäre 10. Die Formel zur Herleitung der Public Address wäre einfach die Potenz hoch 2.

Public Address = Private Key ^2 = 10 ^2 = 100

Das zurückrechnen ist in diesem Beispiel relativ simpel. Die Wurzel aus 100 ist 10. Was ist aber der Private Key von 729? Ohne Taschenrechner musst du hier schon lange überlegen um auf die Lösung von 27 zu kommen. Die in Realität angewendeten Formeln sind natürlich weitaus komplexer und der Private Key besteht bei Bitcoin aus 2^256 verschiedenen Möglichkeiten. Das sind knapp so viele Möglichkeiten, wie es Atome im sichtbaren Universum gibt, nämlich 100.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000 (eine 1 gefolgt von 77 Nullen). Angezeigt wird er normalerweise in einer hexadezimalen Form. Diese besteht aus Zahlen und Buchstaben:

L2Fcv5v9LamehCv7BRJNugubwoXMCkV4fYzxooK4YMVm9yTPA64Y

Die abgeleitete Public Address beginnt bei Bitcoin mit einer 1 oder einer 3. Es folgen 33 weitere Zahlen und Buchstaben. Unsere Spenden-Adresse sieht bspw. so aus:

1EJsvxwANjijhfeqbaBa6xhwRVJQPPebru

Kann ich aus Versehen einen bereits verwendeten Private Key generieren?

Dies ist eine häufig gestellte Frage. Viele machen sich Sorgen, dass durch das zufällige zulosen des Private Keys es doch möglich sein könnte, dass irgend eine fremde Person plötzlich nochmals meinen Private Key zugelost bekommt und damit Kontrolle über mein Konto hat. Als Menschen können wir Mengen schwer einschätzen, sobald wir sie uns nicht mehr physisch vorstellen können. Wenn ich sage ich habe 1.000.000.000€ auf meinem Bankkonto ist dies bereits eine Zahl die so utopisch groß ist, dass viele gar nicht wissen wie viel das eigentlich ist. Wenn ich dir aber sage ich könnte mir von meinem Vermögen 1000 teure Sportwagen, 100 Villen und 1 Privat Jet kaufen  ist es viel deutlicher.

Daher der Vergleich mit den Atomen im Universum. Dazu muss man aber erst verstehen wie riesig das eigentlich ist und was es heißt, 2^256 verschiedene Möglichkeiten zu haben. Unsere Sonne ist eine von geschätzt 100.000.000.000 Sternen in unserer Galaxie, der Milchstraße. Es gibt in etwa 125.000.000.000 weiterer Galaxien. Eine Sonne besteht im Schnitt aus etwa 10^50 (Eine 1 gefolgt von 50 Nullen) Atomen. Es handelt sich um unvorstellbare Zahlen. Die Wahrscheinlichkeit, dass du eine Private Address erhältst, die bereits vergeben wurde ist zwar real, aber so verschwindend gering, dass du dir wirklich überhaupt keine Sorgen machen musst. Es ist praktisch genau so unmöglich wie was zurückrechnen der Public Address auf den Private Key.

Aber man hört doch ab und zu, dass Private Keys gehackt wurden?

Das liegt daran, dass es von den Medien meist falsch kommuniziert wird. Es wurde noch nie nachweislich ein Private Key gehackt. Wenn Leute aber ihre Private Keys in Clouds, E-Mail Postfächern o.ä. speichern und diese gehackt werden kommt der Angreifer auch an die Private Keys. Daher ist es enorm wichtig die Private Keys sicher zu speichern.

Und hierfür gibt es sogenannte Wallets.

Teilen

Schreibe einen Kommentar