MPC收藏
收集有关MPC的优秀文章,方便查阅。
同态加密
原理
介绍
- 程序员的干货!核心理论之同态加密
https://mp.weixin.qq.com/s/1uH0UjnS_Mo8ShXJ-16UXw
BGV
-
BGV方案简介(同态加密)
https://blog.csdn.net/AdijeShen/article/details/121613813?spm=1001.2014.3001.5506 -
同态加密BGV与BFV方案对比与梳理
https://blog.csdn.net/AdijeShen/article/details/118905260?spm=1001.2014.3001.5506
GSW
-
同态加密(1) GSW加密方案
https://blog.csdn.net/Artisgrammer/article/details/99436600 -
FHEW阅读笔记
https://blog.csdn.net/AdijeShen/article/details/119539449?spm=1001.2014.3001.5506 -
同态加密GSW方案学习笔记1-GSW最初方案概述
https://blog.csdn.net/qq_38076131/article/details/114002237 -
初探全同态加密系列
-
初探全同态加密:FHE的定义与历史回顾
http://blog.higashi.tech/2020/06/21/fhe_cn_01.html -
初探全同态加密之二:格密码学与LWE问题
http://blog.higashi.tech/2020/06/26/fhe_cn_02.html -
初探全同态加密之三:构建GSW全同态加密系统
http://blog.higashi.tech/2020/07/04/fhe_cn_03.html
CKKS
-
OpenMined
'Part 1, Vanilla Encoding and Decoding'.
'Part 2, Full Encoding and Decoding'.
'Part 3, Encryption and Decryption'.
'Part 4, Multiplication and Relinearization'.
'Part 5, Rescaling'. -
CKKS的Encoding(CKKS方案的编码部分的笔记)
https://blog.csdn.net/AdijeShen/article/details/121287943?spm=1001.2014.3001.5506 -
CKKS同态加密算法简介
https://zhuanlan.zhihu.com/p/366965077
应用
-
同态应用 | 一文读懂远程心电监测中的数据隐私保护
https://mp.weixin.qq.com/s/stBN0PKwqS619SljYDgR6g -
同态加密:CKKS方案详解及一个python实现:TenSEAL(不定期更新)
https://blog.csdn.net/weixin_43466027/article/details/118792866
PSI
介绍
-
程序员的干货!隐私保护集合交集(PSI)算法
https://mp.weixin.qq.com/s/KbwEaV93SLkcNzPA1FwjRQ -
隐私集合求交PSI
https://blog.csdn.net/watson2017/article/details/121641158?spm=1001.2014.3001.5506
方案
-
隐私计算关键技术:隐私集合求交(PSI)原理介绍
https://zhuanlan.zhihu.com/p/367477035 -
隐私计算关键技术:隐私集合求交(PSI)的性能扩展
https://zhuanlan.zhihu.com/p/370035721 -
隐私计算关键技术:多方隐私集合求交(PSI)从原理到实现
https://zhuanlan.zhihu.com/p/431338434 -
隐私保护集合求交技术 (PSI)
https://blog.csdn.net/hello2mao/article/details/115093136 -
基于RSA盲签名的隐私集合求交PSI算法
https://hello2mao.blog.csdn.net/article/details/116943094
开源库
参考:全球隐私计算图谱报告
同态
-
HELib
HElib 是一个实现同态加密(HE)的开源代码库。目前实现的方案是包括带有引导的 Brakerski-Gentry-Vaikuntanathan (BGV) 方案和 Cheon-Kim-Kim-Song (CKKS) 的近似数方案的实现,仓库使用了许多优化技术使同态运算更快。
https://github.com/homenc/HElib -
SEAL
Microsoft SEAL 是一个易于使用的开源(MIT 许可)同态加密库,由 Microsoft 的密码学和隐私研究小组开发。Microsoft SEAL 是用现代 标准 C++ 编写的,易于在许多不同的环境中编译和运行。
https://github.com/microsoft/SEAL -
TenSeal
TenSEAL 是一个用于对张量进行同态加密操作的库,构建在 Microsoft SEAL 之上。它通过 Python API 提供易用性,同时通过使用 C++ 实现其大部分操作来保持效率。
https://github.com/OpenMined/TenSEAL -
libScarab
libScarab 是使用大整数的完全同态加密方案的实现。 -
https://github.com/hcrypt-project/libScarab
实现 Paillier 同态加密的 Python 3 库。paillier 密码系统的同态属性包括:加密数字可以乘以非加密标量;加密数字可以加在一起;加密数 字可以添加到非加密标量。 -
python-paillier
https://github.com/data61/python-paillier -
petlib
一个实现许多隐私增强技术 (PET) 的 python 库。
https://github.com/gdanezis/petlib -
NFLlib
NFLlib 是一个实现了理想格密码的同态加密。该库结合了算法优化(中国剩余定理、优化的数论变换)与编程优化技术(SSE 和 AVX2 专业 化、C++ 表达式模板等)
https://github.com/quarkslab/NFLlib -
cuHE
cuHE是一个 GPU 加速库,实现了在多项式环上定义的同态加密 (HE) 方案和同态算法。同时提供了一个简单易用的接口,提高了程序员的 开发效率。它使用电路同态评估技术。并针对单 GPU 和多 GPU 设备优化了代码。
https://github.com/vernamlab/cuHE -
tfhe
环上的全同态加密高效实现。这个库是 TFHE 的原始版本,它实现了同态加密基本的模块 (bootstrapped and leveled)。
https://github.com/tfhe/tfhe -
HEAAN
HEAAN 是实现支持定点算法的同态加密 (HE) 的软件库。该库支持有理数之间的近似运算。近似误差取决于一些参数,与浮点运算误差几乎 相同。
https://github.com/snucrypto/HEAAN -
Pyfhel
支持对加密的向量、标量进行加法、减法、乘法、标量积的代码库。该库提供最先进的 C++ HE 库的 Python API.
https://github.com/ibarrond/Pyfhel -
nufhe
NuFHE是基于GPU实现的环上全同态加密方案。该库使用 CUDA 和 OpenCL 实现了 TFHE 的完全同态加密算法。与在内部使用 FFT 来加速 多项式乘法的 TFHE 不同,nufhe 可以使用 FFT 或纯整数 NTT(有限域上的类似 DFT 的变换)。后者基于 cuFHE 的算术运算和 NTT 方案。
https://github.com/nucypher/nufhe -
cuFHE
支持GPU加速的全同态加密仓库。它实现了 Chillotti 等人提出的 TFHE 方案。使用英伟达泰坦Xp显卡进行实验,比使用CPU进行计算的 TFHE方案快20多倍。
https://github.com/vernamlab/cuFHE -
HEMat
HEMat 是一个使用同态加密执行安全外包矩阵计算的软件包
https://github.com/K-miran/HEMat -
SEAL-Python
SEAL-python使用pybind11为SEAL的C++代码提供python接口,方便开发者使用python进行开发。
https://github.com/Huelse/SEAL-Python -
he-transformer
这是一种允许AI系统对敏感数据进行操作的工具。它是nGraph,英特尔神经网络编译器的后端
https://github.com/IntelAI/he-transformer -
HEAAN-Python
HEAAN的python版本
https://github.com/Huelse/HEAAN-Python -
lattigo
Lattigo实现了基于RLWE的同态加密方案以及基于同态加密的安全多方计算协议。Lattigo使用go语言实现。Lattigo 旨在支持分布式系统和 微服务架构中的 HE,选用go是因为其并发模型和可移植性.
https://github.com/tuneinsight/lattigo -
concrete
使用Rust语言实现了Zama的TFHE变体。Concrete的密码算法基于LWE问题和RLWE问题,研究证明基于这类问题的密码算法是抗量子的。
https://github.com/zama-ai/concrete -
Cupcake
Cupcake 是一个Fackbook开源的同态加密库,实现了Fan-Vercauteren 同态加密方案的加法版本,并使用。提供明文向量加密、加/减两个 加密向量以及重新随机化密文的功能。
https://github.com/facebookresearch/Cupcake -
openfhe-development
OpenFHE 是一个开源 FHE 库,包括所有常见 FHE 方案的有效实现
https://github.com/openfheorg/openfhe-development -
FINAL
FINAL实现了论文 "FINAL: Faster FHE instantiated with NTRU and LWE"提出的全同态加密方案
https://github.com/KULeuven-COSIC/FINAL -
hehub
由原语科技推出的同态加密开源算法库 HEhub,包含了 BGV、CKKS、TFHE 等全同态加密算法.
https://github.com/primihub/hehub