Bitcoin區塊驗證

來源:互聯網
上載者:User

標籤:ref   roo   二叉樹   --   雜湊   href   nba   難度   ash   

目錄

  • 區塊的產生
  • 區塊的驗證鏈結接
    • 驗證過程
    • Merkle Tree結構
區塊的產生
  • 礦工在挖礦前要組建區塊

    • 將coinbase交易打包進區塊

    • 將交易池中高優先順序的交易打包進區塊

      • 優先順序 = 交易的額度 * UTXO的深度/交易的size
      • 防粉塵攻擊
    • 建立區塊的頭部

      版本號碼|父區塊雜湊|Merkle樹根|時間戳記|難度值|Nonce

      ?

  • 挖礦成功後,將計算出來的隨機數noncet填入區塊頭部,向臨近節點傳播

區塊的驗證鏈結接驗證過程
  • 相鄰節點收到新區快後,立即做以下檢查
    • 驗證Pow的nonce值是否符合難度值
    • 檢查時間戳記是否小於目前時間2小時(10分鐘一個塊)
    • 檢查Merkle樹根是否正確
    • 檢查區塊size要小於區塊size的上限
    • 第一筆交易必須是coinbase的交易
    • 驗證每筆交易
Merkle Tree結構二叉樹
  • 樹--由多個節點群組成的一種資料結構

    • 每個節點儲存資料
    • 根節點root
    • 父節點,子節點,兄弟節點
  • 構建二叉搜尋數

    • 12 5 2 18 19 15 17 16 9

      ?

Merkle Tree
  • 防止資料篡改

  • 快速驗證某個交易是否存在

  • 節點儲存Hash值

  • 從子節點構造樹

Merkle Path - 驗證路徑
  • 只需log2(N)個已知數,即可驗證K是否被包含在區塊中

    • H[^K]為尋找交易

    • H[^ABCDEFGH]和H[^MNOP]及H[^IJ] 為臨近已知父節點

    • H[^L]為相鄰節點交易Hash

      ?

Bitcoin區塊驗證

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.