Garbled Circuits介绍 - 1 引言

本文内容大部分翻译自O. Biçer. 2017年的毕业论文《Efficiency Optimizations on Yao’s Garbled Circuits and Their Practical Applications》,少部分参考S. Yakoubov.的《 A Gentle Introduction to Yao’s Garbled Circuits》,并参考维基百科,百度百科等关于混淆电路、MPC的介绍和部分自己的理解编写而成。本文可以当作混淆电路的入门参考资料。文章中可能存在一些错别字,请谅解。

1 引言

一个非常有意思的例子:两个百万富翁想要比较谁更富有,但是都不想让对方知道自己有多少钱,在不借助可信第三方的情况下,如何比较出谁更富有?该问题就是姚期智先生在1982年提出来的著名的百万富翁问题[1],这是一个典型的基础的安全多方计算的问题。他还提出了该问题的密码解决方案[1],并将其推广到任何函数的安全计算[2]。他后来的工作表明,任何函数都可以通过多项式大小的电路安全地计算[2]。这个问题进一步扩展到多方的情况[3]。在Yao的研究之后,又有许多人参与到这个方向的研究,并创立了密码学的一个活跃子领域,称为安全多方计算(Secure Multi-party Computation,MPC)或保密函数计算(Secure Function Evaluation,SFE)。它的目的是解决两个或多个参与方联合计算一个函数,而不向对方透露它们的秘密输入的问题。

现实生活中有很多可以应用MPC技术的例子,包括金融系统[4],情报机构、公司和政府之间的合作[5,6], 电子选举[7], 电子拍卖[8,9], 安全的生物识别[10,11,12], 安全电子邮件过滤[13]等。事实上,在MPC可能被使用的领域没有限制,它能够被用在一些参与方需要在他们的私有数据上计算一个函数的任何情况下。

能够进行函数安全多方计算的方法有同态加密方案和以布尔电路(在混淆电路协议中,函数被描述为布尔电路)为代表的GMW协议[3]及Yao协议。但是在实际应用中,同态加密方案的效率比较低,故更高效的方法是后面一种。GMW协议通常在至少有三方存在的情况下给出更好的结果,而Yao协议通常在两方情况下更好[14]

混淆电路(Garbled circuit,GC)是一种加密协议,它使双方能够进行安全计算,在这种计算中,互不信任的双方可以在不存在可信第三方的情况下,在他们的私有输入上共同计算一个函数。混淆电路的历史很复杂,就像上文描述的那样,它是姚期智先生在1986年的他的论文的口头报告中提出介绍的,但是文档的形成是2003年由Oded Goldreich在[15]中形成的。第一个关于这项技术的书面文件是由GMW在1987年[3]写的。而第一次称其为混淆电路的是1990年在Beaver, Micali, and Rogaway的文章[16]中。Yao协议是安全计算的开端,但是它与混淆电路没有直接关系,但是我们提到GC,一般认为是Yao的混淆电路协议。混淆电路是安全多方计算中非常重要的一部分,自从Yao协议提出之后,它在通信复杂度和计算复杂度方面不断优化。

在这篇文章中我们将首先介绍Yao协议的基本思路,之后将介绍混淆电路的优化,并比较了它们在通信和计算复杂性方面的优势,分析了它们之间的兼容性。文章的总体架构如下安排,第一章节为引言部分,主要是文章的介绍和概述;第二章节为基础知识阶段,主要介绍一下文章需要用到的基础知识的概念,包括MPC、密码学基础和电路的概念;第三章节是介绍Yao协议,包括Yao协议的一般描述和正式定义,以及一般的Yao协议模板及其安全属性;第四章节介绍混淆电路的优化,主要是按时间顺序描述已知的混乱电路优化,包括P&P (Point and Permute)、GRR3(Garbled Row Reduction 3 ciphertexts)、Free XOR、GRR2(Garbled Row Reduction 2 ciphertexts)、FleXOR、Half gates等,在这一章节,我们将分析这些技术的优化以及兼容性,并给出性能的分析。

参考文献

