tradingview

Air gap

Air gap (dosłownie „szczelina powietrzna”) to fizyczne odcięcie urządzenia od wszystkich sieci: bez Wi-Fi, bez Bluetooth, bez NFC i bez kabla USB do przesyłania danych. Między nim a resztą świata jest tylko powietrze. W kryptowalutach mówimy o portfelu air-gapped, gdy klucz prywatny siedzi na urządzeniu, które nigdy nie łączy się z internetem ani z komputerem, a transakcje trafiają do niego i wracają przez kody QR albo kartę microSD.

Idea jest prosta: jeśli urządzenie nie ma żadnego połączenia, zdalny atakujący nie ma jak się do niego dostać. W praktyce, jak zobaczysz niżej, ta prostota jest jednocześnie największą siłą i największą pułapką.

Skąd się wzięło

Air gap nie jest wynalazkiem świata krypto. Od dekad stosuje się go w sieciach wojskowych, w systemach sterowania elektrowniami i wszędzie tam, gdzie włamanie oznacza katastrofę. Najsłynniejsza lekcja z tego świata to Stuxnet, robak odkryty w 2010 roku, który niszczył wirówki do wzbogacania uranu w irańskim zakładzie w Natanz. Sieć zakładu była odcięta od internetu. Wirus dostał się do niej na pendrive’ach.

Zapamiętaj ten przykład, bo streszcza całe hasło: air gap chroni przed zdalnym dostępem, ale nie przed tym, co sam do urządzenia przyniesiesz.

Jak działa podpisywanie air-gapped

Portfel air-gapped rozdziela role między dwa urządzenia.

Urządzenie online (komputer albo telefon) zna tylko klucz publiczny. To tzw. portfel watch-only: widzi saldo, generuje adresy do wpłat i przygotowuje transakcje. Niczego nie może podpisać, więc nawet całkowicie zainfekowane nie ukradnie Ci środków samodzielnie.

Urządzenie offline przechowuje klucz prywatny i tylko podpisuje.

Wysłanie transakcji wygląda tak:

  1. Na komputerze przygotowujesz transakcję: adres, kwotę i opłatę. W Bitcoinie ma ona standardowy format PSBT (częściowo podpisana transakcja, BIP-174).
  2. Komputer wyświetla ją jako kod QR albo zapisuje na kartę microSD.
  3. Urządzenie offline wczytuje transakcję i pokazuje na własnym ekranie adres odbiorcy i kwotę. Sprawdzasz je.
  4. Zatwierdzasz, a urządzenie podpisuje transakcję i oddaje ją tą samą drogą: przez QR albo kartę.
  5. Komputer wysyła podpisaną transakcję do sieci.

Klucz prywatny ani na chwilę nie opuszcza urządzenia offline. Kanał komunikacji jest wąski, w każdym kroku działa w jedną stronę, a w przypadku QR widać go dosłownie gołym okiem.

Rodzaje portfeli air-gapped

Dedykowane urządzenia. Coldcard (komunikacja przez kartę microSD), Keystone (kody QR), Foundation Passport (QR i microSD). Od początku projektowane z myślą o pracy bez kabla danych.

SeedSigner. Otwartoźródłowy projekt do samodzielnego złożenia na Raspberry Pi Zero bez modułu bezprzewodowego, z małym ekranem i kamerą. Jest bezstanowy: nie przechowuje seeda, tylko przy każdym użyciu wczytuje go z kodu QR zapisanego na papierze albo metalu. Po odłączeniu zasilania w urządzeniu nie zostaje nic.

Stary smartfon z aplikacją offline. Najbardziej znany przykład to AirGap Vault szwajcarskiej firmy Papers. Instalujesz aplikację na osobnym telefonie, wyłączasz w nim wszystkie łączności i już nigdy go nie podłączasz. Podpisujesz przez QR z telefonem, na którym działa portfel online. To tanie rozwiązanie, ale smartfon ma ogromną powierzchnię ataku (system, sterowniki, aparat), a jedno nieuważne połączenie z Wi-Fi przekreśla cały sens.

Komputer offline. Laptop z usuniętą kartą sieciową, najlepiej z systemem uruchamianym z pendrive’a, i portfel w trybie offline. Działa, ale wymaga dyscypliny i wiedzy.

