Lightning-Network
如何找到開具閃電網路發票的節點的nodeid?
我最近從一家商店收到了一張 BOLT11 發票。比如這個:
LNBC13934430N1PWJUJEZPP5K7FLC2M5CLHTWMTF3HZDN7VVRCA4RNFAFA89F2D6KGYWW4JCSDAQDZ62PSKJEPQW3HJQ4RGV5SYC6T8DP6XU6TWVUSYXMMWVEJHYETWVDJJQ2Z0WFJX2U3QF9ZR5GZ5F3PNZWFD25UY54Z39YXQZURCQP2RZJQG8ZM9WXGVHZPMUQEWY9J9KDQNRVLZHPCWM6S8CVLC2CKRDNELE42Z9U5VQQY3SQQYQQQQL8QQQQPJQQ9Q6KM84F7KTW6UV574UR2LFNKZLM7VNK8NJRZV20JD8SAW6FZ3TQGSZE6YUT0X2UXGDGYJZGTXEFSQSSEVTKFF97P3TER5K23ZPHDDXHQQ95UT4N
幸運的是,我的節點能夠找到通往目的地的路線,但如果找不到呢?我如何才能找到
nodeid
與商店開設直接支付渠道並為其提供資金的渠道?他們沒有在他們的網站上談論他們的 nodeid。
閃電發票由開具發票的節點簽名,以驗證我們需要知道節點 ID 的簽名。因此,它包含在發票中。閃電節點提供了一個 API 來解碼發票。
在 c-lightning 中,您可以執行以下操作(lnd!)
lightning-cli decodepay LNBC13934430N1PWJUJEZPP5K7FLC2M5CLHTWMTF3HZDN7VVRCA4RNFAFA89F2D6KGYWW4JCSDAQDZ62PSKJEPQW3HJQ4RGV5SYC6T8DP6XU6TWVUSYXMMWVEJHYETWVDJJQ2Z0WFJX2U3QF9ZR5GZ5F3PNZWFD25UY54Z39YXQZURCQP2RZJQG8ZM9WXGVHZPMUQEWY9J9KDQNRVLZHPCWM6S8CVLC2CKRDNELE42Z9U5VQQY3SQQYQQQQL8QQQQPJQQ9Q6KM84F7KTW6UV574UR2LFNKZLM7VNK8NJRZV20JD8SAW6FZ3TQGSZE6YUT0X2UXGDGYJZGTXEFSQSSEVTKFF97P3TER5K23ZPHDDXHQQ95UT4N { "currency": "bc", "created_at": 1563314978, "expiry": 899, "payee": "024a8228d764091fce2ed67e1a7404f83e38ea3c7cb42030a2789e73cf3b341365", "msatoshi": 1393443000, "amount_msat": "1393443000msat", "description": "Paid to The Lightning Conference (Order ID: TLC19-U8JTQ)", "min_final_cltv_expiry": 10, "routes": [ [ { "pubkey": "020e2d95c6432e20ef80cb885916cd04c6cf8ae1c3b7a81f0cfe158b0db3cff355", "short_channel_id": "572579x582x1", "fee_base_msat": 999, "fee_proportional_millionths": 200, "cltv_expiry_delta": 40 } ] ], "payment_hash": "b793fc2b74c7eeb76d698dc4d9f98c1e3b51cd3d4f4e54a9bab208e75658837a", "signature": "3045022100d5b67aa7d65bb5c653d5e0d5f4cec2fefcc9d8f390c4c53e4d3c3aed245158110220016744e2de6570c86a09212166ca6008432c5d9292f8315e474b2a220ddad35c" }
特別是,我們找到了顯示商店節點的條目:
"payee": "024a8228d764091fce2ed67e1a7404f83e38ea3c7cb42030a2789e73cf3b341365"
我們可以使用以下命令查詢 gossip 儲存以獲取有關該節點的更多資訊:
lightning-cli listnodes | grep 024a8228d764091fce2ed67e1a7404f83e38ea3c7cb42030a2789e73cf3b341365 -B 1 -C 13 { "nodeid": "024a8228d764091fce2ed67e1a7404f83e38ea3c7cb42030a2789e73cf3b341365", "alias": "www.fulmo.org", "color": "f2f3f4", "last_timestamp": 1561973177, "globalfeatures": "", "global_features": "", "addresses": [ { "type": "ipv4", "address": "95.211.207.81", "port": 9735 } ] },
這為我們提供了與商店對等並為渠道提供資金所需的所有資訊。(如果節點是私有的,我們可以使用
routes
解碼發票中的提示連接到公共出口節點。)lnd 使用者
如果您正在使用
lnd
,您可以使用該命令DecodePayReq
,而不是呼叫listnodes
從八卦商店獲取資訊,您可以呼叫GetNetworkInfo