Чи є глушіння каналів загрозою для мережі Bitcoin Lightning? PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Чи є глушіння каналів загрозою для мережі Bitcoin Lightning?

(Окрема подяка Антуану Ріару та Глібу Науменку, чиї Недавні дослідження лежить в основі цієї статті.)

Перешкоди каналу є однією з невирішених проблем Lightning Network з точки зору речей, які можуть порушити успішність платежів, що направляються через неї. Це широко відома проблема серед розробників, яку зрозуміли ще до того, як сама мережа фактично запрацювала в основній мережі та почала обробляти навіть один сатоші.

Поки що ця проблема не мала жодних негативних наслідків для мережі, але, враховуючи цей факт, важливо мати на увазі, що мережа все ще, у великій схемі речей, відносно невелика. Торговельні процесори почали підтримувати його, як і кілька бірж і багато власних служб і компаній Lightning/Bitcoin, але насправді це небагато. Мережа все ще дуже маленька річ, якою переважно користуються біткойнери, і це зовсім не дуже велика частина світу.

Крім того, кількість біткойнерів, які регулярно витрачають і використовують свої біткойни в комерційних налаштуваннях, є ще меншою підмножиною цієї і без того невеликої групи. Просто тому, що можливі атаки не відбуваються зараз, люди не повинні вважати, що це означає, що вони й надалі не відбуватимуться, коли мережа розростеться до більшого масштабу. Чим більшим він стає, тим більш конкурентоспроможним і конкурентним стане.

Що таке глушіння каналу?

Основна концепція блокування каналу полягає в тому, щоб направляти платежі через канал Lightning, який ви хочете блокувати, від себе до себе, а потім не завершувати їх, випустивши прообраз до хешу платежу в хешовані контракти блокування часу (HTLC). Жертва (жертви) не зможе видалити HTLC зі свого каналу, доки не закінчиться відведений час для відшкодування, оскільки вони не матимуть можливості відшкодувати свою вимогу щодо грошей, які їм заборгували, якщо попередній образ буде опубліковано після його видалення. Якщо таким чином ви повністю блокуєте канал, цей канал не зможе перенаправляти будь-які платежі, доки не закінчиться блокування часу для всіх зловмисних платежів.

Тут можна застосувати дві різні стратегії для здійснення атаки. Ви можете або спробувати заглушити маршрутизований обсяг, доступний у каналі, або ви можете спробувати заблокувати всі окремі слоти HTLC у каналі. Канал Lightning може мати лише 483 незавершених HTLC у кожному напрямку, який він може маршрутизувати — це тому, що існує обмеження щодо максимального розміру транзакції Bitcoin. Якщо ви додасте більше 483 HTLC на напрямок у каналі, транзакція для закриття каналу за потреби буде занадто великою та недійсною для надсилання в мережу. Це зробить усе в каналі неможливим для виконання в ланцюжку.

Отже, зловмисник може або спробувати заблокувати всю ліквідність у каналі, або спробувати заблокувати всі слоти HTLC у каналі. Будь-яка стратегія зробить канал непридатним для використання, але глушіння слотів, як правило, буде дешевшим, ніж глушіння кількості. Щоб здійснити цю атаку, зловмисник повинен мати монети в мережі, тому маршрутизація мінімально дозволеного значення для HTCL із ємністю 483 буде економічно ефективнішою, ніж спроба заблокувати всю ліквідність, доступну в каналі.

Чому хтось хоче заглушити канал освітлення?

Існує багато причин для здійснення цієї атаки. По-перше, зловмисник, який хоче атакувати сам біткойн, може блокувати всі ключові канали в «ядрі» мережі, щоб зробити більшу частину мережі непридатною для маршрутизації платежів, за винятком вузлів, які дуже тісно пов’язані один з одним. . Для цього знадобиться набагато більше монет для роботи в такому масштабі, але це не те, що слід скидати з рахунків як можливість, оскільки біткойн зростає і стає альтернативою санкціонованим урядом грошима та платіжним системам.

По-друге, вузол маршрутизації або продавець може спробувати здійснити атаку на конкурента, щоб стягнути плату з нього, а не з конкурента. Продавець, який продає подібні товари, може блокувати канали конкурента, щоб запобігти покупцям робити там покупки, сподіваючись спонукати їх робити покупки в його магазині. Вузол маршрутизації, який має аналогічне з’єднання каналів, як інший вузол, може блокувати канали конкуруючого вузла маршрутизації, щоб зробити їх непридатними для маршрутизації платежів. З часом це знищило б репутацію цього вузла з точки зору надійності маршрутизації, а через схоже з’єднання збільшить імовірність того, що гаманці користувачів виберуть вузол зловмисника для маршрутизації платежів через мережу.

Ці атаки можуть бути ще більш ефективними для зловмисника, якщо вони проходять через один канал кілька разів. Якщо вони знаходяться досить близько до жертви в мережі, вони можуть побудувати платіжний маршрут, який обертається і продовжує проходити через канал жертви. Існують обмеження щодо тривалості платіжного маршруту, тому це не можна робити нескінченно, але використання такого циклічного платіжного маршруту може суттєво зменшити кількість монет, які потрібні зловмиснику, щоб повністю блокувати канал(и) жертви.

Пом'якшення атак заважання каналу

Можна застосувати деякі базові часткові засоби пом’якшення, щоб збільшити витрати для зловмисників і зменшити збитки для жертв. Перший – це багатоетапний процес обробки HTLC.

