Lightning-Network

使用 C-lightning 從地址獲取公鑰或私鑰

  • June 23, 2020

我正在研究閃電網路,我使用 c-lightning。我可以通過方法獲取新地址newaddr,但找不到私鑰。我的地址是bcrt1qmckts70jsq2u5886lgcq2yn7xjmp97t09zlrg,我怎樣才能找回它的公鑰?我在哪裡可以找到它的私鑰?

$ bitcoin-cli validateaddress bcrt1qmckts70jsq2u5886lgcq2yn7xjmp97t09zlrgj                                                              │
{                                                                                                                                       │
 "isvalid": true,                                                                                                                      │
 "address": "bcrt1qmckts70jsq2u5886lgcq2yn7xjmp97t09zlrgj",                                                                            │
 "scriptPubKey": "0014de2cb879f28015ca1cfafa3005127e34b612f96f",                                                                       │
 "isscript": false,                                                                                                                    │
 "iswitness": true,                                                                                                                    │
 "witness_version": 0,                                                                                                                 │
 "witness_program": "de2cb879f28015ca1cfafa3005127e34b612f96f"                                                                         │
} 

lightningd不提供簡單的 RPC 命令來轉儲密鑰。

如果您確實需要訪問密鑰,最簡單的方法是直接從hsm_secret.

鏈上交易的密鑰(因為你提到過newaddr。其他派生更涉及)是使用 BIP32 未硬化派生從m/0/0.

根種子來自hsm_secretwith :

root_seed = hkdf_sha256(hsm_secret, salt=NULL, info="bip32 seed")

存在諸如*(目前僅派生承諾交易的密鑰,但可能會在未來擴展)*或 jb55等工具,它們會為您處理派生。hsmtools clightning-dumpkeys

引用自:https://bitcoin.stackexchange.com/questions/96627