Является ли глушение канала угрозой для сети Lightning Bitcoin? PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Является ли глушение каналов угрозой для сети Lightning Биткойн?

(Особая благодарность Антуану Риару и Глебу Науменко, чьи Недавние исследования это основа данной статьи.)

Засорение каналов — одна из серьезных проблем сети Lightning Network с точки зрения вещей, которые могут нарушить успешность прохождения платежей через нее. Это широко известная проблема среди разработчиков, которая была понята еще до того, как сама сеть фактически заработала в основной сети и начала обрабатывать даже один сатоши.

Пока что эта проблема не оказала какого-либо негативного воздействия на сеть, но, учитывая этот факт, важно иметь в виду, что сеть по большому счету все еще относительно мала. Его начали поддерживать торговые процессоры, а также несколько бирж и множество собственных сервисов и предприятий Lightning/Bitcoin, но на самом деле это немного. Сеть по-прежнему остается небольшой вещью, преимущественно используемой биткойнерами, а это совсем не большая часть мира.

Более того, количество биткойнеров, которые регулярно тратят и используют свои биткойны в коммерческих целях, представляет собой еще меньшую часть этой и без того небольшой группы. Тот факт, что возможные атаки сейчас не происходят, людям не следует предполагать, что это означает, что они больше не будут происходить, когда сеть вырастет до более крупных масштабов. Чем больше он станет, тем более конкурентным и враждебным он станет.

Что такое глушение канала?

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

Здесь можно использовать две разные стратегии для проведения атаки. Вы можете либо попытаться заблокировать маршрутизируемый объем, доступный в канале, либо попытаться заблокировать все отдельные слоты HTLC в канале. Канал Lightning может иметь только 483 ожидающих HTLC в каждом направлении, в котором он может маршрутизироваться — это связано с тем, что существует максимальный предел размера транзакции Биткойн. Если вы добавите в канал более 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 спутников) не могут даже транслироваться и применяться в цепочке, все, что ниже этого предела, может обрабатываться как «XNUMX-корзина», поскольку выходные данные HTLC в любом случае не создаются. Узлы могут просто устанавливать ограничения на эти транзакции на основе используемых ресурсов ЦП или других показателей, чтобы предотвратить их превращение в риск отказа в обслуживании, в зависимости от того, сколько они могут позволить себе потерять, если они не будут урегулированы честно.

Для оптимизации применения ограничений HTLC можно использовать группировку слотов в сочетании с двухэтапной обработкой HTLC, т. е. платежи с более высокой стоимостью могут использовать двухэтапную структуру для создания большего количества слотов для них на канал, поскольку более высокая стоимость платежа увеличивает стоимость глушение их для злоумышленника, что снижает вероятность злоупотребления более высоким лимитом слотов для создания помех злоумышленникам.

В своих исследованиях, цитированных выше, Риард и Науменко показали, что при оптимальном сочетании слотов-пакетировщиков и двухступенчатого расширения слотов причина заклинивания слота может быть столь же дорогостоящей, как и количество заклиниваний. Это не решит проблему полностью, но повысит минимальную стоимость проведения атаки, если она будет широко реализована узлами сети.

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

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

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

Также стоит отметить, что если бы узлы маршрутизации использовали сторонние системы условного депонирования или доверительные кредитные линии, как я писал о здесь, все эти проблемы, связанные с глушением каналов, перестали бы их касаться. Это будет огромным изменением в модели доверия для узлов маршрутизации, но оно не окажет никакого влияния на людей, использующих реальные каналы Lightning для отправки и получения спутников, на безопасность своих средств или на их способность обеспечить соблюдение этого в цепочке.

Люди, возможно, не захотят это слышать, но, в конце концов, если описанных выше решений по уменьшению помех для реальных каналов недостаточно, эти сторонние системы всегда являются потенциальным вариантом.

Это гостевой пост Шиноби. Высказанные мнения являются полностью их собственными и не обязательно отражают точку зрения BTC Inc или Bitcoin Magazine.

Отметка времени:

Больше от Биткойн-журнал