【问链财经-区块链基础知识系列】 第二十六课 隐私保护方法:多方安全计算和区块链
編者按:私密計算是解決區塊鏈無法保護隱私的問題。因為區塊鏈上的數據天然是全公開的,任何人都可以查看。假如一個人知道了你的錢包地址,就可以看到你的余額、你所有的轉賬記錄。設想一下買保險的場景,買保險需要提供我的體檢報告來證明我的健康狀況,假如用區塊鏈來實現的話,代表著我的體檢報告就要記錄到區塊鏈上昭告天下了,我感覺這樣子并不是十分妥當。私密計算就是用來解決這樣的問題。
私密計算支持在區塊鏈上記錄計算結果,用共識完成對于計算結果的驗證,而不暴露計算所用到的原始數據。
比如用哈希(Hash)舉例子,我可以在區塊鏈上記錄一個哈希值,證明我知道這個哈希值的原始數據,但是不暴露這個原始數據。私密計算上目前在研究的技術主要是安全多方計算(MPC)和零知識證明(zk-SNARKs、zk-STARKs等)。
安全多方計算
安全多方計算(SMC,Secure Multi-Party Computation)是解決一組互不信任的參與方之間保護隱私的協同計算問題,SMC要確保輸入的獨立性,計算的正確性,同時不泄露各輸入值給參與計算的其他成員。主要是針對無可信第三方的情況下,如何安全地計算一個約定函數的問題,安全多方計算在電子選舉、電子投票、電子拍賣、秘密共享、門限簽名等場景中有著重要的作用。
安全多方計算框架
當一個 MPC 計算任務發起時,樞紐節點傳輸網絡及信令控制。每個數據持有方可發起協同計算任務。通過樞紐節點進行路由尋址,選擇相似數據類型的其余數據持有方進行安全的協同計算。參與協同計算的多個數據持有方的 MPC 節點根據計算邏輯,從本地數據庫中查詢所需數據,共同就 MPC 計算任務在數據流間進行協同計算。在保證輸入隱私性的前提下,各方得到正確的數據反饋,整個過程中本地數據沒有泄露給其它任何參與方。
安全多方計算理論主要研究參與者間協同計算及隱私信息保護問題,其特點包括輸入隱私性、計算正確性及去中心化特性。
輸入隱私
安全多方計算研究的是各參與方在協作計算時如何對各方隱私數據進行保護,重點關注各參與方之間的隱私安全性問題,即在安全多方計算過程中必須保證各方私密輸入獨立,計算時不泄露本地任何數據。
計算正確
多方計算參與各方就某一約定計算任務,通過約定 MPC 協議進行協同計算。計算結束后,各方得到正確的數據反饋。
去中心化
傳統的分布式計算由中心節點協調各用戶的計算進程,收集各用戶的輸入信息。而在安全多方計算中,各參與方地位平等,不存在任何有特權的參與方或第三方,提供一種去中心化的計算模式。
應用場景
1. 多頭借貸問題
兩個網貸公司A和B,想知道借款人是否在對方公司借款了,但他們又不想讓對方知道借款人的信息。
2. 百萬富翁問題
兩個百萬富翁Alice和Bob,想知道他們兩個誰更富有,但他們都不想讓對方知道自己財富的任何信息,這就是百萬富翁問題。百萬富翁問題是由姚期智提出的,兩個百萬富翁Alice和Bob想知道他們兩個誰更富有,但他們都不想讓對方知道有關自己財富的任何信息,這就是百萬富翁問題。有具體實現方案。
3. 安全電子選舉問題
電子選舉方案需要滿足,選票保密性、無收據性、健壯性、公平性和普遍驗證性等性質。整個選舉方案沒有可信第三方,任何投票人都可以計票,比一般的方案具有更強的安全性。有具體解決方案。
4. 遺傳病診斷
Alice認為她得了某種遺傳病,想驗證自己的想法。正好她知道Bob有一個關于疾病的DNA模型的數據庫。如果她把自己的DNA樣品寄給Bob,那么Bob可以給出她的DNA的診斷結果。但是Alice又不想別人知道,這是她的隱私。所以,她請求Bob幫忙診斷自己DNA的方式是不可行的。因為這樣Bob就知道了她的DNA及相關私人信息。
5. 業務合作
經過一次花費查后,A公司決定擴展在某些地區的市場份額來獲取豐厚的回報。同時,A公司也注意到B公司也在擴展一些地區的市場份額。在策略上,兩個公司都不想在相同地區互相競爭,所以他們都想在不泄露市場地區位置信息的情況下知道他們的市場地區是否有重疊。(信息的泄露可能會導致公司很大的損失。比如另一家對手公司知道A和B公司的擴展地區,提前行動占領市場;又比如房地產公司知道A和B公司的擴展計劃,提前提高當地的房租等等)所以他們需要一種方法在保證私密的前提下解決這個問題。
6. 電子拍賣
在進行電子拍賣時,各方依賴于拍賣服務器的安全性來進行拍賣活動,但是在實際中,會出現投標者不愿意泄露標的投標價、各方對于拍賣行不信任的情況。而安全多方計算技術的加入則使得電子拍賣成為現實,大部分方案都采取了可驗證秘密共享協議或者使用其思想,具備靈活性、保密性、魯棒性和可驗證性。
7. 聯合數據查詢
以音樂版權為例,國內各大音樂平臺的資源不盡相同,使得資源共享的壁壘不斷抬高,這不管對于音樂人、用戶還是音樂平臺自身來說都是一種阻礙。在保障平臺私密數據的同時,尋找有效的資源共享方法成為了急需解決的問題。安全多方計算可以解決這種問題,不同數據庫資源共享時,多個數據庫聯合進行數據查詢,且不泄露單方信息。
區塊鏈與安全多方計算有一個共同點,都是多個節點協同完成一項任務,不同之處在于區塊鏈所搭建的是一套可信的去信任網絡,即保證不會有篡改計算結果的問題發生,但不能做到保護原始數據,而安全多方計算可以在多個節點之間進行協同計算任務時,讓數據還保留在原節點上,不會讓隱私數據泄露到外界。如果將兩者結合在一起就可以做到既限制人為作惡篡改計算結果,又能夠保護數據隱私,形成一套非常完整的解決方案。這也是一些區塊鏈項目引入安全多方計算的原因,就是為了提高區塊鏈系統隱私保護方面的能力。
總結
以上是生活随笔為你收集整理的【问链财经-区块链基础知识系列】 第二十六课 隐私保护方法:多方安全计算和区块链的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【问链财经-区块链基础知识系列】 第二十
- 下一篇: 【问链财经-区块链基础知识系列】 第二十