Актуальное

Исправлены ошибки, обнаруженные в реализациях Bitcoin Lightning Network

212

Основной инженер Blockstream Расти Рассел обнаружил критические ошибки Bitcoin Lightning Network, которые влияли на реализации C-Lightning, Éclair и Lightning Network Daemon (lnd).

РАННИЕ ВЕРСИИ LN НЕ СМОГЛИ ПРОВЕРИТЬ СУММЫ ТРАНЗАКЦИИ ФИНАНСИРОВАНИЯ

В настоящее время над реализацией Lightning Network работают три автономные группы: Blockstream, ACINQ и Lightning Labs. Главной целью этих команд, помимо прочего, является снижение транзакционных издержек при одновременном повышении масштабируемости и безопасности сети Биткоин.

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

[irp]

Рассматривая новые предложенные функции для сети Lightning, Рассел выполнил тесты в соответствии со следующей формулировкой проблемы:

«Узел молнии, принимающий канал, должен проверить, что вывод транзакции финансирования действительно открывает предложенный канал. В противном случае злоумышленник может потребовать открыть канал, но либо не заплатить партнеру, либо не заплатить полную сумму. Как только эта транзакция достигает минимальной глубины, она может потратить средства из канала. Жертва заметит это только тогда, когда попытается закрыть канал, и никакие обязательства или взаимные сделки закрытия не будут действительными».

В результате Рассел обнаружил, что реализации Blockstream до C-lightning версии 0.7.1 не выполняли эту проверку.

«Это может быть использовано подключающимся узлом и требовать открытия канала с любым идентификатором транзакции». (CVE-2019-12998)

Точно так же, что касается реализации Световой лаборатории, Рассел отметил, что «предыдущие версии не проверяли сумму. v0.7.0 и выше должным образом проверяют наличие scriptpubkey, v0.6.x частично применяет финансирование scriptpubkey, но pre-v0.6.0 вообще не проверял. ”(CVE-2019-12999)

Рассел также проверил, проводил ли проект ACINQ Éclair надлежащие проверки в отношении сумм.

Рассел пришел к выводу: «v0.3.1 и выше делают это правильно, предыдущие версии этого не делали, если использовали ядро ​​Биткоин-ядра; Пользователи Electrum проверяют только сумму, а не сумму ». (CVE-2019-13000)

ИСПРАВЛЕНИЕ ОШИБОК

Хорошей новостью является то, что Рассел, который принадлежит команде Blockstream, поделился своим открытием с другими командами Lightning Network, ACINC и Lightning Labs. Таким образом, ошибки исправлены. Кроме того, Рассел указывает на положительные результаты благодаря его открытию,

«Несмотря на то, что эта давняя ошибка не была обнаружена независимо, и, таким образом, злоумышленник вряд ли обнаружит ее до исправления, она предоставила возможность протестировать коммуникации и методы обновления по всей молниеносной экосистеме».

Online advertising service 1lx.online

Комментарии