Portfel papierowy. Skrajna forma air gapu: klucz jest wydrukowany i nie istnieje na żadnym urządzeniu. Tyle że moment wygenerowania i wydruku to zwykle najsłabszy punkt, a wydanie części środków wymaga zaimportowania klucza do portfela online.

A co z Ledgerem i Trezorem?

Najpopularniejsze portfele sprzętowe, takie jak Ledger Nano X czy modele Trezora, łączą się z komputerem kablem USB, a Ledger Nano X także przez Bluetooth. W ścisłym sensie nie są więc air-gapped. Klucz nadal nie opuszcza urządzenia, ale kanał komunikacji jest szerszy: sterowniki USB, stos Bluetooth i oprogramowanie na komputerze, które rozmawia z urządzeniem.

Czy to czyni je niebezpiecznymi? Nie. Różnica między dobrym portfelem sprzętowym na kablu a urządzeniem air-gapped jest dużo mniejsza niż różnica między którymkolwiek z nich a seedem trzymanym w notatkach telefonu. Air gap zamyka jeden konkretny wektor ataku. Nie przenosi Cię do innej kategorii bezpieczeństwa.

Czego air gap NIE chroni

To najważniejsza część tego hasła, bo marketing air gapu obiecuje więcej, niż air gap daje.

Złośliwy firmware i łańcuch dostaw. Jeśli urządzenie ma podmienione oprogramowanie, odcięcie od sieci nic nie da. Atak Dark Skippy, opisany w 2024 roku, pokazał, że skompromitowane urządzenie może przemycić frazę seed wewnątrz zwykłych podpisów transakcji, a konkretnie w nonce, czyli losowej liczbie, którą zawiera każdy podpis. Podpisana transakcja i tak trafia do sieci, więc kanał wycieku jest wbudowany w sam proces. Air gap nie pomaga tu w ogóle.

Podmiana adresu na komputerze. Złośliwe oprogramowanie na urządzeniu online może podstawić własny adres w przygotowanej transakcji. Urządzenie offline grzecznie ją podpisze, jeśli nie sprawdzisz adresu na jego ekranie. Weryfikacja na ekranie urządzenia to nie formalność, tylko cały sens tego zabezpieczenia.

Słaba losowość przy tworzeniu seeda. Jeśli seed powstał ze słabego źródła losowości, air gap chroni klucz, który ktoś może po prostu odgadnąć. Część urządzeń pozwala dołożyć entropię rzutami kostką.

Fizyczny dostęp i przemoc. Włamanie do domu, kradzież kartki z seedem, pożar, wreszcie atak klucza francuskiego (wrench attack), w którym ktoś zmusza Cię do podpisania transakcji. Tu pomagają zupełnie inne rzeczy: dobrze ukryta i zdublowana kopia seeda, passphrase, multisig i dyskrecja.

Twoje własne błędy. Zdjęcie seeda telefonem „na wszelki wypadek”. Podłączenie telefonu z aplikacją offline do Wi-Fi, bo trzeba było zaktualizować aplikację. Wpisanie seeda do portfela na komputerze, bo „tylko na chwilę”. Każda z tych rzeczy zamienia portfel air-gapped w zwykły portfel z dodatkowym krokiem.

Kanały boczne. Badacze z Uniwersytetu Ben-Guriona od lat pokazują, jak wyprowadzać dane z komputerów air-gapped przez dźwięk wentylatora, mruganie diody czy emisję elektromagnetyczną. To laboratoryjne ciekawostki, a nie realne zagrożenie dla inwestora indywidualnego, ale dobrze pokazują, że air gap nie jest barierą absolutną.

Air gap a DeFi: problem ślepego podpisywania

Przy zwykłym przelewie bitcoina urządzenie offline pokazuje dwie rzeczy, które da się łatwo sprawdzić: adres i kwotę. Przy interakcji ze smart kontraktem na Ethereum sprawa wygląda inaczej. Transakcja to wywołanie funkcji z parametrami zapisanymi szesnastkowo. Jeśli urządzenie nie potrafi ich rozszyfrować, pokazuje Ci ciąg znaków, który zatwierdzasz w ciemno. To tak zwane ślepe podpisywanie (blind signing).

Najdroższa lekcja z tego tematu to włamanie na Bybit w lutym 2025 roku, kiedy z portfela zimnego giełdy zniknęło około 1,5 mld dolarów w ETH. Portfel był multisigiem, a podpisujący używali portfeli sprzętowych. Atakujący przejęli interfejs webowy, przez który przygotowywano transakcje. Podpisujący widzieli rutynowy przelew, a w rzeczywistości zatwierdzili zmianę logiki kontraktu, która oddała atakującym kontrolę nad środkami. Urządzenia podpisały dokładnie to, co dostały. Ludzie nie byli w stanie przeczytać, co podpisują.

Wniosek dla Ciebie: air gap, portfel sprzętowy i multisig chronią klucz, ale nie chronią przed podpisaniem złej transakcji. Portfel, w którym trzymasz długoterminowe oszczędności, powinien robić tylko proste przelewy, które da się zweryfikować na ekranie. Do DeFi używaj osobnego portfela z mniejszą kwotą.

Czy to się opłaca: trochę liczb

Air gap kosztuje przede wszystkim czas. Każda transakcja wymaga kilku dodatkowych kroków: wyjęcia urządzenia, zeskanowania kodów, sprawdzenia adresu. W sumie to kilka minut.

  • Inwestor długoterminowy, który robi kilka transakcji w roku, traci na tym kilkanaście do kilkudziesięciu minut rocznie. Pomijalne.
  • Aktywny trader, który przerzuca środki kilka razy dziennie, traci godziny w miesiącu i ryzykuje, że w pośpiechu przestanie sprawdzać adresy.

Sprzęt to jednorazowy wydatek rzędu kilkuset złotych. Przy portfelu 5000 zł to kilka do kilkunastu procent jego wartości i trudno to uzasadnić. Przy portfelu 200 000 zł ta sama kwota to ułamek procenta, zapłacony raz.

Dlatego w praktyce rozsądny układ wygląda zwykle tak: kapitał do handlu na giełdzie (z ryzykiem kontrahenta, którego tam nie unikniesz), mała kwota w gorącym portfelu do codziennych operacji, a długoterminowe oszczędności w portfelu, do którego nie zaglądasz co tydzień. Dopiero ten ostatni jest naturalnym miejscem na air gap.

Jak zrobić to dobrze

  1. Kupuj urządzenie tylko od producenta albo autoryzowanego sprzedawcy. Nigdy z drugiej ręki ani z aukcji.
  2. Zweryfikuj firmware według instrukcji producenta, zanim przeniesiesz na urządzenie jakiekolwiek środki.
  3. Wygeneruj seed na urządzeniu, a jeśli masz taką opcję, dołóż entropię rzutami kostką.
  4. Zapisz seed ręcznie, na papierze albo metalu. Nigdy zdjęcie, nigdy chmura, nigdy menedżer haseł.
  5. Przetestuj odzyskiwanie: przywróć portfel z seeda i sprawdź, czy pojawiają się te same adresy.
  6. Zrób próbną transakcję na małej kwocie, czyli wpłatę i wypłatę, zanim wyślesz tam poważne pieniądze.
  7. Zawsze sprawdzaj adres i kwotę na ekranie urządzenia offline, a nie na komputerze.
  8. Przy dużych kwotach rozważ multisig z urządzeniami różnych producentów. Wtedy jedno skompromitowane urządzenie nie wystarczy do kradzieży.

Co ja o tym myślę

Air gap to dobre narzędzie, które stało się przede wszystkim hasłem reklamowym. „W pełni air-gapped” brzmi jak gwarancja nietykalności, a w rzeczywistości oznacza tylko tyle, że zamknięto jeden kanał ataku. Pozostałe, czyli łańcuch dostaw, podmiana adresu, słaby seed i własna niedbałość, zostają dokładnie tam, gdzie były.

Najwięcej środków ludzie tracą nie dlatego, że ich portfel nie był air-gapped. Tracą je, bo trzymali wszystko na giełdzie, która upadła, wpisali seed na fałszywej stronie albo zrobili mu zdjęcie. Portfel air-gapped nie pomoże komuś, kto nie ma nawyku sprawdzania adresu na ekranie.

Dlatego kolejność jest dla mnie jasna. Najpierw nawyki: seed tylko offline, weryfikacja adresu, test odzyskiwania, zakup u producenta. Potem dobry portfel sprzętowy. A dopiero na końcu, przy kwotach, których utrata naprawdę by bolała, air gap i multisig. Kto zaczyna od air gapu, zaczyna budowę od dachu.

Zaktualizowano: