شراء العملة
الأسواق
فوري
العقود
الأرباح
الأنشطة
المزيد
reward-centerمنطقة المبتدئين
تحليل التقريرالتفاصيل
بحوث الصناعة

BitVM، إمكانيات العقود الذكية على الشبكة الرئيسية للبيتكوين

  • BTC0%
CoinEx logo
تم النشر بتاريخ 2023-11-01

في 9 أكتوبر، أصدر روبن لينوس، وهو مطور من ZeroSync، الورقة البيضاء لـ BitVM، والتي جذبت اهتمامًا كبيرًا من المجتمع. يقدم BitVM نموذجًا حوسبيًا جديدًا قادرًا على التعبير عن عقود بيتكوين كاملة تورينغ دون الحاجة إلى إجراء تعديلات على قواعد إجماع الشبكة.

العقود الذكية اللامركزية: القيود والأهداف

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

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

BitVM: حساب أي شيء على بيتكوين

في جوهر ابتكارها، تستخدم BitVM نظام Script الحالي في بيتكوين لتنفيذ البوابات المنطقية (وهذا يشمل بوابات AND وOR وNOT وXOR، مما يتيح عمليات مثل AND وOR وNOT وXOR) لبناء دوائر بولية معقدة بشكل تعسفي. تُستخدم هذه الدوائر لإجراء عمليات منطقية على المدخلات الثنائية وإعطاء مخرجات ثنائية؛ يمكن تنفيذ الحساب البولي باستخدام البوابات المنطقية لتنفيذ عمليات مثل AND وOR وNOT وXOR. على وجه التحديد، تستخدم BitVM عقود مقفلة بالوقت والتجزئة (HTLC) وTaproot (وهو تحديث ناعم لتحسين Script تم تفعيله في نوفمبر 2021) لتمثيل البوابات المنطقية الأساسية، مثل بوابات AND وOR. ثم تجمع BitVM هذه البوابات المنطقية الأساسية لبناء دوائر من أي تعقيد، مما يحاكي فعليًا جهاز كمبيوتر قابل للبرمجة على سلسلة كتل بيتكوين.

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

تصميم BitVM

التزام قيمة البت

التزام قيمة البت، وهو نص برمجي لبيتكوين، يستخدم عبارات if-else لتنفيذ مخطط التزام. تضمن هذه الآلية التشفيرية الأولية أن المرسل يمكنه تأكيد محتوى الرسالة قبل إرسالها، ولا يمكن تغيير المحتوى بمجرد الكشف عنه علنًا. يتضمن مخطط الالتزام هذا قيمتين للتجزئة، hash0 و hash1. يتم تحديد ما إذا كانت القيمة المرتجعة ستكون 0 أو 1 من خلال مقارنة قيمة تجزئة المدخل بهاتين القيمتين للتجزئة.

الشكل 1: تنفيذ ملموس لالتزام بت واحد

التزام قيمة البت

المصدر: https://bitvm.org/bitvm.pdf

التزام البوابة المنطقية

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

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

الشكل 2: تنفيذ بوابة NAND باستخدام التزامات قيمة البت

Implementation of a NAND gate

المصدر: https://biquanlibai.notion.site/BitVM-2b8557e0ea004d0cbc52951782bc9754

الشكل 3: التزام البوابة المنطقية لعملية NAND

Logic gate commitment

المصدر: https://bitvm.org/bitvm.pdf

يقوم البرنامج النصي بحساب قيمة NAND للمدخلين للتأكد من أنها تتطابق مع بت الإخراج الملتزم به.

التزام الدائرة الثنائية

يمكن لـ BitVM التعبير عن أي دائرة من خلال تكوين التزامات البوابات. يتم الالتزام بكل خطوة من خطوات التنفيذ في Tapleaf. يتم دمجها جميعًا في نفس عنوان Taproot، بحيث يمكن للمثبت تنفيذ أي بوابة في الدائرة. يتطلب تنفيذ البوابة من المثبت فتح التزام البوابة المقابل وتعيين قيم لبتات المدخلات والمخرجات الخاصة بها. على سبيل المثال، في الشكل 4، تعد A و B و C و D التزامات قيمة بت محددة مسبقًا، حيث يمثل كل منها بتًا واحدًا. ثم يتم تنفيذ العمليات المنطقية التي تتضمن بوابات NAND الثمانية. على سبيل المثال، إذا كانت A NAND B تنتج E، ويتم استخدام E كمدخل لبوابة NAND التالية، فسيكون الناتج النهائي للدائرة بأكملها TRUE. يربط هذا التصميم للدوائر المنطقية بوابات NAND لالتزامات قيمة البت ويحقق عمليات منطقية معقدة، مما يوفر تمثيلًا مدمجًا للحساب القابل للتحقق على سلسلة كتل البيتكوين.

