隐私求交PSI的原理和Java实现

PSI(Private Set Intersection)隐私求交是指两个或多个参与方在不泄露各自输入数据的情况下,安全计算出它们集合的交集。

一、隐私计算的合规依据

实际上还是在个保法和数据安全法两者之间,在“取得用户授权同意即可使用”与“原始数据不能出域、断直连”之间进行折中和博弈。隐私计算特别是多方安全,没有raw data给到对端,但最终计算结果实际上是把infomation或knowledge给到了对端,使得最终对数据主体的了解变多了。这其实是个模糊地带,目前是按照上述做法满足了“用户知情授权”(在用户隐私协议里写与合作伙伴做用户画像之类),以及“没有传输出原始数据”这两个规则来作为合规依据的。
某种草平台用户隐私政策 第三方信息共享清单 ** 里边有提到通过多方联合隐私计算手段做的间接用户画像**

二、常用的 PSI 协议:ECDH、KKRT、RR22 的含义及原理。


1. ECDH(基于椭圆曲线的 Diffie-Hellman 协议)

基于椭圆曲线 Diffie-Hellman (Elliptic Curve Diffie-Hellman) 密钥交换的 PSI 协议,利用公私钥对和椭圆曲线离散对数难题确保计算安全。

原理
  • 每方持有一个集合(如 A 和 B),然后对集合中的元素做hash_to_point(),这样每个元素都成为了EC曲线上的点。比如两个点集合是P、Q
  • 每方对集合元素用私钥(假设为m, n)做点乘,然后彼此交换这俩点乘集合。(点乘的结果仍然是EC point)这时两方手里的分别是nQ和mP
  • 双方对交换来的点乘集合,用私钥再做点乘,这时双方手里的是mnQ, nmP。然后一方按照约定把结果发送给另一方。(这里以第一方为例,知道P和m但因为不知道n所以构造不出nmP,所以这里需要一方按照计算结果归属的约定把mnQ或nmP发给另一方)
  • 收到两个做了两次点乘集合的一方,对两个集合mnQ和nmP做交集比对,得到结果。(Q和P里边相同的元素做出来的mn点乘结果一定一样,所以这里可以求出交集)
优点
  • 简单直接,基于椭圆曲线的计算效率较高。
  • 不需要额外的复杂计算和存储。
缺点
  • 计算复杂度随集合大小线性增长。
  • 没有充分利用现代 PSI 协议的优化特性,在大规模数据时效率较低。

2. KKRT(Kolesnikov-Kumar-Rosulek-Tan PSI 协议)

KKRT 是一种基于 OT(Oblivious Transfer,盲传输)优化的 PSI 协议,特别适合于大规模集合交集计算。

原理
  • OT 扩展:KKRT 协议利用扩展的盲传输来实现批量化数据处理,通过少量的基本操作扩展为大规模传输。
  • 数据编码:每方将其集合元素编码为固定长度的比特字符串,并通过 OT 发送给对方。
  • 匹配计算:通过协议,接收方可以高效地对比元素是否匹配,而不暴露非交集的元素。
优点
  • 在网络 IO 和计算性能之间取得了良好平衡,适合大规模集合。
  • 提供了较高的效率,是现代 PSI 协议的代表之一。
缺点
  • 对盲传输的实现依赖较重,协议实现稍微复杂。
  • 在非常小的数据集上效率不如简单协议(如 ECDH)。

3. RR22(Rosulek-Rosulek PSI 协议,2022 年改进版)

RR22 是一种新型 PSI 协议,针对计算效率进行了优化。它在通信和计算复杂度上优于 KKRT,特别是在更大的集合中表现出色。

原理
  • 批处理加速:RR22 采用了基于批量处理的优化方式,能够对大规模数据进行快速计算。
  • 高效通信协议:通过减少协议交互步骤和传输数据量,RR22 减少了网络通信成本。
  • 适应多方 PSI:RR22 还可以适配多方参与的 PSI 场景。
优点
  • 提供了更高效的计算和通信性能。
  • 能够扩展到多方 PSI 场景。
缺点
  • 较新的协议实现可能还在逐步优化和完善中。
  • 实现复杂度高于 ECDH 和 KKRT。

对比上述3种PSI协议

协议 特点 优点 缺点
ECDH 基于椭圆曲线 Diffie-Hellman 简单直接,适合小规模集合 大规模数据效率低,计算复杂度高
KKRT 基于 OT 优化 高效,适合大规模集合 实现复杂度较高,依赖 OT 机制
RR22 新型 PSI 优化协议 性能优秀,适合大规模和多方场景 实现复杂,适应性仍在优化中

可以根据数据规模、场景需求和硬件性能选择合适的 PSI 协议来实现隐私求交的功能。

三、基于ECDH协议的PSI的Java实现

image.png

to be continue ...

参考

隐私计算 跨平台互联互通 开放协议 第1部分:ECDH-PSI
蚂蚁集团异构平台开放算法协议与开源实践 - AIQ
隐私计算实训营第5讲-------隐私求交和隐语PSI介绍以及开发实践-阿里云开发者社区
https://bbs.huaweicloud.com/blogs/266527
https://c.biancheng.net/view/zqzhic.html
https://zhuanlan.zhihu.com/p/478706071
https://zhuanlan.zhihu.com/p/367477035

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,063评论 6 510
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,805评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,403评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,110评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,130评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,877评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,533评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,429评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,947评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,078评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,204评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,894评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,546评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,086评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,195评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,519评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,198评论 2 357

推荐阅读更多精彩内容