區塊鏈技術中,如何保證爭奪到記賬權的節點在新區塊中寫入的交易資料是正確的而非篡改的?

時間 2021-05-12 06:31:12

1樓:資源分享

SHA256

一種國際公認的優秀加密演算法,輸入是任意長度的資料,輸出總是256位的值,這個值通常我們稱之為雜湊值,輸入值的任何微小的變化都會產生不同的輸出。

舉個例子,比如說這個256位的雜湊值大小代表你跟某樣東西之間的距離。原始的雜湊值是你跟前面那顆樹的距離,你小小的修改了一筆交易的資料,把划給你的值增加了1聰,也就是10的負8次方那麼小,結果新生成的雜湊值會變成你跟土星環上一顆隕石之間那麼遠。實際上這個變動會更誇張,弄不好要跨越整個銀河系。

注:當下文提到」某某的雜湊「時,指的是以某某為輸入,經過SHA256演算法後生成的256位雜湊值。

梅克爾樹

一種樹狀資料結構,位元幣的區塊鏈使用了二叉樹,具體結構可以去看下《精通位元幣第七章區塊鏈》。

這個二叉樹的每個節點都對應乙個雜湊值:最底層的節點是每筆交易的雜湊,第二層的每個節點都是它下方兩個雜湊拼接後經過SHA256演算法後生成的雜湊,依次類推直到最頂端只剩乙個節點,我們稱這個節點為梅克爾根。

回顧下SHA256演算法的特性,任何微小的輸入變動都會引起輸出值劇烈的變化。也就是說,交易記錄中的任何變化,哪怕只把輸出值增加了1聰,都會引起那次交易雜湊翻天覆地的變化,這個變化會影響到第二級的雜湊,進而一級一級順著梅克爾樹傳遞到梅克爾根。

為什麼會說篡改很難?

首先,從資料結構上看。

區塊的詳細結構可以參考《精通位元幣第七章區塊鏈》。

大致上乙個區塊包含了區塊大小、區塊頭、交易數量、交易資料四個部分。其中交易資料被組織成了梅克爾樹結構,區塊頭中包含了上乙個區塊的區塊頭部雜湊和本區塊中的梅克爾根。

由於區塊擁有了這樣的組織結構,區塊內部的任何交易資訊的改動,總會引起梅克爾樹根的雜湊值變化,進而包含了梅克爾根的區塊頭會發生變化,最終導致區塊頭的雜湊發生變化。

如果進行了篡改,下乙個區塊中包含的前乙個區塊雜湊將會跟篡改後的值不匹配。為了不讓人發覺本區塊的篡改,他必須修改掉後乙個區塊的頭部資訊。後乙個的後乙個頭部資訊也將需要修改,依次類推,一旦修改了某個區塊,後續所有的區塊都需要修改才能確保修改的不會被發現。

每乙個區塊的修改都是是乙個非常艱鉅的過程,因為區塊的生成還需要乙個非常特別的東西:工作量證明。

什麼意思呢?就是說區塊的生成是要消耗工作量才能完成的,實際上這個消耗非常巨大。

那麼這個工作量證明到底是怎麼回事?

你可能還記得區塊頭的雜湊值這個概念,區塊鏈技術對這個256位雜湊值會有乙個要求,就是這個值必須小於某個上限。回顧SHA256這個演算法的概念,你會發現,輸出的雜湊值是非常隨機的,如果需要把結果落入特定的範圍,需要不停的修改輸入進行嘗試,直到輸出滿足要求。在區塊鏈中,在區塊的頭部有乙個32位的隨機量可以修改,以完成調整最終雜湊的目的。

當前,滿足小於這個上限值要求的難度有多大呢?乙個專用的頂級礦機(一種專門用來計算雜湊的計算裝置),需要平均工作14個月才能找到乙個合適的目標雜湊。每修改乙個區塊,中間消耗的電量和時間估計都會超出被修改的賬單中的獲益,更不用說還需要修改很多個。

甚至,這個修改完成後,還有乙個更艱鉅的任務,就是黑掉全世界51%以上的區塊鏈備份電腦。否則,即使你的賬本修改的很完美,但是跟其他大部分人的不一致,那這個修改也毫無作用。

那麼,篡改交易資訊的意義又是什麼?

回顧區塊鏈技術的發明者中本聰非常天才的通過兩個維度保證了區塊鏈的安全性:

技術維度:利用強大的加密演算法和巧妙的資料結構確保每個修改都會被檢測到;

經濟維度:利用工作量證明使得每次修改都需要付出巨大的經濟成本。

這樣的解決方案已經不僅僅適用於位元幣一種應用了,現在非常多的個人、金融機構、甚至zf都在探索基於區塊鏈的應用場景,區塊鏈技術必然會在歷史上留下深刻的印記。

2樓:trains

算出算力問題的過程,你是把這些交易的雜湊帶進去算的。這樣你才能算出那個工作量證明的數。如果你在發布前改了裡面的交易資訊,你之前算的數就不對了。

另外你怎麼改交易呢?交易也是非對稱加密的。

3樓:

交易的完整性,是通過數字簽名來保證的。交易簽完字之後就完結了。

十分鐘一次的清算,只是解決可能的雙花問題,並不會改動交易本身。

4樓:某琳

首先每個區塊都會被所有的完整節點按照一定規則進行驗證,任何一條有問題都會拒絕承認你的塊

區塊鏈POW的挖礦過程需要具體做什麼(比如需要依次驗證哪些資料)?

其次每條交易的輸入簽名(在預設情況下)會囊括該筆交易的所有輸入和輸出,任何一部分有篡改簽名就會失效

風頭正盛的區塊鏈技術會顛覆以複式記賬法為主的傳統會計行業嗎?

呆23 我認為會對會計的傳統複式記賬產生顛覆,區塊鏈的運用,對會計的基礎概念,比如會計主體假設都會有影響 具體答案以後補充,但是我堅信區塊鏈技術發展成熟之後,未來的會計和現在的會計一定大不相同 按目前的公司規定,各行各業都需要會計。但是想拿到高於平均水平的工資,復合技能比單一技能前景相對更好。老闆會...

區塊鏈技術有哪些?應用前景如何?

TokenPocket錢包 區塊鏈技術的核心是分布式賬本 非對稱加密 共識機制和智慧型合約。目前區塊鏈在各個行業都已應用。但區塊鏈技術同時也面臨很多挑戰,一是其去中心化的概念受到現行觀念 制度的約束,二是在技術層面,區塊鏈還要更加突破性的完善,三是競爭性的技術挑戰,人類發展的技術有很多,哪種技術很高...

區塊鏈到是什麼?是一種技術嗎?

混跡幣圈的項老師 區塊鏈是分布式資料儲存 點對點傳輸 共識機制 加密演算法等計算機技術的新型應用模式。是位元幣的乙個重要概念,它本質上是乙個去中心化的資料庫,同時作為位元幣的底層技術,是一串使用密碼學方法相關聯產生的資料塊。每乙個資料塊中包含了一批次位元幣網路交易的資訊,用於驗證其資訊的有效性防偽和...