[1] A. Yao. Protocols for secure computations. In Proceedings of the 23rd Annual Symposium on Foundations of Computer Science, SFCS ’82, pages 160–164, 1982.

[2] A. Yao. How to generate and exchange secrets. In Proceedings of the 27th Annual Symposium on Foundations of Computer Science, SFCS ’86, pages 162–167, 1986.

[3] O. Goldreich, S. Micali, and A. Wigderson. How to play any mental game. In Proceedings of the Nineteenth Annual ACM Symposium on Theory of Computing, STOC ’87, pages 218–229, 1987.

[4] D. Bogdanov, R. Talviste, and J. Willemson. Deploying secure multi-party computation for financial data analysis. In Financial Cryptography and Data Security: 16th International Conference, FC 2012, Kralendijk, Bonaire, Februray 27-March 2, 2012, Revised Selected Papers, pages 57–64, 2012.

[5] Y. Lindell and B. Pinkas. Secure multiparty computation for privacy-preserving data mining. The Journal of Privacy and Confidentiality, 1(1):59–98, 2009.

[6] B. Hemenway, S. Lu, R. Ostrovsky, and W. Welser IV. High-precision secure computation of satellite collision probabilities. In Security and Cryptography for Networks: 10th International Conference, SCN 2016, Amalfi, Italy, August 31 – September 2, 2016, Proceedings, pages 169–187, 2016.

[7] R. Cramer, R. Gennaro, and B. Schoenmakers. A secure and optimally efficient multi-authority election scheme. In Advances in Cryptology — EUROCRYPT ’97: International Conference on the Theory and Application of Cryptographic Techniques Konstanz, Germany, May 11–15, 1997 Proceedings, pages 103–118, 1997.

[8] P. Bogetoft, D. Christensen, I. Damgård, M. Geisler, T. Jakobsen, M. Krøigaard, J. Nielsen, J. Nielsen, K. Nielsen, J. Pagter, M. Schwartzbach, and T. Toft. Financial cryptography and data security. chapter Secure Multiparty Computation Goes Live, pages 325–343, 2009.

[9] M. Naor, B. Pinkas, and R. Sumner. Privacy preserving auctions and mechanism design. In Proceedings of the 1st ACM Conference on Electronic Commerce, EC ’99, pages 129–139, 1999.

[10] R. Kulkarni and A. Namboodiri. Secure hamming distance based biometric authentication. In 2013 International Conference on Biometrics (ICB), pages 1–6, June 2013.

[11] J. Bringer, H. Chabanne, and A. Patey. Shade: Secure hamming distance computation from oblivious transfer. In Financial Cryptography and Data Security: FC 2013 Workshops, USEC and WAHC 2013, Okinawa, Japan, April 1, 2013, Revised Selected Papers, pages 164–176, 2013.

[12] M. Kiraz, Z. Genç, and S. Kardaş. Security and efficiency analysis of the hamming distance computation protocol based on oblivious transfer. Security and Communication Networks, 8(18):4123–4135, 2015.

[13] J. Launchbury, D. Archer, T. DuBuisson, and E. Mertens. Application-scale secure multiparty computation. In Programming Languages and Systems: 23rd European Symposium on Programming, ESOP 2014, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2014, Grenoble, France, April 5-13, 2014, Proceedings, pages 8–26, 2014.

[14] O. Biçer. Efficiency Optimizations on Yao's Garbled Circuits and Their Practical Applications. Cryptography and Security, 2017.

[15] O. Goldreich. Cryptography and Cryptographic Protocols. Distributed Computing - Papers in Celebration of the 20th Anniversary of PODC, 16 (2–3): 177–199, 2003.

[16] Beaver D, Micali S, Rogaway P, et al. The round complexity of secure protocols[C]. In Proceedings of the Twenty-second Annual ACM Symposium on Theory of Computing, STOC ’90, pages 503–513, 1990.


如果有任何问题可以与我联系。

个人主页:https://www.mrccc.club/

微信公众号搜索:CHEN CONGCONG

微信小程序搜索:CHEN CONGCONG

CHEN CONGCONG 微信公众号二维码
CHEN CONGCONG 微信小程序二维码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值