1–800-Ethereum: شبكة محطات الغاز للمعاملات المجانية

“الانتصار الأكبر هو الذي لا يتطلب معركة .” – صن تزو

احتاجت TabooKey إلى طريقة لامركزية غير موثوقة لإدخال مستخدمين جدد ليس لديهم ETH لدفع رسوم الغاز. مما أصابنا بالإحباط ، لم نتمكن من إيجاد حل من شأنه أن يمنحنا الأمان وسهولة الاستخدام. أخيرًا ، من خلال النظر إلى المشكلة من زاوية جديدة ، كان لدينا لحظة eureka التي سمحت لنا بالتوصل إلى نهج أبسط وأكثر لا مركزية وقوة يوفر واجهة مجانية للأغراض العامة للعقود الذكية. نحن نشارك هذا حتى يتمكن كل من يريد إنشاء تطبيقات dapp مع تجارب مستخدم رائعة من الاستفادة!

مفارقة إعداد dapp

تكتسب Dapps قيمة من خلال تأثير الشبكة. يحصل المستخدمون الأوائل على القليل من القيمة ، ولكن تزداد القيمة مع انضمام المزيد من المستخدمين. ومع ذلك ، يحتاج المستخدمون إلى القفز من خلال الأطواق – اذهب إلى البورصة ، واجتاز عملية اعرف عميلك وانتظر الموافقة ، وقم بتحويل الأموال من البنك الذي يتعامل معه ، وشراء ETH ، وتثبيت MetaMask ، وتعلم كيفية استخدامه وتحويل ETH إليه ، وما إلى ذلك. ، فقط للبدء في استخدام تطبيق dapp الذي يقدم القليل من القيمة في تلك المرحلة. النتيجة: المستخدمون لا يأتون ولا تنطلق dapps. حتى موقع Facebook لم يقدم سوى القليل من القيمة لمستخدميه الأوائل ، ولكن على الأقل كان من السهل الانضمام إليه ومعرفة ما إذا كان قد بدأ في الظهور.

وهناك مفارقة أخرى في هذا التناقض. يتطلب التفاعل مع تطبيق لامركزي شراء ETH في بورصة مركزية باستخدام عملية اعرف عميلك KYC ، والتي تستثني السكان غير المتعاملين مع البنوك. إنه يتعارض مع روح blockchain واللامركزية.

لكن انتظر ، ألا تحل الأطر أو المقترحات meta-tx الحالية المشكلة؟

ما هي المعاملات الوصفية؟

فكرة المعاملات الوصفية ليست جديدة: توقيع معاملة بمفتاح لا يمتلك ETH ، ثم تغليفها بمعاملة أخرى موقعة بواسطة مفتاح يمتلك ETH ، لدفع ثمن الغاز. عقد المستلم “يقشر” المعاملة الخارجية ويستخدم المعاملة الداخلية.

يوجد حاليًا نوعان من حلول meta-tx:

مرحلات مركزية

تنشر بعض dapps عددًا واحدًا أو عددًا صغيرًا من المُرحِّلين للتوسط للوصول إلى عقودهم. هنا تكمن مفارقة أخرى تتطلب مرحلًا مركزيًا (أو عددًا صغيرًا من المرحلات) لاستخدام تطبيق لامركزي. قد يؤدي مهاجمة أو عطل هذا المرحل إلى فرض رقابة على بعض أو كل المعاملات على dapp. المرحل هو نقطة فشل واحدة. نتيجة طبيعية: تطبيق dapp لامركزي مثل أكثر مكوناته مركزية.

المرحلات اللامركزية

الفكرة التي تظهر باستمرار هي شبكة لامركزية من المُرحِّلين الذين يراقبون مجموعة معاملات ثانوية ويعملون كعاملين ثانويين. يعانون جميعًا من مشكلة التزامن: لا يمكن للمُرحِّل سوى ترحيل معاملة واحدة في كل مرة ، لذلك يختار كل مُرحِّل المعاملة (نفسها) الأكثر ربحية ويقوم بترحيلها. واحد منهم فقط سينجح ، وكل الآخرين سوف يعودون ويخسرون المال ، في حين أن المعاملات الأقل ربحًا لا يتم “تعدينها” أبدًا. تتضمن محاولات حل مشكلة القطيع الرعد استخدام بروتوكولات الإجماع مثل إثبات العمل. نتيجة لذلك ، يجب تعدين المعاملات غير الأثيرية مرتين ، وتستغرق وقتًا أطول بكثير من المعاملات العادية. علاوة على ذلك ، تزداد تكلفة تشغيل كل مرحل ، مما يؤدي بدوره إلى زيادة رسوم المعاملات.

هناك مشكلة أخرى في نهج تجمع المعاملات الثانوية وهي الوصول من الشبكات المقيدة / الموصولة بالوكيل (مثل مؤسسة أو حكومة) ، أو من أجهزة الجوال ذات المعالجة الخلفية المحدودة. غالبًا ما يتم حظر بروتوكولات P2P في مثل هذه السيناريوهات ، ويجب أن تعود التطبيقات إلى http.

هل يمكننا حل هذه المشكلات دون أن نتحول إلى مركزية؟

ماذا لو تمكنا من تحقيق اللامركزية دون الاضطرار إلى حل مشكلة القطيع الرعد على الإطلاق باستخدام http فقط؟ كما يعلمنا سن تزو ، أكبر انتصار هو ذلك الذي لا يتطلب معركة .

الأفكار الرئيسية التي أدت إلى الحل:

ما هي شبكة محطات الوقود؟

تعد شبكة محطات الوقود طريقة لا مركزية ولا يثق بها لإضافة مكالمات ذات رسوم عكسية إلى العقود الذكية. يعتني Dapp بالدفع مقابل المعاملات التي تم التحقق منها ، بحيث يمكن للمستخدمين البدء في استخدام dapp على الفور.

اعتمادًا على نموذج العمل الخاص بـ dapp ، قد يفرض رسومًا على المستخدمين من خلال وسائل أخرى ، مثل بطاقات الائتمان ، أو قد يرعى المعاملات أثناء التقاط القيمة في مكان آخر.

ما هي شبكة محطات الغاز؟

إنه ليس حل المستوى 2. إنها تستخدم شبكة L2 لتقديم معاملات L1 etherless بشكل موثوق.

إنه ليس تعديل بروتوكول ولا يتطلب هارد فورك أو حتى شوكة لينة. إنه محايد لتطبيق L1 وسيستمر في العمل دون تغيير مع تطور Ethereum. لذلك ، يمكن أن تبدأ dapps في استخدامه على الفور وستتسع الشبكة لاستيعابها. هناك GSN عاملة بالفعل على شبكة اختبار Ropsten.

كيف يعمل؟

محطات الوقود

تتكون الشبكة من محطات وقود (مرحلات) ، وتنشر رسومها وعناوين URL على blockchain ، وتقبل المعاملات الإلكترونية من المستخدمين ، وتعبئتها بالغاز من خلال التوقيع عليها ، وإعادتها إلى المستخدم ، ونقلها إلى blockchain والحصول على تعويض. لجهودهم. محطات الوقود والمستخدمون لا يثقون ببعضهم البعض ، مما يقودنا إلى…

مرساة الثقة

يعمل عقد ذكي واحد مفتوح المصدر ، RelayHub ، كمسجل لعمليات الترحيل ، ويتوسط في المعاملات بين عقود المرحلات وعقود dapp ، وينشر الأحداث التي تساعد المستخدمين في العثور على المرحلات وتقييم سمعتهم. يحتفظ RelayHub بإيداعات صغيرة من dapps ويستخدمها لتعويض المرحلات عن المعاملات التي تقبلها dapps.

يلزم المرحلات لمشاركة ETH في RelayHub عند التسجيل. يتم استخدام الحصة لمنع بعض هجمات DoS أو الرقابة ، الموضحة في قسم الهجمات من EIP 1613. تكسب المرحلات الصادقة رسوم المعاملات ، وتفقد المرحلات غير النزيهة حصتها.

يعتبر التفاعل الكامل بين المستخدم والترحيل جلسة http قصيرة العمر. في نهاية معاملة http هذه ، يحصل المستخدم على ضمان أداء يحافظ على صدق الترحيل ، لذلك يعرف المستخدم أن المعاملة قد تم ترحيلها دون الحاجة إلى انتظار حدوث التعدين. يمكن اكتشاف طلب فاشل على الفور ، ويتابع المستخدم إلى الترحيل التالي. تعتبر الشبكة مقاومة للرقابة طالما أن هناك تتابع صادق واحد على الأقل.

تطبيق المستخدم

من وجهة نظر المستخدم ، يختار التطبيق (على الويب أو الهاتف المحمول) الترحيل بشفافية ويسلم المعاملة إلى blockchain. وراء الكواليس ، يختار التطبيق مرحلًا باستخدام المعلومات الموجودة على السلسلة حول رسوم المعاملات والسمعة المستمرة ، ويحاول إرسال المعاملة من خلال الترحيل المحدد ، ويعرف على الفور ما إذا كان الطلب قد تم التعامل معه ، أو يعيد المحاولة باستخدام التتابع التالي. تتيح عملية التحقق الفوري إمكانية التكرار السريع ، لذا لا يمكن أن تتسبب عمليات الترحيل المعطلة أو الضارة في حدوث تأخيرات طويلة ، ويتم تسليم المعاملة في الوقت المناسب.

التفاصيل الفنية الكاملة ، والهجمات وعمليات التخفيف ، خارج نطاق هذا المنشور ، وهي متوفرة في EIP 1613.

كيف يمكن لتطبيق dapp الخاص بي استخدامه؟

تسمح شبكة محطات الغاز لـ dapp بقبول مكالمات التكلفة العكسية والدفع مقابل غاز المعاملات ، مما يدعم المستخدمين غير الأثريين. يعتمد نموذج التمويل المحدد على نموذج عمل dapp. دعنا نوضح ذلك من خلال بعض الأمثلة:

لا تفرض شبكة محطات الوقود أي قيود على كيفية اختيار dapp لإدارة تمويلها. إنه يحل فقط مشكلة UX ، ويسمح بإعداد المستخدمين بسرعة ، ويمنح dapps الأدوات لإدارة حساباته الخاصة.

أريد أن أجربه! ماذا علي أن أفعل؟

التغيير المطلوب في عقد dapp ضئيل للغاية. يحتاج الأمر فقط إلى التعرف على RelayHub ، لقبول المعاملات أو رفضها ، والحصول على المرسل الحقيقي ، والحفاظ على إيداع صغير من ETH لتعويض المرحلات.

تعد التغييرات التي يتم إجراؤها على التطبيق ضئيلة أيضًا ، حيث يتم ربط web3 بالعثور على المرحلات واستخدامها بدلاً من إرسال المعاملات العادية. يمكن للخطاف استخدام MetaMask إذا تم تثبيته أو إنشاء واستخدام مفاتيح سريعة الزوال.

أخذنا عينة Metacoin ، وقمنا بتعديلها لدعم شبكة الترحيل الخاصة بنا ونشرناها في شبكة Ropsten. يستخدم مرحلاتنا المنتشرة للوصول إلى Ropsten RelayHub. يمكنك أيضًا إلقاء نظرة على بعض العينات في مستودع GSN ،

سنركز في مشاركاتنا التالية على الجوانب الفنية لجعل تطبيق dapp الحالي يستخدم شبكة محطات الغاز.

< الاستنتاج

تحل شبكة محطات الغاز أحد أكبر تحديات تجربة المستخدم التي تواجهها Ethereum – وهي إعداد المستخدمين بسرعة وبدون عناء ، مما يساعد dapps على التوسع بسرعة. إنها تفعل ذلك بطريقة غير موثوقة ولا مركزية ، ودون الحاجة إلى أي تغييرات في كيفية عمل Ethereum.

تم تصميم الشبكة عن قصد لخدمة المجتمع وليس الحصول على قيمة. قررت TabooKey نشرها كـ EIP 1613 وتنفيذ مجاني. الطريقة الوحيدة للربح من الشبكة هي تشغيل محطة وقود (خادم ترحيل) والمنافسة في السوق الحرة ، بناءً على رسوم المعاملات ومقاييس الموثوقية. بمجرد نشره على mainnet ، لن نكون متحكمين في الشبكة. مع زيادة عدد تطبيقات dapps التي تستخدم الشبكة ، نتوقع زيادة الشبكة مع انضمام المزيد من المرحلات لتحقيق ربح.