這是區塊鏈。核心完成後,區塊鏈就這麽簡單,壹個* * *賬本。
區塊鏈技術的六大核心算法:
區塊鏈的第壹個核心算法:拜占庭協議
拜占庭的故事大概是這樣的:拜占庭帝國擁有巨大的財富,它的65,438+00個鄰國已經慶祝生日很久了,但是拜占庭高墻巍然屹立,固若金湯,沒有壹個鄰國能夠成功入侵。任何單個鄰居入侵都會失敗,也有可能被其他9個鄰居入侵。拜占庭帝國的防禦能力如此之強,十個鄰國中至少要有壹半同時進攻才能被攻破。但是,如果壹個或多個鄰居答應壹起進攻,但實際過程背叛了,那麽入侵者可能全部被殲滅。所以每壹方都小心翼翼,不敢輕易相信鄰居。這是拜占庭將軍問題。
區塊鏈的第二個核心算法:非對稱加密技術
在上面提到的拜占庭協議中,如果10的幾個將軍同時發動消息,必然會造成系統混亂,導致攻擊時間計劃不同,行動難以達成壹致。任何人都可以發起攻擊的消息,但是誰來發呢?其實這只需要增加壹個成本,即壹段時間內只有壹個節點可以傳播信息。當壹個節點發出統壹的攻擊消息時,每個節點都必須對來自發起者的消息進行簽名和蓋章,以確認各自的身份。
區塊鏈核心算法三:容錯
我們假設在這個網絡中,消息可能會丟失、損壞、延遲和重復發送,並且接收的順序與發送的順序不壹致。此外,節點的行為可以是任意的:它們可以隨時加入或退出網絡,它們可以丟棄消息、偽造消息、停止工作等。,並且可能發生各種人為或非人為的故障。我們的算法為由* *個知識節點組成的* * *知識系統提供了容錯能力。這種容錯包括安全性和可用性,適用於任何網絡環境。
區塊鏈核心算法4: Paxos算法(壹致性算法)
Paxos算法解決了分布式系統如何在某個值(分辨率)上達成壹致的問題。壹個典型的場景是,在分布式數據庫系統中,如果每個節點的初始狀態是壹致的,並且每個節點執行相同的操作序列,那麽它們最終可以獲得壹致的狀態。為了保證每個節點執行相同的命令序列,需要對每個指令執行壹個“壹致性算法”,以保證每個節點看到的指令是壹致的。通用壹致性算法可應用於多種場景,是分布式計算中的壹個重要問題。節點通信有兩種模式:* *內存共享和消息傳遞。Paxos算法是壹種基於消息傳遞模型的壹致性算法。
區塊鏈核心算法五:* *知識機制
區塊鏈識別算法主要是工作量證明和權限證明。以比特幣為例。其實從技術角度來說,PoW可以看作是壹個復用的Hashcash,生成工作量證明在概率上是壹個隨機的過程。挖掘壹個新的秘密貨幣,生成壹個區塊時,必須得到所有參與者的同意,挖掘者必須獲得區塊內所有數據的PoW工作證書。同時礦工要時刻觀察和調整這項工作的難度,因為對網絡的要求是平均每10分鐘生成壹個塊。
區塊鏈核心算法六:分布式存儲是壹種數據存儲技術,通過網絡利用每臺機器上的磁盤空間,用這些分散的存儲資源形成壹個虛擬的存儲設備,數據分散在網絡的各個角落。所以分布式存儲技術並不是把完整的數據存儲在每壹臺計算機中,而是把數據切割後存儲在不同的計算機中。這就好比存儲100個雞蛋,不是在同壹個籃子裏,而是在不同的地方,加起來就是100個雞蛋。如果想了解更多,可以多利用百度搜索,百度搜索結果——小貼士。