Sichere Vanity-Adressen durch Key-Merging

"Eitelkeit". Bild von Rob Oo via flickr.com. Lizenz: Creative Commons

Vanity Adressen sind Bitcoin-Adressen mit bestimmten, selbstgewählten Zeichenkombinationen. Eigentlich muss man diese Adressen vom eigenen Computer ausrechnen lassen. Bitcoin-Uni.de bietet aber an, sie auf sichere Weise für andere zu machen. Wir schauen uns an, wie das funktioniert – und ob es wirklich sicher ist.

Vanity Adressen sind „besondere Adressen“ für Bitcoin und anderen Kryptowährungen: Adressen, die, wie der Name schon sagt, die Eitelkeit ihrer Besitzer bedienen, in dem sie einen Hauch Ordnung in die Zufälligkeit der Zeichenfolgen bringen. Zum Beispiel 1BergmanNpFqZwALMRe8GHJqGhtEFD3xMw – meine ganz persönliche Adresse.

Solche Vanity Adressen kann man sich „minen“, indem man seinen Computer so lange Adressen generieren lässt, bis die passende dabei ist. Je nach der Länge der Buchstabenkette, die ihr euch wünscht, kann das einige Minuten bis einige Jahre dauern. Über die faszinierende Mathematik dahinter, wenn sich eine besondere Adresse aus dem Ozean der Unendlichkeit herausschält, habe ich bereits hier geschrieben.

Heute möchte ich euch einen Service der Bitcoin-Uni vorstellen: Den Vanity Address Generator.

Nicht jeder möchte eine Vanity Adresse auf seinem eigenen Computer errechnen. Sei es, weil die Software dafür zu unhandlich, sei es, weil der eigene Rechner nicht stark genug ist, oder sei es, weil man die Mühle nicht 18 Tage lang rattern lassen möchte. Allerdings sollte man auf keinen Fall einem Dienstleister die Berechnung der Vanity Adresse anvertrauen. Denn wer die Adresse ausrechnet, der hat auch den privaten Schlüssel. Und ein privater Schlüssel, den jemand anderes auch hat, ist wertlos, oder, falls man die Problematik nicht kennt, wertloser als wertlos.

Ist klar, und kann auch gar nicht anders sein: Man generiert die Vanity Adresse entweder selbst oder gar nicht. Oder?

Wie so oft macht Kryptographie Dinge möglich, die man sich normalerweise gar nicht vorstellen kann. Das Team von Bitcoin-Uni hat ein Verfahren umgesetzt, bei dem ihr auf sichere Weise jemand anderen die Adresse finden lassen könnt.

Der Trick ist das sogenannte „Address Merging“, was auf deutsch bedeutet, Adressen zu verschmelzen: Man verbindet zwei Adressen bzw. öffentliche Schlüssel, um eine neue Adresse zu generieren. Auf diese Weise kann ein Service nach einer Vanity Adresse suchen, indem man ihm einen öffentlichen Schlüssel gibt, und er solange zufällig erzeugte Schlüssel hinzufügt, bis die gewünschte Adresse gefunden ist.

Den privaten Schlüssel zu der gewünschten Adresse erzeugt man auf dieselbe Weise: Man verbindet die beiden Schlüssel, aus denen die öffentlichen Schlüssel generiert worden sind. Wenn ihr dies selbst macht, nachdem euch der Dienstleister den von ihm benutzten privaten Schlüssel gesendet hat, hat er niemals eine Kontrolle über die von ihm generierte Adresse.

Auf dem Vanity Address Service von Bitcoin-Uni.de können wir uns eine solche Adresse generieren. Angeboten werden sowohl Standard-Bitcoin-Adressen („1Bergmann“), SegWit-Adressen („3Bergmann“) oder native SegWit-Adressen („bc1qpergmann“). Bei letzteren ist ein „b“ leider nicht erlaubt, weshalb das Beispiel nur gut-fränkisch mit „hardem Be“ ausgesprochen funktioniert.

Derzeit bietet bitcoin-uni nur Adressen mit maximal sechs maßgeschneiderten Zeichen an, bald, wenn die neuen Grafikkarten ankommen, sollen auch mehr möglich werden.

Sobald man die gewünschten Zeichen eingegeben hat, möchte Bitcoin-Uni einen öffentlichen Schlüssel wissen. Viele von euch werden ab dieser Stelle überfordert sein. Woher bekommt man einen öffentlichen Schlüssel? Die meisten Wallets spucken den überhaupt nicht aus, bei anderen ist die Option sehr verborgen. Ich habe die (Desktop Versioin der) Wallet Electrum benutzt, wo man über die Konsole mit dem Befehl

getpubkeys('Adresse')

den öffentlichen Schlüssel einer bestimmten Adresse anzeigen lassen kann. Es kann sein, dass ihr die Konsole im Menü „Ansicht“ erst freischalten müsst. Danach habe ich den Schlüssel bei Bitcoin-Uni eingegeben. Anschließend sollte ich sieben Euro bezahlen, was ich aber dank meines Rabattcodes umgehen konnte. Für euch habe ich ebenfalls einen Rabattcode, aber mit dem spart ihr lediglich 25 Prozent: SAVE25PERCENT.

