隐私加密技术 : 多方安全计算(MPC)发展历程及现状

625 阅读7分钟

多方安全计算(Multi-Party Computation,简称MPC)是一种隐私保护技术,允许多个参与者在不泄露各自输入数据的情况下进行联合计算。该技术在保密性、数据隐私和安全性方面具有重要意义,广泛应用于金融、医疗、数据市场等领域。本文将详细介绍MPC的起源、发展脉络、实现方式及其现状,以帮助不了解这一技术的人更好地理解其基本原理和未来发展趋势。

一、MPC的发展历程

1982年 - MPC概念的提出

  • 安德鲁·雅奥(Andrew Yao) :提出了百万富翁问题,首次描述了MPC的概念,这为MPC的研究奠定了基础。

1986年 - 雅奥的混淆电路

  • Andrew Yao:在论文“如何生成加密的电路”中提出了混淆电路(Garbled Circuits),为两方计算提供了实际可行的解决方案【Yao86】。

1987年 - GMW协议

  • Goldreich, Micali, Wigderson:提出了GMW协议,这是一种适用于多方参与的MPC协议,并能处理恶意行为的参与者【GMW87】。

1988年 - BGW协议和CCD协议

  • Ben-Or, Goldwasser, Wigderson:提出了BGW协议,基于秘密共享的MPC协议,能够在无可信第三方的情况下进行安全计算【BGW88】。
  • Chaum, Crépeau, Damgård:提出了CCD协议,进一步拓展了MPC的应用【CCD88】。

1989年 - RB协议

  • Rabin, Ben-Or:提出了RB协议,改进了基于秘密共享的MPC协议【RB89】。

1990年 - BMR协议

  • Beaver, Micali, Rogaway:提出了BMR协议,通过组合混淆电路和秘密共享,实现了更高效的MPC【BMR90】。

2004年 - SPDZ协议

  • Damgård, Pastro, Smart, Zakarias:提出了SPDZ协议,结合了同态加密和秘密共享,实现了高效的MPC【MNPS04】。

2011年 - Fairplay框架

  • Fairplay:一个基于雅奥混淆电路的MPC框架,使得研究人员可以更方便地进行MPC实验和应用【Fairplay11】。

2013年 - ABY框架

  • Demmler, Schneider, Zohner:推出了ABY框架,结合了混淆电路、秘密共享和同态加密三种技术,实现了高效的混合协议【ABY13】。

2015年 - LAN协议

  • Lindell, Nof:提出了适用于实际应用的LAN协议,通过优化计算和通信效率,使MPC更加实用【LAN15】。

2016年 - SecureML框架

  • Mohassel, Zhang:提出了SecureML框架,实现了基于MPC的隐私保护机器学习模型,使得数据拥有者可以在不泄露数据的情况下训练机器学习模型【SecureML16】。

2018年 - MPC在医疗数据分析中的应用

  • Microsoft和合作机构:使用MPC技术对医疗数据进行联合分析,保护患者隐私的同时提高诊断准确率【MS18】。

2020年 - FHE和MPC结合

  • Fully Homomorphic Encryption (FHE) :结合FHE和MPC,实现了更高效的隐私保护计算【FHE20】。

2022年 - 高效的MPC协议优化

  • Aly, Nawaz, Salazar, Sucasas:优化了MPC在机器学习中的应用,通过改进协议和算法,实现了更高效的隐私保护计算【ANSS22】。

二、 MPC 目前可以使用的实现方式

多方安全计算(MPC)目前有多种实现方式,每种方式都有其独特的优势和适用场景。并没有一种方式被公认为适用于所有情况的“最好”方式。具体的实现方式包括以下几种主要技术:

1. 秘密共享(Secret Sharing)

秘密共享是MPC的基础技术之一,它通过将数据分割成若干份,每份数据片段独立保存,只在必要时组合起来进行计算。

主要协议

  • Shamir's Secret Sharing:将秘密数据分成多个部分,只有在收集到足够多的部分时才能恢复原始数据。广泛用于分布式系统和安全计算中。
  • BGW Protocol:Ben-Or、Goldwasser和Wigderson提出的基于秘密共享的协议,能够在无可信第三方的情况下进行计算。

2. 同态加密(Homomorphic Encryption)

同态加密允许在加密数据上直接进行计算,计算结果解密后即为原始数据的计算结果。

主要协议

  • Fully Homomorphic Encryption (FHE) :可以在加密数据上进行任意计算,但计算开销较大,主要用于需要强隐私保护的场景。
  • Partially Homomorphic Encryption (PHE) :只支持特定类型的计算(如加法或乘法),但效率较高。

3. 混淆电路(Garbled Circuits)

混淆电路通过将计算过程表示为电路,并对电路进行混淆处理,使得参与方只能获得最终计算结果而无法获知中间数据。

主要协议

  • Yao's Garbled Circuits:用于安全两方计算,适用于需要高效率且数据隐私要求较高的场景。

4. 混合协议(Hybrid Protocols)

混合协议结合了多种MPC技术,利用各自的优势来提高计算效率和安全性。

主要协议

  • ABY Framework:结合了混淆电路、秘密共享和同态加密技术,适用于需要高效计算和强隐私保护的场景。

三、MPC目前存在的问题

性能优化

目前,MPC的计算和通信开销仍较大,限制了其在大规模数据处理中的应用。研究人员通过优化算法和硬件加速,不断提升MPC的性能。例如,通过预处理和并行计算,减少计算时间和通信量​ (SpringerLink)​。

应用场景拓展

MPC已在金融、医疗、广告投放等领域展开应用。例如,多个银行可以在不泄露客户数据的情况下,联合进行信用风险评估;医疗机构可以在保护患者隐私的前提下,联合分析医疗数据,提高诊断和治疗效果​ (SpringerLink)​​ (Multiparty Computation)​。

法律和伦理问题

MPC的应用涉及数据隐私和安全的法律和伦理问题。目前,相关法律法规尚未完全明确MPC的法律地位和合规要求,亟需进一步研究和规范​ (SpringerLink)​。

可用性和可扩展性

尽管MPC在保护数据隐私方面具有巨大潜力,但其实现和使用仍较为复杂,普通用户难以理解和掌握。未来的发展应注重提升MPC的可用性和可扩展性,使其能够在更多场景中得到应用​ (SpringerLink)​。 Pomelo_刘金。转载请注明原文链接。感谢!

参考文献

  1. Yao, A.C. (1986). "How to Generate and Exchange Secrets". Proceedings of the 27th Annual Symposium on Foundations of Computer Science (FOCS 1986).
  2. Goldreich, O., Micali, S., Wigderson, A. (1987). "How to Play any Mental Game". Proceedings of the 19th Annual ACM Symposium on Theory of Computing (STOC 1987).
  3. Ben-Or, M., Goldwasser, S., Wigderson, A. (1988). "Completeness Theorems for Non-Cryptographic Fault-Tolerant Distributed Computation". Proceedings of the 20th Annual ACM Symposium on Theory of Computing (STOC 1988).
  4. Chaum, D., Crépeau, C., Damgård, I. (1988). "Multiparty Unconditionally Secure Protocols". Proceedings of the 20th Annual ACM Symposium on Theory of Computing (STOC 1988).
  5. Rabin, M.O., Ben-Or, M. (1989). "Verifiable Secret Sharing and Multiparty Protocols with Honest Majority". Proceedings of the 21st Annual ACM Symposium on Theory of Computing (STOC 1989).
  6. Beaver, D., Micali, S., Rogaway, P. (1990). "The Round Complexity of Secure Protocols". Proceedings of the 22nd Annual ACM Symposium on Theory of Computing (STOC 1990).
  7. Damgård, I., Pastro, V., Smart, N.P., Zakarias, S. (2012). "Multiparty Computation from Somewhat Homomorphic Encryption". Proceedings of the 31st Annual International Conference on the Theory and Applications of Cryptographic Techniques (EUROCRYPT 2012).
  8. Demmler, D., Schneider, T., Zohner, M. (2013). "ABY – A Framework for Efficient Mixed-Protocol Secure Two-Party Computation". Proceedings of the 22nd Annual USENIX Security Symposium (USENIX 2013).
  9. Lindell, Y., Nof, A. (2015). "A Framework for Constructing Fast MPC Over Arithmetic Circuits with Malicious Adversaries and an Honest-Majority". Proceedings of the 22nd ACM Conference on Computer and Communications Security (CCS 2015).
  10. Mohassel, P., Zhang, Y. (2016). "SecureML: A System for Scalable Privacy-Preserving Machine Learning". Proceedings of the 37th IEEE Symposium on Security and Privacy (S&P 2016).
  11. Aly, A., Nawaz, K., Salazar, E., Sucasas, V. (2022). "Through the Looking-Glass: Benchmarking Secure Multi-Party Computation Comparisons for ReLU's". Cryptology ePrint Archive, Report 2022/202.