seed phrase (fraza odzyskiwania)
| Po angielsku | seed phrase (fraza odzyskiwania) i self-custody |
|---|---|
| Którą formą pisać | po angielsku Polski odpowiednik istnieje, ale w praktyce nikt tak nie pisze. Zostaw angielski, polski trzymaj jako synonim. |
| Inne formy | fraza odzyskiwania · dane do odzyskania konta · 12/24 słowa odzyskiwania · seed |
| Kategoria | Kryptografia, tożsamość i uwierzytelnianie |
Seed phrase (fraza odzyskiwania) to ciąg zwykłych słów, z którego portfel kryptowalutowy odtwarza wszystkie swoje klucze prywatne. Standard BIP-39 opisuje ją jako kod mnemoniczny, czyli grupę łatwych do zapamiętania słów służącą do generowania portfeli deterministycznych [1]. Kto zna seed phrase, może odtworzyć portfel na dowolnym urządzeniu i przenieść środki. Dlatego przy samodzielnym przechowywaniu kryptowalut (self-custody) fraza jest jedynym i ostatecznym kluczem do majątku.
Jak działa
Portfel losuje entropię, a BIP-39 zamienia ją na słowa. Do entropii dołączana jest suma kontrolna wyliczona z jej skrótu SHA-256, a całość dzielona na grupy po 11 bitów; każda grupa wskazuje jedno słowo ze stałej listy 2048 słów [1]. Długość frazy zależy od ilości entropii.
Ze słów powstaje ziarno binarne. BIP-39 używa do tego funkcji PBKDF2, czyli KDF: hasłem jest fraza, solą napis „mnemonic” połączony z opcjonalnym dodatkowym hasłem, a funkcja wykonuje 2048 iteracji HMAC-SHA512 i zwraca 512-bitowe ziarno [1]. Z ziarna standard BIP-32 wyprowadza drzewo kluczy portfela hierarchicznego, który można współdzielić częściowo albo w całości, z możliwością wydawania środków albo bez niej [2].
Oprogramowanie portfela musi sprawdzić sumę kontrolną frazy i ostrzec, jeśli jest niepoprawna [1]; pozwala to wykryć pomyłkę przy przepisywaniu słów. Lista słów została tak dobrana, że do jednoznacznego rozpoznania słowa wystarczą pierwsze cztery litery, a pary podobnych słów, takie jak „build” i „built”, pominięto [1]. Standard zniechęca do list w innych językach niż angielski, bo większość portfeli obsługuje tylko listę angielską [1]. Przed wyliczeniem ziarna fraza jest normalizowana do postaci UTF-8 NFKD [1]. Opcjonalne dodatkowe hasło wchodzi do soli funkcji PBKDF2 [1], więc ta sama fraza z innym hasłem daje zupełnie inne ziarno i inny zestaw kluczy. BIP-39 zwraca uwagę, że każde hasło daje poprawny portfel, ale tylko właściwe otwiera ten, w którym są środki [1].
Konsekwencja jest prosta: klucze prywatne nie muszą być nigdzie przechowywane, bo zawsze można je odtworzyć z frazy. Ta sama cecha sprawia, że fraza jest celem ataków.
W WordPressie
Strony WordPress nie przechowują seed phrase, ale przejęte witryny służą do okradania portfeli ich odwiedzających. Sucuri w raporcie za pierwsze półrocze 2024 roku podaje, że skaner SiteCheck wykrył złośliwy kod typu drainer (wallet drainer) na 9966 zainfekowanych stronach [4]. Według raportu kampania Angel Drainer rozsyła takie wstrzyknięcia na tysiące przejętych witryn od stycznia 2024 roku [4].
Mechanizm drainera różni się od kradzieży frazy. Wstrzyknięty skrypt wyświetla fałszywe okno „Connect Wallet”, podając jako pretekst akceptację regulaminu, odbiór darmowych tokenów albo weryfikację portfela [4]. Po połączeniu portfela złośliwy kod opróżnia go przez podpisanie nieautoryzowanych transakcji przelewających środki na portfel atakującego [4]. Ofiara nie podaje więc frazy, tylko zatwierdza transakcję.
Dla właściciela strony wniosek jest taki sam jak przy innych infekcjach: nieoczekiwany skrypt w kodzie strony albo okno z prośbą o połączenie portfela na witrynie, która nie ma nic wspólnego z kryptowalutami, to wskaźnik kompromitacji (IoC). Pomagają monitorowanie integralności plików i regularne skanowanie.
Zagrożenia i skutki
Fraza daje pełną kontrolę nad środkami. Główne drogi kradzieży to:
- fałszywe strony i aplikacje. FBI w komunikacie z 3 czerwca 2025 roku opisuje fałszywe nagrody w postaci tokenów: link w notatce transakcji prowadzi do strony, która do „połączenia” portfela żąda danych logowania i zabezpieczeń, w tym seed phrase; te dane pozwalają przestępcy ukraść środki [3]. To odmiana phishingu.
- socjotechnika. Sekurak opisał ofiarę, która po oszukańczym telefonie zaakceptowała na telefonie prośbę dającą atakującym dostęp do konta Google, a w Zdjęciach Google miała zdjęcie seed phrase; portfel stracił 450 000 dolarów [5].
- fraza przygotowana przez sprzedawcę. Niebezpiecznik opisał sprzętowy portfel kupiony od sprzedawcy, który sam wygenerował klucz i dołączył go na karcie zdrapce; środki zniknęły, choć urządzenie leżało nieużywane [6].
- infostealer. Fraza zapisana w pliku, notatce albo zrzucie ekranu na komputerze jest dostępna dla złośliwego oprogramowania kradnącego dane.
Jak się bronić
FBI zaleca, by nie odpowiadać na prośby o hasła, seed phrase ani kody jednorazowe, jeśli kontaktu nie zainicjował sam użytkownik [3]. Oferty darmowych tokenów trzeba weryfikować u dostawcy przed podaniem jakichkolwiek danych [3]. Gdy ktoś podający się za pracownika firmy dzwoni albo pisze z prośbą o dane, FBI radzi samemu zadzwonić do firmy na zweryfikowany numer obsługi klienta [3]. Ten sam schemat wykorzystali oszuści opisani przez Sekuraka, którzy podawali się za pracowników Google [5]. Poza tym obowiązują zasady wynikające z budowy mechanizmu:
- frazę generuje własne urządzenie przy inicjalizacji; fraza dostarczona w pudełku oznacza, że zna ją ktoś inny [6];
- fraza nie trafia do chmury, galerii zdjęć ani notatek w telefonie [5];
- dodatkowe hasło z BIP-39 zmienia wynikowe ziarno [1], więc sama fraza bez niego nie odtworzy portfela;
- papierowa albo metalowa kopia pełni rolę kopii zapasowej i wymaga fizycznego zabezpieczenia.
Historia
Standard BIP-39 otrzymał numer 10 września 2013 roku i ma status wdrożonego [1]. Wcześniejszy BIP-32, opisujący portfele hierarchiczne deterministyczne, przypisano 11 lutego 2012 roku [2].
Przypisy
6- [1] BIP-0039: Mnemonic code for generating deterministic keys · Bitcoin Improvement Proposals
- [2] BIP-0032: Hierarchical Deterministic Wallets · Bitcoin Improvement Proposals
- [3] Cybercriminals Defraud Hedera Hashgraph Network Non-Custodial Wallet Users Through Nonfungible Token Airdrops Disguised as Free Rewards (I-060325-PSA) · FBI
- [4] SiteCheck Mid-Year 2024 Report · Sucuri
- [5] Hackerzy zadzwonili do niego z prawdziwego numeru Google… okradli go na blisko 2 000 000 PLN · Sekurak
- [6] Kupił sprzętowy portfel na kryptowaluty i został okradziony · Niebezpiecznik