Czym jest standard ...
 
Powiadomienia
Wyczyść wszystko

Czym jest standard BIP39 dla fraz seed?

3 Wpisy
3 Użytkownicy
0 Reactions
37 Widoki
(@groznymaz)
New Member
Połączone: 3 tygodnie temu
Wpisy: 0
Rozpoczynający temat  

Siema ekipa. Mam takie małe pytanko do wyjadaczy tematu. Ostatnio zacząłem trochę głębiej kminić temat bezpieczeństwa moich krypto i non stop odbijam się od jednego pojęcia. Mianowicie: standard BIP39 dla fraz seed.

Zakładałem niedawno kolejny portfel sprzętowy i jak zwykle na ekranie wypluło mi te magiczne słowa do zapisania na kartce. Wiadomo, podstawowa zasada to bezpieczny backup portfela offline. Do tej pory po prostu grzecznie przepisywałem ten ciąg znaków bez większego myślenia, ale teraz naszła mnie grubsza rozkmina. Chcę wiedzieć, jak to w ogóle dziala pod spodem. Z tego co zdążyłem wyczaić na jakichś zagranicznych grupkach, to ten cały protokół BIP39 to jest po prostu jakaś ustandaryzowana lista słów. Ale czym jest tak naprawde ta fraza odzyskiwania w tym konkretnym formacie z technicznego punktu widzenia?

Czy to faktycznie znaczy, że absolutnie każdy liczący się portfel kryptowalutowy, niezależnie czy to Ledger, sprzętowy Trezor, czy jakaś losowa apka na telefon typu Exodus, korzysta dokładnie z tego samego, jednego słownika? Podobno tych słów seed w oficjalnym zestawieniu jest równo 2048 i ani jednego więcej. Prawda to?

Zastanawia mnie też taka sytuacja awaryjna. Załóżmy, że mój portfel fizyczny wpada do jeziora. Czy napewno mogę wtedy po prostu wziąść swoją mnemoniczną frazę zabezpieczającą i wpisać ją w kompletnie inny, konkurencyjny sprzęt? Czy to właśnie ten standard BIP39 gwarantuje mi w 100% kompatybilność i pewność, że moje prywatne klucze do portfela wygenerują się bez żadnego błędu u innego producenta? Bo trochę się cykam, że jak kupię urządzenie innej firmy, to mi po prostu nie odczyta mojego backupu.

Druga sprawa, która totalnie nie daje mi spokoju, to kwestia wyboru między 12 a 24 słowami. Czy w obu tych przypadkach mówimy dokładnie o tym samym standardzie generowania seeda? Wiadomo, że 24 słowa odzyskiwania brzmią solidniej dla laika, ale czy to realnie zwiększa bezpieczeństwo przed złamaniem naszego klucza głównego do krypto?

Gdzieś mi też mignęło info o czymś takim jak passphrase, potocznie nazywanym 25. słowem, które dodaje się do bazowej listy. Czy to też wchodzi w zakres specyfikacji BIP39, czy to już kompletnie inna bajka nakładana na nasz seed phrase w celu dodatkowej ochrony przed fizycznym włamaniem?

Sorki za może trochę lamerskie pytania, ale wole dobrze zrozumieć podstawy, zanim przerzucę na ten docelowy adres grubszy hajs z giełdy. Chciałbym po prostu wiedzieć, jaka technologia dokładnie chroni moje środki. Jakby ktoś obeznany w temacie mógł mi wytłumaczyć na chłopski rozum, jak taka fraza seed jest przeliczana na dostęp do blockchaina i dlaczego akurat ten konkretny standard stał się takim rynkowym klasykiem, to będę mega wdzięczny. Z góry wielkie dzięki za pomoc!



   
Cytat
(@wielkiduch)
New Member
Połączone: 3 tygodnie temu
Wpisy: 0
 

