قنوات الحالة (State Channels)

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

بدلاً من ذلك، يستخدمون قنوات الحالة:

● تضع سارة 500 دولار في عقد ذكي على شبكة Ethereum.
● عندما تريد سارة إرسال دولار واحد إلى أحمد، فإنها توقع رسالة تشير إلى المبلغ الذي تريد إرساله إلى أحمد. تستمر في توقيع الرسائل حتى يصبح أحمد مستعدًا لسحب أمواله.
● يرسل أحمد رسالة جديدة تشير إلى أنه مستعد لإغلاق القناة. يتحقق العقد الذكي على شبكة Ethereum من توقيعات سارة و أحمد، ومن ثم يدفع لأحمد المبلغ المستحق، ويعيد الباقي إلى سارة.

State Channels

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

في هذه الحالة، يتم استخدام سلسلة Ethereum فقط كطبقة تسوية لمعالجة المعاملة النهائية بدفع دفعة واحدة. هذا يرفع العبء عن الشبكة الأساسية.

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

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

إذن، لماذا لا يكون هذا هو الحل النهائي؟ حسنًا، هناك حدود لما يمكن أن تفعله قنوات الحالة.

حدود وسلبيات قنوات الحالة

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

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

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

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

كما هو الحال دائمًا، إذا كانت لديك أي أسئلة أو شعرت بالتعثر أو أردت فقط أن تقول مرحبًا، فقم بالإنضمام على Telegram او Discord وسنكون أكثر من سعداء لمساعدتك!