abstract
本论文提出了一种用于收集统计信息的隐私保护系统Prio。每个客户机有私有数据值,一小部分服务器对所有客户端的值计算统计函数。只要有一台服务器是诚实的,Prio服务器就不会了解到用户的信息,除了他们可以从系统计算推断出聚合数值。采用新的加密技术SNIPs,使之能够收集大量有用的统计数据。
Contributions
- 引入secret-shared non-interactive proofs (SNIPs),一种新的信息论零知识证明,对客户/服务器进行了优化。
- 展示了affine-aggregatable编码框架,它结合了之前很多的数据编码技术
- 证明了如何将编码和SNIPs相结合,在大规模的数据收集系统中提供鲁棒性和隐私性。
A Simple Scheme
优缺点:
- 提供隐私保证。服务器可以计算总和但是他们对客户端信息一无所知
- 未提供鲁棒性。恶意客户端可能会向服务器提交随机整数来破坏输出
comparing with Prio(Prio improve the basic scheme in security and functionality)
- 安全性。Prio扩展了the Simple Scheme,在恶意客户端前提供鲁棒性
- 功能性。Prio扩展了the Simple Scheme,可以对大量聚合函数(不仅仅是求和)进行隐私保护计算
4.Protecting correctness with SNIPs
在接收到客户机数据值的共享时,Prio服务器端需要用一种方法来检验客户端提交的值是否格式正确。(例如,在Simple Scheme中,客户端的值应该为 0 ≤ x ≤ 1)。然而,服务器端接收到加密的x并不能确定格式是否正确。服务器会有一个验证谓词 Valid(·),只有当 Valid(x)=1时,服务器才会接收数据传输。
为了验证Valid函数功能,我们引入了secret-shared non-interactive proofs(SNIPs),客户端可以很快地向服务器端证明Valid(x)=1。
Building blocks
所有的运算都发生在有限域F中。我们在有限域F中采用了简单的秘密共享方案。
我们的结构使用算术电路(类似于布尔电路),使用有限域乘法,加法和常数门乘法,而不是和、或和非门。
4.1 overview(概述)
SNIPs协议是由一个客户端和多个服务器端交互组成的。在协议中:
客户端的目标是在不泄露x的信息情况下让服务端相信Valid(x)=1。为此,客户端向服务器端发送验证字符串,服务器端接收后进行相互交流,来验证Valid(x)=1。
SNIPs必须满足的属性:
- 正确性。
- 稳健性。如果Valid(x)≠1,服务器端将会拒收x。
- 零知识。如果客户端和至少一个服务器端是诚实的,那么服务器端将不会了解x的信息。
这三个属性和[70]零知识交互式证明系统的属性一致。不同的是,传统零知识系统中只需要一个证明和验证,我们有一个证明者(客户端)和多个验证者(服务器)。
视频讲解:https://www.usenix.org/conference/nsdi17/technical-sessions/presentation/corrigan-gibbs
原文地址:https://www.cnblogs.com/20189223cjt/p/12577866.html