Siema stary, bardzo dobrze że pytasz, bo z krypto to jest tak, że jak sam nie ogarniesz swoich kluczy, to prędzej czy później zostaniesz w samych skarpetkach. Wrzucanie grubszego hajsu z giełdy na ślepo na nieznany sprzęt to proszenie się o kłopoty, więc wielki szacun, że w ogóle próbujesz rozkminić czym jest standard BIP39 dla fraz seed od tej technicznej strony. Siadaj wygodnie, bo trochę tego jest do przerobienia, ale postaram ci się to wyłożyć totalnie na chłopski rozum. Wiadomo, bez zbytniego nerdowania i wchodzenia w matematykę wyższą, chociaż trochę technikalii z kryptografii musi wjechać, żebyś w pełni zczaił temat.

Zacznijmy od podstaw, czyli co to w ogóle za zwierz i z czym to się je. Ten cały standard BIP39 dla fraz seed (pełna nazwa to Bitcoin Improvement Proposal 39) to jest zajebiscie sprytny sposób na to, żeby komputery i ludzie mogli się dogadać w kwestii przechowywania wielkich, skomplikowanych liczb. Wyobraź sobie, że twój portfel sprzętowy podczas pierwszej konfiguracji losuje sobie twój absolutnie główny klucz kryptograficzny. Ten klucz (tzw. entropia) to po prostu gigantyczny, losowy ciąg zer i jedynek. Dla ciebie, jako człowieka, to jest totalna czarna magia. Przepisanie 256 bitów w formie zer i jedynek na kartkę papieru bez zrobienia błędu graniczy z cudem. I tu właśnie wjeżdża protokół BIP39 cały na biało. Algorytm bierze ten skomplikowany ciąg maszynowy, dzieli go na mniejsze równe kawałki, dokleja do tego na końcu małą sumę kontrolną (taki sprytny mechanizm weryfikujący, czy na pewno nie pomyliłeś się przy wpisywaniu liter) i na podstawie tych małych kawałków przypisuje do każdego z nich jedno słowo z konkretnej listy. Dzięki tej magii pod spodem, zamiast chorego kodu dostajesz do zapisania swoją mnemoniczną frazę zabezpieczającą, którą łatwo zanotować długopisem, wyryć w stali i przede wszystkim bezbłędnie odczytać po latach.

Jeśli chodzi o twój dylemat ze słownikiem, o którym pisałeś na wstępie – tak, dobrze wyczaiłeś na tych zagranicznych grupkach. Oficjalna lista słów BIP39 składa się dokładnie z 2048 angielskich wyrazów. Ani jednego więcej, ani jednego mniej. Co najlepsze, te słowa wcale nie są przypadkowe i nie wybierał ich nikt na chybił-trafił. Zostały dobrane na maksa precyzyjnie tak, żeby pierwsze cztery litery każdego z nich były absolutnie unikalne w całym tym 2048-elementowym zestawieniu. Więc nawet jak wpisujesz na jakimś małym ekraniku w Ledgerze czy Trezorze tylko litery "a-b-a-n", to urządzenie już automatycznie wie, że chodzi ci o słowo "abandon" i samo ci je podpowiada. To mega ułatwia sprzętowe odzyskiwanie krypto w stresujących sytuacjach. I odpowiadając wprost na twoje pytanie: tak, praktycznie każdy liczący się sprzętowy portfel kryptowalutowy i większość tych popularnych apek na telefon typu Trust Wallet, Exodus czy BlueWallet, korzysta pod maską dokładnie z tego samego, jednego słownika. Są co prawda jakieś niszowe próby tworzenia list w innych językach (jakieś japońskie czy hiszpańskie słowa seed), ale w środowisku uważa się to za proszenie się o kłopoty i absolutnie wszyscy używają angielskiej, oficjalnej listy słów seed dla zachowania żelaznej kompatybilności.

