تقدم Electrum 2.0 طريقة محسّنة لتسلسل المعاملات. تتيح هذه الطريقة الجديدة للمستخدمين مشاركة المعاملات غير الموقعة أو الموقعة جزئيًا مع موقّعين آخرين أو تخزينها في أجهزة تخزين باردة.
يوجد التغيير الرئيسي في تنسيق التسلسل هذا في مدخلات المعاملة. على وجه التحديد، تقوم Electrum بتوسيع pubkey
لتضمين معلومات إضافية. تُمكِّن هذه التوسعة المحفظة من التعامل مع المعاملات التي لم يتم توقيعها بالكامل بعد، مما يسهل إدارة عمليات الإعدادات متعددة التوقيعات وعمليات التخزين البارد.
المفاتيح العامة الموسعة
تبدأ مفاتيح بيتكوين العامة القياسية ب 0x02
, 0x03
أو 0x04
. هذه هي المفاتيح العامة العادية المضغوطة أو غير المضغوطة المستخدمة في معاملات البيتكوين.
تبدأ المفاتيح العامة الموسعة بـ 0xFF
, 0xFE
أو 0xFD
. تستخدمها Electrum لتوفير المزيد من المعلومات حول أصل المفتاح ومسار اشتقاقه.
هناك ثلاثة أنواع من المفاتيح العامة الموسعة:
- المفاتيح التي تبدأ ب
0xFF
هي مفاتيح BIP32 العامة الموسعة (xpubs) مع مسار اشتقاقها. - المفاتيح التي تبدأ بحرف
0xFE
استخدام طريقة الاشتقاق القديمة الخاصة ب Electrum، والتي تجمع بين مفتاح عام رئيسي ومسار اشتقاقه. - المفاتيح التي تبدأ ب
0xFD
تمثل مفاتيح عامة غير معروفة حيث لا يُعرف سوى عنوان البيتكوين.
الأنواع
- اشتقاق BIP32 (يبدأ بـ
0xFF
): تتكون هذه الصيغة من مفتاح عام موسع (xpub) يبلغ طوله 78 بايت، متبوعًا بمسار اشتقاق BIP32. يُمثَّل مسار الاشتقاق كسلسلة من الأعداد الصحيحة المكونة من 4 بايت، بحيث يكون الطول الإجمالي ضعف عدد خطوات الاشتقاق. - اشتقاق الإلكتروم الموروث (يبدأ بـ
0xFE
): يستخدم هذا التنسيق الأقدم مفتاحًا عامًا رئيسيًا (mpk) يبلغ طوله 64 بايت، متبوعًا بقيمة اشتقاق من 4 بايت. هذه الطريقة خاصة بالإصدارات السابقة من Electrum. - عنوان البيتكوين فقط (يبدأ بـ
0xFD
): يُستخدم هذا التنسيق عندما لا يتوفر المفتاح العام الكامل، ولكننا نعرف عنوان البيتكوين أو تجزئة النص البرمجي المقابل له. يخزن تجزئة 20 بايت 160 من النص البرمجي الناتج. يفترض هذا التنسيق أن الموقّع المشارك يمكنه توفير المفتاح العام الفعلي عند الحاجة.
تسمح هذه التنسيقات الموسعة ل Electrum بالتعامل مع أنواع مختلفة من المحافظ وطرق الاشتقاق، مما يدعم كلاً من المحافظ الهرمية الحديثة القائمة على BIP32 وهياكل محفظة Electrum القديمة. إن 0xFD
يوفر التنسيق أيضًا مرونة عند العمل مع بيانات المعاملات المعروفة جزئيًا.
المفاتيح العامة القياسية
تستخدم البيتكوين تنسيقات محددة لتمثيل المفاتيح العامة. هذه التنسيقات معترف بها كمعيار عبر شبكة البيتكوين:
المفاتيح العامة المضغوطة: تبدأ إما بـ 0x02
أو 0x03
متبوعًا ب 32 بايت من البيانات. تشير بايت البداية إلى ما إذا كانت y
-إحداثي نقطة المفتاح العام على المنحنى الإهليلجي زوجي (0x02
) أو فردي (0x03
).
مفاتيح عامة غير مضغوطة: تبدأ بـ 0x04
متبوعًا ب 64 بايت من البيانات. يتضمن هذا التنسيق كلاً من x
و y
إحداثيات نقطة المفتاح العام على المنحنى الإهليلجي.