
通證通研究院× FENBUSHI DIGITAL 聯合出品
通證通研究院× FENBUSHI DIGITAL 聯合出品
通證通研究院× FENBUSHI DIGITAL 聯合出品
導讀
隱私計算技術是密碼學的一個前沿發展方向,填補了數據在計算環節隱私性問題的空白,將基於密碼學的信息安全體系打造成完整的閉環,為雲計算、分佈式計算網絡和區塊鏈等技術的應用提供隱私性基礎。本專題將簡述隱私計算技術,並分析其起源、技術方向與應用前景。
摘要
摘要
摘要
摘要
隨著信息技術的不斷發展,數據逐漸成為政府、企業與個人的重要資產,其發掘、存儲、處理與使用變得愈發重要,逐漸產生了隱私性需求。隱私計算,是一類數據或計算方法保持加密狀態,不洩露給其他合作方的前提下,進行計算合作的技術,其出現填補了密碼學出現以來在信息的處理和使用環節的空白。目前階段,密碼學層面的隱私計算主要有全同態加密、多方安全計算、零知識證明等主要的技術方向。
滿足同態性的加密函數能夠實現在不解密原始數據的前提下對加密數據進行某一運算,提供了對加密數據的計算能力。全同態加密算法則是指給定任意一種運算規則,可以通過算法構造出對加密數據的相應運算規則,並滿足同態性。全同態加密是相對基礎性的隱私計算技術,應用範圍較廣,但其目前計算效率較低,並存在一定局限性。
風險提示:技術存在瓶頸,落地應用不及預期
目錄
目錄
目錄
目錄
1 隱私計算:加密技術的另一維度
2 主要技術方向:全同態加密、安全多方計算與零知識證明
2.1 全同態加密
2.2 安全多方計算
2.3 零知識證明
3.1 安全雲計算
正文
隱私計算技術是密碼學的一個前沿發展方向,填補了數據在計算環節隱私性問題的空白,將基於密碼學的信息安全體系打造成完整的閉環,為雲計算、分佈式計算網絡和區塊鏈等技術的應用提供隱私性基礎。本專題將簡述隱私計算技術,並分析其起源、技術方向與應用前景。
二級標題
二級標題
二級標題
1 隱私計算:加密技術的另一維度
隨著信息技術的不斷發展,數據逐漸成為政府、企業與個人的重要資產,其發掘、存儲、處理與使用變得愈發重要,逐漸產生了隱私性需求。數據科學的發展使數據的應用場景不斷擴展,相應的合作也開始湧現,隱私性問題也隨之而來。例如,企業可能需要使用合作方的數據以形成某種判斷或結果,而合作方並不願意將自己的數據完全交給他人,企業同樣不希望自己的查詢條件或分析方法被合作方得知;使用雲計算資源時,使用者也希望自己的數據和運算方法能夠保密,然而現實中卻不得不將內容全部上傳,從而面臨洩露的風險。隨著雲計算和區塊鏈的發展,隱私計算的需求愈發湧現,這一結合了密碼學和計算科學的前沿領域再次受到了大家的關注。
隱私計算,是一類在保證數據提供方不洩露敏感數據的前提下,對數據進行計算並能驗證計算結果的技術。
當代密碼學起源於1977年,Ron Rivest,Adi Shamir和Leonard Adleman發明了非對稱式加密(又稱公開密鑰加密)算法RSA。 RSA利用了目前計算機分解素因子運算難度的不對稱性,設計了公鑰用於加密、私鑰用於解密的公鑰加密體系,私鑰不會出現在數據傳輸環節,極大提高了加密數據傳輸的安全性。 RSA算法發表於1977年4月3日,猶太民族的逾越節,如摩西出埃及一般,人類的加密技術突破了長期以來的瓶頸,到達了新的階段。
密碼學通過數學理論將數據轉化為密文狀態,無私鑰不能讀取其內容,解決了不安全環境下隱私存儲與通信的問題,但在使用環節存在空白。到了信息的使用環節,在通訊和存儲過程中處於加密狀態的數據就不得不進行解密以用於查詢和計算。所以,基於密碼學的信息加密體系在使用環節是存在空白的,目前尚不能構成閉環的加密系統。當信息擁有者不得不提交數據使用第三方服務時,他就面臨著信息洩露的風險,其他環節的加密狀態也就失去了意義。針對這種情況,學術界開展了加密狀態下進行數據計算的研究,也就是我們所說的隱私計算。
經過學界的不斷研究和發展,以全同態計算、安全多方計算和零知識證明為代表的隱私計算取得了一定的成果,也成為了密碼學研究的熱點問題之一。
二級標題
二級標題
二級標題
2 主要技術方向:全同態加密、安全多方計算與零知識證明
目前階段,密碼學層面的隱私計算主要有全同態加密(Full Homomorphic Encryption,FHE)、多方安全計算(Secure Multi-Party Computation,sMPC)、零知識證明(Zero-knowledge Proof)三種主要的技術方向。此外,還有可信執行環境、不可區分混淆等方向。本篇專題將解析全同態加密、安全多方計算與零知識證明,並分析它們的優勢與不足。
2.1 全同態加密
在RSA算法問世前使用對稱式加密算法的時代,加密和解密數據遵循同樣的規則。對稱式加密的關鍵要素包括加密算法和密鑰,數據發送方使用特定的密鑰加密數據,並且將加密數據和密鑰發送給接收方。在傳輸的過程中,加密數據或密鑰存在被攔截的風險。一旦加密算法被破解,如果不及時更換密鑰,那麼雙方此後的通信過程就不再安全。
非對稱式加密保證了數據存儲與傳輸的安全。非對稱式加密算法通過產生成對的公鑰與私鑰,公鑰用於加密數據,私鑰用於解密對應公鑰所加密的數據。在上面的例子中,數據接收方只需對發送方公開公鑰,發送方使用接收方的公鑰加密數據,接收方收到後使用私鑰解密。整個加解密過程中雙方不需要交換有關私鑰的信息,因此安全性非常高。
同態加密保證了數據計算過程的安全,提供了對加密數據進行處理的功能。如果要對原始數據進行處理,一般需要先解密數據。如果執行計算過程的一方是不可信任的,那之前的加解密過程等於白費心思。
同態原本是抽象代數中的概念。用加密函數f表示從原始數據M經加密得到密文S的過程,f^(-1)表示其逆運算,即解密過程:
如果原始數據S1、S2之間可以進行某種運算“+”,並且運算結果仍然是可以被加密函數處理的,此外還滿足
就稱該加密函數f滿足對運算“+”的同態性。這裡的“+”表示一種抽象的運算規則,它可以是我們熟知的加法、乘法等等。
滿足同態性的加密函數能夠實現在不解密原始數據的前提下對加密數據進行某一運算。對加密後的數據進行計算得出結果:
計算服務請求者在收到計算結果後進行解密,獲得的結果:
與原始數據直接運算結果相等。常見的非對稱加密算法RSA、ECC都是加法同態的。
全同態加密算法則是指給定任意一種運算規則,可以通過算法構造出對加密數據的相應運算規則,並滿足同態性要求。
全同態加密算法按照發展階段可以劃分為三類。 2009年,Craig Gentry在論文《Fully Homomorphic EncryptionUsing Ideal Lattices》(基於理想格的全同態加密)中給出了全同態加密(FHE)的首個算法實現,也是首個同時滿足加法同態和乘法同態的加密算法。但Gentry的算法效率極低。據測試,該算法執行單次位操作運算需要30分鐘,遠遠無法滿足大規模應用的需求。
Brakerski 和Vinod Vaikuntanathan 在初代全同態加密算法的基礎上作出改進,於2011 年提出了BGV算法。它的數學基礎是RLWE(Ring Learning-with-errors)問題的求解難度的不對稱性。
Craig Gendry、Amit Sahai和Brent Waters於2013年發表GSW13算法,進一步優化了同態乘法算法。目前主流的全同態加密計算系統均使用後兩類加密算法。
全同態加密是相對基礎性的隱私計算技術,潛在應用範圍較廣。全同態加密技術實現了密文的直接運算,解決了計算合作中的隱私問題。通過全同態加密,計算資源的需求方可以將涉及隱私的數據以密文狀態發送給雲服務器或計算公司等非可信的第三方並完成計算,不需要擔心任何的信息安全問題。
現有的解決方案效率損失較大,尚不能大規模商業應用。目前,已經有一些算法相對Gentry最初的算法有了一定程度的改進,如Smart等人提出的BGV算法放棄了Bootstrapping而採用換模技術與私鑰交換技術,一定意義上取得了突破,是目前效率最好的全同態加密算法。但是,從絕對性能來看,當前全同態加密算法的效率還是非常低的,同樣的運算所消耗的計算資源大約要比明文高6個數量級。因此,全同態加密仍是一種處於研究和實驗階段的技術,尚不足以商業應用。未來,全同態加密技術的落地一方面有賴於更高效率算法的出現,另一方面也將受惠於設備計算能力的提高,可能將從關鍵性數據開始逐步應用,最終擴展到更多的計算場景。
同態加密自身也存在一定局限性。同態加密的所有中間結果都是加密的,因此服務器不能對中間值做出任何決策,也就是說需要計算所有的條件分支,因此只能將所有操作都包含到函數中,增加了函數複雜性,並會造成性能損失。
M.Van Dijk和A.Juels已經證明同態加密必須在同一個密鑰下進行,在多方合作中有共謀的可能,因此全同態加密通常適合協作計算,目前可以防止串謀攻擊的同態加密安全計算效率低於其他通用協議。
2.2 安全多方計算
安全多方計算解決瞭如何在參與計算的各方不洩露自身輸入、且沒有可信第三方的情況下安全地計算約定的函數並得到可驗證結果的問題。例如,在百萬富翁問題中,兩名富翁可以各自加密自己的財產狀況X和Y作為輸入,通過特定的算法,雙方可以得到可信的X和Y的比較結果,但無法獲知對方的財產情況。
姚期智提出的混淆電路(garbled circuits)是針對兩方計算的一種解決方案,Goldreich、Micali和Wigderson等人對其進行了研究和發展,目前已經成為密碼學領域的熱點問題之一。
安全多方計算還有如下應用場景:將一個需要加密的密鑰K拆分為n個不同的部分,保管在不同參與方,各方都不知道其他人保管的那部分。利用這n份中的任意至少t個部分(2<=t<=n)就能夠完整地恢復密鑰K的內容,這樣的密鑰保管方式又稱為(t, n)門限簽名。
安全多方計算主要目的是解決互不信任的參與方在保護隱私的前提下協同計算的難題。現實世界中,會經常出現一些協作情景下,計算參與方希望運用他們的數據得到某些結果,但不願意把自己的數據透露給其他人的情況。安全多方計算的設計理念滿足了現實經濟合作中參與方希望得到合作利益卻不希望被洩露自己數據的客觀需求,具有較大的潛在市場空間,其主要應用領域包括電子選舉、電子拍賣、資產託管等。
大部分安全多方計算方案對參與方的誠實性有所要求。在安全多方計算研究中,通常將參與者分為誠實者、半誠實者和攻擊者。誠實者提供正確數據,且不嘗試竊取他人輸入數據;半誠實者提供正確數據,在沒有不利後果的前提下願意獲取他人輸入;攻擊者提供虛假數據破壞合作,且試圖竊取他人輸入。大部分相對高效的安全多方計算協議都只有應對大部分參與方都是誠實者或半誠實者的情況具有安全性,僅SPDZ線的研究成果能夠在大部分參與者都是攻擊者的情況下保證安全性和正確性。安全多方計算協議至少應該能夠在在所有參與者都是半誠實者的情況下運行,才能夠適應市場經濟的現實情況,保護參與者隱私。惡意的攻擊者不期望得到正確的結果,所以更多地要依靠激勵機制的設計來加以限制。
除了結果的正確性和輸入的隱私性外,安全多方計算協議還要保證參與方之間的公平性。即計算結果只能所有人都得到或都得不到,以應對攻擊者可能的提前終止行為。
安全多方計算的局限性有:效率較低;無法保證參與方輸入的真實性。無法阻止參與方惡意構造輸入,並從結果推測其他人的輸入。
2.3 零知識證明
零知識證明,是證明者在不透露隱私數據的情況下,向任意第三方證明自己確實擁有特定數據的算法,分為交互式和非交互式兩種。零知識證明算法具有以下特性:
完備性。如果證明方和驗證方都是誠實的,證明方確實擁有特定的數據,那麼驗證一定通過。
穩定性。如果證明方沒有擁有特定的數據,那麼誠實的證明方幾乎不可能通過驗證。
零知識證明是密碼學的高級應用,但並不是所有問題都可以通過零知識證明算法進行驗證。 Goldreich, Micali和Wigderson證明了,多項式時間內可以驗證解正確性的問題(NP問題)一定存在零知識證明算法。
二級標題
二級標題
二級標題
3 應用前景
目前,隱私計算技術效率較低,實際的商業應用較少。隨著技術的不斷發展,雲計算、區塊鏈乃至分佈式計算網絡逐漸走入了人們的視野,人們對數據安全的重視為隱私計算的應用提供了迫切需求。隱私計算在安全雲計算、分佈式計算網絡和加密區塊鏈三個方向將有較廣的應用前景。
3.1 安全雲計算
雲計算極大的提高了算力資源的利用效率,市場規模增長迅速,具有廣闊的發展前景。隨著信息技術的發展,網絡通信速度和服務器計算能力逐步提高,雲計算產業發展迅速。一方面,雲計算服務通過出租計算資源的形式,避免了個人和企業重複購買硬件設備的資源浪費,人們可以不再擁有很多使用頻率較低的硬件,轉而租用隨時待機的線上計算資源,服務提供商的硬件也可以保持極高的使用率,提高了資源配置的效率;另一方面,雲計算服務提供商擁有大量的計算硬件,可以為這些設備提供適宜的運行環境和及時的維護,數據中心的建設將極大降低單位計算資源的成本,發揮規模效應。雲計算的這些優勢使其近年來高速發展,目前已經形成約2602億美元的市場規模。雲計算技術受到了各行業的普遍認同,具有非常豐富的應用場景和廣闊的發展空間,將會極大地改變計算資源的利用方式。
但是,使用雲計算服務不可避免地犧牲隱私性。目前在使用雲計算服務的過程中,用戶數據以明文的形式存儲在雲服務提供商處。一方面,數據會不可避免地被雲計算提供商獲取,雖然有相關法規保護,但普通用戶在與寡頭企業的博弈中始終處於不利地位;另一方面,雖然有安全措施,但是雲端服務器上的數據仍然有可能被內鬼和黑客獲取。雲計算雖然提高了計算資源的使用效率,但數據安全性無法得到保障。
隱私計算可以讓數據在雲計算過程中保持加密狀態,避免被服務提供商和其他第三方獲取,極大地提高了雲計算過程中的數據安全。傳統密碼學無法在數據計算環節保證安全性,而隱私計算技術填補了這一空白,使得包括雲計算在內的各種數據合作變得更加安全和隱私。機密數據可以通過全同態加密算法交由雲計算服務商計算,而無需直接傳輸明文數據。通過安全多方計算,數據擁有者之間可以放心地進行合作計算,而無需擔心自己的數據會被合作者或第三方獲取。隱私計算將極大的擴大雲計算的應用場景。
3.2 分佈式計算網絡
分佈式計算網絡是雲計算的高級形態,利用個體廣泛的計算資源,形成分佈式的運算網絡。隨著個人計算設備性能的提高和互聯網節點接入數的增加,網絡計算能力的冗餘越來越多。人們閒置的手機、計算機等設備能夠通過分佈式計算網絡重新被有效利用。隨著通信技術的不斷發展,網絡的帶寬逐漸提高讓分佈式計算網絡的建立從理論逐漸走向現實。
分佈式計算網絡能防止雲計算寡頭壟斷計算資源。雲計算的規模效應非常明顯,發展到後期必然形成寡頭壟斷格局,人們的使用習慣形成後,這些企業將提高價格,獲取高額壟斷利潤,公眾難以充分享受到效率提升所帶來的利益。分佈式計算網絡不同於雲計算,是對存量計算資源的利用,個體不放棄對計算資源的所有權,只是在網絡上進行互助與資源共享。企業可能持有較高的計算能力,但與分佈式計算網絡所整合的人類全體計算設備的力量相比,很難形成壟斷性的優勢。任何企圖獲取壟斷利潤的行為,都是與全世界的算力作對,不具備經濟合理性。
隱私計算為分佈式計算網絡提供了信息安全的保證。分佈式計算網絡很可能會以一種點對點的形式存在,節點間直接進行計算資源的分配,其中的安全問題尤為重要。這樣的形式下,數據將直接從計算資源的需求節點發送到不受信任的提供節點,數據安全相比雲計算會面臨更大的挑戰。如果可以使用隱私計算,就可以從根本上解決分佈式計算網絡的信息安全問題,用戶一方面可以安全地使用他人的計算資源,另一方面也可以在不公開數據的前提下進行計算合作,將極大的豐富分佈式計算網絡的應用場景。
附註:
因一些原因,本文中的一些名詞標註並不是十分精準,主要如:通證、數字通證、數字currency、貨幣、token、Crowdsale等,讀者如有疑問,可來電來函共同探討。
附註:
因一些原因,本文中的一些名詞標註並不是十分精準,主要如:通證、數字通證、數字currency、貨幣、token、Crowdsale等,讀者如有疑問,可來電來函共同探討。
本文為通證通研究院( ID:TokenRoll )原創。未經授權,禁止擅自轉載。轉載請後台回復關鍵詞【轉載】