No i teraz płynnie przechodzimy do twojego scenariusza z jeziorem, który spędza sen z powiek wielu początkującym hodlerom. Portfel fizyczny poszedł na dno, masz tylko swój backup portfela offline schowany bezpiecznie na kartce. Czy jak weźmiesz swoją frazę odzyskiwania i wklepiesz ją w sprzęt totalnie innej firmy, to wszystko zagra i wygeneruje poprawny dostęp do blockchaina? Odpowiedź brzmi: w 99% przypadków tak, twoje środki są bezpieczne, ale musisz kumać jedną kluczową rzecz, o której rzadko mówią w poradnikach na YT. Sam ustandaryzowany protokół BIP39 odpowiada TYLKO i wyłącznie za wygenerowanie tego głównego ziarna z entropii (seeda). Ale żeby z tego ziarna wyrosło drzewo z twoimi właściwymi adresami w sieci i z prywatnymi kluczami do konkretnych coinów, twój nowy portfel używa tak zwanych ścieżek derywacji (to są osobne standardy jak BIP44, BIP49 czy BIP84 dla Bitcoina).

Zazwyczaj czołowi gracze na rynku mają te ścieżki ustawione domyślnie dokładnie tak samo. Ale zdarzają się wyjątki i stare apki mogą korzystać z innych ścieżek. Jeśli więc kupisz nowiutkie urządzenie, wpiszesz swój mnemoniczny ciąg słów poprawnie, a na ekranie zobaczysz okrągłe zero zamiast swoich grubych tysięcy, to nie dostawaj zawału. To wcale nie znaczy, że ktoś ci wyczyścił konto, ani że seed jest uszkodzony. To znaczy poprostu, że twój nowy portfel szuka twoich środków na innej gałęzi kryptograficznego drzewa. Wystarczy wtedy odpalić zaawansowane ustawienia ścieżki derywacji (np. łącząc sprzęt przez bezpieczną apkę typu Electrum czy Sparrow Wallet) i wpisać ścieżkę z twojego starego sprzętu, a twoje monety magicznie pojawią się na ekranie. Standard BIP39 dla fraz seed daje ci absolutną pewność, że korzeń portfela i twój klucz główny są niezniszczalne i zawsze te same.

Dobra, lecimy z kolejną rozkminą, bo widzę że kminisz konkretnie. 12 czy 24 słowa? Stary, to jest chyba najczęstsza kłótnia nerdów na krypto forach zaraz po pytaniach o to, kiedy hossa. Z punktu widzenia specyfikacji formatu generowania seeda to jest technologicznie dokładnie to samo, tylko różni się długością wyjściowej entropii. 12 słów to jest 128 bitów bezpieczeństwa, a 24 słowa to 256 bitów bezpieczeństwa. Brzmi matematycznie, więc powiem ci tak: fizyczne złamanie twoich 12 słów metodą prób i błędów (brute force) przy użyciu obecnej i przewidywanej mocy obliczeniowej wszystkich komputerów na świecie zajęłoby miliardy lat. 12 słów to jest już bariera nie do przejścia. 24 słowa odzyskiwania to jest potężny, gigantyczny overkill. Producenci portfeli sprzętowych często dają 24 słowa jako ustawienie domyślne, bo to po prostu fajniej i bezpieczniej wygląda marketingowo. Daje to użytkownikom złudzenie, że są dwukrotnie trudniejszym celem. Prawda jest taka, że przy ustawianiu seeda z 12 słów jest dużo mniejsza szansa, że pomylisz się przy przepisywaniu ich na swoją blachę. Obydwie opcje zabezpieczą twoje prywatne klucze do portfela tak samo pancernie przed atakiem hakerów.

Na koniec zostawiłeś sobie najgrubszy temat, czyli to mityczne 25. słowo. I tu rozwiewam twoje wątpliwości: TAK, passphrase to jest oficjalna, integralna część tego, jak zaprojektowano standard BIP39 dla fraz seed od samego początku! To nie jest żaden rynkowy wymysł, tylko potężne narzędzie ochronne. Technicznie działa to tak, że to twoje dodatkowe hasło jest doklejane jako tak zwana sól kryptograficzna (salt) do twoich bazowych słów (tych 12 lub 24) i dopiero wtedy całość jest mielona przez algorytm. To jest absolutny game changer jeśli chodzi o wektory ataku zwanego w slangu "$5 wrench attack".