Наразі кожен HTLC окремо додає новий вихід у транзакцію зобов’язання для поточного стану каналу. Двоетапний процес може створити один додатковий вихід у транзакції зобов’язання, а потім мати другу транзакцію після неї, до якої додано фактичний HTLC. Це дозволило б мати максимум 483, помножені на 483 слоти HTLC на канал (або 233,289 XNUMX слотів). Однак це насправді нічого не виправляє саме по собі, і вимагатиме розширення часових блокувань, оскільки ви додаєте додаткову транзакцію для примусового виконання речей у ланцюжку, і насправді може допомогти зловмисникові більше, ніж жертві, якщо вони використають цю нову структуру транзакцій і жертва цього не зробила. Це, однак, допоможе в поєднанні з іншою технікою, яку ми пояснюємо.

Друга — це реактивна стратегія, коли вузол, який став жертвою глушіння, може просто відкрити новий канал для того самого однорангового вузла, що й той, для якого глушиться. Однак це потребує додаткового капіталу для цього, не виправляє альтернативні витрати, пов’язані з блокуванням іншого каналу та втратою доходу від комісії, і новий канал також може бути згодом блокований, якщо зловмисник має доступний для цього капітал .

Третім методом буде виділення слотів HTLC. Наразі існує 483 слоти, і це єдиний ліміт, який застосовується універсально до всіх платежів незалежно від суми платежу. Вузли могли створювати окремі сегменти менших обмежень на слотах і застосовувати їх до платежів різної вартості, тобто платежі на 100,000 150 сат або менше могли мати доступ лише до XNUMX слотів. Таким чином, маршрутизація платежів меншої вартості не може зайняти всі доступні слоти HTLC.

Платежі від 100,000 1 сат до 300 мільйона сат можуть мати доступ до 1 слотів, а від 10 мільйона сат до 483 мільйонів сат можуть мати доступ до повних 483 слотів. Це суттєво підвищить капітальні витрати зловмисника на блокування слотів, оскільки вони більше не зможуть використати всі 546 слоти з найменшою можливою оплатою. Крім того, оскільки вихідні дані HTLC, нижчі за порогове значення пилу (наразі 0 sats), неможливо навіть транслювати та застосовувати в ланцюжку, усе, що є нижче цього ліміту, може розглядатися як «нульове відро», оскільки вихід HTLC все одно не створюється. Вузли можуть просто встановити обмеження на ці транзакції на основі використаних ресурсів ЦП або інших показників, щоб запобігти ризику відмови в обслуговуванні, залежно від того, скільки вони можуть дозволити собі втратити, якщо вони не будуть чесно розраховані.

Бакетування слотів у поєднанні з двоетапною обробкою HTLC можна використовувати для оптимізації застосування обмежень HTLC, тобто платежі з більшою вартістю можуть використовувати двоетапну структуру для створення для них більшої кількості слотів на канал, оскільки вища вартість платежу збільшує вартість блокування їх для зловмисника, що зменшує ймовірність зловживання вищим лімітом слотів для виконання блокування зловмисників.

У своєму дослідженні, процитованому вище, Ріард і Науменко показали, що за оптимальної комбінації ковшових слотів і двоступеневого розширення слотів причина заклинювання слотів може бути настільки ж дорогою, як і кількість заклинювання. Це не вирішить проблему комплексно, але підвищує мінімальну вартість виконання атаки, якщо її широко запровадити вузлами по всій мережі.

Два комплексних рішення, які вони розглянули, — це авансова комісія/комісія за час утримання для блокування ліквідності та система репутації з використанням сліпих токенів Chaumian. TLDR схеми комісії полягає в тому, що за маршрутизацію HTLC, розрахунок якої, як очікується, займе багато часу, буде сплачено заставу для попередньої комісії, і чим довше вона залишається неврегульованою, це буде звільняти комісію з кожного вузла маршрутизації за відрізок часу, який минув без розрахунку. Проблема полягає в тому, що застосування цього правила може призвести до необхідності закриття каналів, якщо комісія не надсилається, коли це потрібно, і це спричинить законні випадки використання, які потребують тривалого часу блокування, щоб сплатити таку саму вищу комісію, яку сплатив би зловмисник, намагаючись заглушити канал.

Схема репутації включала б «облігацію ставки» з використанням доказів нульового знання, щоб довести контроль над біткойнами як захист Sybil, а потім використання зв’язку, пов’язаного з вашою репутацією, для отримання засліплених токенів Chaumian з вузлів маршрутизації, які будуть викуплені та перевипущені після HTLC. успішно врегулювати конфіденційність. Вузли видаватимуть токени один раз на особу, і якщо HTLC не буде врегульовано або не відшкодовано своєчасно, вузли можуть відмовитися повторно видавати токен, таким чином перешкоджаючи користувачеві маршрутизувати через свій вузол, якщо він не витратить час і гроші на створення нового облігації ставки з різними монетами, які будуть випущені в новому токені.

Для тих, хто хоче прочитати більше про ці два рішення, додаткову інформацію можна знайти в розділах п'ять та шість у дослідженнях Ріарда та Науменка.

Варто також зазначити, що якби вузли маршрутизації запровадили сторонні системи депонування або довірчі кредитні лінії, про що я писав тут, усі ці проблеми, пов’язані з глушінням каналів, перестануть їх впливати. Це було б величезною зміною в моделі довіри для вузлів маршрутизації, але це не матиме нульового впливу на людей, які використовують справжні канали Lightning для надсилання та отримання Sats, на безпеку їхніх коштів або їхню здатність застосовувати це в ланцюжку.

Люди можуть не захотіти це чути, але врешті-решт, якщо наведених вище рішень для пом’якшення глушіння каналів для реальних каналів недостатньо, ці системи сторонніх розробників завжди є потенційним варіантом.

Це гостьовий пост від Shinobi. Висловлені думки повністю належать їм і не обов’язково збігаються з думками BTC Inc або Bitcoin Magazine.

Часова мітка:

Більше від Журнал Bitcoin