Xpub: ما الذي يكشفه المفتاح العام لمحفظة بيتكوين لديك
يتيح مفتاح xpub العثور على كل عناوين حساب بيتكوين، ومن ثمّ على سجله كله، دون القدرة على إنفاق أي شيء. ما الذي يكشفه، وما خطره، ولمن يمكنك أن تعطيه.
مفتاح xpub (المفتاح العام الموسَّع) هو المفتاح العام لحساب في محفظة بيتكوين، تُشتق منه كل عناوين هذا الحساب: من يحوزه يرى كل دفعة يستلمها هذا الحساب أو يرسلها، لكنه لا يستطيع إنفاق أي شيء.
ما يحتويه مفتاح xpub
يصف معيار BIP32 المحافظ الهرمية الحتمية: بذرة واحدة تُنتج شجرة كاملة من المفاتيح. ويضيف المفتاح الموسَّع إلى المفتاح رمز سلسلة (chain code)، يُستخدم لحساب مفاتيحه الفرعية. ووفقاً لـ BIP32، تتيح معرفة مفتاح عام موسَّع إعادة بناء كل مفاتيحه العامة الفرعية غير المحصّنة (non-hardened).
ترتّب المحافظ هذه المفاتيح وفق مسار BIP44: m / purpose' / coin_type' / account' / change / address_index. ومفتاح xpub الذي تعرضه المحفظة هو مفتاح المستوى account'. وهو يغطي سلسلتين من العناوين: 0 لعناوين الاستلام، و1 لعناوين الباقي (change)، التي تستلم الباقي العائد من مدفوعاتك أنت.
xpub أو ypub أو zpub
تدلّ البادئة على نوع العناوين الذي يستخدمه الحساب:
| البادئة | المعيار | مسار الحساب الأول | العناوين |
|---|---|---|---|
xpub | BIP44 | m/44'/0'/0' | عناوين قديمة، تبدأ بالرقم 1 |
ypub | BIP49 | m/49'/0'/0' | SegWit متداخل، تبدأ بالرقم 3 |
zpub | BIP84 | m/84'/0'/0' | SegWit أصلي، تبدأ بـ bc1q |
الثلاثة نوع واحد من المفاتيح: لا يتغيّر إلا بايتات الإصدار، ومن ثمّ أحرفه الأولى.
ما يكشفه مفتاح xpub
- كل عناوين الحساب، الماضية والمستقبلية: تُشتق واحداً تلو الآخر، بلا حدّ.
- السجل كله: كل استلام، وكل إرسال، وكل مبلغ، لأن البلوكتشين عامة.
- رصيد الحساب، في أي وقت.
- لا شيء للإنفاق: من دون مفتاح خاص، لا يمكن توقيع أي معاملة.
يذكر BIP32 نفسه هذا الاستخدام: تسليم المفتاح العام الموسَّع لحساب إلى مدقّق يتيح له رؤية كل المدفوعات الواردة والصادرة، دون الوصول إلى أي مفتاح سري. ومن يملك مفتاح xpub الخاص بك يملك رؤية هذا المدقّق، إلى الأبد: لا يمكن إلغاء مفتاح xpub.
الخطر الذي يجب معرفته
لا يتيح مفتاح xpub وحده الإنفاق. لكن BIP32 يحذّر: معرفة مفتاح عام موسَّع وأي مفتاح خاص غير محصّن متفرّع منه تعادل معرفة المفتاح الخاص الموسَّع الأصل. بعبارة أخرى، يكفي مفتاح xpub الخاص بك والمفتاح الخاص لعنوان واحد من عناوينك لإنفاق الحساب كله.
المستوى account' محصّن: يبقى تسرّب كهذا محصوراً في الحساب المعني ولا يطال الحسابات الأخرى للبذرة نفسها. لذا صدِّر مفتاح xpub، لا المفتاح الخاص لعنوان أبداً، ولا تعطِ عبارة الاسترداد لأحد أبداً.
كيف يعثر برنامج على العناوين
يشتقّ البرنامج الذي يقرأ مفتاح xpub العناوين بالترتيب، ويتوقف بعد سلسلة من العناوين التي لم تُستخدم قط: يحدّد BIP44 هذا الحدّ (gap limit) بـ 20. إن أنشأت أكثر من 20 عنواناً متتالياً دون استخدامها، فلن يرى البرنامج الذي يتبع هذه القاعدة العناوين التي تليها.
ولقراءة الأرصدة، يستعلم البرنامج بعد ذلك من خادم أو عقدة، عنواناً تلو الآخر. فيعرف هذا الخادم حينئذٍ كل عناوينك ويستطيع ربط بعضها ببعض: هذا هو التسرّب الآخر، الذي لا يأتي من مفتاح xpub نفسه بل من طريقة قراءته.
قبل أن تعطي مفتاح xpub الخاص بك
- اسأل نفسك من يحتفظ به: التطبيق الذي يحتفظ بمفتاح xpub الخاص بك على خوادمه يعرف حسابك طوال مدة احتفاظه به، وأي تسرّب لبياناته يكشفه.
- فضّل القراءة المحلية: المحفظة المتصلة بعقدتك الخاصة، أو الأداة التي تشتقّ العناوين على جهازك، لا تأتمن أحداً على مفتاح xpub.
- حساب لكل استخدام: للحساب الآخر (
account'التالي) مفتاح xpub آخر، لا يكشف شيئاً عن الحسابات الأخرى.
كيف يقرأ CentraFIN مفتاح xpub الخاص بك
يقرأ CentraFIN مفتاح xpub الخاص بك على جهازك: يشتقّ متصفحك العناوين، ويقرأ أرصدتها عبر اتصال مشفّر من طرف إلى طرف، ويحفظ كل ذلك في خزنة يشفّرها بنفسه. لا يرى خادم CentraFIN أبداً مفتاح xpub الخاص بك ولا أي عنوان ولا أي رصيد. يُقرأ كل عنوان دائماً من العقدة نفسها، المختارة عشوائياً، كي لا ترى أي عقدة الحساب كاملاً. التفاصيل في صفحة بيتكوين.
المصادر
- BIP32: المحافظ الهرمية الحتمية
- BIP44: مسار الاشتقاق وحدّ الفجوة (gap limit)
- BIP49: ypub، SegWit المتداخل
- BIP84: zpub، SegWit الأصلي
أسئلة شائعة
هل يمكن سرقة بيتكوين بمفتاح xpub؟
ليس بمفتاح xpub وحده: فهو لا يتيح التوقيع. أما إذا أُضيف إليه المفتاح الخاص لأحد عناوين الحساب، فنعم: الحساب كله.
هل يكفي مفتاح xpub لرؤية رصيدي؟
نعم. فهو يعطي كل عناوين الحساب، والبلوكتشين تعطي أرصدتها ومعاملاتها.
ماذا أفعل إذا تسرّب مفتاح xpub الخاص بي؟
لا يمكن إلغاؤه: من يملكه سيرى هذا الحساب دائماً. ومن الآن فصاعداً، استخدم حساباً جديداً لم يُشارَك مفتاح xpub الخاص به قط. أما التحويل من الحساب القديم، فسيبقى مرئياً.
ما الفرق بين xpub وypub وzpub؟
نوع عناوين الحساب: عناوين تبدأ بالرقم 1 لـ xpub، وبالرقم 3 لـ ypub (SegWit المتداخل)، وبـ bc1q لـ zpub (SegWit الأصلي).
تحكّم في ثروتك
حسابك جاهز خلال دقيقة، بلا كلمة مرور.