【硬核FAQ】一文讀懂隱私計算、安全多方計算、可驗證計算

買賣虛擬貨幣

更多精彩推薦,請關注我們

這是一場知識密度極高的頭腦盛宴。

近日,PlatON聯合無涯社羣舉辦了《一切皆可結算 在商業網路與開發者一起遨遊》的線上直播活動。PlatON創新研究院高階研究員夏伏彪博士從PlatON可擴充套件角度、隱私計算價值、密碼學與AI框架四大方向詳解“計算”的價值。

一場硬核FAQ緩緩展開。

Part1:可擴充套件角度

Q:可驗證計算是什麼?

A:可驗證計算通常是指Verifiable Computing(簡稱“VC”),指可以將計算任務外包給第三方算力提供者;(不受信任的)第三方算力提供者需要在完成計算任務的同時,提交一份關於計算結果的正確性證明。

Q:在區塊鏈系統中,哪些計算適合“上鍊”,哪些不適合?

A:區塊鏈作為分散式網路,鏈上計算/儲存本質是將計算和儲存任務(同時地)執行了多次,是十分昂貴的資源開銷;因此鏈上其實並不適合承載過多的計算任務。

另一方面,區塊鏈自身的全域性透明、不可篡改等特性,其實適合那些具備“審計需求”的計算任務,例如透過區塊鏈,智慧合約執行的“數字資產交易”,需要保證資產交易的公開和可審計;同樣是透過智慧合約實現的“電子存證上鍊”,是將司法電子證據作為一種區塊鏈交易傳送到鏈上進行校驗計算並儲存,也是為了滿足公開可審計可追溯的要求。這些鏈上計算相對更輕量級,且側重於對業務資料的全域性狀態更新,例如數字資產交易是更新了各賬戶的餘額,存證上鍊其實也是更新了證據的狀態。

Q:在上鍊之前,如何保證鏈下計算的正確性?

A:保證鏈下(通用)計算的正確性,從密碼學的角度說,其實還是依賴於可驗證計算(VC)技術。可驗證計算中,計算者通常會將計算任務轉換成算術電路,然後透過密碼學技術建立一些公開且可以被快速驗證的數學關係式以及式子裡的各項值;計算者將這些值傳送給驗證者。驗證者可以透過這些輸入的值,校驗公開的驗證關係式是否滿足。

可驗證計算的技術模型,包含了對計算正確性的潛在要求,即如果是正確地執行了計算任務,則上述過程中生成的值一定可以滿足驗證關係式;如果沒有正確地計算任務,則過程中生成的值能順利透過驗證關係式檢查的概率非常非常低。

Q:保證鏈下計算正確性的同時,鏈上的驗證如何做?驗證速度能不能達到商用標準?

A:鏈上的驗證工作,是依賴於計算者提供的一些輸入值,和與該計算任務相關的公開的驗證關係式。

籠統地說,驗證工作的複雜性,會遠小於計算任務本身,也就是說,驗證速度會比計算更快。好的VC技術,可以讓驗證速度做到常數級別,即不管計算任務多複雜,僅需常數時間(例如幾個毫秒)就可以完成一次驗證,商用問題不大。

Q:從可擴充套件角度來說,可驗證計算對吞吐量帶來了什麼變化?

A:可驗證計算,包括以zk-SNARKs為代表的零知識證明技術,給區塊鏈可擴充套件性帶來了新的解決方案。以太坊創始人Vitalik在以太坊技術社羣曾提出用可驗證計算(zk-SNARKs)技術來解決以太坊可擴充套件性問題,也就是目前非常火熱的zk-rollup技術。

大致的思路是,將網路裡的區塊處理都轉交一個鏈下的第三方,這個第三方可以是不受信任的,他在處理完轉賬交易的業務後會更新以太坊的賬戶全域性狀態,同時他還需要提供一個證明,證明他的整個轉賬交易處理邏輯,包括對全域性狀態的更新,都是準確無誤的。這個證明,和更新後的賬戶全域性狀態,以及壓縮後的交易資料,都會被提交上鍊。鏈上的智慧合約負責對證明進行校驗,以及將賬戶狀態進行最終更新。

我們發現,可驗證計算可以將複雜的區塊交易處理轉到鏈下,鏈上的工作僅剩餘輕量級的驗證和狀態更新。按照Vitalik的計算,採用zk-rollup之後可以將以太坊的TPS從目前約15tx/s提升到約550 tx/s。

Q:在商用實踐中,可驗證計算可以實現哪些功能?

