1。time-lock encryption:时间锁加密。
一种可以用于对未来数据加密的方法。时间锁加密可以成为一个工具用于在出现恶意方时,不需要恶意方的参与诚实方也能构造公开可验证的证书。
2.verifiable delay functions:可验证的延迟函数。
-------------------------------
以下均参考文献:Secure Multi-Party Computation: Theory, practice and applications
Chuan Zhao , Shengnan Zhao 、、、、、、
3.安全多方计算下常用的building blocks
a.在半诚实模型下,大多数用的是Yao协议
b.在恶意模型下,主要有:cut and choose、LEGO、Preprocessing model、IPS compiler。
cut and choose:Gen生成s个混淆电路,Eva选择其中一部分进行验证。如果验证的所有电路均正确,则继续进行,Gen和Eva利用剩下的混淆电路进行安全多方计算,仍然使用Yao协议。选择剩下的混淆电路的输出结果中,出现次数最多的结果作为最终的计算结果。如果有不一样的,是否说明剩下的未被检测的电路中存在不正确构造的电路,也就是Gen作弊。如果Gen不想让自己作弊被抓到的话,就只有一种情况:被检测的混淆电路均是正确的,未被检测的混淆电路都是错误的。
LEGO:Gen发送大量的NAND gates(与非门)给Eva,同样的,Eva选择其中一部分进行验证,验证通过的话就将剩下未被验证的NAND gates随机装入多个buckets中,在Gen的帮助下,Eva把每个buckets中的NAND gates链接起来,然后把每个buckets链接起来,最终形成一个电路。这个电路会正确计算,即使在每个bucket中存在错误的NAND gates。但是要求每个buckets中至少有一个正确的NAND gate。
缺点:在构造每个NAND gate时,都需要使用公钥原语。以及对混淆电路优化的任何技术都不能使用在LEGO上。
后续还有 MiniLEGO、TinyLEGO、JIMU.
Preprocessing model:预处理模型,将整个协议分成预处理阶段和在线阶段。预处理阶段的输入参与方不需要知道。
IPS compiler:和GMW compiler一样,将在半诚实模型和秘密模型下的协议转化成恶意模型的协议。
安全多方计算的应用场景:安全的机器学习(多用户的隐私保护机器学习)、集合隐私操作(集合隐私求交集)、基因组序列比较。