隐私计算工程师必备的五项核心技术盘点
随着数字经济的快速发展,隐私计算行业备受瞩目。隐私计算技术能够实现数据在不被泄露的前提下进行共享和分析,为各个行业提供安全、高效的数字化解决方案。未来,随着数据安全和隐私保护的法律法规的加强和数字经济的深入发展,隐私计算工程师将成为热门职业之一。
作为一名隐私计算工程师,需要具备丰富的技术知识和实践经验,能够熟练掌握隐私计算相关技术的基本原理和应用实践。我们今天就来盘点一下隐私计算工程师必备的五项技术基础和实践路径。
差分隐私
差分隐私是保护个人隐私的一种重要技术。它通过在原始数据中添加随机噪音来隐藏个人的敏感信息,使得从统计结果中无法准确推断出单个样本的数据。
差分隐私算法会先定义一个隐私预算ε,它控制了加入噪音的大小。一般ε越小,提供的隐私保护就越高,但统计结果的准确度也会降低。预算ε是可调参数,需要根据实际需求进行权衡。
在差分隐私下,任何单个数据样本的存在或缺失只会在很小程度上影响统计分析的结果。攻击者即使能够访问结果数据集,也无法确定某个个体是否参与了数据集。这保证了个人数据不会被泄露。
差分隐私可以应用在许多场景,如频率估计、直方图生成、机器学习等。大公司如 Google、Apple都使用了差分隐私技术来收集和分析客户数据而又保护他们的隐私。
经典论文
Cynthia Dwork and Aaron Roth, The Algorithmic Foundations of Differential Privacy Foundations and Trends® in Theoretical Computer Science 9.3–4 (2014): 211-407.
Cynthia Dwork, Moni Naor, Omer Reingold, Guy N. Rothblum, and Salil P. Vadhan, On the complexity of differentially private data release: efficient algorithms and hardness results Proceedings of the forty-first annual ACM symposium on Theory of computing. 2009.
Stanley L. Warner, Randomized response: a survey technique for eliminating evasive answer bias Journal of the American Statistical Association 60.309 (1965): 63-69.
*Kobbi Nissim, Sofya Raskhodnikova, and Adam Smith, * Smooth Sensitivity and Sampling in Private Data Analysis. Roceedings of the thirty-ninth annual ACM symposium on Theory of computing. 2007: 75-84
Mironov, Ilya, Rényi differential privacy. 2017 IEEE 30th computer security foundations symposium (CSF). IEEE, 2017.
M. E. Gursoy, A. Tamersoy, S. Truex, W. Wei, and L. Liu, Secure and utility-aware data collection with condensed local differential privacy, IEEE Trans. on Dependable and Secure Comput., pp. 1–13, 2019
Wilson R J, Zhang C Y, Lam W, et al. Differentially private SQL with bounded user contribution, Proceedings on privacy enhancing technologies, 2020, 2020(2): 230-250.
公众号论文资源
项目操作实践
Opacus:https://github.com/pytorch/opacus
sunPytools:https://github.com/forestneo/sunPytools
动手学差分隐私:https://programming-dp.com/cn/cover.html
安全多方计算
多方安全计算是一种允许多个参与方进行联合数据计算,而不泄露其中的隐私数据的技术。其基本思想是:
将原始数据进行加密和分割,每个参与方只持有其中一部分数据。
多个参与方将自己的数据进行多轮加密计算,并交换计算所需的中间结果。
在不暴露原始数据的前提下,最终获得所需的统计结果。
例如,多个医院要统计共同的病人信息而保护每个病人的隐私。每家医院对本院病人数据加密后,上传加密数据。所有医院使用一致的加密和计算协议进行联合计算,最终获得一个统计指标,但任一院无法获知其他院的明文数据。
经典论文
Cheetah: Lean and Fast Secure Two-Party Deep Neural Network Inference Zhicong Huang, Wen-jie Lu, Cheng Hong, Jiansheng Ding USENIX Security 2022, eprint, HLHD22
ABY2.0: Improved Mixed-Protocol Secure Two-Party Computation Arpita Patra, Thomas Schneider, Ajith Suresh, Hossein Yalame Usenix Security 2021, eprint, PSSY21
ABY - A Framework for Efficient Mixed-Protocol Secure Two-Party Computation Daniel Demmler, Thomas Schneider, Michael Zohner NDSS 2017, eprint, DSZ17
Completeness Theorems for Non-Cryptographic Fault Tolerant Distributed Computation Michael Ben-Or, Shafi Goldwasser, Avi Wigderson STOC 1988, eprint, BGW88
How to play any mental game? Oded Goldreich, Silvio Micali, Avi Wigderson STOC 1987, eprint, GMW87
How to generate and exchange secrets? Andrew Chi-Chih Yao FOCS 1986, eprint, Yao86
公众号论文资源
项目操作
ABY: https://github.com/encryptogroup/ABY
ABY3:https://github.com/ladnir/aby3
CBMC-GC:https://github.com/MPC-SoK/frameworks/tree/master/cbmc-gc
隐私集合求交
隐私集合求交的工作原理基于密码学和数据加密技术。它允许不同数据集的所有者合并他们的数据,而不必共享实际的数据。这些计算可以帮助识别共同的数据点或趋势,而无需披露个体的敏感信息。
隐私集合求交在现实场景中非常有用,比如在纵向联邦学习中做数据对齐,或是在社交软件中,通过通讯录做好友发现。因此,一个安全、快速的隐私集合求交的算法是十分重要的。我们可以用一种非常直观的方法来进行隐私集合求交,也就是朴素哈希的方法。参与双方A、B,使用同一个哈希函数H,计算他们数据的哈希值,再将哈希过的数据互相发送给对方,然后就能求得交集了。
经典论文
Compact and Malicious Private Set Intersection for Small Sets Mike Rosulek, Ni Trieu CCS 2021, eprint, RT21
Faster Secure Comparisons with Offline Phase for Efficient Private Set Intersection Florian Kerschbaum, Erik-Oliver Blass, Rasoul Akhavan Mahdavi NDSS 2023, ndss
Simple, Fast Malicious Multiparty Private Set Intersection Ofri Nevo, Ni Trieu, Avishay Yanai CCS 2021, eprint, NTY21
Blazing Fast PSI from Improved OKVS and Subfield VOLE Peter Rindal, Srinivasan Raghuraman CCS 2022, eprint
Fast Private Set Intersection from Homomorphic Encryption Hao Chen, Kim Laine, Peter Rindal CCS 2017, eprint, CLR17
公众号论文资源
项目操作
HE-PSI:https://github.com/bit-ml/Private-Set-Intersection
OT-Extension-PSI:https://github.com/encryptogroup/PSI
libPSI:https://github.com/osu-crypto/libPSI
同态加密
同态加密(Homomorphic Encryption)是一种特殊的加密方法,允许对密文进行处理得到仍然是加密的结果。即对密文直接进行处理,跟对明文进行处理后再对处理结果加密,得到的结果相同。从抽象代数的角度讲,保持了同态性。同态加密可以保证实现处理者无法访问到数据自身的信息。如果定义一个运算符 △,对加密算法E和 解密算法D,满足:E(X△Y)=E(X)△E(Y) ,则意味着对于该运算满足同态性。
同态性来自代数领域,一般包括四种类型:加法同态、乘法同态、减法同态和除法同态。同时满足加法同态和乘法同态,则意味着是代数同态,即全同态(Full Homomorphic)。同时满足四种同态性,则被称为算数同态。
对于计算机操作来讲,实现了全同态意味着对于所有处理都可以实现同态性。只能实现部分特定操作的同态性,被称为特定同态(Somewhat Homomorphic)。
经典论文
A method for obtaining digital signatures and public-key cryptosystems R. L. Rivest, A. Shamir, and L. Adleman Communications of the ACM, paper, RSA78
A new public-key cryptosystem as secure as factoring,” in Advances in Cryptology T. Okamoto and S. Uchiyama EUROCRYPT 1998, paper, OU98
A new public key cryptosystem based on higher residues D. Naccache and J. Stern CCS 98, paper, NS98
Public-Key Cryptosystems Based on Composite Degree Residuosity Classes P. Paillier EUROCRYPT 1999, paper, Paillier99
Why Textbook ElGamal and RSA Encryption Are Insecure? D. Boneh, A. Joux, and P. Q. Nguyen ASIACRYPT 2000, paper, BJN00
A fully homomorphic encryption scheme Gentry, Craig Stanford university 2009, paper, Gentry09
Fully Homomorphic Encryption Using Ideal Lattices Gentry, Craig STOC 2009, paper, Gentry09
A simple BGN-type cryptosystem from LWE Gentry, Craig, Shai Halevi, and Vinod Vaikuntanathan EUROCRYPT 2010, paper, GSV10
(Leveled) fully homomorphic encryption without bootstrapping *Zvika Brakerski, Craig Gentry, Vinod Vaikuntanathan ITCS 2012, paper, BGV12
Homomorphic Encryption for Arithmetic of Approximate Numbers Jung Hee Cheon, Andrey Kim, Miran Kim, Yongsoo Song ASIACRYPT 2017, paper , CKKS17
公众号论文资源
项目操作
Libpaillier: https://acsc.cs.utexas.edu/libpaillier/
HElib:https://github.com/homenc/HElib
SEAL:https://github.com/microsoft/SEAL
OpenFHE:https://github.com/openfheorg/openfhe-development
联邦学习
联邦学习是一种训练数据去中心化的机器学习解决方案,最早于2016年由谷歌公司提出,目的在于通过对保存在大量终端的分布式数据开展训练学习一个高质量中心化的机器学习模型,解决数据孤岛的问题。
联邦学习不断循环以下步骤,直至训练出最终模型:
在符合条件的用户集合中挑选出部分用户,分别从服务器端下载当前的模型;
被选择的用户用各自的数据训练模型;
各个用户将训练好的模型传输给服务器;
服务器将接收到的各个用户的模型聚合成一个最终的模型。
经典论文
Federated machine learning: Concept and applications[J]. Yang Q, Liu Y, Chen T, et al. ACM Transactions on Intelligent Systems and Technology (TIST), 2019.
A survey on security and privacy of federated learning[J]. Mothukuri V, Parizi R M, Pouriyeh S, et al. Future Generation Computer Systems, 2021.
A survey on federated learning and its applications for accelerating industrial internet of things[J]. Zhou J, Zhang S, Lu Q, et al. arXiv preprint.
Communication-efficient learning of deep networks from decentralized data[C] McMahan B, Moore E, Ramage D, et al. //Artificial intelligence and statistics. PMLR 2017.
Adaptive federated optimization[J].Reddi S, Charles Z, Zaheer M, et al. ICLR 2021
Federated multi-task learning[J].Smith V, Chiang C K, Sanjabi M, et al. Advances in neural information processing systems, 2017, 30.
公众号论文资源
异构联邦学习综述:最新进展与研究挑战
联邦学习 x S&P'2023
联邦学习 x INFOCOM'2023
联邦学习 x ICML'2023
项目操作
FATE:https://github.com/FederatedAI/FATE
FedML:https://github.com/FedML-AI/FedML
Flower:https://github.com/adap/flower
其他学习与实践资源
1.讨论社区-国内最大的隐私计算社区-OpenMPC
https://www.openmpc.com/index
2.综合性隐私计算开源平台—PrimiHub隐私计算平台
https://github.com/primihub/primihub
招标 | 近期隐私计算项目招标中标案例