基于全同态加密的安全人脸识别系统
特点说明:
随着人脸识别技术广泛使用,人脸数据安全问题的严重性也日益增长。
我们采用了全同态加密的方法来保证数据的安全性。
全同态加密:全同态加密支持加密域中密文的计算。那么全同态加密的提出就能够很好的解决计算隐私的问题。我们都知道人脸识别或者说机器学习甚至是整个人工智能,归根到底都是统计数学方法,那么就避不开计算,如此一来,我们就可以先用公钥将数据进行加密,加密后的密文进行数据传输和数值计算,计算结果还是为密文,用户收到密文结果后用私钥进行解密。这样就很好的保证了数据的隐私安全性。
项目难点:
1、Python和C++的跨平台开发,密码学的全同态加密算法采用C++语言编写,人工智能中的人脸识别算法采用Python编写;
2、Python和C++的科学计算数据精度匹配问题,这将直接导致密文模型的识别阈值与原明文模型的识别阈值不同;
3、谷歌的Facenet人脸识别模型训练强度计算需求太大,跑一个完整轮次的训练需要十小时,而整个项目需要1000轮次;
4、谷歌的Facenet人脸识别模型中采用的识别方法是高维欧氏空间向量距离计算,需要用到开根号的计算方法,而全同态加密只支持加密域中的加法和乘法计算,
我们的解决方法是采用数学中的逼近论方法,采用信息论中的汉明距离来对高维欧氏空间向量距离进行近似计算,效果显著,既实现了密文的人脸识别模型,又保证了较高的识别精度。
方法说明:本项目提出了一种基于全同态加密的安全人脸识别协议。分为两个操作:登记操作和比对操作。
登记操作:用户本地生成密钥对,使用公钥将人脸特征向量(用户选中人脸照片后系统会先计算出512维人脸特征向量)加密后,将密文人脸特征向量和用户身份证明(UID)上传至服务器数据库。私钥保留在用户本地。
比对操作:用户使用公钥把要进行比对的人脸特征向量加密后连同用户身份证明(UID)上传至服务器。服务器根据UID在数据库中进行检索,将检索到的用户之前登记的密文人脸特征向量以及新上传的密文人脸特征向量进行密文下的同态人脸识别计算。将计算结果(仍旧是密文)回传给用户,用户收到密文计算结果后使用私钥解密,得到人脸识别结果(明文)。
项目说明:本项目分为三个模块:web模块、全同态加密模块和人脸识别模块
web模块:我们采用python的web模块,框架轻量,可塑性高。
全同态加密模块:我们采用CKKS方案,使用微软的SEAL库(Microsoft Simple Encrypted Arithmetic Library,Microsoft SEAL)。用C++语言编写,编写完函数功能代码后,编译成动态链接库以便python环境下可以被调用。SEAL库链接:https://github.com/microsoft/SEAL
人脸识别模块:我们采用谷歌的FaceNet人脸识别模型,此模型基于谷歌的Inception-ResNet神经网络,使用python的TensorFlow模块实现。我们使用LFW人脸数据集进行模型的训练和测试。FaceNet提出了一种将人脸照片直接映射到网格中,通过计算人脸特征向量的欧式空间向量距离来进行人脸匹配的方法。使用Triplet Loss(三联子损失函数)。人脸特征向量距离阈值为1.0左右(即两张人脸图片距离小于1.0为同一人,大于1.0为不同的人)。
使用说明:
1、解压展开本项目;
2、根据requirements.txt安装Python第三方库;
3、根据根目录下的config.py和documents目录下的face.sql配置好本地数据库;
4、解压application/face/src/20180408-102900目录下的分卷压缩包(只需解压一个就会联动解压),这个是谷歌基于lfw数据集的预训练模型;
5、运行根目录下的main.py。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
使用说明: 1、解压展开本项目; 2、根据requirements.txt安装Python第三方库; 3、根据根目录下的config.py和documents目录下的face.sql配置好本地数据库; 4、解压application/face/src/20180408-102900目录下的分卷压缩包(只需解压一个就会联动解压),这个是谷歌基于lfw数据集的预训练模型; 5、运行根目录下的main.py。 Flask==1.0.2 Flask-SQLAlchemy==2.4.0 Flask-WTF==0.14.2 mysqlclient==1.4.2.post1 virtualenv>=16.5.0 numpy==1.16.2 tensorflow==1.7.0 scipy==1.2.1 scikit-learn==0.21.1 opencv-python h5py matplotlib Pillow requests psutil
资源推荐
资源详情
资源评论
收起资源包目录
基于python实现的全同态加密的安全人脸识别系统 (138个子文件)
bootstrap.css 188KB
bootstrap.min.css 152KB
bootstrap-grid.css 63KB
weui.min.css 50KB
bootstrap-grid.min.css 47KB
layer.css 14KB
layer.css 5KB
bootstrap-reboot.css 5KB
bootstrap-reboot.min.css 4KB
info.css 3KB
style.css 3KB
gain.css 2KB
jq.dice-menu.min.css 2KB
about.css 1KB
index.css 1KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
loading-0.gif 6KB
loading-2.gif 2KB
loading-1.gif 701B
.gitattributes 61B
info.html 7KB
gain.html 4KB
about.html 3KB
index.html 2KB
404.html 898B
500.html 890B
favicon.ico 66KB
SecureFaceRecognizeSource.iml 598B
uwsgi.ini 64B
jquery.js 265KB
bootstrap.bundle.js 218KB
weui-example.js 149KB
adapter.min.js 140KB
bootstrap.js 129KB
jquery.min.js 85KB
bootstrap.bundle.min.js 77KB
bootstrap.min.js 57KB
weui.min.js 36KB
layer.min.js 22KB
popper.min.js 21KB
info.js 7KB
gain.js 7KB
jq.dice-menu.js 4KB
md5.min.js 4KB
layer.js 3KB
cookie.js 660B
about.js 274B
index.js 242B
seals.lib 2KB
bootstrap.min.css.map 611KB
bootstrap.css.map 481KB
bootstrap.bundle.js.map 393KB
bootstrap.bundle.min.js.map 305KB
bootstrap.js.map 245KB
bootstrap.min.js.map 186KB
bootstrap-grid.css.map 148KB
jquery.min.map 129KB
popper.min.js.map 120KB
bootstrap-grid.min.css.map 106KB
bootstrap-reboot.css.map 75KB
bootstrap-reboot.min.css.map 32KB
md5.min.js.map 7KB
README.md 4KB
目录规范.md 1KB
README.md 808B
det3.npy 1.49MB
det2.npy 392KB
det1.npy 27KB
icon.png 11KB
default.png 7KB
icon-ext.png 6KB
train_softmax.py 32KB
detect_face.py 31KB
train_tripletloss.py 24KB
facenet.py 23KB
train_vae.py 14KB
inception_resnet_v2.py 13KB
__init__.py 12KB
inception_resnet_v1.py 11KB
calculate_attribute_vectors.py 9KB
validate_on_lfw.py 9KB
align_dataset_mtcnn.py 8KB
classifier.py 8KB
dfc_vae_resnet.py 6KB
modify_attribute.py 6KB
calculate_filtering_metrics.py 6KB
compare.py 6KB
dfc_vae_large.py 5KB
dfc_vae.py 5KB
freeze_graph.py 5KB
face_data.py 4KB
decode_msceleb_dataset.py 4KB
lfw.py 3KB
squeezenet.py 3KB
dummy.py 2KB
vae_base.py 2KB
util.py 2KB
download_and_extract.py 2KB
共 138 条
- 1
- 2
资源评论
MarcoPage
- 粉丝: 2768
- 资源: 2827
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功