сеть lightning, идентификация каннеля

#bitcoin #lightning-network

#биткоин #lightning-сеть

Вопрос:

Я хочу создать сервис, который позволяет привязывать каналы частного пользователя к учетной записи пользователя.

Пользователь открывает частный канал с моим узлом. Но я не знаю, какой именно пользователь.

Чтобы идентифицировать канал, я планирую запросить у пользователя запрос BOLT11 с уникальным идентификатором в описании, например, кодом SMS. BOLT11 указывает целевой адрес платежа. Я найду маршрут для этого запроса и таким образом определю канал пользователя.

Безопасна ли такая схема? Может ли мошенник создать запрос BOLT11 для канала, который ему не принадлежит? Можете ли вы предложить лучшую схему идентификации?

Ответ №1:

Может ли мошенник создать запрос BOLT11 для канала, который ему не принадлежит?

Болт 11 состояний:

Идентификатор восстановления позволяет восстанавливать данные с помощью открытого ключа, поэтому может подразумеваться идентификатор узла получателя платежа

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

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

Альтернативным вариантом было бы попросить пользователя оплатить счет, сгенерированный вашим узлом, msat будет достаточно. Наверняка она не сможет произвести платеж с помощью узла, который она не контролирует.

Ответ №2:

Самым безопасным способом было бы, если бы пользователь подписывал сообщение одним из ключей, которые он использует для подписания транзакций с обязательствами. Это, безусловно, привязало бы его личность к каналу. Однако текущие реализации не предлагают этот api. Но это не значит, что это было бы невозможно

Комментарии:

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