闪电网络,身份通道

lightning network, identity cahnnel

我想制作一项服务,允许将私人用户的频道绑定到用户的帐户。

用户用我的节点打开了一个私人频道。但我不知道具体是哪个用户。

为了识别频道,我打算询问用户的 BOLT11 请求,在描述中使用唯一标识符,如短信代码。 BOLT11 指定支付的目标地址。我会为这个请求找到路由,从而确定用户的频道。

这样的方案安全吗?欺诈者可以为不属于他的频道创建 BOLT11 请求吗?你能推荐一个更好的识别方案吗?

最安全的方法是用户使用他用来签署承诺交易的密钥之一签署消息。这肯定会将他的身份绑定到频道上。但是,当前的实现不提供 api。但这并不意味着这不可能

Can a fraudster create a BOLT11 request for a channel that does not belong to him?

Bolt 11 状态:

The recovery ID allows public-key recovery, so the identity of the payee node can be implied

我不确定每个实现如何与此处的规范相匹配。我假设它们都执行签名验证,但它们可能不会公开 public-密钥恢复功能。您在不实际支付发票的情况下寻找路径的想法可能会奏效。

然而,看起来您实际上需要的是识别您的节点和用户之间的现有专用通道。专用频道应作为路由提示包含在发票中,因此通过解码发票甚至可以更容易地从那里获取它。

另一种选择是要求用户支付您的节点生成的发票,一个 msat 就足够了。可以肯定的是,她将无法使用她无法控制的节点进行支付。