بحث CoinEx: معضلة أمن الأصول الرقمية على البلوكتشين: الأسباب التي تستدعي استخدام الوقت الفعلي كطبقة أمان إضافية
- ETH0%
- DOT0%
- ATOM0%
- LUNA0%
- BTC0%
منذ صيف التمويل اللامركزي (DeFi) في عام 2020، وبدفع من التطور المستمر للبنى التحتية للبلوكتشين، تطورت بروتوكولات DeFi من المبادلة إلى الإقراض إلى التعدين المحصولي وصولاً إلى بروتوكولات أكثر تعقيداً، تغطي استراتيجيات التعدين المحصولي AMM (صناعة السوق الآلية) المبنية على مشتقات البلوكتشين، ومنصات الإقراض المهيكلة المبنية على البنية التحتية للإقراض، وبروتوكولات الإقراض على السلسلة التي تربط الضمانات في العالم الحقيقي، وغيرها.
أحد العوامل الرئيسية وراء ازدهار ابتكار DeFi هو مفهوم يسمى القابلية للتركيب. في معظم الأحيان، عندما يتم إطلاق بروتوكول DeFi جديد، يتم أيضاً إتاحة معظم شفرته المصدرية للجمهور. وهذا يعني أنه يمكن بسهولة تركيب الشفرات المصدرية للعقود الذكية من بروتوكول DeFi واحد أو أكثر معاً لإنشاء بروتوكول جديد. إنها تعمل مثل قطع الليغو - يمكن استخدام القطع بأشكال مختلفة لبناء مشاريع فريدة، مما يقلل بشكل كبير من تكلفة الابتكار.
من المدهش أنه في ضوء هذه الابتكارات الهائلة، لم يشهد عدد مستخدمي DeFi أي نمو كبير منذ عام 2020. وفي الوقت نفسه، لم تضع المؤسسات التقليدية السيولة في مجال البلوكتشين. أحد الأسباب الرئيسية لذلك هو المخاوف الأمنية المتعلقة بـ DeFi.
يأتي التمويل في العالم الحقيقي مع نظام آمن راسخ. على سبيل المثال، عند نقل الأموال من البنك أ إلى البنك ب، ستكون هناك شاحنات نقد وضباط شرطة مسلحون للحفاظ على سلامة الأموال، وهي عملية مطمئنة. علاوة على ذلك، ستكون البنوك مسؤولة أيضاً عن ممتلكات العميل وستقدم تعويضاً عن أي خسارة خلال العملية. ومع ذلك، يختلف DeFi عن النظام المالي التقليدي. العقود الذكية غير قابلة للتغيير بطبيعتها. إنها في الأساس صناديق سوداء لن ترسل سجلات مقروءة، لذلك لا يمكن للناس الحصول على رؤية واضحة للعمليات الداخلية. معظم عمليات تدقيق العقود الذكية لا تساعد لأنها تركز فقط على الأشكال المعروفة من الهجمات، وليس على أنواع جديدة من العيوب التي من المحتمل جداً أن تحدث. في غضون ذلك، تصف العديد من بروتوكولات DeFi نفسها بأنها منتج "استخدم على مسؤوليتك الخاصة". هذا يمكن أن يكون مخيفاً للمستخدمين العاديين ويجعلهم لا يثقون في وضع معظم ودائعهم المصرفية في نظام DeFi البيئي. لم يخيب DeFi آمال أولئك الذين لم يثقوا به. حتى الآن، شهد DeFi 82 خرقاً أمنياً، بمبلغ مسروق أولي يتجاوز 1.8 مليار دولار. على وجه الخصوص، القرض الفلاش هو الهجوم الأكثر شيوعاً، حيث يمثل 33 حالة. أحد الأسباب الأمنية وراء هجوم القرض الفلاش هو عدم وجود مفهوم الوقت الدقيق وآلية التأكيد في سلاسل الكتل . سنتناول الأسباب المحددة في الفصول التالية.
:quality(80)/2022-04-07/E90C1DDC531EA07B6D1D87B85257B6BC.png)
I. الوقت وشبكة الوقت للحواسيب
دعونا ننظر أولاً إلى كيفية عمل الوقت في برامج الكمبيوتر التقليدية.
الوقت هو مفهوم أساسي لبرامج الكمبيوتر. بدون مفهوم الوقت، يستحيل الوصول إلى أي موقع ويب يدعم TLS، أو إنشاء عشوائية لخوارزميات معينة، أو تبادل الأسرار، أو مصادقة تراخيص Windows. نحن نأخذ حفظ الوقت على أجهزة الكمبيوتر كأمر مسلم به، لكن تبادل وتتبع الوقت هو مشكلة صعبة للغاية عندما يتعلق الأمر بالعمليات الفعلية.
الوقت هو في الأساس تمثيل للحالة العالمية الحالية للكون. وهذا يعني أنه في أي لحظة معينة، يجب أن يشترك كل كيان في نفس القيمة بالضبط. هذه مشكلة كبيرة بالنسبة لأجهزة الكمبيوتر: لنفترض أن هناك ساعة ذرية ضخمة ودقيقة للغاية في مركز الكون، تبث بيانات الوقت عبر الإنترنت. المشكلة خلال هذه العملية هي أن نقل البيانات يستغرق وقتاً في حد ذاته. عندما يتلقى جهاز بيانات الوقت عبر الإنترنت ويطبقها على أنظمته الخاصة، تكون الحالة العالمية للكون (الوقت) قد تغيرت بالفعل. بمعنى آخر، من المستحيل أن يكون جهاز الشبكة محدثاً تماماً مع قيمة الوقت العالمية الفعلية.
مشكلة أخرى مع حفظ الوقت عبر الشبكة هي أننا لا نستطيع التنبؤ بشكل مثالي بالوقت المطلوب لنقل البيانات - تتغير ظروف الشبكة باستمرار، ولا يمكن لأحد ضمان موثوقية مثالية في العالم الخارجي. بالاقتران مع المشكلة الأولى، هذا يعني أن المستلم لا يمكنه نسخ قيمة الوقت بشكل مثالي، مما يؤدي إلى تناقضات.
يحل بروتوكول وقت الشبكة (NTP) هذه المشكلة من خلال هيكل التحقق المتبادل لخوادم حفظ الوقت الموزعة في جميع أنحاء العالم (حتى 15 طبقة) وبناء شجرة Bellman-Ford لأقصر مسار (مما يقلل من التأخير وعدم اتساق وقت النقل). هذا يعمل بشكل جيد تماماً لأجهزة الكمبيوتر الشخصية والخدمات المركزية، خاصة مع التطبيقات التي تعتمد على التوقيت الدقيق (مثل برامج التشفير). على الرغم من أن الطوابع الزمنية المشتقة من خلال NTP هي مجرد تقديرات، إلا أنها دقيقة وناضجة بما يكفي لاعتماد التطبيقات الحساسة للوقت عليها.
:quality(80)/2022-04-07/DCEE54532362107F1E3A0D218E9499E7.png)
المصدر: https://medium.com/@gokhansengun/bilgisayarlar-zaman%C4%B1-nas%C4%B1l-do%C4%9Fru-tutar-78c1203397f0
II. آلية الوقت في شبكات البلوكتشين
يوجد مفهوم الوقت أيضاً على سلاسل الكتل. على الرغم من أن البعض يقول أن البلوكتشين نفسه هو مشتق من مفهوم الوقت، إلا أن معالجة شبكة البلوكتشين للوقت غير دقيقة للغاية مقارنة بدقة 64 بت لنظام NTP. بعد كل شيء، هذا أيضاً لأن الخدمات المستهدفة لوقت البلوكتشين ليست تطبيقات العقود الذكية الحساسة للوقت مثل تطبيقات DeFi. علاوة على ذلك، فإنه يهدف إلى تمكين التنفيذ الآمن والفعال لآلية الإجماع. مثل هذا الهدف المختلف يجعل شبكات البلوكتشين أكثر تسامحاً مع عدم دقة الوقت. في الفقرات التالية، سنناقش بعض آليات الإجماع الشائعة وكيفية تحديدها للوقت. ومع ذلك، تجدر الإشارة إلى أن تأكيد الوقت على سلاسل الكتل غير دقيق بشكل عام لدرجة أنه لا يمكنه تنفيذ العمليات المالية وعمليات التحقق الأمنية للأصول على السلسلة التي تبلغ قيمتها عشرات المليارات من الدولارات.
1. بيتكوين
يتميز البيتكوين بمفهوم الوقت لأنه مطلوب لآلية إجماع إثبات العمل الخاصة به. بدون طابع زمني صالح، لا يمكن للشبكة التحقق مما إذا كانت معاملة معينة قيد التعدين تحاول العبث بمعاملة سابقة. على الرغم من أن كل كتلة بيتكوين تحتوي على طابع زمني UNIX، إلا أن وقت الكتلة ليس تمثيلاً دقيقاً لطابع زمني UNIX. هذا لأن إجماع البيتكوين يعتبر الطوابع الزمنية فقط كجزء من نظام أمان إثبات العمل، وليس كأداة فعلية لقياس الوقت على البلوكتشين.
للاقتباس من ويكي البيتكوين، تحتوي كل كتلة على طابع زمني Unix يوفره المعدنون وسيتم قبوله كصالح إذا كان 1) أكبر من متوسط الطابع الزمني للكتل الـ 11 السابقة و 2) أقل من وقت الشبكة المعدل زائد ساعتين. لذلك، يتراوح الفرق بين أوقات الكتل والأوقات في العالم الحقيقي من ساعة إلى ساعتين.
:quality(80)/2022-04-07/6E32A8358AE9279994AD47E20B41B1D5.png)
المصدر: https://en.bitcoin.it/wiki/Block_timestamp
2. إيثريوم
في شبكة إيثريوم، يتم تقديم الطوابع الزمنية أيضاً مباشرة من قبل المعدنين بمرونة كبيرة. ببساطة، قد يكون الطابع الزمني لإيثريوم صحيحاً أو خاطئاً، ولا توجد طريقة لآلية الإجماع للتأكد من دقته. وفقاً لمنشور على منتدى إيثريوم (المصدر: https://ethereum.stackexchange.com/questions/413/can-a-contract-safely-rely-on-block-timestamp/428#428)، يمكن استخدام عدة آليات لمنع الانحراف المفرط للطوابع الزمنية لإيثريوم: 1) إذا كان الطابع الزمني لكتلة ينحرف بشكل كبير عن الوقت في العالم الحقيقي، فلن يكون أحد على استعداد لإنشاء المزيد من الكتل مع هذه الكتلة كالكتلة الأم؛ 2) لا يمكن أن يكون الطابع الزمني للكتلة الأحدث أقدم من الكتلة الأم؛ 3) ستكون صعوبة الكتلة في أدنى مستوياتها عندما لا يتم تمييز الكتلة في وقت أبكر من المطلوب. يمكن لهذه الآليات أن تسمح للمعدنين بتقديم الطوابع الزمنية التي يعتقدون أنها صحيحة طواعية. ومع ذلك، عندما توجد حوافز خارجية أخرى، لا تمتلك شبكة إيثريوم أي آلية صارمة لضمان أن المعدنين لا يزالون يقدمون الطابع الزمني الصحيح. لذلك، لا يمكن للشبكة ضمان التشغيل السليم للبروتوكولات الحساسة للوقت (مثل التعدين المحصولي والإقراض). وبالتالي، لن تثق المؤسسات الكبيرة بأموالها في إيثريوم.
3. بولكادوت
وفقاً لوثيقة Substrate، تقوم بولكادوت أيضاً بتمييز الكتل بطوابع زمنية يقدمها المعدنون مباشرة. في الوقت نفسه، لا توجد آليات صارمة تؤكد أو تزامن مثل هذه الطوابع الزمنية. تنص الوثيقة أيضاً على أنه على الرغم من أنه لا يمكن إثبات وقت الكتلة، يمكن للمصادقين الموافقة على أنه ضمن بعض الفروق من ساعة نظامهم.
:quality(80)/2022-04-07/9550D7F434E41030C21D15B917029249.png)
المصدر: https://wiki.polkadot.network/docs/build-protocol-info
4. كوزموس
يعد تيندرمنت الخاص بكوزموس خوارزمية الإجماع الوحيدة التي تدمج الوقت في آلية الإجماع، مما يجعلها تمتلك أقوى مفهوم للوقت. وبشكل أكثر تحديداً، تقوم عقد الكتلة بالتصويت على الوقت الذي تم تقديمه للوصول إلى إجماع، وسيتم تضمين فقط الطابع الزمني الذي توافق عليه العقد في الكتلة.
:quality(80)/2022-04-07/4E7464D775216A3B3628098C5F22D098.png)
المصدر: https://docs.tendermint.com/master/spec/consensus/bft-time.html
III. غياب نظام الطوابع الزمنية في الكتل
لا تفتقر سلاسل الكتل إلى الدقة في إنشاء الطوابع الزمنية فحسب، بل تفتقر أيضاً إلى نظام أو آلية للطوابع الزمنية داخل الكتل. في العالم الواقعي، يتم إرسال المعاملات وتأكيدها واحدة تلو الأخرى، ولكل منها وقت وتسلسل واضح. وبهذه الطريقة، لا يمكن حدوث العديد من المعاملات الزائفة أو تأكيدها. في شبكة البلوكتشين، من ناحية أخرى، يتم تجميع المعاملات داخل كل كتلة معاً ولا يتم وضع علامات زمنية دقيقة عليها واحدة تلو الأخرى.
على الرغم من أنه يمكن التحقق من جميع المعاملات بعد إنشاء الكتلة، إلا أنه من المستحيل تحديد وقت وتسلسل تقديم كل معاملة بشكل محدد. وهذا يفسر جزئياً سبب إمكانية تنفيذ العديد من الهجمات (مثل القروض الفلاشية أو المبادلات الفلاشية). إذا تم توفير علامات دقيقة للوقت داخل الكتل كدليل للتحقق، يمكن لبروتوكولات التطبيق تطوير خوارزميات أكثر أماناً واستقراراً. وفي الوقت نفسه، نظراً لخصائصه الجوهرية، يعد الوقت شبكة إجماع عالية الأمان لا يمكن عكسها أو تغييرها.
IV. الحلول المحتملة
يمكن حل مشكلة نقص الوقت على سلاسل الكتل داخلياً أو خارجياً.
الحل الداخلي: يجب إدخال آلية تأكيد على مستوى الإجماع تتحقق من وقت الكتلة مقابل الوقت في العالم الحقيقي، أو إنشاء نظام وقت مستقل بدقة أكبر.
الحل الخارجي: تحتاج سلاسل الكتل إلى شبكة لامركزية تستخدم شبكة أوراكل زمنية شبيهة بـ NTP لإضافة طوابع زمنية دقيقة إلى كتل الشبكة والمعاملات داخل الكتل.
في ضوء التعاون متعدد السلاسل، قد يكون الحل الخارجي أكثر ملاءمة. على سبيل المثال، بافتراض أن إيثيريوم وتيرا لديهما ساعاتهما الخاصة، إذا كانت الطوابع الزمنية التي توفرها هذه الساعات مختلفة، سيكون من الصعب علينا تحديد أيهما صحيح أثناء التفاعلات بين الاثنين. على سبيل المثال، في شبكة الكمبيوتر التقليدية، في النهاية، هناك ساعة رئيسية واحدة فقط تخبر الجميع بالوقت. تحتاج سلاسل الكتل أيضاً إلى ساعة رئيسية.
في المستقبل متعدد الكون الذي تمكنه السلاسل المتعددة، سنواجه تحدياً آخر - عدد الساعات على جميع أجهزة الكمبيوتر المختلفة أعلى بكثير مما هو متوقع. على سبيل المثال، هناك ساعات الألعاب، وساعات تراكم فوائد DeFi، وساعات البلوكتشين، وما إلى ذلك. نظراً لأن هذه الساعات ستعطل الوقت في العقد الفوقية، سيكون هناك حاجة إلى مصدر موثوق واحد للوقت لتوحيد ومزامنة جميع المعاملات. عندما يتم تبني شبكة أوراكل الزمنية هذه على نطاق واسع في النهاية، ستوفر طبقة أمان إضافية، وتقدم تأكيدات زمنية إضافية لكل معاملة، تماماً كما يحدث في العالم الحقيقي. سيصبح الوقت أيضاً طبقة أمان إضافية لشبكات البلوكتشين.
المراجع: