首頁  >  文章  >  一文詳細了解區塊鏈原理

一文詳細了解區塊鏈原理

WBOY
WBOY轉載
2024-03-07 09:07:06905瀏覽

區塊鏈技術是一件神奇的東西。對許多技術人員來說,這只是一個神作。對於這樣一個強大的東西,你們知道區塊鏈的原理是什麼嗎?下面小編就來給大家分析分析區塊鏈原理是什麼?區塊鏈是比特幣的一個重要概念。該貨幣與清華大學五道口金融學院網路金融實驗室相連。 、新浪科技發布《2014-2016全球比特幣發展研究報告》提到區塊鏈是比特幣的底層。技術和基礎設施。

區塊鏈本質上是比特幣的基礎技術,它是一種分散的資料庫系統。區塊鏈透過加密技術產生一系列資料區塊,每個資料區塊包含有關比特幣網路交易的信息,用於驗證交易的有效性並產生下一個資料區塊。

一文詳細了解區塊鏈原理

它的原理是什麼?

看到關於區塊鏈的不同定義,我開始意識到我以前對這個概念的解釋總是囿於比特幣。區塊鏈的定義並不是唯一且明確的。在這裡,我想分享一些我個人根據研究論文總結的關於「區塊鏈」特徵的見解:

使用"哈希鏈"形式的資料結構保存基礎資料(如下所述)

多個節點參與系統操作(分散式)

透過特定協定或演算法達到共識(共識協定/演算法)以確保基礎資料的一致性。

比特幣是區塊鏈技術中最具代表性和影響力的應用之一。透過了解比特幣如何利用區塊鏈,我們可以更輕鬆地理解其他種類的區塊鏈應用。

在談論應用程式之前,最重要的是要了解它的技術性質。區塊鏈的所有答案都是首先提到區塊鏈的無形特徵,所以首先要理解的是它是如何實現的?

必備知識;密碼Hash()函數的單向性: Hash(x)= y,很難找到x的y

哈希鏈:如果現在有資料塊A,B,C依序。然後我們可以像這樣計算一個哈希值。注意「||」拼接

H0 =哈希(A)

H1 =哈希(B || h0)

H2 =哈希(C || h1 )H2是我們計算的哈希頭。現在,為什麼我們稱這個東西為哈希鏈,因為h2的值取決於前一系列資料的內容和計算順序。如果您現在知道h2,其他人持有A,B,C,無論他是修改A,B,C中的任何一個還是A,B,C的順序,您都無法再次計算正確的h2。

好吧,事實上,區塊鏈的概念在這裡有點感覺。不是嗎?"區塊鏈單字"是英語區塊鏈的翻譯。如果從字面上理解,由鏈"組成的"資料塊足以解釋其基本含義。比特幣區塊鏈實際上是哈希鏈的變體(請注意,比特幣添加了下面描述的隨機數和隨機數的特殊要求的規則,以實現工作證明的共識機制)。 ,而不是區塊鏈的必要特徵)。如何改變?加隨機數(Nonce)

一文詳細了解區塊鏈原理

假設現在存在順序產生的資料塊A,B,C。讓我們像這樣計算哈希頭。注意「||」拼接

H0 =哈希(A || Nonce0)

H1 =哈希(B || h0 || Nonce1)

H2 =哈希(C || h1 || Nonce2)

這裡我們也加入了一個額外的要求,即h0,h1,h2必須都以指定的0位數開始,例如,每個雜湊值必須以5 0開頭,然後是h0,h1,h2它應該是這樣的(00000 *****************)

添加此要求後,h0, h1,h2不是那麼容易計算,因為你不能根據輸出的形式反轉輸入,並給出A,B,C,它只能是不斷改變Nonce進行詳盡的計算,然後找到滿足要求的Nonce值,以便h0 ,h1,h2滿足要求。

每個人都知道所謂的礦工正在做什麼,即接受廣播的資料區塊,然後計算當前哈希鏈的頭部。在成功計算成功的Hash後,每個人都會被告知。我自己找到了,讓其他人計算下一個哈希頭。事實上,在這裡,區塊鏈的性質幾乎是相同的。如果網路中的每個人預設協議,並且只計算最長哈希鏈之後的新頭,那麼一切都很好,但是如果有人想要以同樣的方式,他必須擁有更多的計算能力。當誠實的人遵守規則時,他們可以計算出一系列的叉子,甚至可以直接計算出新的鏈條,這樣每個人都可以承認。

至於這個難度的證明,Satoshi Nakamoto建立了泊松分佈的機率模型,假設由誠實節點計算的新哈希頭的機率和由不誠實節點計算的新哈希頭的機率q。 ,計算出N值。

該N值的意義是在計算新的雜湊頭h1之後,然後附加N個頭(h2,h3,h4 ....),網路應該識別新的頭。 H1。因為此時,如果攻擊者想要成功發動攻擊,則需要計算至少一個長度大於N的分支。當攻擊者沒有50%的總網路運算能力時,很難實現這種可能性。

一文詳細了解區塊鏈原理

所以在這裡,區塊鏈已經很清楚了,它是加密工具的巧妙應用。當然,區塊鏈的可能性不僅僅是我提到的這些,包括保險、審計、醫療等等各行各業的巨頭們都在探索其潛力,如果你有好的想法,認為區塊鏈能夠帶來的好處會遠大於它的副作用,你大可去嘗試。

以上是一文詳細了解區塊鏈原理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:jb51.net。如有侵權,請聯絡admin@php.cn刪除