tft每日頭條

 > 生活

 > 區塊鍊算法發展趨勢

區塊鍊算法發展趨勢

生活 更新时间:2025-02-09 01:19:49

區塊鍊算法分為密碼算法和共識算法,我們先來了解密碼算法。

區塊鍊系統包含了計算機科學過去 20 多年的成果:計算機網絡 P2P、算法、數據庫、分布式系統、計算機密碼學,等等。其中,計算機密碼學又是重中之重。隻要想到以後在區塊鍊上跑的會是各種各樣的價值:貨币、股票、信任、數字資産、版權、交友信息……不需要太多的知識,普通人就能理解密碼保護會有多重要。 密碼算法的核心是非對稱加密算法和橢圓曲線型加密算法。

區塊鍊算法發展趨勢(區塊鍊算法解密)1

非對稱加密算法

對稱加密算法和非對稱加密算法的區别是什麼?

我們前面說過,區塊鍊中信息是加密的,加密後的信息要用特定密鑰才能打開。對稱加密算法呢,就是加密方和解密方使用同一個密鑰。就像你的郵箱密碼。加密(設定密碼)時輸入的是它,解密(使用郵箱時)輸入的也是它。這種算法,密碼容易被人竊取,被破解,不安全,隻不過加密解密快一點而已。非對稱加密算法,每個用戶則擁有兩把密鑰。一把是公鑰,一把是私鑰,公鑰加密,私鑰解密,私鑰加密,公鑰解密,這個過程我們前面提到過,它的安全性是很可靠的,隻不過加密解密慢一點而已。

對稱加密算法就是一把鑰匙,快但不安全,非對稱加密算法則是兩把鑰匙,安全但不快。但在區塊鍊的價值互聯中,最重要的是安全,所以用非對稱加密算法。

橢圓曲線型加密算法的特點和原理是什麼?

現在的區塊鍊中,有很多使用的是橢圓曲線加密算法。

橢圓曲線型加密算法利用的是橢圓曲線數學的一種算法:

1.它并不是橢圓的曲線,隻是它的表達形式有點像計算橢圓周長的積分公式。

2.在橢圓曲線的計算公式Q=kP 中,如果知道了 k 和 P,我們一下子就可以求出 Q 的值來,但如果給定了 Q 和 P,我們卻很難求出 k 的值來,這在數學中被稱為是橢圓曲線的離散對數問題。

正因為這樣,我們才能将 Q 作為公鑰,公開出去,而将 k 作為私鑰,私密保管。要想用公鑰來破解私鑰,那就是一個比登天還難的事。

共識機制是區塊鍊獨特的創新之處,是區塊鍊穩定運行的保障,之前班主任也介紹過區塊鍊的共識機制,今天我們從算法的角度深入了解區塊鍊共識機制是怎麼運行的。

什麼是 Paxos 算法?

Paxos 算法是解決的是非拜占庭将軍問題,也就是說僅僅是分布式系統中的節點存在問題,但是不存在惡意節點的問題,在這種情況下如何達成共識。

這個算法有點像現在的議會制度,大家需要提交議案和表決議案。然後想辦法讓大家對一份議案表決通過。 Paxos 算法的提交分為準備和提交兩個階段。準備階段解決大家要對哪一個提案進行投票,提交階段解決确認提案的問題。在提交階段,如果一個提案收到了大多數節點的回複,系統則要發出确認消息,就像你關閉網頁時,網頁還要提示你是否“确認”,如果再收到了大家的确認消息,提案就确認了。如果大家不同意這個提案,則用新的提案來代替。

就個人理解,這種做法如果是在一個相對私有環境中或者網絡環境比較好的情況下,效果會比較明顯,實際上,所謂收到大多數的回應,這也叫節點自身的評估,因為節點沒有更好的方法去判斷,到底算不算是大多數了,尤其是節點總數還不固定的情況下。

什麼是 Raft 算法?

因為 Paxos 算法過于複雜和難以實現, Raft 算法應運而生,其目的是在可靠性不輸于Paxos的情況下盡可能的簡單易懂。

舉個 Raft 算法的例子。

假如石頭村(區塊鍊)有很多村戶(節點),每戶人家都有個數據庫。石頭村要确保鄉長下來檢查時,大家家裡的數據庫是一樣的。石頭村便采取了這樣的方式。大家在村戶中投票選出一個村長,有了村長後,村裡的公文都要經過村長。村長接到鄉長要下來視察的消息後,就會向所有村戶發出命令,并且等待大家的反應。如果有超過一半的村戶執行了這個命令,村長再向上級回複。如果出現了異常情況,比如村長挂了。那就重新選舉村長。

什麼是 PBFT 算法?

上面的兩個算法,如果有節點不響應其實有點不好辦,而 PBFT 算法可以使節點隻有 2/3 正常時也可以正常工作。PBFT解決了原始拜占庭容錯算法的效率不高的問題,将算法複雜度由指數級講到多項式級,使得拜占庭容錯算法在實際系統應用中變得可行。騰訊的區塊鍊用的就是 PBFT 算法。

舉個例子:石頭村小學要舉行百米跑,一共有 4 個人參加,為了節約成本,比賽沒有請裁判,而是在 4 個人中随機選出一個人來作裁判。如果裁判是公正的,而當他發出消息,如“預備”時,大家認為這個消息沒有問題,就執行。而他看到至少有 2 個人和自己一樣做好了預備姿勢時,就可以喊“跑”。就可以起跑了。也就是,隻要超過一半的人狀态是對的,就可以前進。如果裁判不公正,在大家沒按正确姿勢做預備,跑時就指揮,那這個裁判就會被換掉。

PBFT算法的優點:

PBFT算法公式各節點由業務的參與方或者監督法組成,安全性和穩定性由業務雙方保證。

共識的時延大約在 2~5 秒,基本達到商用實時處理的要求。

共識效率高,可滿足高頻交易量的需求。

因為非常适合聯盟鍊的應用場景,PBFT及其改進算法因此成為目前使用最多的聯盟鍊共識算法。改進主要集中在:

① 修改底層網絡拓撲的要求,使用 P2P 網絡;

② 可以動态地調整節點數量;

③ 減少協議使用的消息數量等。

不過 PBFT 仍然是依靠法定多數(quorum),一個節點一票,少數服從多數的方式,實現了拜占庭容錯。對于聯盟鍊而言,這個前提沒問題,甚至是優點所在。但是在公有鍊中,就有很大的問題。

我們可以發現,區塊鍊算法的巧妙之處是将人類的社會機制,曆史經驗,包括數學模型應用到複雜的計算機系統之中達成了區塊鍊想要的功能。我們有理由相信區塊鍊和現實社會運作有着千絲萬縷的關系,正因為如此區塊鍊的發展并不是冥冥之中的産物。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved