簡體   English   中英

Solana 密鑰生成公鑰不匹配

[英]Solana keygen pubkey not matching

我正在運行 solana-keygen 工具,但對其輸出感到困惑。 我的印象是第一個命令的公鑰輸出應該與使用第二個命令重新創建的公鑰相同。 但它們是不同的。 第一個代表什么?

C:\Users\MSHIRAZ>solana-keygen new --no-outfile
Generating a new keypair

For added security, enter a BIP39 passphrase

NOTE! This passphrase improves security of the recovery seed phrase NOT the
keypair file itself, which is stored as insecure plain text

BIP39 Passphrase (empty for none):

=========================================================================
pubkey: Gu3nU5cW7W8mZesDUhjaym8e1mbsyUBey8fvhgnq7nMM
=========================================================================
Save this seed phrase and your BIP39 passphrase to recover your new keypair:
motor rate october crawl visa family prison hair annual fault tilt animal
=========================================================================

C:\Users\MSHIRAZ>solana-keygen pubkey prompt://
[pubkey recovery] seed phrase:
[pubkey recovery] If this seed phrase has an associated passphrase, enter it now. Otherwise, press ENTER to continue:
ADarcoVBd5USiMpycBGrhforf2EHqUJTc4YyByC7A8xP

C:\Users\MSHIRAZ>solana-keygen verify ADarcoVBd5USiMpycBGrhforf2EHqUJTc4YyByC7A8xP prompt://
[pubkey recovery] seed phrase:
[pubkey recovery] If this seed phrase has an associated passphrase, enter it now. Otherwise, press ENTER to continue:
Verification for public key: ADarcoVBd5USiMpycBGrhforf2EHqUJTc4YyByC7A8xP: Success

create 上打印的公鑰是原始的 ed25519 密鑰對公鑰,而solana-keygen pubkey prompt://在 m/44'/501' 打印公鑰。 如果您運行solana-keygen pubkey ASK它應該打印原始公鑰

目前有一個開放的 PR 來更新 CLI,但現在您可以按照上述方法進行操作。

https://github.com/solana-labs/solana/issues/17325#issuecomment-844317674

我不確定,但這可能與您提供的派生路徑有關。 區塊鏈 API 有一個端點,用於為 Solana 錢包派生公鑰,您可以使用它可靠地做到這一點。 它指出:

您可以使用秘密恢復短語、密碼短語和派生路徑的每種組合生成唯一的公鑰。 因此,使用單個秘密恢復短語,您可以生成許多公鑰。 如果您剛剛開始,只需提供您使用 Solana Wallet Secret Recovery Phrase 端點生成的秘密恢復短語。 如果您嘗試獲取已存在的公鑰(例如,在 Phantom 錢包中創建),請確保使用正確的派生路徑和密碼短語。 要了解更多相關信息,請參閱下面這些參數的說明。

派生路徑用於從秘密恢復短語中派生出公鑰。 僅接受某些路徑。 如果未提供,我們默認使用“m/44/501/0/0”。 這是 Phantom 和 Sollet 錢包使用的路徑。 如果您提供空字符串 "" 作為派生路徑的值,那么我們將使用 Solana CLI 默認值。 SolFlare 推薦的路徑是“m/44/501/0”。 您也可以任意增加默認路徑(“m/44/501/0/0”)來生成更多錢包(例如“m/44/501/0/1”、“m/44/501/0/2” ”,……)。 這就是 Phantom 生成更多錢包的方式。 要了解有關派生路徑的更多信息,請查看本教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM