الانتقال إلى المحتوى

محفظة متعددة التوقيعات

تعرّف إلى كيفية توزيع محفظة M-of-N متعددة التوقيعات لصلاحية المعاملات، والفرق بين التوقيع المتعدد القائم على النص البرمجي والعقد الذكي، ومخاطر الموقّعين والتنفيذ والوحدات والاسترداد المتبقية.

آخر تحديث

لأغراض تعليمية فقط؛ وليس نصيحة استثمارية أو متعلقة بالحفظ أو قانونية أو أمنية. قد تفقد المحفظة متعددة التوقيعات الأموال أو تصبح غير قابلة للاستخدام بسبب اختراق الموقّعين أو المعاملات الضارة أو الوحدات غير الآمنة أو عيوب العقد أو فقدان النصاب. قد تكون معاملات الأصول الرقمية غير قابلة للعكس.

الإجابة المباشرة

تتحكم المحفظة متعددة التوقيعات، أو multisig، في حساب أو مخرج قابل للإنفاق بقاعدة تتطلب M موافقات على الأقل من N مفاتيح عامة أو حسابات مالكين مخوّلة. تقبل قاعدة 2-of-3، مثلًا، أي صلاحيتين صالحتين من مجموعة من ثلاث. يزيل ذلك المفتاح الخاص الواحد بوصفه نقطة التحكم الوحيدة، لكنه لا يجعل كل معاملة معتمدة آمنة.

لا يقسّم التوقيع المتعدد التقليدي مفتاحًا خاصًا واحدًا بين الموقّعين. يتحكم كل موقّع عادة في مفتاح أو حساب منفصل، ويتحقق النص البرمجي أو العقد من عدة موافقات. أما أنظمة التوقيع ذي العتبة أو MPC فيمكنها إنتاج توقيع واحد من حصص مفاتيح موزعة؛ ويختلف ظهورها على السلسلة ونموذج الثقة فيها.

طريقة التنفيذ مهمة. يستطيع Bitcoin فرض شروط إنفاق متعددة التوقيعات في نصوص المعاملات. وفي Ethereum والشبكات القابلة للبرمجة المشابهة، يكون التوقيع المتعدد الشائع حساب عقد يحدد رمزه المالكين والعتبة وقواعد التنفيذ والامتدادات الاختيارية. وبخلاف الحساب المملوك خارجيًا، يتحكم الرمز في حساب العقد لا مفتاح خاص واحد.

تعبّر عتبة M-of-N عن حدود الاختراق والتوافر معًا. يستطيع إعداد 3-of-5 الاستمرار عند عدم توافر صلاحيتين، لكن أي ثلاث صلاحيات صالحة يمكنها اعتماد الإنفاق. ولا تكون العناوين المختلفة مستقلة إذا استطاع شخص واحد أو مسؤول أجهزة أو حساب سحابي أو موقع نسخ احتياطي أو جهة حفظ التحكم في عدد كافٍ منها.

آلية العمل

  1. تحقق من الصلاحية قبل الاقتراح. أكّد الشبكة والحساب أو المخرج، ثم افحص النص البرمجي أو العقد المنشور ومجموعة المالكين والعتبة وقواعد nonce أو التسلسل، وكل وحدة وguard وfallback handler ومسار استرداد وصلاحية ترقية يمكنها تنفيذ المعاملات أو حظرها.
  2. أنشئ الطلب الدقيق وفك ترميزه. تحقق من الوجهة والأصل والقيمة وcalldata أو النص البرمجي ونوع العملية وnonce والرسوم ومحتويات أي دفعة. حاكِ استدعاءات العقود المعقدة عند توافر أدوات موثوقة، وتأكد من أن كل موقّع يراجع ما يخوّله التوقيع فعلًا لا تسمية الواجهة.
  3. اجمع الموافقات في نطاقات تحكم مستقلة. يتحقق الموقّعون من ملخص المعاملة نفسه على أجهزة موثوقة ويتواصلون عبر قنوات موثّقة. لا تتطلب أي عملية موافقة مشروعة كشف عبارة الاسترداد أو المفتاح الخاص.
  4. نفّذ الطلب المعتمد. قد يجعل بلوغ العتبة الاقتراح قابلًا للتنفيذ فقط. ولا يزال على منفّذ بثه أو إرساله وقد يحتاج إلى دفع رسم للشبكة. قد يمنع nonce قديم أو اقتراح منافس أو تغير حالة العقد أو نقص الرسم أو فشل الاستدعاء التنفيذ.
  5. تحقق من الاكتمال من حالة السلسلة. انتظر سياسة التأكيد المطلوبة، وافحص payload المنفذ ونتيجته، وأكد الأرصدة وإعداد المالكين والأحداث عند الحاجة. أعد تقييم الاقتراحات المعلقة بعد أي تغيير في المالك أو العتبة أو الوحدة أو السياسة.

مثال

تستخدم خزانة حسابًا ذكيًا متعدد التوقيعات 3-of-5 يملكه A وB وC وD وE في نطاقات تحكم منفصلة. ولدفعة قدرها 10,000 USDC، يسجّل الاقتراح الشبكة والحساب والمستلم وعقد الرمز والمبلغ وcalldata وnonce وسياسة الرسوم الصحيحة. يفك A وC وE ترميز الطلب نفسه بصورة مستقلة قبل اعتماده.

لا تنقل الموافقات وحدها الأموال. يرسل منفّذ المعاملة؛ وبعد تأكيدها يتحقق الفريق من نتيجتها ورصيد الخزانة بدل الاعتماد على إشعار واجهة المحفظة. ويُحتفظ بالاقتراح والموافقات وتجزئة المعاملة وأدلة المراجعة كسجل تدقيق.

إذا اشتُبه لاحقًا في اختراق مفتاح B، يتبع النصاب المتبقي غير المخترق إجراء تدوير مالكي الحساب المنشور ويتحقق من المجموعة النهائية على السلسلة. كما يراجع الفريق الاقتراحات المعلقة والوحدات والبدلات وصلاحيات الاسترداد والسلاسل الأخرى، لأن إزالة B لا تعكس معاملات سابقة ولا تلغي صلاحية مُنحت عبر مسار آخر.

المخاطر والضوابط

  • الحفظ المترابط. قد تفشل عدة مفاتيح معًا إذا اشتركت في شخص أو جهاز أو خزنة كلمات مرور أو مسؤول أو موقع أو مزود أو سر استرداد. ارسم نطاقات التحكم واختبر الاسترداد دون تجميع صلاحية تكفي لبلوغ العتبة.
  • payload ضار أو أسيء فهمه. قد يعتمد نصاب صالح عنوان مهاجم أو موافقة غير محدودة لرمز أو delegate call أو دفعة ضارة. فك ترميز الطلب كاملًا وتحقق منه بصورة مستقلة؛ واستخدم المحاكاة دليلًا مساعدًا لا ضمانًا.
  • فقدان النصاب وتأخره. قد تمنع المفاتيح المفقودة أو الأشخاص غير المتاحين أو النزاعات أو انقطاع الشبكة أو العتبة المرتفعة إجراءً عاجلًا أو تقفل الأصول نهائيًا. حافظ على جهات اتصال موثّقة وتعاقب مكتوب ونسخ احتياطية مختبرة وتصميم استرداد واضح.
  • صلاحية مخفية أو متجاوزة. يمكن للوحدات وguards وfallback handlers وsession keys وrelayers وعقود الاسترداد ومسؤولي الترقية تجاوز عتبة المالكين العادية أو منع تنفيذها. احصر هذه المسارات وعامل كل تغيير صلاحية معاملة عالية المخاطر.
  • مخاطر العقد والنشر. قد تقوّض الأخطاء والتهيئة غير الآمنة وأخطاء الوكيل أو الترقية والنشر على شبكة خاطئة السياسة المقصودة. تحقق من العناوين والرمز وقيّم التدقيق في سياقه وقلّل الامتدادات وراقب تغييرات الإعداد.
  • سباق الاختراق وإنهاء الوصول غير المكتمل. قد يتصرف موقّع مخترق قبل تأكيد إزالته، ولا تلغي إزالة المالك الإجراءات المنفذة أو الصلاحيات الخارجية. استخدم خطة حوادث وراقب الحالة باستمرار وألغِ الوصول المؤسسي وعلى السلسلة كلًا على حدة.

مفاهيم خاطئة شائعة

  • «المزيد من الموقّعين يعني دائمًا أمانًا أكبر». قد تقلل المجموعة الأكبر تركز السلطة، لكنها تزيد مخاطر التنسيق والتصيد والتوافر. اختر المالكين والعتبة وفق نموذج التهديد والقدرة التشغيلية.
  • «يتحكم خمسة أشخاص مستقلين في محفظة 3-of-5». تعد السلسلة المفاتيح أو حسابات المالكين الصالحة، لا الأشخاص. قد تجعل الأجهزة أو النسخ الاحتياطية أو المسؤولون أو جهات الحفظ المشتركة مالكين منفصلين اسميًا ضمن نطاق واحد.
  • «التوقيع المتعدد هو نفسه المصادقة الثنائية أو MPC». يمكن لهذه التصاميم توزيع التحكم، لكنها تختلف في بيانات الاعتماد ومسارات التحقق والأدلة على السلسلة وافتراضات الاسترداد.
  • «يكتمل التحويل بمجرد اعتماد العتبة». الموافقة وقابلية التنفيذ والإرسال والإدراج والتأكيد حالات منفصلة. قد يظل الطلب معلقًا أو يفشل.
  • «يمنع التوقيع المتعدد السرقة واستغلال العقود». يقيّد فقط مسارات الصلاحية المشفّرة في تنفيذه. وقد يسبب نصاب صالح أو وحدة ذات امتياز أو عقد ضعيف أو مسار استرداد غير آمن خسارة غير قابلة للعكس.

مواضيع ذات صلة

المصادر

التنقل

ابحث في الويكي...