149 / 736AIRGAP

Air-gapped Wallet

Portfel podpisujący poza komputerem online

Komputer przygotowuje płatność, a osobne urządzenie ją podpisuje. Co daje ten podział, co przenoszą kody QR i dlaczego nadal trzeba sprawdzać ekran.

Air-gapped Wallet podpisuje płatności na urządzeniu oddzielonym od zwykłej komunikacji sieciowej z komputerem lub telefonem online. Klucze prywatne mają pozostać w tym środowisku, a projekty płatności i podpisy są przenoszone w kontrolowany sposób, na przykład kodem QR albo kartą pamięci.

Portfel to aplikacja lub urządzenie do odbierania i wysyłania bitcoinów. Anna korzysta z laptopa do przeglądania internetu. Nie chce przechowywać na nim także kluczy prywatnych: tajnych danych służących do tworzenia podpisów zezwalających na wydanie bitcoinów. Dzieli więc pracę. Program na laptopie śledzi płatności i przygotowuje nowe; to koordynator. Oddzielne urządzenie sprawdza propozycję i podpisuje ją po zgodzie Anny; to urządzenie podpisujące, czyli signer. Tak może działać Hardware Wallet, portfel sprzętowy. Air gap opisuje przede wszystkim rozdzielenie urządzeń i przesyłanie danych, a nie automatyczną cechę każdego portfela sprzętowego. Chwilowe wyłączenie Wi-Fi w zwykłym laptopie nie wystarczy: znaczenie mają inne połączenia, oprogramowanie i późniejsze ponowne podłączenie z sekretami w pamięci. [3] [5]

Anna wpisuje odbiorcę i kwotę w koordynatorze. Powstaje PSBT: pakiet z projektem transakcji i informacjami potrzebnymi do podpisu. Zawiera informacje o UTXO, niewydanych wyjściach wcześniejszych płatności. To osobne kwoty, do których odwołują się wejścia nowej transakcji. Anna przenosi pakiet do urządzenia podpisującego, choćby przez zeskanowanie QR. Urządzenie przetwarza obsługiwane dane i po sprawdzeniu oraz zgodzie dodaje podpis. Wynik wraca do laptopa. Dopiero po spełnieniu wymaganych warunków podpisywania można złożyć gotową transakcję i wysłać ją do sieci. Nie oznacza to jeszcze potwierdzenia w bloku. Blok to grupa transakcji wspólnie zapisywanych w publicznej historii Bitcoina. Tą drogą wędrują projekt i podpis, nie tajny klucz ani kopia zapasowa portfela. [1] [6]

Wyobraźmy sobie wejście 100000 sat. Sat to najmniejsza jednostka bitcoina. Anna chce wysłać 60000 sat, zwrócić sobie 39000 sat i pozostawić 1000 sat opłaty. Zwracana kwota ma osobne wyjście, zwane Change Output. Urządzenie musi sprawdzić je względem właściwych kluczy i konfiguracji portfela; napis „reszta” przesłany przez laptop nie wystarczy. Anna porównuje też pełny adres odbiorcy, kwotę i opłatę na zaufanym ekranie urządzenia z zamierzoną płatnością. Zainfekowany laptop może podstawić cudzy adres przy bezbłędnym rachunku. Jeśli Anna zatwierdzi taką propozycję, rozdzielenie urządzeń nie ochroni jej pieniędzy. [1] [4]

QR zapisuje dane w postaci obrazu, lecz nie poświadcza ich bezpieczeństwa. Większy pakiet może być przesyłany sekwencją obrazów w formacie BBQr albo UR; oba urządzenia muszą go rozumieć. Oprogramowanie odczytujące obraz i PSBT może mieć błędy jak każdy program. Szczególnie ważne jest odróżnienie QR transakcji od SeedQR. Ten drugi zawiera kopię tajnych danych, a nie propozycję płatności. Nie powinien więc trafić do kamery laptopa ani telefonu online. O możliwości wyniesienia kodu z izolowanego środowiska decydują treść i cel, nie podobieństwo do innych kwadracików. [2] [4]

