Post
Topic
Board Altcoins (Deutsch)
Merits 25 from 7 users
Topic OP
[Guide] Ethereum Custom-Adresse ("Vanity-Addresse") [Grafikkarte benötigt]
by
Nestade
on 28/03/2019, 20:36:50 UTC
⭐ Merited by criptix (10) ,1miau (9) ,Buchi-88 (2) ,aundroid (1) ,madnessteat (1) ,mole0815 (1) ,actmyname (1)
1miau hat in seinem Guide "So legt ihr euch eine persönliche Bitcoin-Adresse an" bereits ausführlich erklärt, wie man sich eine "Custom" Bitcoin-Adresse mit vanitygen erstellen kann.

Beispiele (BTC):
1fudCz15sHGR8L2YQnaG4JVMjMQpaDo37
1BTCTUnYLskK7N9nXb17wf6oVYMYrX5WHG
1DogemNVw8AZnMf3cB4L1wijGnr9DVKzia
1Fomo7V86nWrjdv6JzU7yavtp5hfzZWsZr
Quelle: https://bitcointalk.org/index.php?topic=5096373.0  ||  https://bitcointalk.org/index.php?topic=5125703.msg50359232#msg50359232

Eine solche Custom-Adresse lässt sich nicht nur für Bitcoin, sondern auch für Ethereum generieren, worauf ich im Folgenden genauer eingehen möchte.
Bitcoin-Adressen sind Base58 kodiert und können somit folgende Zeichen enthalten:
Code:
1 2 3 4 5 6 7 8 9 a b c d e f g h i j k m n o p q r s t u v w x y z A B C D E F G H J K L M N P Q R S T U V W X Y Z

Bei der Erstellung unserer Ethereum-Adresse müssen wir uns leider auf das Hexadezimal-System mit folgenden Zeichen beschränken:
Code:
0 1 2 3 4 5 6 7 8 9 A B C D E F

Einige Beispiele für Custom ETH-Adressen:
0xcafebabeb69f2361cec1106cb26e3f422b65442f
0xdeadbeef36072d66d93b2c9fda370c06964262b2
0xbadc0dedf5b784a70bc9a8c8476b5c88e9f6f49e
0x11111111262b236c9ac9a9a8c8e4276b5cf6b2c9

Einige Beispiele für "Hexspeak":
https://en.wikipedia.org/wiki/Hexspeak
https://de.wikipedia.org/wiki/Hexspeak

Für das Generieren der gewünschten Adresse wird einiges an Rechenleistung benötigt und die Dauer bis zu einem Treffer nimmt mit der Länge unserer "Zeichenkette" zu.

Folgende Tools stehen uns zur Verfügung:

VanityEth
- nur CPU (-> langsam)
- Open Source
- vertrauenswürdige Quelle
https://github.com/MyEtherWallet/VanityEth

profanity
- GPU (-> deutlich schneller)
- Windows/Linux
- Open Source
https://github.com/johguse/profanity

vanity-eth.tk (nicht empfohlen, da online) [1]
- nur CPU (-> langsam)
- im Browser
- Open Source
https://github.com/bokub/vanity-eth


Durch die Nutzung der Grafikkarte lassen sich mit profanity auch längere "Prefixes" in einer halbwegs überschaubaren Zeit finden, für welche die CPU "eine halbe Ewigkeit" brauchen würde, weshalb ich mich in diesem Guide für profanity entschieden habe. Meine RX480 hat für die Adresse 0x123456789c7588583381BaB463C81e88A4BfFcEd ungefähr 15 Minuten gebraucht, wobei dies auch vom Glück und natürlich von der Leistung der Grafikkarte abhängt.
_______________________________________________________________________________ _______________________________________________________

Zuerst benötigen wir den aktuellen Release von profanity, welchen wir unter folgendem Link finden:
https://github.com/johguse/profanity/releases

Aktuell (12.03.2019) ist dies Version 1.22, also downloaden wir "profanity-v1.22-x64.zip".
Direkt-Link: https://github.com/johguse/profanity/releases/download/v1.22/profanity-v1.22-x64.zip



Anschließend erstellen wir der Einfachheit halber auf unserer C:\ Partition den Ordner "profanity" und entpacken den Inhalt der .ZIP-Datei in den soeben erstellten Ordner.
Nun starten wir eine Eingabeaufforderung indem wir "CMD" in die Windows-Suche eingeben oder mit der Tastenkombination [WINDOWS] + [R] den Ausführen-Dialog öffnen und dort mit der Eingabe von "CMD" die Eingabeaufforderung starten.