Dlaczego? Bo załóżmy, że ktoś wbija ci na chatę z łomem i znajduje twoją ukrytą w sejfie metalową płytkę z bazową frazą seed. Cieszy się, ucieka, wklepuje to u siebie... i ma dostęp tylko do pustego, fałszywego portfela. Bez tego 25. słowa (które masz zaszyfrowane w głowie, albo zapisane i zakopane w ogródku babci w innym województwie) twój backup portfela offline generuje kompletnie inne klucze prywatne. Co więcej, do tego samego zestawu słów mnemonicznych możesz sobie podpiąć kilka kompletnie różnych passphrase'ów i stworzyć tzw. portfele pułapki (plausible deniability). Jak ktoś fizycznie zmusza cię do odblokowania Ledger'a, to wpisujesz passphrase do portfela pułapki, gdzie trzymasz na odczepne np. 200 dolców w jakichś gównocoinach, a cały twój życiowy dorobek i grube bitcoiny siedzą niewidzialne pod innym 25. słowem na tym samym seedzie.

Jeszcze słowo o tym jak to się ma do samego blockchaina, bo o to też pytałeś. Musisz zrozumieć jedną, fundamentalną zasadę krypto – twoje kryptowaluty NIE SĄ zapisane w portfelu sprzętowym ani w twojej frazie seed. Twoje krypto żyje non-stop w rozproszonej bazie danych, czyli w blockchainie gdzieś w internecie. Twój standard BIP39 dla fraz seed i te magiczne słowa to jest tylko i wyłącznie "wzór" na wyprodukowanie kluczy, które pasują do kłódek zabezpieczających twoje srodki na tymże blockchainie.

Więc zbierając to wszystko do kupy (sorki że się tak masakrycznie rozpisałem, ale temat to jest studnia bez dna) - ten cały standardowy format fraz odzyskiwania nie wziął się znikąd. Ekipa koderów stworzyła protokół BIP39, żeby rozwiązać największy ból tyłka na wczesnym etapie krypto, czyli fakt, że zwykli ludzie notorycznie tracili dostęp do kasy, bo gubili dziwne kody alfanumeryczne. Przerobienie tego na słownik ustandaryzowanej listy słów sprawiło, że każdy śmiertelnik może bezpiecznie zarchiwizować swój majątek w całkowitym offlinie.

Tylko błagam, pamiętaj o jednym – nigdy przenigdy, pod żadnym pozorem nie rób zrzutów ekranu, nie rób zdjęć telefonem i nie zapisuj swojej mnemonicznej frazy w notatniku w chmurze Google czy tam Apple. Jak masz konkretny hajs w grze, to w grę wchodzi tylko fizyczny, bezpieczny backup portfela offline. Karta papieru, ołówek i metalowe płytki to twoi jedyni przyjaciele.

Mam nadzieję, stary, że teraz już czaisz ten temat bez problemu i wiesz, czym z technicznego i czysto praktycznego punktu widzenia jest technologia, która pilnuje twoich środków na emeryturę. Jak masz jeszcze jakieś wątpliwości albo coś jest niejasne w kwestii ścieżek derywacji czy ustawiania passphrase, to śmiało wal tutaj w wątku. Kto pyta nie błądzi i lepiej zadać sto durnych pytań, niż przez jeden głupi błąd stracić całą kase i skończyć z płaczem. Z fartem i udanego, bezpiecznego przerzucania środków z giełdy na zimny portfel!



   
OdpowiedzCytat
(@anonimowykabel)
New Member
Połączone: 3 tygodnie temu
Wpisy: 0
 

Zią, kolega wyżej rozwalił system i wyłożył ci techniczne mięso na tacy tak dobrze, że nie ma co zbierać. Ale dorzucę od siebie jeszcze trzy grosze z czysto praktycznego punktu widzenia. Bo to super sprawa wiedzieć dokładnie czym jest standard BIP39 dla fraz seed od strony linijek kodu i kryptografii, ale prawda jest taka, że w realnym życiu ludzie i tak najczęściej wykładają się na najgłupszych, fizycznych błędach.

