區塊鏈可更改么
㈠ 為什麼區塊鏈不能更改(區塊鏈的不可篡改特性是什麼)
網路:如何理解區塊鏈的不可篡改性?區塊鏈技術,也稱為分布式賬本技術。
在區塊鏈裡面,由於每個人(計算機)都有一模一樣的賬本,並且每個人(計算機)都有著完全相等的權利,因此不會由於單個人(計算機)失去聯系或宕機,而導致整個系統崩潰。
既然有一模一樣的賬本,就意味著所有的數據都是公開透明的,每一個人可以看到每一個賬戶上到底有什麼數字變化。
它非常有趣的特性就是,其中的數據無法篡改。因為系統會自動比較,會認為相同數量最多的賬本是真的賬本,少部分和別人數量不一樣的賬本是虛假的賬本。
在這種情況下,任何人篡改自己的賬本是沒有任何意義的,因為除非你能夠篡改整個系統裡面大部分節點。
如果整個系統節點只有五個、十個節點也許還容易做到,但是如果有上萬個甚至上十萬個,並且還分布在互聯網上的任何角落,除非某個人能控制世界上大多數的電腦,否則不太可能篡改這樣大型的區塊鏈
區塊鏈的四大特徵
區塊鏈不可篡改的工作原理是什麼?要理解這一點,我們需要引入一個概念:哈希演算法。哈希演算法有很多種,其基本功能是將任意長度的數據文件轉換成唯一對應的定長字元串。
你可以理解為任何文件都會生成一串固定長度的亂碼標簽。
這個演算法是不可逆的,也就是說,當你得到這個標簽的時候,你無法逆向推導出原始數據文件。
如果數據文件中有細微的變化,比如添加了一個標點符號,那麼重新哈希後,新的標簽會和原來的標簽有很大的不同。
從新舊標簽之間的差異來推斷數據文件發生了什麼是不可能的。因此,很容易驗證某個文件在某個時刻是否存在,或者兩個文件是否相同。
正是這種不可逆轉性決定了區塊鏈的不可逆轉性。在每個塊中,除了十分鍾內的轉賬交易數據之外,還有一個塊頭。
標頭包含先前塊數據的哈希值。這些hash逐層嵌套,長度固定,最後所有的塊串聯起來形成一個區塊鏈。區塊鏈包含了自鏈誕生以來發生的所有交易和新的貨幣發行。
如果我是個壞人,我會篡改協議。包括交易的發送者和接收者以及轉賬的金額。發送者發送的比特幣可以一直追溯到該貨幣新發行的最早區塊。
發送方擁有這些比特幣的合法性由該貨幣的原始發行區塊記錄和所有與該貨幣相關的歷史交易記錄來保證。
因此,篡改一次交易,意味著後續所有的哈希和相關交易記錄都要被再次篡改,這需要極高的計算能力和難度,成功概率為零。