In der Eingabeaufforderung wechseln wir mit der Eingabe von "cd C:\profanity" in den vorher erstellten Ordner, in welchem sich der Inhalt der heruntergeladenen .ZIP-Datei befindet.



Jetzt können wir damit beginnen, unsere Adresse zu generieren (es ist empfehlenswert, vorher die Internetverbindung zu trennen).
Gehen wir einmal davon aus, wir möchten eine Adresse im "Format" 0xDEADBEEFxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, also mit dem Prefix "DEADBEEF" generieren, so geben wir folgenden Befehl in die Eingabeaufforderung ein:

Code:
profanity.exe --matching DEADBEEF
Anmerkung: Meine Grafikkarte war als "GPU1" indexiert, weshalb ich die nicht vorhandene "GPU0" mit dem Parameter "-s 0" überspringen musste (=> profanity.exe -s 0 --matching DEADBEEF)



Nun heißt es abwarten, bis eine passende Adresse gefunden wurde.



Mit [STRG]+[C] können wir die Ausführung beenden - nun müssen wir nur noch unseren Private-Key notieren (oder kopieren + einfügen) [2] und wir sind fertig.

Neben der Erstellung von Adressen mit eigenem Prefix bietet profanity auch weitere Optionen wie z.B. Adressen aus möglichst vielen Zahlen/Buchstaben usw. - weitere Informationen habe ich von der Github-Seite übernommen:

Code:
usage: ./profanity [OPTIONS]

  Basic modes:
    --benchmark             Run without any scoring, a benchmark.
    --zeros                 Score on zeros anywhere in hash.
    --letters               Score on letters anywhere in hash.
    --numbers               Score on numbers anywhere in hash.
    --mirror                Score on mirroring from center.

  Modes with arguments:
    --leading  Score on hashes leading with given hex character.
    --matching Score on hashes matching given hex string.

  Advanced modes:
    --contract              Instead of account address, score the contract
                            address created by the account's zeroth transaction.
    --leading-range         Scores on hashes leading with characters within
                            given range.
    --range                 Scores on hashes having characters within given
                            range anywhere.

  Range:
    -m, --min <0-15>        Set range minimum (inclusive), 0 is '0' 15 is 'f'.
    -M, --max <0-15>        Set range maximum (inclusive), 0 is '0' 15 is 'f'.

  Device control:
    -s, --skip      Skip device given by index.
    -n, --no-cache           Don't load cached pre-compiled version of kernel.

  Tweaking:
    -w, --work       Set OpenCL local work size. [default = 64]
    -W, --work-max   Set OpenCL maximum work size. [default = 1048576]
    -i, --inverse-size      Set size of modular inverses to calculate in one
                            work item. [default = 256]
    -I, --inverse-multiple  Set how many above work items will run in
                            parallell. [default = 65536]

  Examples:
    ./profanity --leading f
    ./profanity --matching dead
    ./profanity --matching badXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXbad [Anmerkung: Hat bei mir nicht funktioniert]
    ./profanity --leading-range -m 0 -M 1
    ./profanity --leading-range -m 10 -M 12
    ./profanity --range -m 0 -M 1
    ./profanity --contract --leading 0

  About:
    profanity is a vanity address generator for Ethereum that utilizes
    computing power from GPUs using OpenCL.

    Author: Johan Gustafsson
    Beer donations: 0x000dead000ae1c8e8ac27103e4ff65f42a4e9203
Quelle: https://github.com/johguse/profanity



Freue mich über Verbesserungsvorschläge und stehe gerne für Fragen zur Verfügung.




_______________________________________________________________________________ _______________________________________________________
[1] Mit vanity-eth.tk habe ich mich nicht genauer befasst, aber laut deren Github lässt sich das ganze auch offline durchführen:
Quote
Once the web page is loaded, you can turn off the internet and continue playing, it will work seamlessly
You can also download the latest build of Vanity-ETH here and use it on a completely offline computer
The code is 100% open source and available on Github. You can review it as much as you want before using it
Quelle: https://github.com/bokub/vanity-eth

[2] Hier noch ein Guide, wie man sich mit MyEtherWallet einen verschlüsselten Private-Key (=Keystore-File) erstellen kann:
[Guide] Keystore-File aus Private-Key oder Mnemonic Phrase erstellen
Die Adresse kann ebenfalls für Offline-Transaktionen genutzt werden:
[Guide] MyEtherWallet Offline-Transaktionen [Alternative zum Hardware-Wallet]


© Nestade 30.03.2019