我想通过正确的推导路径从助记符中获取地址

I want to get the address from mnemonic with the proper derivation path

我对区块链编程和一般编程都很陌生。我想使用推导路径“m/44'/501'/0'/0”的助记种子短语生成我的 SOL 地址。我找不到适合 python 的 BIP44 模块,您可以在其中指定派生路径。

在网上找了很久,终于找到了解决问题的方法,想和大家分享一下。

from bip_utils import *

MNEMONIC = "...12 words phrase..."

seed_bytes = Bip39SeedGenerator(MNEMONIC).Generate("")

bip44_mst_ctx = Bip44.FromSeed(seed_bytes, Bip44Coins.SOLANA)

bip44_acc_ctx = bip44_mst_ctx.Purpose().Coin().Account(0)

bip44_chg_ctx = bip44_acc_ctx.Change(Bip44Changes.CHAIN_EXT)

print(bip44_chg_ctx.PublicKey().ToAddress())

这段代码输出你的助记词首地址。这仅适用于 Sollet 和 Phantom 钱包!

如果您使用的是 Solflare,则可以将 bip44_chg_ctx = bip44_acc_ctx.Change(Bip44Changes.CHAIN_EXT) 行删掉!