Jak wydobyć bitcoiny z Bitcoina? Klucze do niektórych portfeli leżą na ulicy
Ostatni miesiąc w dziedzinie kryptowalut był pod względemfinansowym czystym szaleństwem, w pewnym momencie jeden bitcoin wartbył 11 tysięcy dolarów. Nasłuchaliśmy się więc komentarzy o„największej bańce w historii” (mimo że bańka kredytówhipotecznych subprime z zeszłej dekady była o dwa rzędy wielkościwiększa), a teraz, gdy doszło do nieuchronnej korekty, spadku ookoło 10%, słyszymy już o armageddonie.Gdy jednak spekulanci próbują jak najwięcej wycisnąć z obrotubitcoinami, inni najwyraźniej wyciągają pieniądze z samegoBitcoina – to jest samej rozproszonej sieci transakcyjnej. To każezapytać – czy kryptowaluty są bezpieczne? I takie właśniepytanie wyłania się po publikacji pewnego badacza, który odkrył,że niekiedy można sięgnąć po bitcoiny, które nie należą donas.
01.12.2017 | aktual.: 14.12.2017 14:29
Sejf mocny, tylko klucze powszechnie dostępne
Jak wiadomo, każdy może uzyskać dostęp do każdego portfelabitcoinowego – o ile posiada odpowiedni klucz prywatny. To właśnieon chroni zgromadzone środki, to on jest potrzebny do przeniesieniaich na inny adres. Przestrzeń możliwych adresów bitcoinowych, i coza tym idzie, powiązanych z nimi kluczy jest ogromna. Przyzastosowaniu standardowej funkcji skrótu RIPEMD-160wynosi 2160 możliwych adresów, tj. około 1,462×1048. Co do rzęduwielkości, to mniej więcej tyle, ile atomów ma nasza planeta.
Prawdopodobieństwo samodzielnego wygenerowania klucza prywatnegodo konta, które należy do kogoś innego i na którym znajdują siębitcoiny jest więc znikome – gdyby ktoś chciał w ten sposóbkraść kryptowaluty, to lepiej by wziął się za granie wtotolotka, w końcu szansa trafienia zwycięskiej kombinacji w tejgrze hazardowej to raptem 1:1,39×106. Oczywiście tak jest, gdyklucz prywatny powstaje z całkowicie losowych danych, tak jakpowinien. A co jeśli z tą losowością jest coś nie tak?
W sieci pojawiły się wyznaniapewnego anonimowego badacza, który opisuje swoje doświadczenia ztworzeniem prywatnych kluczy bitcoinowych z przeróżnych słów ifraz. Odkrył on, że ludzie od dawna już eksperymentują ztworzeniem takich właśnie kluczy – np. wygenerowano adresy zewszystkich słów z uniksowego słownika /usr/dict/words,na te adresy przesyłane były niewielkie kwoty, dostępne de factodla każdego. Na tej właśnie bazie powstał serwis brainwallet.org,pozwalający stworzyć sobie portfel bitcoinowy, z kluczemwygenerowanym z pamiętanej przez użytkownika frazy.
Ile jest takich możliwych do odkrycia skarbów, przelanych naadresy powiązane z możliwymi do łatwego odkrycia kluczamiprywatnymi? By to odkryć, badacz zautomatyzował swoje poszukiwania.Napisał program, który skanował wszystkie bloki w blockchainie iodnotowywał wszystkie publiczne adresy w nich użyte. Nazgromadzonych danych przeprowadził kolejno cztery eksperymenty zwyszukiwaniem prywatnych kluczy:
- wygenerowanych ze znanego haszu bloku,
- wygenerowanych z korzenia drzewa haszy (merkle root)
- wygenerowanych z wielokrotnych iteracji funkcji haszującej napopularnych słowach,
- wygenerowanych z funkcji skrótu na publicznym adresie
Wyniki ostatniego z eksperymentów okazały się zaskakujące. Nietylko powstało wiele tak wygenerowanych kluczy, ale były onewykorzystywane przez kogoś do pozyskiwania bitcoinów z niektórychusług internetowych – i to przynajmniej od 2014 roku. W łańcuchubloków odnotowano transakcje przechodzące między takimi właśnieadresami, najwyraźniej przeprowadzane przez stronę trzecią.
Automatyczne połowy
Badacz stworzył własnego bota, który miał właśnienasłuchiwać takich kont, do których prywatne klucze zostaływygenerowane z funkcji skrótu na istniejącym publicznym adresie.Bot ruszył… i w ciągu pierwszych 48 godzin nagle na jednym ztakich adresów pojawiło się 9,5 BTC. Pierwszy raz kwota tejwielkości. Badacz nie zdążył jednak sam zaliczyć dla tejtransakcji potwierdzeń, ktoś po 15 minutach bitcoinyprzetransferował dalej.
W kolejnych dniach bot wychwycił transfery na mniejsze kwoty, asam odkrywca zauważył coś jeszcze – używane są też adresy zprywatnymi kluczami wygenerowanymi z identyfikatorów transakcji.Wyglądało to tak, jakby ktoś wykorzystywał informacje z samegoblockchaina, aby zapewnić, że łatwo będzie odkryć prywatneklucze dla adresów, na które przelewane są bitcoiny.
Znalezione... i oddane
Prowadzone badania dotknęły bezpośrednio pewnego użytkownika,używającego na reddicie pseudonimu fitwear.12 listopada badacz odkrył, że na jeden z kontrolowanych przezniego adresów trafiło 9 bitcoinów. Nikt nie zgłaszał utratytakiej kwoty, więc zdecydował się z adresu tego przelać niewielkąkwotę na konto pewnej gry, by transakcja została publicznienamierzona. W tym samym czasie fitwear zgłosił, że w tajemniczysposób z jego konta w portfelu na blockchain.info zniknęło właśnie9 BTC, przelane na nieznany adres – właśnie ten, którykontrolował też nasz anonimowy badacz.
Skontaktował się on z fitwearem prywatnie i oddał mu niemalpełną kwotę (minus to, co wysłał na konto gry). Potwierdziłosię przy okazji, że fitwear nie popełnił ze swojej stronyżadnych błędów, jeśli chodzi o bezpieczeństwo. Tak samo niewyglądało na to, by blockchain.info zrobił coś źle, by miałbłąd w oprogramowaniu po swojej stronie. Na pewno też nie było todziałanie malware, które zmodyfikowałoby funkcję generowaniaklucza. Nie – ten klucz fitweara został zaimportowany do portfelana blockchain.info w sierpniu tego roku z adresu na papierowymportfelu, a następnie przelano na niego testową transakcję. I towłaśnie ten klucz musiał wcześniej zostać wygenerowany przezniezaufaną trzecią stronę.
Bezpieczeństwo ze znakiem zapytania
Co to właściwie znaczy dla Bitcoina? Nic istotnego. Sama siećjest tak samo bezpieczna jak była wcześniej. Czy jednakoprogramowanie używane do korzystania z bitcoinów jest bezpieczne?To już zupełnie inna kwestia. Nie jest wykluczone, że mogłoistnieć spreparowane oprogramowanie, które celowo generowało słabeprywatne klucze, możliwe później do łatwego namierzenia.
Administratorzy blockchain.info przeprowadzili pełenaudyt po swojej stronie, odkrywając jeszcze kilka innych takichsłabych adresów, do których klucze mogłyby być w posiadaniustrony trzeciej – gwarantują jednak, że nie pochodzą one z ichoprogramowania. Śledztwo w toku, a szczęśliwym posiadaczombitcoinów można zasugerować korzystanie jedynie z zaufanego,otwartego oprogramowania – najlepiej desktopowego, nie mobilnego. Zostatnich badań przeprowadzonych przez ekspertów z firmy High-TechBridge wynika bowiem, że 90% aplikacji mobilnych używanych dozarządzania kryptowalutami pełna jest lukbezpieczeństwa.