官术网_书友最值得收藏!

5.3 用途二:工作量證明

為什么都說區(qū)塊鏈是不可篡改的呢?首先考慮一個簡單的哈希鏈:每次打包時包含上一個區(qū)塊的哈希值和這個區(qū)塊的相關(guān)信息,如果某一個塊的信息被篡改了,往后所有塊的哈希值都會有變化,其他人也會注意到這個變化。但是這樣設(shè)計的問題在于任何人都可以修改某一個區(qū)塊上的信息,重新計算剩余鏈條的所有信息,并且聲稱這才是正確的鏈條。

比特幣設(shè)計的精妙之處在于,它使得要實現(xiàn)這樣的過程需要付出昂貴的成本。它采用工作量證明的共識機制,大家爭相證明自己完成了一定的工作量,最先完成的獲得記賬權(quán)。而工作量指的就是要求找到一個隨機數(shù),使得它加上一個給定的字符串后,計算得到的哈希值小于某個值。在比特幣中,這個給定的字符串包含了版本號、上一個區(qū)塊的哈希值、以Merkle根哈希值存放的交易信息、時間戳、難度值的信息。礦工找到符合要求的隨機數(shù),既“合法”宣告了自己的記賬權(quán),也通過哈希函數(shù)完成了對交易信息的編碼,并以一種不可篡改的方式存儲。如果有人試圖想更改交易信息,他必須運氣特別好,能夠快速且成功地找到往后鏈條的每個區(qū)塊正確的隨機數(shù),使得他篡改信息后的鏈條成為當前最長的鏈條,這樣的情況理論上的確可能發(fā)生,但是在算力有限的情況下,概率比較小。

主站蜘蛛池模板: 元谋县| 金溪县| 忻州市| 东莞市| 平利县| 凯里市| 天峻县| 广安市| 汤阴县| 遂昌县| 崇明县| 西城区| 竹溪县| 龙江县| 新宾| 永善县| 琼结县| 许昌县| 阿鲁科尔沁旗| 门源| 禹州市| 临潭县| 天台县| 错那县| 永年县| 广宁县| 大厂| 林周县| 依兰县| 福州市| 砚山县| 邳州市| 睢宁县| 上饶市| 深圳市| 长阳| 丰台区| 容城县| 河津市| 抚松县| 将乐县|