BBQr هو تنسيق نقل منشور من Coinkite. يبدأ كل QR بالعلامة B$ وترويسة قصيرة تحدد الترميز ونوع الملف والعدد الإجمالي والفهرس؛ ثم يأتي مقطع بيانات بصيغة HEX أو Base32 أو Zlib ثابت يتبعه Base32.
يعالج BBQr الحالات التي لا يتسع فيها QR واحد مقروء لملف PSBT أو معاملة موقعة أو ملف آخر. يقسم المرسل البيانات إلى إطارات ويعيد المستقبل تركيبها، فيعبر الملف air gap بلا كابل أو بطاقة أو اتصال شبكي. لا يوقع التنسيق شيئًا ولا يبثه ولا يدخل في إجماع Bitcoin. [1]
يبدأ كل إطار بترويسة من ثمانية محارف. تحدد B$ صيغة BBQr، ثم يختار محرف واحد الترميز وآخر نوع المحتوى، ويعطي موضعان من base36 العدد الإجمالي للإطارات وآخر موضعين الفهرس. يعني B$HP0301 ترميز HEX وملف PSBT وإجمالي 3 إطارات والجزء ذي الفهرس 1. يجب أن يتطابق الترميز والنوع والعدد في السلسلة كلها. [1]
يستخدم QR النمط الأبجدي الرقمي بمجموعة محدودة من المحارف الكبيرة. يكتب H بصيغة HEX، ويستخدم 2 صيغة Base32 بلا =، أما Z فيضغط الملف كاملًا أولًا بواسطة Zlib مع wbits=10 ومن دون ترويسة ملف ثم يستخدم Base32. قد يقلص الضغط ملف PSBT، لكنه لا يفيد كثيرًا مع قيم التجزئة وUTXO والبيانات عالية العشوائية؛ وعندها ينبغي للـ encoder اختيار النسخة غير المضغوطة الأصغر. [1]
يمكن قراءة الإطارات بأي ترتيب بفضل الفهرس. لكنه ليس fountain code: يجب أن يحصل المستقبل على أجزاء N كلها ولا يستطيع حساب إطار مفقود من البقية. يحتوي QR أصلًا على كشف الأخطاء وتصحيحها، لذلك لا تضيف المواصفة checksum للسلسلة؛ وتناقش عملية التصميم الموازنة بين البساطة والحمل الإضافي واستعادة الإطارات الفائتة. [4]
تصف وثائق المشروع BBQr بأنه واسع الانتشار، وكانت قد تحققت في 27 يوليو 2026 من وجود شيفرة عامة منشورة في عدة أجهزة signer ومحافظ محمولة ومنسقين، منها COLDCARD Q وSparrow Wallet وNunchuk Desktop وBTCPay Server وKrux وBlueWallet. وليس الدعم ثنائي الاتجاه بالضرورة: فقد أدرج SeedSigner بالإصدار 0.8.7 بوصفه decoder فقط. [2]
يسمح موضعان من base36 بحد أقصى قدره 1295 جزءًا، أي ZZ. وبالنسبة إلى إصدار QR 40 تذكر المواصفة 4296 محرفًا أبجديًا رقميًا وحدًا نظريًا غير مضغوط يبلغ 2 776 480 بايت مع HEX أو 3 470 600 بايت مع Base32. قد يفرض الجهاز حدًا أدنى: تقبل COLDCARD Q حتى 2 MiB ثم تعرض التقدم وفق عدد الأجزاء. [6]
يشير النوع P إلى PSBT وT إلى معاملة Bitcoin مكتملة؛ وتشمل J وC وU وB وX بيانات JSON وCBOR ونص UTF-8 والبيانات الثنائية العامة والتنفيذية. يساعد النوع على اختيار parser لكنه لا يثبت الصحة أو الأمان. يجب أن ترفض المحفظة النوع غير المتوقع، وأن يعرض signer المخارج والمبالغ والرسم منفصلة قبل التوقيع. [5]
ينبغي اختبار التنفيذ بعملية round-trip مقابل المستودع وبيانات الاختبار المنشورة: ترميز الملف نفسه وخلط الإطارات ثم قراءتها ومقارنة النتيجة بايتًا بايتًا. وتختبر منفصلة حالات الإطار المفقود أو التالف وH و2 وZ والإطار الواحد وحدود الذاكرة. لا ينبغي قط إدخال PSBT حقيقي أو بيانات حساسة أخرى في مولد ويب عام. [3]
للحصول على صورة أوضح، اقرأ هذا المدخل مع PSBT, معاملة, Hardware Wallet, Air-gapped Wallet, Multisig, Output Descriptor.
01هل BBQr هو نفسه SeedQR؟+
لا. يمثل SeedQR سر استعادة BIP39 ويجب حمايته كمفتاح خاص. أما BBQr فهو غلاف نقل عام للبيانات المجزأة، وغالبًا ما يحمل PSBT أو معاملة موقعة. يمكنه حمل محتوى حساس، لكن اسمه لا يعني أن المحتوى seed ولا يشفر البيانات.
02هل يجعل نقل BBQr عبر air gap المعاملة آمنة؟+
لا. تزيل القناة البصرية مسارًا شبكيًا أو سلكيًا، لكن المنسق الخبيث ما زال قادرًا على إعداد PSBT بمخرج غريب أو رسم خاطئ أو مدخلات غير متوقعة. يجب التحقق من العناوين والمبالغ والرسم وقواعد المحفظة على signer موثوق، ثم بث المعاملة التي تمت مراجعتها نفسها.