一款釋放數(shù)據(jù)價值的項目,開源了!
在大數(shù)據(jù)和 AI 的時代背景下,數(shù)據(jù)已經(jīng)成為了重要財富,大到政務(wù)數(shù)據(jù)、企業(yè)核心數(shù)據(jù),小到個人信息、銀行卡余額,這些數(shù)據(jù)無一例外都是“隱私數(shù)據(jù)”,如果在使用和流轉(zhuǎn)時發(fā)生泄漏都會造成巨大的損失。
那有沒有什么方法,可以在不暴露數(shù)據(jù)隱私的前提下,讓數(shù)據(jù)流動起來發(fā)揮更大的價值呢?在這個問題的驅(qū)使下我們找到了今天的主角——隱私計算。
一、什么是隱私計算?
隱私計算是指在不泄露數(shù)據(jù)本身的情況下,實現(xiàn)數(shù)據(jù)分析和計算的技術(shù),具有“數(shù)據(jù)可用不可見”的特點,讓數(shù)據(jù)安全合規(guī)地流動起來。
下面用一個經(jīng)典的百萬富翁問題,來幫助理解什么是“數(shù)據(jù)可用不見”。
假設(shè)有兩個百萬富翁,他們都想知道誰更富有,但又不想讓對方或者第三方,知道自己具體有多少錢。
- 數(shù)據(jù)本身:具體的財富值(數(shù)據(jù))
- 計算:比大?。捎茫?/li>
- 不泄露:對方或第三方(不可見)
按照常理,進行比大小的計算是需要知道兩個數(shù)是多少,才能比較大小,但這里不知道具體的數(shù)字。所以上面這個問題在普通人看來是無解的,但其實這是一個密碼學問題,也被稱為“多方安全計算”(MPC)問題,由姚期智院士在 1982 提出,并給出了解決方案——混淆電路,實現(xiàn)了數(shù)據(jù)的可用不可見。
從隱私計算的技術(shù)發(fā)展時間線,我們不難看出隱私計算還是一個比較“新”的技術(shù)。隨著零知識證明、差分隱私、全同態(tài)加密、聯(lián)邦學習等技術(shù)的相繼問世,目前已形成三大應(yīng)用技術(shù)路線多方安全計算(MPC)、聯(lián)邦學習(FL)、可信執(zhí)行環(huán)境(TEE),隱私計算作為數(shù)據(jù)流通的重要技術(shù)已應(yīng)用于金融、醫(yī)療、政務(wù)、廣告等領(lǐng)域。
- 金融:聯(lián)合反洗錢、銀(行)證(券)數(shù)據(jù)共享等
- 醫(yī)療和健康:流行病接觸者追蹤等
- 政務(wù):案件調(diào)查、人口普查等
隨著歐盟 2018 年生效的《通用數(shù)據(jù)保護法案》,Google、Facebook 等科技巨頭都收到了巨額罰單。近兩年,我國也相繼出臺了 《數(shù)據(jù)安全法》 和 《個人信息保護法》。因此,如何讓數(shù)據(jù)安全地流通起來,已經(jīng)不再是一道附加題而是一道必答題。
如果我們把上面的“百萬富翁”換成企業(yè)/機構(gòu)的話,就可以很容易得出隱私計算技術(shù)就是數(shù)據(jù)安全流通的答案 。
二、PrimiHub
那么,對于沒有隱私計算技術(shù)背景的程序員、或是沒有相關(guān)研發(fā)團隊的企業(yè)/機構(gòu),如何才能快速用上隱私計算技術(shù),讓數(shù)據(jù)流通起來創(chuàng)造更大的價值呢?
今天,HelloGitHub 給大家?guī)硪豢?/span>由密碼學專家團隊打造的開源隱私計算平臺——PrimiHub,它開箱即用、支持 CLI 和可視化 Web 界面,讓你無需具備隱私計算技術(shù)背景,就能上手發(fā)起隱私計算任務(wù)。
GitHub 地址:github.com/primihub/primihub
下面,我將先介紹如何快速上手 PrimiHub,最后通過演示一個完整的應(yīng)用案例,讓你能夠真正的入門 PrimiHub,并將隱私計算應(yīng)用到實際的業(yè)務(wù)中。
三、快速上手
PrimiHub 是在隱私計算應(yīng)用技術(shù)之上構(gòu)建的隱私計算平臺,封裝了底層的密碼學協(xié)議讓開發(fā)者專注于業(yè)務(wù)、更容易上手。下面就讓我們實際上手體驗一下,讓數(shù)據(jù)流動起來吧!
3.1 安裝
雖然 PrimiHub 提供了 Docker、可執(zhí)行文件、本地編譯的安裝方式,但是如果你只是想在本地體驗一下,我強烈推薦 Docker 一鍵安裝,因為真的是太 easy 了 ~
# 第一步:下載 git clone github.com/primihub/primihub.git# 第二步:進入目錄 cd primihub
# 第三步:啟動 docker-compose up -d
3.2 發(fā)起任務(wù)
PrimiHub 將復雜的隱私計算技術(shù)封裝成了一個個任務(wù),只需要修改配置文件,然后執(zhí)行命令發(fā)起任務(wù)即可。
PrimiHub 目前支持聯(lián)合統(tǒng)計、隱私求交、匿蹤查詢、聯(lián)邦學習等功能。
- 聯(lián)合統(tǒng)計:多個參與方在不暴露私有數(shù)據(jù)的情況下,共同完成均值(AVG)、求和(SUM)、最大值(MAX)、最小值(MIN) 等計算
- 隱私求交:在不暴露參與方私有數(shù)據(jù)的情況下,實現(xiàn)兩個或多個參與方之間的數(shù)據(jù)交集計算。
- 匿蹤查詢:保證用戶向數(shù)據(jù)源方提交查詢請求時,在數(shù)據(jù)源方不知道用戶查詢條件和結(jié)果的前提下完成查詢。
- 聯(lián)邦學習:一種分布式模型訓練技術(shù),在數(shù)據(jù)不動、模型出域的前提下完成全局模型的訓練。
下面是通過命令行發(fā)起一個「隱私求交」任務(wù)的全過程,task_config_file 參數(shù)指定配置文件。
3.3 更多配置示例
為了方便用戶上手,PrimiHub 在 example 目錄下,提供了 50 多種隱私計算任務(wù)的配置文件,可作為模板快速配置自己的數(shù)據(jù)源發(fā)起任務(wù)。
四、應(yīng)用案例
這里我們將通過在 PrimiHub 管理平臺模擬演示一個匿蹤查詢(隱匿查詢)的應(yīng)用案例:檢察院要向公安機關(guān)查詢張三(身份證號)是否有涉毒記錄,但是公安機關(guān)不想把全量數(shù)據(jù)提供給檢察院查詢,檢察院也不想暴露他們當前正在偵查的對象。
上面的場景,雙方可以通過 PrimiHub 的隱匿查詢功能來滿足雙方需求,實現(xiàn)公安機關(guān)看不到檢察院的查詢,檢察院也不用拿到公安機關(guān)的全量數(shù)據(jù),下面開始操作。
4.1 注冊并登陸
匿蹤查詢需要兩方以上進行協(xié)同,所以需要選擇「節(jié)點 1:模擬檢察院」和「節(jié)點 2:模擬公安機關(guān)」進行注冊。
節(jié)點 1:node1.primihub.com/#/register
節(jié)點 2:node2.primihub.com/#/register
注冊完成后打開兩個網(wǎng)頁分別登陸,剛模擬注冊的檢察院和公安機關(guān)的賬號。
4.2 匿蹤查詢
4.2.1 準備工作
本地準備好待查詢的數(shù)據(jù)如下表,以及查詢條件身份證號:110221xxxxx
4.2.2 上傳數(shù)據(jù)資源
打開「節(jié)點 2」網(wǎng)頁(公安機關(guān)賬號)在「我的資源」點擊「添加資源」按鈕,將上面表格作為數(shù)據(jù)資源上傳(實際場景中可通過配置數(shù)據(jù)庫進行查詢),最后點擊保存。
4.2.3 新建匿蹤查詢?nèi)蝿?wù)
打開「節(jié)點 1」網(wǎng)頁(檢查院)在「隱匿查詢」發(fā)起一次查詢?nèi)蝿?wù),在「選擇查詢資源」處選擇上一步模擬公安機關(guān)上傳的數(shù)據(jù)資源,最后點擊「查詢」按鈕。
4.2.4 查看結(jié)果
在「節(jié)點 1」網(wǎng)頁(檢查院)的「隱匿查詢」下可以查看上一步創(chuàng)建的「匿蹤查詢」任務(wù)狀態(tài),任務(wù)運行結(jié)束后,點擊「導出結(jié)果」即可下載結(jié)果文件,查看匿蹤查詢返回的記錄。
至此,我們就用 PrimiHub 管理平臺完成了一次完整的「匿蹤查詢」任務(wù)。模擬了檢察院在公安機關(guān)提供的涉賭記錄數(shù)據(jù)中,查詢目標對象(110221xxxxx)的涉賭信息。在查詢過程中,檢察院僅獲得查詢對象的信息,公安機關(guān)也看不到檢察院的查詢記錄,保證了檢察院的辦案獨立性。
五、最后
PrimiHub 是由原語科技開源的隱私計算平臺,具有開箱即用、功能豐富、容易上手、靈活配置等特點。
- 開箱即用:擁有 Web 界面、命令行 和 Python SDK 多種使用方式
- 功能豐富:支持匿蹤查詢、隱私求交、聯(lián)合統(tǒng)計、聯(lián)合建模、數(shù)據(jù)資源管理等功能
- 靈活配置:支持自定義擴展語法、語義、安全協(xié)議等
- 自主研發(fā):多方安全計算、聯(lián)邦學習、同態(tài)加密、可信計算等隱私計算技術(shù)
隱私計算作為前沿技術(shù),其開發(fā)難度可想而知,開源不易如果體驗后覺得 PrimiHub 還不錯,就點一個 Star? 吧!
GitHub 地址:github.com/primihub/primihub
在國內(nèi)外科技巨頭紛紛布局隱私計算產(chǎn)業(yè)的當下,花些時間學習一下「隱私計算」屬實是波只賺不虧的技術(shù)投資。雖然目前隱私計算受限于性能等因素還遠沒到普及的程度,但從各國對于隱私保護的重視程度,隱私數(shù)據(jù)安全合規(guī)的使用和流動注定是未來的趨勢。相信待時機成熟之時,隱私計算會和現(xiàn)在的大模型一樣,迎來屬于自己的時代。