الشكل 4: دائرة تحتوي على ثماني بوابات NAND مختلفة

A circuit with eight different NAND gates

المصدر: https://bitvm.org/bitvm.pdf

التحديات والاستجابات

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

دعونا نرى كيف يعمل هذا الآلية في حالة افتراضية. قام بول (المُثبت) وفيكي (المُتحقق) بالتوقيع المسبق على سلسلة من المعاملات. يمكن لفيكي بعد ذلك بدء تحدٍ (TX 2) عن طريق اختيار تحدٍ (hash7) من أحد أوراق Tapscript الخاصة بها. هذا يفتح لبول نصًا برمجيًا محددًا من Tapscript ويجبره على تنفيذه، مع مدخلات ومخرجات مفتوحة. يمكن إثبات خطأ أي ادعاء غير متسق بسرعة عن طريق تكرار هذا الإجراء لبضع جولات من الاستعلامات. إذا توقف المُثبت عن التعاون، يمكن للمُتحقق فتح صورة أولية للهاش يحتفظ بها لإجبار المُثبت على الرد على السلسلة. قد تتحقق كل جولة من الاستعلامات أو تدحض بوابة معينة. من خلال البحث الثنائي (خوارزمية تُستخدم لتحديد موقع عنصر معين في مصفوفة مرتبة)، يمكن للمُتحقق تحديد خطأ المُثبت بسرعة بعد بضع جولات فقط من التحدي والاستجابة. بمجرد تعارض التزامات المُثبت، يفوز المُتحقق على الفور بالتحدي ويأخذ الوديعة.

الشكل 5: سلسلة من المعاملات الموقعة مسبقًا لإجراء جولات متعددة من التحدي والاستجابة

سلسلة من المعاملات الموقعة مسبقًا

المصدر: https://bitvm.org/bitvm.pdf

يسمح هذا التصميم الدقيق لـ BitVM بإجراء التحقق على السلسلة لأي حساب معقد، مما يضمن كفاءة التعاون ويفرض عقوبات في حالة الاحتيال. إنه يُظهر إمكانية التحقق من الحساب التفاعلي الكامل لتورينغ في شبكة بيتكوين.

الجوانب الرئيسية لتصميم BitVM

الحساب خارج السلسلة والتحقق على السلسلة

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

البوابات المنطقية المعبر عنها باستخدام الأقفال التجزئية وبرامج البيتكوين النصية

يستفيد BitVM من الأقفال التجزئية ورموز البرامج النصية المدعومة من البيتكوين لتمثيل البوابات المنطقية الأساسية، مثل بوابات AND و NOT. يسمح ربط هذه البوابات المنطقية ببناء دوائر ذات تعقيد اعتباطي، مما يمكن من إجراء حسابات كاملة تورينغ.

آلية نظرية اللعبة للمثبت والمتحقق

تتضمن آلية التحقق الخاصة بـ BitVM، والتي تشبه Optimistic Rollup، تحديات وردود تفاعلية بين أطراف الحساب. في النهاية، يتم تأكيد نتيجة الحساب الصحيحة على السلسلة. إذا غش المثبت، يمكن للمتحقق تنفيذ عقوبات على سلسلة كتل البيتكوين. وبالتالي، يستخدم كل من BitVM و Optimistic Rollup آليات تفاعل مماثلة للتحقق على السلسلة، والفرق الوحيد هو أن BitVM يستخدم برامج البيتكوين النصية مباشرة لتنفيذ عملية التحدي والاستجابة التفاعلية.

التأثير الأدنى على السلسلة

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

لا حاجة لشوكة ناعمة

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

الخلاصة

يكمن أكبر ابتكار لـ BitVM في قدرته على تنفيذ التحقق الكامل لتورينغ دون تعديل بروتوكول البيتكوين الأساسي؛ يحقق ذلك من خلال الاستخدام الإبداعي للبرامج النصية، خاصة تلك التي تم تحسينها بواسطة Taproot. يتيح هذا التصميم الذكي التكامل السلس مع الشبكة الرئيسية للبيتكوين دون إدخال مشكلات توافق جديدة أو جعل البيتكوين أقل لامركزية.

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

المراجع:

https://bitvm.org/bitvm.pdf

https://github.com/supertestnet/tapleaf-circuits

https://biquanlibai.notion.site/BitVM-2b8557e0ea004d0cbc52951782bc9754