首發 | PlatON測試網路貝萊世界今日竣工,可驗證計算壓軸登場
今日,致力於成為面向未來下一代計算架構的PlatON,完成了V0.4.0版本的升級,開始支援基於可驗證計算(Verifiable computation,簡稱VC)的可驗證合約釋出。可驗證計算可以說是解決分散式計算網路可擴充套件性的有效方案,PlatON自此成為全球首個使用VC演算法構建layer2層,來解決可擴充套件性問題的計算網路。
擴容之道
可擴充套件性一直是分散式計算網路技術的主要瓶頸,如何進行擴容也一直是研究的熱點。
在分散式計算網路中,生產了區塊之後,各個節點要去驗證區塊裡的每一筆交易中籤名是否正確,是否UTXO合法,金額是否合法……實際上就是把複雜的計算整個重複執行一遍,才能夠驗證這個區塊是否合法。在這種模式下,一旦單個節點的處理能力不夠,或者資料增長的速度非常快,都會導致整個分散式計算網路的效能整體變得低下。
實際上,在區塊生成的時候,打包者已經把整個過程做過一遍的,其他的節點完全不需要把這個過程重複一遍,只需要進行驗證即可。所以完全可以生成一個比較短的證明,其他節點去驗證這個證明,就能知道計算結果的正確性從而完成驗證了。只需要知道計算結果是對的,而無需把整個計算過程重新算一遍,以大大節省驗證時間,從而提升整體的效能,這就是可驗證計算提出的分散式計算網路的擴容解決方案。
可驗證合約的主要思想是使用者將複雜合約的計算外包給第三方,第三方具有強大的計算處理能力,他的計算成本低於使用者自己直接計算的成本。完成計算後,第三方將結果和相應的計算正確證明上鍊驗證,驗證計算的速度和成本都遠優於直接計算,這樣就可以擴充套件單節點的計算能力,而且不損失安全性。
雖然鏈上已經公認為是一個無需信任的環境,但是鏈下方案的實施又引入新的不信任因素。PlatON的可驗證計算密碼學演算法將信任傳遞到鏈下。通過可驗證計算,合約只需要在鏈下計算一次,所有節點可以快速驗證計算的正確性,一方面提高了交易的處理效能,另一方面也使得PlatON支援複雜合約的Trustless計算。
可驗證合約
PlatON測試網路V0.4.0完成更新後,使用者可以根據模板編寫自己的可驗證合約。合約中可以輸入任意計算模型,並設定好計算請求、生成計算結果和證明以及驗證計算結果和證明。使用者編寫的可驗證合約將會被編譯生成WASM位元組碼,合約開發者並不需要關心具體的API使用方法,只需要編寫好自己的計算模型程式碼即可。
可驗證合約實現了將計算任務外包給第三方進行執行的過程:使用者可以以合約的方式釋出任務,並先質押合適的Energon在合約賬戶中,PlatON的個節點可以以競爭的方式自行參與到計算任務當中。一旦計算成功生成了計算結果和證明後,就可以發起交易提交計算結果和計算證明,計算節點會先支付該筆交易的gas費,驗證節點接到請求後執行驗證過程。當交易中攜帶的證明和結果引數驗證通過後,則認為交易請求者計算出了正確的結果,計算髮起者質押在合約賬戶中的Energon則會轉賬至成功完成計算的節點賬戶中。
通過不斷的演算法優化,未來還能夠實現通過編譯器將大型複雜的智慧合約中的計算/應用分發給多個計算節點,計算節點分別執行計算任務,從而達到平行計算的效果。通過可驗證計算連線“合約計算化”和“計算合約化”,最終將真正實現利用全球異構算力進行平行計算這一全數字化世界的基礎執行模式。
Trustless計算
從2018年的12月18日,正式宣佈測試網路貝萊世界上線,到今天釋出可驗證合約,PlatON如約完成了技術路線圖中第一階段“破曉”的上半部分。PlatON面向未來全數字化世界提出的全新計算正規化——Trustless計算,也完整地展現出如何無需依賴第三方就能驗證計算結果完整性。
通過疊加全同態加密(HE)和安全多方計算(MPC),實現真正的隱私計算,保證輸入資料以及計算邏輯本身的隱私。通過可驗證計算,讓合約與計算的執行只需要進行一次,所有節點都可以快速驗證計算的正確性,提高交易的處理效能。PlatON採用全球領先的密碼學演算法,推出可擴充套件的、隱私的、可驗證的Trustless計算,在破解分散式計算網路“不可能三角”——去中心化、安全性和可擴充套件性不可同時最優化——方面給出了自己的答案。
在貝萊世界竣工後,PlatON將繼續推進測試網路不斷更新調優,在社群和生態建設上持續發力,並不斷推動Trustless計算技術的應用落地。天方破曉,光明在前,PlatON將與社群一起攜手前行,共赴未來。