Inny sposób wykorzystuje MicroSD: Anna zapisuje PSBT na karcie, wkłada ją do urządzenia podpisującego i przenosi wynik z powrotem. Nie potrzebuje kabla sieciowego, ale urządzenie nadal czyta zewnętrzny plik. Bezpieczeństwo zależy od programu, który go przetwarza, oraz kontrolera i systemu plików, odpowiadających za odczyt i organizację danych. Osobna karta pomaga zachować porządek, lecz nie gwarantuje nieszkodliwej treści. Zasilanie wymaga podobnej uwagi. USB może przenosić prąd i dane. Jeśli ma służyć tylko do zasilania, naprawdę nie może mieć aktywnej ścieżki danych. Sam napis „ładowanie” tego nie potwierdza. [2] [3]

COLDCARD zalicza do metod air gap również NFC. To radio krótkiego zasięgu, podczas gdy QR przenosi obraz, a MicroSD plik na fizycznym nośniku. Nie są to identyczne kanały. Jeśli chcesz wykluczyć łączność radiową, włączone NFC nie spełnia tego wymagania. Przy konkretnym urządzeniu warto ustalić, który kanał jest aktywny, kiedy się włącza i co może nim przejść, zamiast poprzestawać na słowie air-gapped. Stałe połączenie danych USB wyznacza jeszcze inną granicę niż ręczne przenoszenie pliku. [2]

Koordynator może działać jako watch-only: obserwować portfel bez możliwości samodzielnego podpisania płatności. Może używać xpub, rozszerzonego klucza publicznego do wyprowadzania kolejnych kluczy publicznych, albo publicznego Descriptor, opisu kluczy i zasad tworzenia adresów. Te dane same nie pozwalają wydawać środków, lecz mogą powiązać adresy i płatności z jednym portfelem. PSBT może także zawierać klucze publiczne, ścieżki ich wyprowadzania i informacje UTXO. W Multisig kilka kluczy zatwierdza wydanie według określonej zasady; poprawna konfiguracja wszystkich uczestników jest ważna dla odzyskiwania i sprawdzania reszty. Izolacja urządzenia podpisującego nie zapewnia więc anonimowości laptopa ani prywatności jego zapytań do sieci. [1] [4]

Anna nadal potrzebuje bezpiecznie zapisanej Seed Phrase, kopii w postaci słów, oraz innych danych wymaganych przez jej portfel. SeedSigner wczytuje sekrety tymczasowo: po wyłączeniu nie można traktować jego pamięci jako kopii zapasowej. Air gap nie zastępuje też zaufanego firmware, czyli programu wewnątrz urządzenia, ani sprawdzenia zatwierdzanej płatności. Secure Element chroni inny obszar, utrudniając pewne ataki na sam układ. Cold Storage oznacza przechowywanie kluczy poza środowiskiem online; air gap opisuje pracę z oddzielnym podpisywaniem. Przed powierzeniem temu sposobowi znacznych oszczędności warto przećwiczyć przenoszenie, weryfikację i odzyskiwanie na osobnych kluczach testowych. Celem jest zrozumienie każdego kroku, a nie samo dodanie urządzeń na biurku. [3] [4]

Pełniejszy obraz uzyskasz, czytając to hasło razem z Hardware Wallet, PSBT, Cold Storage, Seed Phrase, Output Descriptor, Multisig. Do tego hasła prowadzą również odsyłacze z Cold Storage, Secure Element, SeedQR, BBQr.

DOC · 001BIP 174 — Partially Signed Bitcoin Transaction FormatSpecyfikacja DOC · 002COLDCARD — Bitcoin Air-Gap Signing MethodsDokumentacja DOC · 003SeedSigner — Frequently Asked QuestionsŹródło pierwotne DOC · 004SeedSigner — Independent Custody GuideDokumentacja DOC · 005Bitcoin Developer Guide — WalletsDokumentacja DOC · 006Bitcoin Developer Guide — Block ChainDokumentacja
Zaktualizowano: Najpierw źródła · To nie jest porada inwestycyjna