727 / 736SEEDQR

SeedQR

Format cadangan QR untuk mnemonik BIP39 dari proyek SeedSigner

SeedQR mengubah mnemonik BIP39 menjadi kode QR statis untuk dimuat cepat ke perangkat penanda tangan offline; Standard SeedQR menyimpan indeks kata empat digit dan CompactSeedQR menyimpan entropi biner, tetapi keduanya membawa rahasia yang dapat memulihkan dompet.

SeedQR adalah format data yang didokumentasikan secara terbuka oleh proyek SeedSigner, bukan jenis seed baru, enkripsi, atau protokol Bitcoin. Standard SeedQR menggabungkan posisi kata BIP39 berindeks dari nol menjadi QR numerik; CompactSeedQR menulis entropi asal sebagai data biner dan membiarkan penerima menghitung ulang checksum.

Standard SeedQR mengambil setiap kata mnemonik, mencari posisinya yang berindeks dari nol dalam daftar BIP39, lalu menuliskannya dengan tepat empat digit. Nilai 12 karena itu ditulis sebagai 0012. Hasilnya bukan foto kata atau kunci privat dalam bentuk teks, melainkan representasi lain tanpa kehilangan dari rahasia yang sama. [1]

Daftar BIP39 memiliki 2048 item dengan indeks 0 sampai 2047. Frasa standar 12 kata menghasilkan 48 digit dan kisi QR 25×25; frasa 24 kata menghasilkan 96 digit dan kisi 29×29. Urutan blok empat digit adalah urutan kata, sehingga pertukaran blok memulihkan frasa lain atau tidak valid. [1]

SeedSigner dirancang sebagai stateless signer: ketika dimatikan, data rahasia yang dimuat hilang dan seed harus dimasukkan kembali pada penggunaan berikutnya. SeedQR mempersingkat masukan itu menjadi satu pemindaian atau penyalinan manual. Jangan samakan dengan PSBT, wallet descriptor, atau QR alamat; semua itu dapat membawa data publik atau transaksi, sedangkan SeedQR membawa rahasia pemulihan. [7]

Sebelum penyalinan, antarmuka SeedSigner memperingatkan bahwa “SeedQR is your private key” dan tidak boleh difoto atau dipindai dengan perangkat yang terhubung ke internet. Air gap membatasi jalur kebocoran jaringan, tetapi tidak mengenkripsi QR dan tidak mencegah kamera, salinan, pencuri fisik, atau perangkat offline yang telah disusupi membaca seed. [5]

Dokumentasi resmi mencantumkan dukungan Standard SeedQR dan CompactSeedQR untuk frasa BIP39 12 kata dan 24 kata. Permintaan publik untuk menambahkan vektor uji CompactSeedQR yang bermasalah dibuka pada 25 Juli 2022 lalu ditutup melalui perubahan proyek; catatan itu membuktikan pengujian interoperabilitas publik, bukan standardisasi BIP formal. [2] [6]

CompactSeedQR menggabungkan indeks kata 11 bit, membuang 4 bit checksum untuk 12 kata, lalu menyimpan 128 bit atau 16 byte dalam kisi 21×21. Untuk 24 kata, format ini membuang 8 bit checksum dan menyimpan 256 bit atau 32 byte dalam kisi 25×25. Ukurannya lebih kecil, tetapi pembaca biasa dapat salah menangani data biner atau byte nol; kesulitan itu bukan perlindungan kriptografis. [1]

BIP39 membuat kata dengan membagi entropi dan checksum-nya menjadi indeks daftar 11 bit. Karena itu CompactSeedQR dapat menghilangkan bit checksum dan menghitungnya kembali dari entropi setelah dipindai. Namun payload tidak memiliki pengenal yang tegas untuk bahasa daftar kata; pemulihan harus memakai daftar yang sama, dan spesifikasi utama menyarankan bahasa Inggris. [4]

Implementasi perlu diperiksa terhadap vektor uji yang diterbitkan dan kode encoder sebenarnya, termasuk byte nol dalam CompactSeedQR. Latihan pemulihan yang praktis dilakukan pada perangkat offline tanpa nilai: setelah dimuat, bandingkan fingerprint, descriptor, atau alamat penerimaan pertama dengan dompet yang diharapkan. Jangan pernah menguji seed asli dengan generator web. [3]

Untuk gambaran yang lebih utuh, baca entri ini bersama Seed Phrase, BIP 39, BIP39 checksum, Private Key, Hardware Wallet, Air-gapped Wallet. Entri ini juga dirujuk dari BBQr.

01Apakah SeedQR sama dengan kode QR biasa berisi alamat bitcoin?

Tidak. QR alamat biasanya menerbitkan tujuan untuk menerima pembayaran, sedangkan SeedQR mengodekan data yang dibutuhkan untuk memulihkan dompet BIP39. Siapa pun yang membaca SeedQR dengan benar dan mengetahui BIP39 passphrase bila ada dapat menurunkan kunci privat. Karena itu SeedQR harus diperlakukan seperti seed phrase, bukan alamat publik.

02Apakah CompactSeedQR melindungi seed karena telepon biasa tidak dapat membacanya?

Tidak. CompactSeedQR hanya menyimpan rahasia yang sama secara lebih efisien sebagai entropi biner. Sebagian pembaca biasa menampilkannya keliru atau tidak sama sekali, tetapi perangkat lunak khusus dapat mendekodenya. Ini hambatan kompatibilitas, bukan enkripsi; keamanan harus bertumpu pada perlindungan fisik, pemindaian offline yang terkendali, dan BIP39 passphrase yang disimpan terpisah bila digunakan.

DOC · 001SeedSigner — SeedQR Format SpecificationDokumentasi DOC · 002SeedSigner — Supported QR FormatsDokumentasi DOC · 003SeedSigner — SeedQR encoder implementationDokumentasi DOC · 004Bitcoin BIPs — BIP 39: Mnemonic code for generating deterministic keysDokumentasi DOC · 005SeedSigner — SeedQR private-key warning in seed viewsDokumentasi DOC · 006SeedSigner issue 234 — Additional CompactSeedQR test vector, 25 July 2022Dokumentasi DOC · 007SeedSigner — Independent Custody GuideDokumentasi
Direvisi: Utamakan sumber · Bukan nasihat investasi