استخدام محفظة Ethereum لتوقيع المعاملات على Waves
فبراير 28, 2021
3 دقائق
تكشف هذه المقالة عن مفاهيم حسابات mirror وبوابات التفويض ، مما يتيح استخدام محفظة مرتبطة ببلوكتشين معين ، مثل Metamask إلى Ethereum ، للتفاعل بسلاسة مع شبكات blockchain الأخرى.
هذه نظرة عامة موجزة على أداة جديدة من شأنها زيادة تطوير التكنولوجيا بين السلاسل. اليوم ، نقدم طريقة آمنة ومأمونة لاستخدام محفظة مرتبطة ببلوكتشين معين ، مثل Metamask و Ethereum ، للتفاعل بسلاسة مع شبكات blockchain الأخرى.
يسعدنا تقديم ابتكار رئيسي يهدف إلى خفض رسوم blockchain وتبسيط تجربة المستخدم – انه حسابات Mirror. التكنولوجيا التي يقوم عليها هذا المفهوم بسيطة للغاية. لكل مستخدم حسابان من حسابات blockchain:
🔹الحساب الرئيسي في سلسلة الأصل مع بعض التوكنز في الرصيد.
🔹 حساب Mirror ، يتم إنشاؤه ديناميكيًا بواسطة النظام عندما يحاول المستخدم التفاعل مع blockchain غير الأصلي للمحفظة التي يستخدمها. يتطابق هذا الحساب مع المعاملات الموقعة من قبل مالك حساب Ethereum في سلسلة وجهة ، مثل Waves
توفر هذه الآلية حساب blockchain واحدًا قادرًا على الوصول إلى وظائف مختلفة في كل سلسلة والتي تدعم إنشاء حسابات mirror. بهذا المعنى ، نحن لسنا مقيدين بالسلاسل المستندة إلى EVM المتوافقة مع عقود Ethereum الذكية ، وهو أمر مهم لتوسيع تقنيات interchain خارج النظام البيئي لEthereum.
🔷 لماذا Waves ؟
السبب في اختيار Ethereum كسلسلة أصل هو ، أولاً وقبل كل شيء ، شعبيتها: غالبية المستخدمين في DeFi ينتمون إلى النظام البيئي لEthereum ، مما يوفر الشعبية والسيولة. ومع ذلك ، فإن رسوم غاز الإيثريوم مرتفعة حاليًا بشكل باهظ للمستخدمين العاديين لتحمل تنفيذ العقود الذكية.
من ناحية أخرى ، فإن بلوكتشين Waves لديها رسوم معاملات ثابتة أقل بكثير ، مما يعني أنه يمكن استخدام حساب Waves mirror لتنفيذ العقود الذكية وبتكلفة معقولة ، وإجراء العمليات الحسابية ، والحفاظ على الحالة.
🔷تفاصيل التنفيذ:
عرض توضيحي:
في هذا العرض التوضيحي ، يتم استخدام Metamask لتوقيع المعاملات باستخدام مفاتيح Ethereum الخاصة. العرض التوضيحي موجود حالياً هنا.
إنشاء عبارة مفتاحية لWaves جديدة في المتصفح:
انشاء حساب Waves من مصادرنا في المثال
أول إجراء ضروري في النظام هو إنشاء حساب Waves جديد عبر واجهة برمجة تطبيقات Waves. للمضي قدمًا ، يلزم أيضًا أن يوجد في حساب Mirror بطريقة ما على قدر صغير من Waves من اجل رسوم المعاملات. هذه مشكلة غير بسيطة يتم حلها حاليًا من خلال ما يسمى بمراقب رسوم المعاملات ولكن قد يتم حلها من خلال وسائل أخرى في المستقبل.
ملاحظة: يتم استدعاء إنشاء حساب Mirror جديد في Waves كإجراء خارج السلسلة ولكنه آمن مع ذلك لأنه يستخدم مكتبة Waves أصلية.
نشر الحسابات الذكية:
يوفر تنفيذ حسابات Mirror في Waves أقصى درجات الأمان نظرًا لوظيفة الحساب الذكي. يمكن لكل حساب ذكي أن يحمل منطق التحقق من المعاملة الخاص به ، على سبيل المثال ، منع المعاملات التي تتجاوز عتبة مبلغ معين ، أو التحقق من مرسل المعاملة. في هذه الحالة ، يمكن استخدام ecrecover (وظيفة لغة Ride) للتحقق من أن التوقيع الذي تم إنشاؤه بواسطة مالك حساب Ethereum يتوافق مع المفتاح العام لهذا الحساب.
تتمثل الفائدة الرئيسية لاستخدام حساب Waves الذكي في القدرة على تسليم المفتاح الخاص إلى حساب Mirror .
ملاحظة: تعدل طريقة Personal_sign الخاصة بواجهة برمجة التطبيقات Metamask البيانات عن طريق إلحاق بادئة قبل التوقيع ، مما يعني أن العقد على حساب Mirror يجب أن يُجري تعديلًا مماثلًا للبايت. يمكن إرسال بيانات معاملات ويفز base64 فقط. إذا لزم الأمر ، يمكن فك تشفيرها بسهولة لمعرفة تفاصيل المعاملة.
إرسال المعاملات على Waves :
في الختام ، يتيح هذا المزيج من بوابات التفويض و حسابات Mirror إرسال أي نوع من المعاملات على Waves باستخدام Metamask في الواجهة الأمامية ، مما يفتح فرصًا لا حصر لها لتحسين تجربة المستخدم بين السلاسل .
برهنة:
استنتاج:
نعتقد أن هذا النظام الذي يستخدم Gravity يعد خطوة مهمة نحو تجربة أكثر سلاسة بين السلسلة. في المستقبل ، يمكن توسيعه للسماح بالتفاعل مع شبكات blockchain الأخرى ، مثل BSC و Tron و Avalanche و Fantom و Heco. توفر هذه التقنية طريقة مهمة جديدة يمكنها توصيل المزيد من البلوكتشينز معًا ، مما يجعل استخدام التكنولوجيا عبر السلسلة سلسًا ومتماسكًا للمستخدمين النهائيين.