Lightning Watchtower — служба против нарушений в каналах со штрафами, а не хранитель обычных ключей кошелька. Клиент готовит данные для конкретного отозванного commitment и передаёт их башне в зашифрованном виде. При его публикации башня может собрать и передать justice transaction. Она не меняет консенсус Bitcoin и не гарантирует возврата всех средств.
В канале со штрафами контрагент может намеренно или случайно опубликовать отозванный commitment, например с более старым выгодным балансом. Действующий commitment, использованный для одностороннего закрытия, сам по себе не является нарушением. Важен отзыв конкретного состояния. Башня действует по подготовленным данным, а не просто по возрасту транзакции. [BOLT 3 — Revocation and delayed outputs] [Lightning Labs — Watchtower operation]
В LND v0.21.3-beta BreachHint — первые 16 байт SHA-256 бинарного txid. BreachKey получают применением SHA-256 к тому же бинарному txid, соединённому с самим собой. Это не первые 16 символов отображаемого txid и не просто его первая половина. Клиент шифрует JusticeKit; знание соответствующей транзакции позволяет вывести ключ и расшифровать данные. [LND v0.21.3-beta — Breach hint and key derivation] [LND v0.21.3-beta — Watchtower backup task]
JusticeKit содержит материалы, включая подписи, для конкретной исправляющей транзакции. Башня не получает seed или общее право тратить другие монеты клиента. Альтруистическая модель возвращает защищённые средства клиенту за вычетом on-chain комиссий. Модель с вознаграждением может добавить согласованный выход для башни; наличие такого типа в коде само по себе не доказывает доступности платной службы. [LND v0.21.3-beta — Watchtower backup task] [LND v0.21.3-beta — Watchtower blob types] [LND v0.21.3-beta — Watchtower configuration]
Клиент должен создать и доставить соответствующие обновления для защищаемых отозванных состояний. Добавленный адрес башни или задача в очереди ещё не означают подтверждённого хранения. Потеря связи, исчерпанная session или отклонённая резервная копия создают пробел в защите. Башня также должна следить за правильной цепочкой и вовремя обеспечить распространение и подтверждение исправляющей транзакции. [LND v0.21.3-beta — Watchtower client RPC] [Lightning Labs — Watchtower operation]
Служба не исправит потерянный seed, повреждённую резервную копию или скомпрометированное подписывающее устройство. LND Static Channel Backup (SCB) служит для возврата средств через закрытие канала; это не та же запись, что watchtower blob, и не непрерывная копия каждого commitment. Восстановление старого channel.db может опубликовать отозванное состояние. Резервными копиями кошелька и каналов нужно управлять отдельно. [LND v0.21.3-beta — Recovery and static backups]
Проверенный backupTask в LND v0.21.3-beta подготавливает существующие выходы to_local и to_remote отозванного commitment, не являющиеся dust. Он не включает общую защиту всех выходов HTLC; соответствующая документация описывает её как будущее расширение. Поэтому способность Bitcoin Script наказать расходование выхода нельзя путать с защитой этого выхода, действительно сохранённой конкретной башней. [LND v0.21.3-beta — Watchtower backup task] [LND v0.21.3-beta — Watchtower configuration]
LND разделяет watchtower.active для сервера и wtclient.active для клиента. Одно включение сервера не настроит резервирование собственных каналов на другой башне. lncli tower info показывает pubkey, listeners и uris сервера; lncli wtclient add регистрирует башню для клиента. Публичный ключ башни отличается от ключа узла Lightning. Проверь сеть, доступность адреса и поддержку RPC в используемой сборке. [LND v0.21.3-beta — Watchtower configuration]
Для выхода to_local в BOLT 3 владелец commitment должен ждать to_self_delay блоков; другая сторона с правильным ключом отзыва может использовать штрафную ветвь без этой задержки. CSV измеряет относительный возраст от подтверждения соответствующего выхода. После задержки ветвь отзыва не исчезает, но владелец уже может конкурировать за те же средства. Само распространение до срока не гарантирует победившего подтверждения. [BOLT 3 — Revocation and delayed outputs] [BIP 112 — CHECKSEQUENCEVERIFY]
В LND v0.21.3-beta поле sweep_sat_per_vbyte в policy и session задаёт ставку в sat/vB. Комиссия уменьшает возвращаемую сумму. backupTask может отклонить состояние с недостаточной стоимостью или неподходящими параметрами session; не каждая подготовленная задача является допустимой резервной копией. Позднейшее изменение настроек не доказывает изменения ранее подписанных транзакций, а недостаточная ставка может задержать реакцию. [LND v0.21.3-beta — Watchtower backup task] [LND v0.21.3-beta — Watchtower client RPC]
Несколько независимых башен и собственное наблюдение могут уменьшить последствия одного отказа. Но проверь, какие конкретно обновления получила каждая башня; несколько зарегистрированных адресов сами по себе не доказывают репликации всех состояний. Отдельные машины, сети и места размещения уменьшают общие отказы. Зашифрованные blob и аутентифицированные соединения ограничивают видимость балансов, но не устраняют метаданные, раскрытие частоты обновлений и риск корреляции. [LND v0.21.3-beta — Watchtower configuration] [Lightning Labs — Watchtower operation]
Используй lncli wtclient towers, lncli wtclient tower, lncli wtclient stats и lncli wtclient policy. В LND v0.21.3-beta различай num_backups и num_pending_backups; второе поле считает копии, ожидающие подтверждения башни. num_failed_backups в ответе stats считает неудачные неподтверждённые копии. Статистика охватывает период с запуска клиента. active_session_candidate обозначает кандидата для sessions, а не доказательство полной защиты. [LND v0.21.3-beta — Watchtower client RPC]
Проверяй конкретные версии клиента и башни, поддерживаемые типы каналов и session, актуальность данных, комиссии и синхронизацию с цепочкой. Функциональную проверку реакции проводи в изолированной тестовой среде; обычный force close не доказывает реакции на отозванное состояние. Результат подтверждают соответствующий breach, собранная justice transaction и её подтверждённые выходы. Успешная демонстрация не гарантирует будущей доступности и не устраняет все риски Lightning. [BOLT 3 — Revocation and delayed outputs] [LND v0.21.3-beta — Watchtower backup task] [LND v0.21.3-beta — Watchtower client RPC]
Для полной картины прочитайте эту статью вместе с Lightning Network, Payment Channel, Самостоятельное хранение. На эту статью также ссылаются Payment Channel.