Blockchain

“最長鏈”一詞是什麼意思?

  • May 4, 2018

“最長鏈”一詞是什麼意思,因為只有一個“正確”的區塊鏈存在?另一個更長的鏈條如何使“正確”鏈條無效?

比特幣的區塊鏈系統真的是兩個完全不同的系統,很容易混淆。第一個是塊樹,第二個是活動鏈

塊樹由所有祖先已知的有效塊組成,直到創世塊。有效性規則包括不重複支出、有效簽名、不引入超過允許數量的貨幣……這些是網路規則,每個完整的比特幣節點都會驗證它們。

活動鍊是從頂部的創世塊到塊樹底部的某個葉節點的一條路徑。每一條這樣的路徑都是一個有效的選擇,但是節點應該選擇他們所知道的“工作”最多的路徑(其中工作被鬆散地定義為困難的總和)。相對性和技術限制使我們無法在全球範圍內進行即時通信,因此不能指望兩個節點選擇與活動節點相同的鏈。這沒問題:探勘機制確保兩個節點在過去對區塊產生分歧的機會隨著年齡的增長呈指數下降。

所以不,沒有一個“正確的鏈條”,有很多。節點自己選擇,但係統旨在確保迅速達成共識。

實踐中的規則是這樣的:當一個新塊到達時,它擴展了之前的活動鏈,我們只是將它附加到活動鏈上。如果沒有,則取決於它擴展的分支現在是否比目前活動的分支有更多的工作。如果沒有,我們儲存塊並停止。如果它確實有更多工作,我們會進行所謂的“重組”:從舊分支停用塊,並從新分支啟動塊。

引用自:https://bitcoin.stackexchange.com/questions/5540