Imienny adres BTC – generujemy adres BTC z własną nazwą

Każdy kto miał do czynienia z przelewami BTC prędzej czy później natknął się na adres typu 1NAZWAlosowyciągznaków. Przykładem takiego adresu jest ten gromadzący fundusze na obronę Rossa Williama Ulbrichta: 1Ross5Np5doy4ajF9iGXzgKaC2Q3Pwwxv . Jak zrobić taki adres?

Wygenerowanie takiego adresu przypomina łamanie haseł metodą siłową. Tworzymy klucz prywatny, z niego tworzymy klucz publiczny, a następnie adres. Operację powtarza się tak długo, aż uzyska adres z interesującym nas ciągiem znaków. Bez pomocy odpowiedniego oprogramowania jest to ciężkie i żmudne zadanie. Na szczęście na Githubie jest odpowiedni program, który nas wyręczy w poszukiwaniu adresu. Vanitygen został napisany w języku C i można go uruchomić na windowsie, linuxie i os.

Program ściągniemy z Githuba. Po ściągnięciu rozpakowujemy program i przechodzimy do folderu z rozpakowanymi plikami. W systemie operacyjnym Linux wpisujemy:

$make (instaluje biblioteki)
$ ./vanitygen 1DarkN (ta komenda generuje adres)
W trakcie obliczeń pojawi się informacja o szacowanym czasie pozostałym do wygenerowania adresu
 z szukaną frazą:
Difficulty: 259627881
[560.72 Kkey/s][total 13597184][Prob 5.1%][50% in 4.9min]
Po skończonych obliczeniach pojawi się nasz klucz prywatny i adres z wymarzoną nazwą:
Difficulty: 259627881
Pattern: 1DarkN                                                                
Address: 1DarkN7Pg2vJoEZRUonq6D4roJ3dYtXuU9
Privkey: 5JThZWnjAjY3eT6kxiziaerqitK3qAtmEAudR2GQU64Dyz9sMWK

Klucz prywatny kopiujemy do swojego ulubionego portfela i już możemy używać adresu z naszą ulubioną nazwą. W Vanitygen dla Windows sprawa wygląda bardzo podobnie. Po ściągnięciu programu rozpakowujemy go, przy pomocy wiersza poleceń przechodzi do folderu z plikiem vanitygen.64.exe i w wierszu poleceń wpisujemy vanitygen.64.exe 1DarkN.  Po chwili będziemy mieć wygenerowany klucz prywatny razem z odpowiednim adresem. Program oferuje wiele innych możliwości w tym wygenerowanie adresów dla innych kryptowalut.

Jak to wszystko wygląda czasowo? Nie będę się rozpisywał dokładnie o sprzęcie, podam tylko rząd czasowy dla przeciętnych pecków/laptopów na naszych biurkach:

  1. 1D – milisekundy
  2. 1Da – kilkadziesiąt milisekund
  3. 1Dar – sekundy
  4. 1Dark – poniżej minuty
  5. 1DarkN – kilka minut
  6. 1DarkNe – od kilku do kilkunastu godzin
  7. 1DarkNet – od kilku tygodni do kilku miesięcy
  8. 1DarkNetW – od kilku do kilkunastu lat
  9. 1DarknetWi – setki lat
  10. 1DarknetWin – tysiące lat…

Czas znalezienia odpowiedniego adresu silnie zależy od długości nazwy jaka ma znaleźć się w tym adresie. Z każdym dodatkowym znakiem, czas ten drastycznie wzrasta. Jednak po wielu testach zauważyliśmy coś dziwnego… Czas na znalezienie 5-cio znakowego rozwiązania to kilka minut. Jest jednak pewien wyjątek. Spróbujcie odnaleźć adres zaczynający się od 1oLcia. Trudność wynosi 15318045009, a trudność dla 1DarkN to zaledwie 259627881. Dlaczego trudność urosła 59 razy pomimo tej samej liczby znaków?

Może Ci się również spodoba

4 komentarze

  1. pm7 napisał(a):

    To wynika ze sposobu w jaki klucz publiczny jest przetwarzany na adres. Różne ciągi tej samej długości mogą oznaczać różnej długości część hasha klucza publicznego, a oczywiście im dłuższy fragment trzeba złamać, tym dłużej to trwa.
    https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses
    https://en.bitcoin.it/wiki/Base58Check_encoding

  2. DeckTone napisał(a):

    Mam pytanie. Program do generowania kluczy używa CPU, czy GPU?

  3. Seba napisał(a):

    Mam nadzieję, że użytkownicy tego narzędzia będą pamiętać o generowaniu nowych adresów do każdej transakcji.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *