• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 區塊鏈生態 查看內容
    • 100390
    • 0
    • 分享到

    火幣區塊鏈產業專題報告:錢包篇

    2018-8-8 15:40

    來源: 火幣研究院

    通過助記詞生成種子(BIP39標準)


    3.2.2通過助記詞生成種子(BIP39標準)


    助記詞由長度為128到256位的隨機序列(熵)匹配詞庫而來,隨后采用PBKDF2(Password-Based Key Derivation Function 2)推導出更長的種子(seed)。生成的種子被用來生成構建deterministic Wallet和推導錢包密鑰。


    在密碼學中,Key stretching技術被用來增強弱密鑰的安全性,增加了暴力破解 (Brute-force attack)對每個可能密鑰嘗試攻破的時間,增強了攻擊難度。各種編程語言原生庫都提供了key stretching的實現。PBKDF2是常用的 key stretching算法中的一種。基本原理是通過一個為隨機函數(例如 HMAC 函數),把明文和鹽值作為輸入參數,然后重復進行運算最終產生密鑰。


    如圖3.5所示:


    1)PBKDF2有兩個參數:助記詞和鹽。鹽的目的是提升進行暴力攻擊時的困難度,可以參見BIP-39標準。鹽由字符串常數“助記詞"與可選的用戶提供的密碼字符串連接組成;


    2)PBKDF2使用HMAC-SHA512作為隨機算法+2048次哈希重復計算,最終得到BIP32 種子,512 位(64字節)是期望得到的種子長度。即DK = PBKDF2(PRF, Password, Salt, c, dkLen),其中,PRF是一個偽隨機函數,例如HASH_HMAC函數,它會輸出長度為hLen的結果;Password是用來生成密鑰的原文密碼;Salt是一個加密用的鹽值;c是進行重復計算的次數;dkLen是期望得到的密鑰的長度;DK是最后產生的密鑰。



    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频