Zobacz, ten cały ustandaryzowany protokół BIP39 daje ci zajebistą pewność, że jeśli sprzęt wpadnie do jeziora, to odzyskasz hajs na dowolnym innym urządzeniu z tym standardem. Tylko co ci po tej pełnej kompatybilności, jak twoja kartka papieru z backupem portfela offline zgnije gdzieś w piwnicy od wilgoci, zje ją pies, albo po prostu wyblaknie ci cienkopis? Papier jest spoko na samym początku zabawy, jak masz w krypto równowartość dobrej kolacji. Ale jak wjeżdża grubszy kapitał, to musisz bezwzględnie zainwestować w stalówki (tzw. cryptosteel, billfodl czy inne metalowe płytki). Wybijasz te swoje 12 lub 24 słowa mnemoniczne punktakiem w kawałku nierdzewnego metalu. Dlaczego to takie ważne? Bo jak ci chata spłonie w pożarze, to w zgliszczach znajdziesz swój główny klucz kryptograficzny w absolutnie nienaruszonym stanie.

Druga bardzo ważna sprawa, o której mało kto trąbi świeżakom. Kiedykolwiek będziesz robił to sprzętowe odzyskiwanie krypto w jakiejś sytuacji awaryjnej, nigdy w życiu nie wklepuj swojej frazy odzyskiwania na klawiaturze od komputera! Serio, to jest najczęstszy wektor ataku. Twój komp może byc zainfekowany jakimś złośliwym oprogramowaniem albo keyloggerem, o którym nawet nie masz pojęcia, bo wczoraj ściągałeś jakiegoś lewego pdfa z neta. Zawsze wprowadzaj oficjalną listę słów seed (z tego uniwersalnego słownika 2048 wyrazów) używając tylko i wyłącznie fizycznych przycisków na samym portfelu sprzętowym. To jest okropny ból dupy klikać literka po literce dwoma guzikami na małym ekraniku Ledgera czy Trezora, ale tylko wtedy masz stuprocentową pewność, że twoje ziarno nigdy nie opuściło bezpiecznego chipa i nie wyciekło w postaci czystego tekstu na zewnątrz.

I jeszcze taka mała rozkmina a propos samego formatu generowania seeda i przyszłości. Pytasz o te standardy, to musisz wiedzieć, że chociaż protokół BIP39 to absolutny fundament i branżowy klasyk, to technologia ciągle idzie do przodu. Ostatnio w nowszych portfelach pojawia się coś takiego jak SLIP39, czyli tak zwany Shamir Backup. To bardzo fajna opcja, jeśli panicznie boisz się, że ktoś znajdzie twoją jedną, główną blachę. Zamiast pojedynczej mnemonicznej frazy zabezpieczającej, sprzęt wypluwa ci np. trzy osobne listy słów. Żeby wygenerować prawidłowy dostęp do blockchaina i dokopać się do swoich prywatnych kluczy do portfela, potrzebujesz fizycznie połączyć ze sobą powiedzmy dowolne dwie z tych trzech list. Mega użyteczne, jak chcesz rozdać fragmenty dostępu zaufanej rodzinie, bez dawania kumukolwiek od razu pełnej kontroli nad swoimi środkami. W starym, dobrym standardzie BIP39 jak ktoś znajdzie twoją frazę, to od razu ma wszystko (chyba że masz ustawione mocne 25 słowo, o czym fajnie pisał przedmówca).

Zatem spinając to wszystko klamrą – ogarniaj bezpieczeństwo z głową. Sam fakt, że przed przelaniem środków próbujesz rozkminić ten cały mnemoniczny ciąg i z czym to się w ogóle je, to już gigantyczny plus dla ciebie. Większość normików na giełdach po prostu klika "dalej, akceptuję", robi fotę seeda smartfonem i wstawia na iCloud, a potem płaczą na grupach na fejsie, że jakiś bot im wyczyścił konto do zera. Kup dobra stal, wyryj te słowa bez pośpiechu, schowaj w bezpiecznym, nikomu nieznanym miejscu i śpij spokojnie jak szef. Powodzenia stary z tym grubym hajsem, niech rośnie!



   
OdpowiedzCytat
Udostępnij: