簡體   English   中英

比特幣區塊鏈中的交易有效性

[英]Transaction Validity in bitcoin blockchain

我正在閱讀有關區塊鏈在比特幣交易中的工作,對此我了解很多,這些塊是相互連接的,塊包含前一個塊的 hash,每當創建一個塊時,礦工都會嘗試解決所謂的數學難題工作量證明,無論誰先解決它,都可以獲得一個比特幣並添加該區塊,具有最長的區塊將被視為有效區塊鏈

我沒有得到的是,只要有一組交易,就會創建一個塊,假設其中一個交易是無效的,那么礦工將開始做的是解決一個難題,但是那個難題必須做什么檢查該無效交易

塊拼圖與交易有效性或無效性無關。

每當礦工(或另一個節點)從對等節點接收到新交易時,他都會根據現有區塊鏈和一些內部規則來驗證交易。 如果交易有效,礦工將此交易添加到內存池中,並轉發給對等方。

當交易添加到內存池時,內存池的默克爾根會發生變化,它出現在區塊 header 中。

在此過程中,礦工試圖 select隨機值,以生成小於目標值的塊 header 的 hash。

如果礦工發現一個隨機數,滿足網絡規則,他將塊分發給對等點,僅包含有效交易(從內存池打包)。

對等節點,無論何時收到塊,驗證來自該塊的所有交易,並使用檢查 merkle 樹和塊 hash 驗證塊的完整性。

因此,如果惡意礦工將無效交易添加到他的區塊中,他的同行只會拒絕該區塊。

他們首先解決了這個難題,在找到所需的 nonce 后,他們創建了一個包含來自 mempool 的 VALID 交易、先前的 hash 和一個特定交易的塊,向自己發送交易費用和解決難題的獎勵。

暫無
暫無

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

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