Ab nun arbeiten die Grafikkarten der Bitcoin-Uni und suchen eure gewünschte Adresse. Sobald sie fündig wurden, bekommt ihr per E-Mail Bescheid. In der E-Mail findet ihr auch einen Link zum Key Merging; das Formular auf der Seite der Bitcoin-Uni ist schon mit dem privaten Schlüssel, den sie gefunden haben, vorausgefüllt. Um nun den privaten Schlüssel für die Vanity Adresse zu generieren, müsst ihr den privaten Schlüssel zu der Adresse eingeben, von der ihr vorher den öffentlichen Schlüssel herausgefunden habt. In Electrum könnt ihr das entweder per Rechtsklick auf die Adresse oder in der Konsole mit dem Befehl

getprivatekeys('Adresse')

Electrum wird euch den privaten Schlüssel mit einer Vorsilbe ausspucken, die das Format anzeigt, etwa „p2pkh:“. Diesen Teil dürft ihr im Formular der Bitcoin-Uni nicht eingeben.

Aber Moment … wenn wir nun den privaten Schlüssel unserer Adresse doch auf einem Formular des Dienstleisters eingeben – dann kann er doch auch den privaten Schlüssel für die Vanity Adresse generieren? Wir sind dann zweimal ums Dorf geradelt, nur um in derselben Kirche rauszukommen, oder? Wir haben einen großen Aufwand auf uns genommen, um genau dasselbe Ergebnis zu erreichen – der Dienstleister kennt den Schlüssel? Ob er nun verspricht, ihn nach dem Errechnen zu löschen, oder gelobt, die Eingaben im Formular nicht zu speichern – das kommt auf dasselbe raus.

Bitcoin-Uni ist das klar. Daher empfehlen sie zum einen, die Seite mit dem Formular im privaten Modus zu öffnen, etwa als privates Tab mit dem Brave oder Chrome Browser. Zum anderen sollte man vor der Eingabe des privaten Schlüssels die Internetverbindung trennen, und die Seite – am besten den ganzen Browser – schließen, nachdem man den Schlüssel kopiert hat und bevor man die Verbindung wieder aktiviert. Auf diese Weise kann Bitcoin-Uni euren privaten Schlüssel gar nicht abspeichern, da alles lokal, in eurem Browser, passiert.

Wer ganz auf Nummer sicher gehen will, kann sich das Key-Merging-Tool auch selbst installieren.

Auf diese Weise könnt ihr euch eine sichere Vanity Adresse beschaffen, ohne dabei euren Rechner heiß laufen zu lassen oder einem Dienstleister zu vertrauen.

Was aber macht man nun mit dem privaten Schlüssel? Erneut kann ich euch nur die Wallet Electrum ans Herz legen. Hier könnt ihr einfach eine neue Wallet generieren und dabei die Option angeben, eine Seed oder einen privaten Schlüssel zu benutzen.

Über Christoph Bergmann (1871 Beiträge)
Das Bitcoinblog wird von Bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder. Christoph hat vor kurzem ein Buch geschrieben: Bitcoin: Die verrückte Geschichte vom Aufstieg eines neuen Geldes. Das Buch stellt Bitcoin in seiner ganzen Pracht dar. Ihr könnt es direkt auf der Webseite Bitcoin-Buch.org bestellen - natürlich auch mit Bitcoin - oder auch per Amazon. Natürlich freuen wir uns auch über Spenden in Bitcoin, Bitcoin Cash oder Bitcoin SV an die folgende Adresse: 1BergmanNpFqZwALMRe8GHJqGhtEFD3xMw. Wer will, kann uns auch Hier mit Lightning spenden. Tipps für Stories sind an christoph.bergmann@mailbox.org immer erwünscht. Wer dies privat machen möchte, sollte meinen PGP-Schlüssel verwenden.

13 Kommentare zu Sichere Vanity-Adressen durch Key-Merging

  1. Vielen Dank für deinen Betrag!

    Beim Importieren in eine Wallet kann es sein, das nur eine Adresse des Finalen Schlüssels angezeigt wird. In der Android Mycelium Wallet könnt ihr das Adressformat mit einem klick auf den QR-Code der Adresse ändern, um die Vanity Adresse zu sehen. Beim Bluewallet erscheint Standardmäßig die P2SH Adresse, wenn Guthaben auf der Legacy oder Bech32 Adresse liegen sollte diese anzeigt werden, bei der aktuellen Version!

    Zum zusammenfügen der Schlüssel kann auch bitaddress.org verwendet werden, allerdings wird hier nur die Legacy Adresse gezeigt!

    Es sind noch weitere Entwicklungen geplant, um die Userexperience zu verbessern. Auch andere Kryptowährungen werden implementiert!

    Viel Spaß beim Testen und berechnen lassen eurer ‚Eitelkeits‘ Adresse 🙂

  2. gehört die neue gemergede Adresse zur selben Wallet weil sie zur selben Familie gehört, die von einer seed abgeleitet werden kann (auch ohne den seed zu kennen) ?
    oder anders herum: wird die neue Adresse auch vom alten seed wiederhergestellt?

  3. Hallo Christoph, kommst Du denn aus Franken ? Wenn ja woher ?

Schreiben Sie einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Wechseln )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Wechseln )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Wechseln )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Wechseln )

Verbinde mit %s