- 三元组生成和分发,即\(P_1\)有\(a_1,b_1,c_1\),\(P_2\)有\(a_2,b_2,c_2\),\(P_3\)有\(a_3,b_3,c_3\) 。
其中\(c=ab\) 。
- 密秘分发,即将\(x,y\)分发,得到以下结果:
文章插图
- 秘密重构
(2)计算\(xy=(x-a+a)(y-b+b)=(m a+a)(m b+b)=m a \cdot m b+m a \cdot b+m b \cdot a+c\),可以看出将\(xy\)问题转化为三个乘法问题和加法问题,其中\(ma,mb\)已经得到,因此只需各方计算出\(ma.b+mb.a+c\)的碎片即可:
文章插图
(3)然后将\(ma.b+mb.a+c\)与\(ma.mb\)相加,便可以得到\(xy\),进而通过这种方法求出\(xyz\) 。
?:姚期智院士在提出“百万富翁问题”的同时,给出了三种解决办法【OT、GC、SS?】,并讨论了在秘密投票(
- SS的乘法需要使用辅助信息三元组,在加法和乘法基础上,可以组合出更加复杂的运算,构造出更加完整、通用的MPC协议 。
- GC构造的MPC更适合于逻辑运算或数字的比较运算,比如百万富翁问题 。
- SS构造的MPC更适用于算术运算 。
经验总结扩展阅读
- SimpleDateFormat线程安全问题排查
- 解决 net core 3.x 跨域问题
- 一个超经典 WinForm 卡死问题的再反思
- 事业单位薪级工资的问题 事业单位薪级工资标准表
- 永久解决Ubuntu下adb权限问题
- go:快速添加接口方法及其实现
- 灵活就业4050补贴有什么弊端和问题
- 真空粽子直接吃会出问题吗 真空包装的粽子煮多久可以吃
- 重新整理 .net core 实践篇 ———— linux上排查问题实用工具 [外篇]
- predator-prey model OpenFOAM 编程 | 求解捕食者与被捕食者模型问题(ODEs)