Paillier同态加密实现

Posted lucifer1997

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Paillier同态加密实现相关的知识,希望对你有一定的参考价值。

一、C++

1、git clone https://github.com/klei0229/paillier.git

2、下载GMP与NTL包;

下载版本以及操作参见https://blog.csdn.net/corewith/article/details/50937206

3、原本的Makefile文件在我这里总是编译不通过,修改后才编译成功;

新的Makefile:

# The following all worked on my machine:
#g++ -g $< -o $@ -lntl -lgmp
#g++ -g $< -o $@ -lntl
#g++ -g $< -o $@
#

# - ntl: Number theory library
# - gmp: Arbitrary precision arithmetic.
# - ssl + crytpo: For openssl. Installed on most linux machines, and
#   has hashing algorithms.
# - m: From what I can tell, libm is an implementation of C math
#   functions. Why would we need this?
LIBS:=ntl gmp m ssl crypto
LIBFLAGS:=$(addprefix -l, $(LIBS));

main : main.cpp paillier.cpp
    g++ -g -Wall -Wpedantic -std=c++11 $^ -o $@ $(LIBFLAGS) -rdynamic /usr/local/lib/libntl.a

 

二、python

1、git clone https://github.com/n1analytics/python-paillier.git

以上是关于Paillier同态加密实现的主要内容,如果未能解决你的问题,请参考以下文章

经典同态加密算法Paillier解读 - 原理实现和应用

京东云开发者|经典同态加密算法Paillier解读 - 原理实现和应用

Paillier半同态加密:原理高效实现方法和应用

Paillier半同态加密:原理高效实现方法和应用

联邦学习安全防御之同态加密

Paillier同态加密算法总结