A:除了幫助緩解區塊鏈網路的可擴充套件性和鏈下計算可靠性之外,可驗證計算通常適用於將複雜的計算任務轉交給具備有強大算力的第三方的場景,比如將資源受限的裝置(例如智慧卡)的計算任務轉交給雲服務。

一個簡單的例子是物聯網感測器本身計算能力十分有限,無法處理裝置採集的資料,需要上傳到雲端,而可驗證計算的引入,可以保證雲服務是“正確且可靠”地進行了資料處理,而不是故意偷懶或者執行了錯誤的計算。

需要一提的是,可驗證計算技術仍然在持續研究和最佳化,我們有理由相信,在不久的將來,小到四則運算,大到神經網路訓練,都可以放心地丟給雲服務來完成計算,而無需擔心計算結果的準確性。

Part2:隱私計算的價值

Q:隱私計算是基於密碼學的一項技術,與區塊鏈的關係是怎樣的?又如何與區塊鏈技術結合?

A:原生的區塊鏈網路不存在隱私保護的能力。隱私計算與區塊鏈結合,是為了滿足更復雜多變的商業需求,特別是面向資料交換、分享的各類場景。

從區塊鏈的角度來看,有幾個大的方向或者說是基礎設施和服務:最直接的就是隱私交易(privacy transaction), 此外還有金鑰管理,以及去中心化數字身份(DID),這些都與隱私計算密不可分。

Q:相比於“傳統”計算,加上隱私計算後,能夠解決哪些之前不能實現的遺留問題?

A:從商業的角度來說,傳統的計算,瓶頸往往在於資料端,即資料能否給到計算方,很多時候這是一個資料安全和隱私法規層面的問題。

隱私計算恰好針對的是資料交換、資料分享等場景裡的資料隱私問題,籠統地講,以MPC為代表的隱私計算技術可以實現資料在不離開本地情況下,完成計算任務,達到資料可用而不可見。

Q:隱私計算適用於哪些商業場景?

A:隱私計算技術可以服務於各類應用場景,實現多樣化的商業創新。我們就區塊鏈領域舉兩個例子。

就像上面提到的,透過安全多方計算(MPC)實現區塊鏈錢包中的金鑰管理,可以看成是一個垂直應用,將資產的管理權透過數學的方式進行拆分,最終可以降低單個私鑰丟失風險、以及實現細粒度的token許可權管理。

同樣採用了MPC技術,另一個相關的例子是以太坊2.0網路中的一個安全性機制,叫做Custody Game (託管策略),其實就是為了保證輕節點可以安全地下載區塊頭構建區塊鏈,無需擔心區塊資料不可用的問題,這裡MPC的引入,不但實現了原始目標——提供安全性,還能建立新的質押商業模式,讓多個使用者共同分擔成為驗證人節點所需的經濟門檻——32個ETH,在豐富商業玩法的同時,更重要的是提升了以太坊2.0網路的去中心化程度。

Q:就場景來說,能不能舉個例子說明MPC在實際應用中的作用?

A:醫療場景裡,一個典型的使用隱私計算的例子是電子病歷 (EHR) 資料跨域訪問。在擁有個人數字身份基礎設施的前提下,A醫院可以在獲得病人授權的前提下,對其在此前就診的B醫院申請資料訪問,在滿足診療需求的前提下,同時出於隱私合規和資料最小化的原則,該次訪問僅需要了解病人的某項疾病的特徵資訊,例如曾有對某類藥物的過敏情況,返回是或者否。那麼在這樣的一個案例中,MPC技術就可以發揮最大的作用,透過對病人在B醫院的病歷記錄的授權查詢,不直接返回病人的病歷資料,僅返回所需的藥物過敏特徵資訊。

Part3:MPC密碼學

Q:PlatON都涉及了哪些隱私計算技術的研究與應用呢?

A:隱私計算基於密碼學,其技術也包括很多種,如ZK(零知識證明)、MPC、TEE(可信硬體)等。相比於ZK和MPC,TEE更側重於安全技術,而且對技術實現和廠商的依賴程度比較高。相比之下,信任成本更低的是依託密碼學的ZK和MPC,而其中ZK更側重於進行“驗證式”的計算,是計算的終點;MPC則是解決資料計算的本身,是計算髮起的起點。

PlatON在MPC和ZK兩方面都有持續投入,從實際業務角度出發,現階段更多的需求是來自於受限於資料隱私而無法達成計算,那麼MPC剛好可以解決這個痛點。ZK其實也是非常關重要的隱私計算技術,通常會用於解決計算正確性問題,屬於下一階段的關鍵技術。

其實PlatON並沒有侷限於MPC或者ZK,就像創世白皮書中寫的可驗證計算或者同態加密,都屬於隱私計算的大範疇,知識。

Q:PlatON是如何保持走在密碼學前沿領域的?

A:有幾個方面可以說明PlatON在密碼學的重視和投入程度。

首先,PlatON有一個業界領先的密碼學研發團隊,彙集了包括中科院、上海交通大學、武漢大學、美國馬里蘭大學、西北大學等國內外頂尖高校的著名密碼學教授和研究學者。

同時,PlatON長期專注於密碼學和隱私計算研究,大力支援密碼學相關的學術和技術賽事活動,是密碼學領域三大頂級會議Crypto/Eurocrypt/Asiacrypt,和安全領域頂級會議ACM CCS的持續贊助商,同時還作為主要贊助商與國內頂級高校和科研機構一起連續舉辦了兩屆密碼學冬令營(Crypto Innovation School),分別針對安全多方計算和格密碼展開了主題培訓。此外,PlatON還獨立舉辦了CISC 2019 密碼學年度賽事,旨在鼓勵和推廣全球密碼學方面的創造性的密碼學技術作品。

Q:我們很期待隱私計算大規模商用後的數字化社會,例如MPC在商用的過程中會誕生什麼樣的新應用場景呢?

A:MPC的核心能力在於如何在保護使用者隱私的前提下完成計算任務。以疫情為例,目前的健康碼等應用其實是政府的大資料中心/計算服務獲取並彙總了使用者的運營商資料,進行資料分析和風險判定,存在資料隱私洩露的隱患。

事實上,透過MPC技術是可以做到使用者個體隱私與群體健康兼顧的。一種新的方案可能是,使用者個體透過可穿戴裝置(IOT感測器),實現與心跳、血氧、血壓等多種生理資料來源對接。裝置均擁有數字身份,並由運營機構提供使用者資料的本地計算,只需按驗證規則返回驗證結果。完全不需要在雲端各資料來源驗證結果彙總計算,就可以生成該使用者最終的健康狀態。

Q:目前與MPC最“貼合”的場景是什麼?能不能舉例說明一下?

A:MPC技術十分適用於金鑰管理。傳統的區塊鏈錢包的私鑰管理, 不管是軟體還是硬體錢包,都存在單點故障的風險;如果私鑰一旦丟失,那麼鏈上的數字貨幣就會躺在所謂的“黑洞”賬戶裡,再也無法取回。MPC技術可以降低這種風險,將私鑰的單一保管模式轉換為多點保管模式。使用者可以持有私鑰的一個或者多個碎片,而將其他碎片託管在受信任的人或者服務商,在需要使用私鑰進行簽名的時候,透過線上的方式進行一次MPC計算,生成數字簽名。

值得強調的是,MPC模式的私鑰管理還會帶來一些新的安全特性,例如私鑰明文在整個業務生命週期裡從未出現過;少於額定數目的私鑰碎片,湊在一起也無法恢復出完整的私鑰;使用者側的私鑰碎片丟失後,可以透過MPC技術進行線上找回,並且找回的是一個新的碎片,而託管方的私鑰碎片也會同步重新整理。這些獨特的安全特性進一步降低了私鑰使用過程中的洩露風險。

Part4:AI框架

Q:從市場反饋來看,AI行業目前不太好過,您認為什麼因素決定了AI落地速度?

A:整體來看,目前AI商業化在算力、演算法和技術方面基本達到階段性成熟,想要更加落地,解決行業具體痛點,需要大量經過標註處理的相關資料做演算法訓練支撐,可以說資料決定了AI的落地程度。

Q:我們瞭解到,PlatON針對AI行業的痛點推出了一款隱私AI框架產品,可以看做是“AI-隱私計算轉化器”。那麼AI開發人員如何透過Rosetta開發框架獲得隱私計算能力?

A:Rosetta是基於TensorFlow的隱私AI框架,主要目的是降低AI開發人員的門檻,讓他們可以在不需要了解隱私計算細節的情況下,僅僅透過新增一行程式碼的方式,將原先傳統的資料處理方式轉換為隱私計算的方式。

Rosetta本身是對AI訓練中的各類基礎運算元進行了MPC本地封裝,使得開發者可以透過運算元組合,實現所需的訓練演算法,並且是以資料輸入隱私得到妥善保護的方式執行。

戳閱讀原文,訪問PlatON網站!

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;