التوقيع في بيئة الإنتاج

لا تُنفَّذ المعاملة إلا إذا حملت توقيعًا صالحًا من كل موقِّع مطلوب. خلال التطوير المحلي، تحتفظ عادةً بذلك المفتاح في صورة Keypair وتوقّع مباشرةً. أما في بيئة الإنتاج فالسؤال الجوهري مختلف: أين يُخزَّن المفتاح الخاص، ومن يملك صلاحية تفويض التوقيع به؟

لا تُضمِّن المفاتيح الخاصة في كود جانب العميل، ولا تحزمها ضمن الواجهة الأمامية، ولا تلتزم بها في نظام التحكم بالمصدر. أي شخص يحصل على المفتاح يكتسب تحكمًا كاملًا في أموال ذلك الحساب.

أساليب التوقيع

الأسلوبمكان تخزين المفتاحمن يوقّعالأنسب لـ
keypair محليملف أو متغير بيئة على الجهازالكود مباشرةًالتطوير المحلي، الاختبارات، التكامل المستمر CI
محفظة المتصفحمحفظة المستخدم النهائي (مثل Phantom، Solflare)المستخدم النهائي، لكل معاملةتطبيقات dApps الأمامية التي يوقّع فيها المستخدمون على معاملاتهم
Cloud KMS / HSMخدمة مفاتيح مدعومة بالأجهزة (AWS KMS، GCP KMS، Vault)الخلفية تطلب توقيعًا من الخدمةخدمات الخلفية، عمليات الخزينة، البيئات الخاضعة للتنظيم
محافظ مُدارة / MPCموزَّعة أو محفوظة لدى بنية تحتية مزوِّد الخدمةيشارك المزوِّد في التوقيع وفقًا لسياستكالمحافظ المضمَّنة، سير عمل الموافقة، الحضانة المؤسسية

keypair المحلي هو النهج الوحيد الذي يضع مادة المفتاح الخام داخل تطبيقك. كل نهج إنتاجي يحتفظ بالمفتاح في بنية تحتية مخصصة ويطلب من تلك البنية التوقيع نيابةً عنك.

التوقيع من جانب الخادم

عندما يحتاج الخادم إلى التوقيع — سواء لدفع الرسوم أو إرسال معاملات البرنامج أو إدارة الخزينة — استخدم خلفية إدارة مفاتيح مخصصة بدلاً من keypair خام. تُشغّل مؤسسة سولانا Keychain، وهي مكتبة توقيع موحدة (بلغتَي Rust وTypeScript) تُوفّر واجهة SolanaSigner واحدة عبر جميع الخلفيات الواردة في الجدول أعلاه: Memory وHashiCorp Vault وAWS KMS وGCP KMS وFireblocks وPrivy وTurnkey وCDP وCrossmint وDfns وPara وOpenfort وUtila.

نظرًا لأن الواجهة متطابقة عبر جميع الخلفيات، يمكنك التطوير محليًا باستخدام مفتاح في الذاكرة والتبديل إلى خلفية إنتاجية عبر الإعدادات، dون الحاجة إلى إعادة كتابة كود التطبيق. يتوافق Keychain مع @solana/kit و Rust SDK.

للاطلاع على قائمة التحقق الإنتاجية الكاملة — إدارة المفاتيح وأمان RPC والمراقبة — راجع جاهزية الإنتاج.

Is this page helpful?

جدول المحتويات

تعديل الصفحة