في الآونة الأخيرة (أواخر أكتوبر 2023) ، كشف مجتمع Bitcoin أن شبكة Lightning قد يكون بها عيوب كبيرة ، مما يسمح للمستخدمين ببناء طريقة هجوم لسرقة الأموال ، تسمى "هجوم ركوب الدراجات البديلة للبرق".
قرأت مبدأ ذلك ، ويمكن ترجمة الاسم الصيني على أنه "هجوم معاملة استبدال دوري لشبكة البرق".
مبدأ الهجوم هو على النحو التالي.
أولا ، اشرح كيف تعمل شبكة Lightning:
تفتح أليس وبوب قناة دفع ، أي يفتحان معا عنوان توقيع 2-2 ، يحمل كل منهما مفتاحا خاصا.
تعيد أليس وبوب شحن 0.5BTC و 0.6BTC إلى عنوان التوقيع 2-2 على التوالي (يمكن اختيار المبلغ بشكل تعسفي ، أنا مجرد مثال) ، وكلاهما يحدث في سلسلة Bitcoin الرئيسية ، ويؤكد عمال المناجم. بهذه الطريقة ، فإن الحالة الأولية لقناة الدفع هذه هي أن 0.5BTC ينتمي إلى ALICE ، و 0.6BTC ينتمي إلى BOB ، ونسجل (ALICE: 0.5BTC ؛ بوب:0.6BTC)。
بهذه الطريقة ، في عنوان التوقيع 2-2 هذا ، يمكن لأليس وبوب الدفع لبعضهما البعض ، على سبيل المثال ، يمكن لأليس دفع BOB 0.1BTC ، بحيث تصبح حالة قناة الولاية 0.4BTC تنتمي إلى Alice ، 0.7BTC تنتمي إلى BOB ، (ALICE: 0.4BTC ؛ بوب:0.7BTC)。 ولا تحتاج مثل هذه المعاملات إلى تعبئتها على سلسلة Bitcoin الرئيسية ، ولكنها تحدث فقط بين Alice و Bob ، والتي تسمى قناة الدفع.
لا تحتاج التحويلات التعسفية بين Alice و Bob إلى التسوية إلى السلسلة الرئيسية ، مما يوفر الكثير من رسوم عمال المناجم ويمكن استلامها في الوقت الفعلي ، مما يلغي الحاجة إلى 10 دقائق من تأكيد الكتلة.
ولكن إذا كان بإمكانك فقط نقل المعاملات بين شخصين ، فهذا عديم الفائدة.
يتم أيضا فتح قناة دفع بين بوب وكارول ، والحالة الأولية هي أن بوب لديه 1.0BTC ، carol0BTC ، والذي تم تسجيله ك (BOB: 1.0BTC ؛ كارول:0BTC)。
في هذا الوقت ، ترى أن هناك قناة دفع بين أليس وبوب ، وهناك أيضا قناة دفع بين بوب وكارول.
يمكن لأليس بعد ذلك دفع عملات البيتكوين إلى كارول عبر بوب.
عملية الدفع هي كما يلي: تدفع أليس لكارول 0.1BTC ، وتحدث تغييرات الحالة التالية في قناتي الدفع أعلاه
تغيير الحالة بين أليس وبوب هو (أليس: 0.3BTC ؛ بوب: 0.8BTC)
تغيير الحالة بين BOB و CAROL هو (BOB: 0.9BTC ؛ CAROL: 0.1BTC)
هذا يكمل معاملة تحويل 0.1BTC من أليس إلى كارول.
عندما يفتح المزيد والمزيد من الأطراف قناة الدفع ويدركون الترابط المتبادل ، يتم تشكيل شبكة دفع ، والتي نسميها شبكة البرق.
بالطبع ، التفسير الفني التفصيلي معقد للغاية ، وما سبق هو التفسير الأكثر إيجازا.
فيما يلي وصف للعملية العامة لهجوم معاملة الاستبدال الدوري لشبكة Lightning Network ، ولا أفهم التفاصيل الفنية التفصيلية ، وتلك الرموز التشغيلية والعقود والوظائف معقدة بعض الشيء.
المهاجمون هم أليس وكارول ، اللذان يتآمران لمهاجمة بوب ، وبوب هو الضحية.
تدفع أليس 0.3 بيتكوين لكارول.
قنوات الحالة الأولية هي كما يلي (ALICE: 0.3BTC ؛ BOB: 0.8BTC) و (BOB: 0.9BTC ؛ CAROL: 0.1BTC)
يجب تغيير قناة الحالة بين أليس وبوب إلى (أليس: 0 ؛ بوب: 1.1BTC)
يجب تغيير قناة الحالة بين BOB و CAROL إلى (BOB: 0.6BTC ؛ CAROL: 0.4BTC)
قررت أليس وكارول الشراكة لخداع بوب 0.3BTC
لم تدعي كارول تأكيد أنه تلقى 0.3BTC من أليس ، أي أن كارول لا ترسل معلومات إيصال شبكة Lightning إلى BOB. نتيجة لذلك ، لن يتمكن بوب من المطالبة قانونيا ب 0.3BTC من Alice داخل شبكة Lightning.
في وقت معين ، لعبت أليس الحيل وبدأت مباشرة معاملة المقاصة TX1 على سلسلة Bitcoin الرئيسية ، مدعية أنه لا يزال لديه 0.3BTC ، بينما يمتلك Bob 0.8BTC فقط في قناته الحكومية.
في صفقة tx1 ، تم إرسال 0.3BTC إلى عنوان أليس الخاص (توقيع واحد) ، لذلك كانت أليس تحاول سرقة 0.3BTC التي لا تخصها.
لأن بوب لم يحصل على إيصال إيصال كارول ، لا يستطيع بوب إثبات (أليس ؛ بوب) في قناة الحالة هذه يجب تغييرها إلى (Alice:0BTC; بوب: 1.1BTC)
بمجرد تعبئة TX1 على السلسلة ، أي أن أليس تسرق 0.3BTC ، ستجمع كارول على الفور 0.3BTC في شبكة Lightning وترسل الإيصال إلى BOB.
بهذه الطريقة ، لم ترسل أليس في الواقع 0.3BTC إلى BOB ، لكن كارول تلقت بالفعل 0.3BTC من BOB. لذلك سرق بوب 0.3BTC من قبل أليس وكارول في شراكة.
لاحظ أنه عندما تبدأ أليس معاملة سرقة عملة TX1 على السلسلة الرئيسية ، فإن بوب لديه إجراءات مضادة ، أي أن بدء معاملة إلى السلسلة الرئيسية TX2 يثبت أن أليس تغش ، ولكن لأن بوب لم يحصل على إيصال إيصال كارول ، فإن معاملة TX2 لا تزال مزعجة للغاية ، ولكن يمكن القيام بها نظريا.
بعد أن ترى أليس TX2 ، ستستخدم طريقة رسوم التعدين الأعلى مرة أخرى لإعادة تعيين TX1 لحث عمال المناجم على حزم TX1 ورفض TX2 ، وهو ما يسمى "الاستبدال".
في الوقت الحاضر ، يقول المطورون إن التواطؤ بين أليس وكارول يمكن أن يجعل الأمر يبدو أكثر صعوبة لإضفاء الشرعية على TX2 من BOB على عمال المناجم الرئيسيين في Bitcoin ، ولإثبات أن TX2 شرعي بشكل أكثر وضوحا ، يحتاج البروتوكول إلى التعديل ، وهو شوكة ناعمة للسلسلة الرئيسية ، وهو أمر صعب.
ما سبق هو العملية العامة لهجوم معاملة الاستبدال الدوري لشبكة Lightning Network ، والمبدأ التقني المحدد معقد للغاية ، ولا أفهم ، أفترض فقط أن التفاصيل الفنية التي نشرها المطور الذي أراه على الإنترنت صحيحة.
طريقة الهجوم هي شطيرة واحدة من الاثنين ، والتبادل طبيعي وقد فتح جميع المستخدمين قناة دفع ، وبالتالي فإن التبادل سيعاني.
في النهاية ، أشعر أن هذه ليست مشكلة كبيرة ، ولا توجد أخطاء في البرنامج ، وستكون هناك طريقة لإصلاحها.
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
فهم هجمات حلقة معاملات استبدال شبكة Lightning Network بسرعة
في الآونة الأخيرة (أواخر أكتوبر 2023) ، كشف مجتمع Bitcoin أن شبكة Lightning قد يكون بها عيوب كبيرة ، مما يسمح للمستخدمين ببناء طريقة هجوم لسرقة الأموال ، تسمى "هجوم ركوب الدراجات البديلة للبرق".
قرأت مبدأ ذلك ، ويمكن ترجمة الاسم الصيني على أنه "هجوم معاملة استبدال دوري لشبكة البرق".
مبدأ الهجوم هو على النحو التالي.
أولا ، اشرح كيف تعمل شبكة Lightning:
تعيد أليس وبوب شحن 0.5BTC و 0.6BTC إلى عنوان التوقيع 2-2 على التوالي (يمكن اختيار المبلغ بشكل تعسفي ، أنا مجرد مثال) ، وكلاهما يحدث في سلسلة Bitcoin الرئيسية ، ويؤكد عمال المناجم. بهذه الطريقة ، فإن الحالة الأولية لقناة الدفع هذه هي أن 0.5BTC ينتمي إلى ALICE ، و 0.6BTC ينتمي إلى BOB ، ونسجل (ALICE: 0.5BTC ؛ بوب:0.6BTC)。
بهذه الطريقة ، في عنوان التوقيع 2-2 هذا ، يمكن لأليس وبوب الدفع لبعضهما البعض ، على سبيل المثال ، يمكن لأليس دفع BOB 0.1BTC ، بحيث تصبح حالة قناة الولاية 0.4BTC تنتمي إلى Alice ، 0.7BTC تنتمي إلى BOB ، (ALICE: 0.4BTC ؛ بوب:0.7BTC)。 ولا تحتاج مثل هذه المعاملات إلى تعبئتها على سلسلة Bitcoin الرئيسية ، ولكنها تحدث فقط بين Alice و Bob ، والتي تسمى قناة الدفع.
لا تحتاج التحويلات التعسفية بين Alice و Bob إلى التسوية إلى السلسلة الرئيسية ، مما يوفر الكثير من رسوم عمال المناجم ويمكن استلامها في الوقت الفعلي ، مما يلغي الحاجة إلى 10 دقائق من تأكيد الكتلة.
ولكن إذا كان بإمكانك فقط نقل المعاملات بين شخصين ، فهذا عديم الفائدة.
يتم أيضا فتح قناة دفع بين بوب وكارول ، والحالة الأولية هي أن بوب لديه 1.0BTC ، carol0BTC ، والذي تم تسجيله ك (BOB: 1.0BTC ؛ كارول:0BTC)。
في هذا الوقت ، ترى أن هناك قناة دفع بين أليس وبوب ، وهناك أيضا قناة دفع بين بوب وكارول.
يمكن لأليس بعد ذلك دفع عملات البيتكوين إلى كارول عبر بوب.
عملية الدفع هي كما يلي: تدفع أليس لكارول 0.1BTC ، وتحدث تغييرات الحالة التالية في قناتي الدفع أعلاه
تغيير الحالة بين أليس وبوب هو (أليس: 0.3BTC ؛ بوب: 0.8BTC)
تغيير الحالة بين BOB و CAROL هو (BOB: 0.9BTC ؛ CAROL: 0.1BTC)
هذا يكمل معاملة تحويل 0.1BTC من أليس إلى كارول.
بالطبع ، التفسير الفني التفصيلي معقد للغاية ، وما سبق هو التفسير الأكثر إيجازا.
فيما يلي وصف للعملية العامة لهجوم معاملة الاستبدال الدوري لشبكة Lightning Network ، ولا أفهم التفاصيل الفنية التفصيلية ، وتلك الرموز التشغيلية والعقود والوظائف معقدة بعض الشيء.
تدفع أليس 0.3 بيتكوين لكارول.
قنوات الحالة الأولية هي كما يلي (ALICE: 0.3BTC ؛ BOB: 0.8BTC) و (BOB: 0.9BTC ؛ CAROL: 0.1BTC)
يجب تغيير قناة الحالة بين أليس وبوب إلى (أليس: 0 ؛ بوب: 1.1BTC)
يجب تغيير قناة الحالة بين BOB و CAROL إلى (BOB: 0.6BTC ؛ CAROL: 0.4BTC)
قررت أليس وكارول الشراكة لخداع بوب 0.3BTC
لم تدعي كارول تأكيد أنه تلقى 0.3BTC من أليس ، أي أن كارول لا ترسل معلومات إيصال شبكة Lightning إلى BOB. نتيجة لذلك ، لن يتمكن بوب من المطالبة قانونيا ب 0.3BTC من Alice داخل شبكة Lightning.
في وقت معين ، لعبت أليس الحيل وبدأت مباشرة معاملة المقاصة TX1 على سلسلة Bitcoin الرئيسية ، مدعية أنه لا يزال لديه 0.3BTC ، بينما يمتلك Bob 0.8BTC فقط في قناته الحكومية.
في صفقة tx1 ، تم إرسال 0.3BTC إلى عنوان أليس الخاص (توقيع واحد) ، لذلك كانت أليس تحاول سرقة 0.3BTC التي لا تخصها.
لأن بوب لم يحصل على إيصال إيصال كارول ، لا يستطيع بوب إثبات (أليس ؛ بوب) في قناة الحالة هذه يجب تغييرها إلى (Alice:0BTC; بوب: 1.1BTC)
بمجرد تعبئة TX1 على السلسلة ، أي أن أليس تسرق 0.3BTC ، ستجمع كارول على الفور 0.3BTC في شبكة Lightning وترسل الإيصال إلى BOB.
بهذه الطريقة ، لم ترسل أليس في الواقع 0.3BTC إلى BOB ، لكن كارول تلقت بالفعل 0.3BTC من BOB. لذلك سرق بوب 0.3BTC من قبل أليس وكارول في شراكة.
لاحظ أنه عندما تبدأ أليس معاملة سرقة عملة TX1 على السلسلة الرئيسية ، فإن بوب لديه إجراءات مضادة ، أي أن بدء معاملة إلى السلسلة الرئيسية TX2 يثبت أن أليس تغش ، ولكن لأن بوب لم يحصل على إيصال إيصال كارول ، فإن معاملة TX2 لا تزال مزعجة للغاية ، ولكن يمكن القيام بها نظريا.
بعد أن ترى أليس TX2 ، ستستخدم طريقة رسوم التعدين الأعلى مرة أخرى لإعادة تعيين TX1 لحث عمال المناجم على حزم TX1 ورفض TX2 ، وهو ما يسمى "الاستبدال".
ما سبق هو العملية العامة لهجوم معاملة الاستبدال الدوري لشبكة Lightning Network ، والمبدأ التقني المحدد معقد للغاية ، ولا أفهم ، أفترض فقط أن التفاصيل الفنية التي نشرها المطور الذي أراه على الإنترنت صحيحة.
طريقة الهجوم هي شطيرة واحدة من الاثنين ، والتبادل طبيعي وقد فتح جميع المستخدمين قناة دفع ، وبالتالي فإن التبادل سيعاني.
في النهاية ، أشعر أن هذه ليست مشكلة كبيرة ، ولا توجد أخطاء في البرنامج ، وستكون هناك طريقة لإصلاحها.