728 / 736BBQR

BBQr

Better Bitcoin QR, format ramek do przenoszenia większych plików przez sekwencję kodów QR

BBQr dzieli PSBT, podpisaną transakcję lub inne dane binarne na numerowaną serię klatek QR do przesłania przez air gap; zmniejsza narzut i pozwala skanować w dowolnej kolejności, ale nie szyfruje, nie sprawdza znaczenia danych i wymaga wszystkich części.

BBQr to publicznie opisany format transportowy Coinkite. Każdy QR zaczyna się od B$ i krótkiego nagłówka z kodowaniem, typem pliku, łączną liczbą i indeksem; dalej znajduje się segment danych jako HEX, Base32 albo ustalony Zlib plus Base32.

BBQr rozwiązuje sytuacje, gdy PSBT, podpisana transakcja lub inny plik nie mieści się w jednym rozsądnie czytelnym kodzie QR. Nadawca dzieli dane na serię klatek, a odbiorca składa je ponownie, więc plik przekracza air gap bez kabla, karty ani połączenia sieciowego. Format sam niczego nie podpisuje, nie nadaje do sieci Bitcoin i nie jest częścią konsensusu. [1]

Każda klatka zaczyna się ośmioznakowym nagłówkiem. Prefiks B$ oznacza BBQr, następny znak wybiera kodowanie, kolejny typ treści, dwie pozycje base36 podają łączną liczbę klatek, a ostatnie dwie indeks bieżącej. B$HP0301 oznacza HEX, PSBT, łącznie 3 klatki i część o indeksie 1. Wszystkie klatki serii muszą podawać to samo kodowanie, typ i liczbę. [1]

QR używa trybu alfanumerycznego z ograniczonym zbiorem wielkich znaków. H zapisuje HEX, 2 używa Base32 bez znaku =, a Z najpierw kompresuje cały plik przez Zlib z wbits=10 bez nagłówka pliku, potem używa Base32. Kompresja może zmniejszyć PSBT, lecz niewiele daje dla hashy, UTXO i danych o wysokiej entropii; encoder powinien wtedy wybrać mniejszą wersję nieskompresowaną. [1]

Klatki można czytać w dowolnej kolejności dzięki indeksowi w nagłówku. Nie jest to jednak fountain code: odbiorca musi uzyskać wszystkie N części, a brakującej klatki nie da się odtworzyć z pozostałych. QR ma własne wykrywanie i korekcję błędów, dlatego specyfikacja nie dodaje osobnego checksum serii; dyskusja projektu dotyczyła kompromisu między prostotą, narzutem i odzyskiwaniem pominiętych klatek. [4]

Dokumentacja określa BBQr jako szeroko wdrożony i na 27 lipca 2026 potwierdzała wydany publiczny kod w kilku signerach, portfelach mobilnych i koordynatorach, w tym COLDCARD Q, Sparrow Wallet, Nunchuk Desktop, BTCPay Server, Krux i BlueWallet. Obsługa nie musi być dwukierunkowa: SeedSigner w wersji 0.8.7 figurował tylko jako decoder. [2]

Dwie pozycje base36 pozwalają na najwyżej 1295 części, czyli ZZ. Dla wersji QR 40 specyfikacja podaje 4296 znaków alfanumerycznych i teoretyczny nieskompresowany limit 2 776 480 bajtów dla HEX albo 3 470 600 bajtów dla Base32. Implementacja może ograniczać bardziej: COLDCARD Q przyjmuje pliki do 2 MiB i wyświetla postęp według liczby części. [6]

Znak typu P oznacza PSBT, a T gotową transakcję Bitcoin; J, C, U, B i X obejmują JSON, CBOR, tekst UTF-8, ogólne dane binarne i wykonywalne. Typ pomaga wybrać parser, ale nie dowodzi poprawności ani bezpieczeństwa treści. Portfel musi odrzucić nieoczekiwany typ, a signer przed podpisaniem niezależnie pokazać wyjścia, kwoty i opłatę. [5]

Implementację należy sprawdzić testem round-trip wobec opublikowanego repozytorium i danych: zakodować ten sam plik, przetasować klatki, odczytać je i porównać wynik bajt po bajcie. Osobno testuje się brakującą i uszkodzoną klatkę, H, 2 i Z, przypadek jednej klatki oraz granice pamięci. Prawdziwego PSBT ani innych danych wrażliwych nie wolno wkładać do publicznego generatora WWW. [3]

Pełniejszy obraz uzyskasz, czytając to hasło razem z PSBT, Transakcja, Hardware Wallet, Air-gapped Wallet, Multisig, Output Descriptor.

01Czy BBQr to to samo co SeedQR?

Nie. SeedQR reprezentuje sekret odzyskiwania portfela BIP39 i wymaga ochrony jak klucz prywatny. BBQr jest ogólną obudową transportową dla podzielonych danych, często PSBT lub podpisanej transakcji. Może nieść treść wrażliwą, ale nazwa nie oznacza seedu i nie szyfruje danych.

02Czy transfer air-gapped przez BBQr czyni transakcję bezpieczną?

Nie. Kanał optyczny usuwa jedną drogę sieciową lub kablową, ale złośliwy koordynator nadal może przygotować PSBT z obcym wyjściem, złą opłatą lub nieoczekiwanymi wejściami. Na zaufanym signerze trzeba sprawdzić adresy, kwoty, opłatę i politykę portfela, a potem nadać dokładnie sprawdzoną transakcję.

DOC · 001BBQr — Better Bitcoin QR SpecificationDokumentacja DOC · 002BBQr — Project status and supporting implementationsDokumentacja DOC · 003Coinkite — BBQr reference repository and test dataDokumentacja DOC · 004Coinkite BBQr issue 2 — Feedback on sequence recoveryDokumentacja DOC · 005COLDCARD Q Quickstart Guide — BBQr transaction flowDokumentacja DOC · 006COLDCARD QR Scanner — BBQr limits and accepted dataDokumentacja
Zaktualizowano: Najpierw źródła · To nie jest porada inwestycyjna