前言
之前我們介紹過兩方的「隱私集合求交算法」,可以應用到計算廣告的實際效果,尋找聯系人,聯邦學習的特征對齊等場景,例如:在新的APP上找到共同的微信好友、開會時找到所有參會者共同的空閑時間等,但是這協議是針對兩方設計的,沒辦法安全的擴展到多方。
舉個例子:現在有一個會議的發起者,他想要知道自己和其他所有參會者共同的空閑時間來確定會議的時間,一種簡單的方案就是會議發起者依次和每一個參會者執行兩方的隱私集合求交算法獲取到每個參會者和自己的共同空閑時間,再從這些共同時間中篩選出所有參會者都空閑的時間。
但是這種方案有一個很明顯的數據安全問題,會議發起者和某一個參會者有兩個共同的空閑時間,本周一上午和本周二上午,但是其他所有參會者本周一上午是空閑時間但是本周二上午不是空閑的,這就導致了參會者額外的信息被會議發起者知道了,會議發起者本應該只得到本周一上午這一共同的空閑時間的信息。
本文主要介紹一種簡潔高效的「多方隱私集合求交協議」,該協議是針對多方隱私集合求交場景設計的,解決了上述基于兩方協議簡單擴展到多方時產生的數據安全問題。該協議在CCS'21的-Simple,FastMaliciousMultipartyPrivateSetIntersection中提出,適用于半誠實無參與方勾結的場景。
相關技術
該協議主要使用不經意鍵值存儲技術和兩方隱私集合求交算法進行構建:
▲不經意鍵值存儲
歐科云鏈集團正式啟動區塊鏈科普行動“星途計劃”:歐科云鏈集團于4月26日,正式宣布啟動了區塊鏈科普行動——“星途計劃”,行動包括將在全國范圍展開系列沙龍,加大力度推進區塊鏈科普進機關、進國企、進校園等,聯合政府部門、行業協會等共同構建起更加完善和有效的區塊鏈科普教育生態,與此同時,直擊區塊鏈科普現存痛點,推出簡單易懂的“秒懂區塊鏈”公益短視頻課。
該計劃旨在全維度推動社會建立對產業更清晰的認知,與“鯤鵬計劃”一道助力數字經濟及區塊鏈產業本身健康發展夯實“人才”和“產業認知”兩大基礎。[2021/4/26 20:59:37]
不經意鍵值存儲是指能夠在隱藏key和value內容的前提下保留key-vakue映射關系的一種數據結構。有一組鍵值對{(x1,y_1),(x2,y2),(x3,y3。,那么存在一個OKVS函數f,使得f(x1)=y1,f(x2)=y2,f(x3)=y3,并且對于其他的鍵f(x_other)為隨機數。
▲兩方隱私集合求交
兩方隱私集合求交是指在不暴露雙方集合交集之外數據的前提下獲取交集部分的數據,常用的協議有基于ECDH的,基于OT的和基于同態的,本文介紹的多方隱私集合求交協議對于采用的兩方協議不做限制。在前文《悄悄地找到共同點-隱私交集》中已介紹過一種實現方案,故本文中就不再詳細講解。
簡單示例
現有A、B、C、D、E五方分別擁有數據集{1,2}、{1,2}、{1,3}、{1,3}、{1,4},他們想要安全的獲取他們所有人的共同交集{1}。
人民數字FINTECH推出區塊鏈科普動畫:人民日報數字傳播發布微博稱,人民數字FINTECH出品《趣味科普|區塊鏈動畫》。[2020/3/31]
所有方在進行求交之前已經協商好了共有的偽隨機函數g(k,x),簡單實現就是hash函數,k是加的鹽用于和x拼接后再hash。
A方隨機生成兩個偽隨機函數的key:k_B和k_C,分別發送給B、C兩方;A方計算自己的鍵值對:{(1,g(k_B,1)⊕g(k_C,1)),(2,g(k_B,2)⊕g(k_C,2)。,并基于此鍵值對生成OKVS函數fA,并將fA發送給E方;B方計算自己的鍵值對:{(1,g(k_B,1)),(2,g(k_B,2)。,并基于此鍵值對生成OKVS函數fB,并將fB發送給D方;C方計算自己的鍵值對:{(1,g(k_C,1)),(3,g(k_C,3)。,并基于此鍵值對生成OKVS函數fC,并將fC發送給D方;D方收到B方和C方的OKVS函數后,使用本方的數據集通過收到兩個OKVS函數計算出新的集合{fB(1)⊕fC(1),fB(3)⊕fC(3。,將構成OKVS的鍵值對帶入進去后,就等價于{g(k_B,1)⊕g(k_C,1),random_number1⊕g(k_C,3。;E方收到A方的OKVS函數后,使用本方的數據集通過收到OKVS函數計算出新的集合{fA(1),fA(4。,將構成OKVS的鍵值對帶入進去后,就等價于{g(k_B,1)⊕g(k_C,1),random_number2};D方和E方再使用兩方隱私集合求交算法求出新集合{g(k_B,1)⊕g(k_C,1),random_number1⊕g(k_C,3。和{g(k_B,1)⊕g(k_C,1),random_number2}的交集{g(k_B,1)⊕g(k_C,1。,對應位置原來的數據集{1}就是所有方集合的交集。上述流程的一個核心思路就是:前三方通過OKVS函數將自己的數據集隱藏起來,分別發送給后兩方,由后兩方的數據集通過OKVS函數計算出映射后的數據集之后再執行隱私求交,通過OKVS函數的性質可以保證后兩方的數據如果分別是前三方的集合的交集,那么映射出的數據是一致的,如果不是就變成隨機數了,對映射后的數據集再求次交集就能獲得所有方的交集。
動態 | 報告:區塊鏈等熱點詞促使童書科普百科類成交額同比增速最高:近日,京東圖書與艾瑞咨詢聯合發布了《2019中國圖書市場報告》。報告指出,AI、5G、區塊鏈、機器人、VR、智能家居、AR這些熱點詞,不斷點燃科技熱潮,科技在改變大眾生活的同時,也吸引了越來越多家長的關注,從小培養孩子對科技的興趣和熱愛。因此童書中科普百科類成交額同比增速最高,占比將近40%。[2020/1/8]
具體流程
協議的設計思路是將多方求交最終轉化為兩方求交,其他方通過OKVS的Encode方法和所擁有的偽隨機函數的key來保護自己的數據集。
OKVS的Encode方法用于將一組鍵值對生成上述的OKVS函數f,Decode方法即是對一個鍵key計算出映射的f(key)
存在p1,...,pnn個參與方,分別擁有數據集a1,...,an,都擁有一個共同的OKVS方案和偽隨機函數F(k,x)。
「具體流程」
1.p1隨機生成n-2個隨機數k2,...,k(n-2),然后將ki發送給pi。
2.p1將自己的數據集元素a1j作為key,計算F(k2,a1j)⊕F(k3,a1j)⊕...⊕F(k(n-2),a1j)作為對應的value使用OKVS進行編碼生成Sn發送給pn。
動態 | 人民日報官方微博科普區塊鏈 強調區塊鏈不等于比特幣:人民日報官方微博今早發表9圖科普區塊鏈。其中涉及區塊鏈的特點有:1、安全;2、不可篡改;3、可訪問;4、無第三方。區塊鏈對未來的影響:1、不需繁瑣個人證明;2、看病避免反復檢查;3、旅行消費更加便捷;4、交易無需第三方。同時強調,區塊鏈不等于比特幣。比特幣只是區塊鏈技術的一種應用,區塊鏈還有醫療衛生、食品安全、版權保護等諸多應用領域。[2019/10/28]
3.對于所有的pi(2<=i<=n-2)分別將自己的數據集元素aij作為key,計算F(ki,aij)作為對應的value使用OKVS進行編碼生成Si發送給p(n-1)。
4.p(n-1)依次將自己的數據集a(n-1)的每個元素分別作為key在收到的Si(2<=i<=n-2)上進行解碼,并將所有解碼出的數據進行異或作為集合A(n-1)中的一個元素。
5.pn依次將自己的數據集an的每個元素分別作為key在收到的Sn上進行解碼后的數據作為集合An中的一個元素。
6.p(n-1)和pn對集合A(n-1)和An執行兩方隱私集合求交,獲取出的交集元素對應序號的原數據集生成時使用的a(n-1)或an中的元素即是所有方集合交集中的一個元素。
正確性分析
該協議將n個參與方分成了兩組,參與方1和參與方n是一組,參與方2到參與方n-2和參與方n-1是一組。
動態 | 美國演說家Anthony Robbins開始科普什么是比特幣:美國演說家安東尼·羅賓(Anthony Robbins)在自己的網站上發布了一篇比特幣的科普文章,并在推特上向自己的粉絲介紹什么是比特幣,目前他的推特賬戶共有粉絲304萬人。[2019/1/1]
先看第一組的邏輯,p1將自己的數據集通過OKVS編碼后發送給pn,pn將自己的數據集通過p1的OKVS結構解碼一遍生成新的數據集An,按照OKVS的性質:如果pn的集合元素是p1集合中元素,即是這一組的集合交集元素,則對應到An中的元素就是F(k2,a1j)⊕F(k3,a1j)⊕...⊕F(k(n-2),a1j);如果pn的集合元素不是這一組的集合交集元素,則解碼后的數據就是隨機數。
再看第二組的邏輯,參與方2到參與方n-2也同樣使用OKVS編碼自己的數據集再發送給p(n-1),p(n-1)將自己的數據集按照上面流程4的方式通過解碼所有收到的OKVS結構再異或產生A(n-1),按照OKVS的性質:如果p(n-1)的集合元素是p2到p(n-2)集合中元素,即是這一組的集合交集元素,則對應到A(-1)中的元素就是Decode(Encode(a2j,F(k2,a2j)),a2j)⊕...⊕Decode(Encode(a2j,F(k(n2),a2j)),a2j)=F(k2,a2j)⊕F(k3,a2j)⊕...⊕F(k(n-2),a2j);如果p(n-1)的集合元素不是這一組的集合交集元素,則解碼后的數據就是隨機數。
An和A(n-1)中對于解碼正確的數據的計算后對應的表達式都是一樣的,易看出對An和A(n-1)進行隱私求交,求出的交集就表示了即是第一組內部集合交集的數據,也是第二組內部集合交集的數據,即所有方集合的交集數據。
安全性分析
對于p1來說:他將自己的數據使用k2到k(n-2)計算偽隨機數據異或進行OKVS編碼后再發送給pn,由于pn沒有這些key,就算解碼后的數據是他們的交集,pn也無法進行確定。對于p2,...,p(n-2)來說:他們將自己的數據使用自己擁有的ki計算偽隨機后進行OKVS編碼后再發送給p(n-1),由于p(n-1)沒有這些key,就算解碼后的數據是他們這一組的交集,p(n-1)也無法進行確定。對于p(n-1)和pn來說:他們只是使用了自己的數據集在收到的OKVS結構上進行解碼,解碼后再計算的數據集再和對方進行兩方隱私求交來保證新的數據集的安全性。總結
該協議的流程也簡單易理解比較實用,使用的OKVS只有一次交互且計算效率很高,只有最后的一次兩方隱私求交,使得整個協議和其他協議相比效率更高的同時數據傳輸量也極低。附錄
▲不經意鍵值存儲詳細定義
不經意鍵值存儲是指能夠在隱藏key的前提下保留鍵值映射關系的一種數據結構,包含了通過key-value構造OKVS的Encode方法和通過key查詢value的Decode方法。
Encode((x1,y1),...(xn,yn)):將鍵值對列表編碼成OKVS的數據結構,其中x是不定長bit串,y是長度為l的bit串,具體編碼方式如下圖:
其中v(x)是是預設好的將不定長的x映射到長度為m的bit串的函數。D=(d1,d2,...,dm)T,其中元素d_i是和y_i長度一致的bit串,D向量就是編碼后的OKVS數據結構,其編碼目標就是找到這個D向量,使得上述矩陣‘乘法’成立。
即將v(xi)產生的bit串中為1對應序號的D向量中的元素求異或的結果是等于yi的。
Decode(D,x):給定一個OKVS的數據結構(D向量)和一個key,獲取這個key對應的value。
OKVS和普通的哈希表的區別主要是key和value都是隱藏的,只保留了key到value的一個映射關系,因此擁有key可以解出構建時對應的value,沒有key則無法解出對應的value也無法推測有哪些key。
具體構造OKVS的方案本協議使用的是PSIfromPaXoS:Fast,MaliciousPrivateSetIntersection中提出的garbledcuckootable方案,構造出的OKVS結構體大小較小,且encode,decode效率也很高,具體實現可直接閱讀該論文的第五部分。
Simple,FastMaliciousMultipartyPrivateSetIntersection.
?PSIfromPaXoS:Fast,MaliciousPrivateSetIntersection.
前言 此文為BitXHub跨鏈治理系列第二篇:治理機制的提案模型。在上一篇《跨鏈治理之入門三問:WHOWHATHOW》中,我們介紹了跨鏈治理的總體架構和基本流程,實際上,治理流程基本都是圍繞提案.
1900/1/1 0:00:00據TheBlock11月25日消息,英國法律委員會今天表示,英格蘭和威爾士的現行法律可以適用于智能合約.
1900/1/1 0:00:00據中國證券網消息,中國人民銀行數字貨幣研究所副所長狄剛今日在國際金融論壇第18屆全球年會上表示,雖然區塊鏈技術在全球數字金融領域已經拓展了很多應用場景.
1900/1/1 0:00:00資訊來源:由0x資訊編譯自BLOCKCAST美國聯準會凌晨宣布,加速縮減購債,計劃明年3月結束購債,并且暗示明年可能會升息3次,結果符合外界預期,不確定性從市場消除,帶動美股重拾漲勢.
1900/1/1 0:00:00Bytom:大家好!今天很榮幸邀請到MortezaYousefi參與我們的訪談。他是一位攝影師和3D藝術家,受邀討論加密貨幣和他令人興奮的NFT之旅,以及關于在NFT時代成為加密貨幣藝術家的任何.
1900/1/1 0:00:0012月3日,據decrypt報道,英國國防智庫皇家聯合服務研究所發布了一份評估NFT市場固有的洗錢風險的報告,質疑蓬勃發展的數字藝術熱潮是否已成為洗錢的“新前沿”.
1900/1/1 0:00:00