無法從助記符種子(Python)中獲取 bip32masterkey
我正在嘗試理解和實現分層確定性錢包的功能。但我無法根據本教程獲得 bip32masterkey:https ://medium.com/mycrypto/the-journey-from-mnemonic-phrase-to-address-6c5e86e11e14
這個助記符種子:0x77cdf1d92225adc0e67b1b4f5a31820251d518b3af074df25a07b751947fd07ebd29a4d0e57b84ea9de03a9123e2a6ea1e3ed739d4c562efec21f1bb0a54a89
應該給我這個 bip32masterkey : 0x300b155f751964276c0536230bd9b16fe7a86533c3cbaa7575e8d0431dbedf23f9945bb8b052bd0b0802c10c7c852e7765b69b61ce10233d9fe5ababab356
但是我有(pbkdf2):0x11df5cd2d2095dde0a46a8de0c2aba91a565e16dd0e5877d21285e605659d587bd3b3c72cba372ecf3b26fdf27151d9dc5d9f341760784cb04540f95d1
還有這個(hmac-sha512):0xc661464729610902524d0919cc3000af9bfbd4fa003e78979b6026bb24d150ae99c5f70573e3eaf1b04ab3c735adc7e410bb65557e1f35cdf9929f87825f
這是我正在使用的程式碼:
def get_bip32masterkey(seed): master_key = pbkdf2_hmac("SHA512", bytes(binascii.a2b_hex(seed)), bytes("Bitcoin seed".encode()), 1).hex() return (master_key)
我也嘗試使用 hmac 而不是 pbkdf2 但我無法獲得正確的 bip32masterkey,有人看到我缺少的點嗎?
這是我與 hmac 一起使用的程式碼:
def bip32masterkey(seed): seed = binascii.a2b_hex(seed) masterkey = hmac.new(key=bytes("Bitcoin seed".encode()), msg=seed, digestmod=sha512).hexdigest() return (masterkey)
(我不是 python 開發人員,我只是想了解基礎)
提前感謝大家的回答
編輯:看起來我使用的範例提供了錯誤資訊,並且我的 hmac 實現正在執行。
看起來我使用的範例提供了錯誤資訊,並且我的 hmac 實現正在執行。
編輯所以也許它更清楚一點:
我通過在此處粘貼我的 BIP39 種子來檢查它: https ://iancoleman.io/bip39/
並使用此站點對 base58 進行解碼: https ://appdevtools.com/base58-encoder-decoder
並檢查解碼結果與我的函式的返回,看看它是否匹配
hmac 匹配的結果
查看規範和教程中推薦的 FOSS 實現。當然,重新閱讀規範文件,仔細解析。
不僅是 Python,甚至包括 BX 和 bash 工具、腳本等 CLI 軟體;在嘗試編碼之前作為使用者獲得清晰的理解。