【同态加密算法的学习日记】
文章目录
- 图像鲁棒可逆水印算法
- 1.摘要
- 2.Paillier加密系统
- 2.cmake
- 3.VTK
- 4.NTL数论库
- 5.图像加密评判指标
- 1.PSNR——峰值信噪比
- 总结
图像鲁棒可逆水印算法
来源:项世军,杨乐.基于同态加密系统的图像鲁棒可逆水印算法.软件学报,2018,29(4):957-972.[http://www.jos.org.cn/1000-9825/5406.htm]
提示:以下是本篇文章正文内容,下面案例可供参考
1.摘要
可逆水印算法分为以下五步:
1. 对原始图像进行8*8分块,加密得原始图像的密文图像
2. 计算各密文分块统计量,平方图平移来嵌入水印信息
3. 在接收方可从密文图像或明图像直方图中提取水印,并反平移恢复密文图像或原始图像
4. 含水印的密文图像解密后,可从其统计量直方图中提取水印信息和恢复原始图像
5. 解密后含水印图像被攻击后,仍可以正确提取水印
该算法实现了直接在密文图像中嵌入水印,并分别在加密域或明文域提取水印,恢复原始密文或明文图像。
2.Paillier加密系统
同态性:加密后可直接对密文进行相应运算,结果与明文一致
概率性:对于相同明文,不同加密过程可得到不同密文
密钥生成
p,q:随机选择的两个较大质数 lambda:p-1和q-1的最小公倍数(私钥) gcd:(计算两数的)最大公约数 lcm:最小公倍数 (N,g)公钥
加密过程
输入明文m,采用公钥(N,g)加密后得密文c。
解密过程
利用私钥对密文c进行解密,得到明文m
半同态加密
半同态加法加密:将两密文相乘取模后的密文进行解密,得到与密文对应的两明文之和
2.cmake
cmake:cross platform make
定义:跨平台的高级编译配置工具,可以用简单的语句来描述所有平台的编译过程
makefile:makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作
作用:有效地描述这些文件之间的依赖关系以及处理命令,当个别文件改动后仅执行必要的处理,而不必重复整个编译过程,可以大大提高软件开发的效率。
借助cmake进行VTK的环境配置
静态编译:在编译时把所有模块都编译进可执行文件里,类似于带着工具包到处跑,不需要周围环境提供相应工具,不受环境影响。
动态编译:将应用程序需要的模块都编译成动态链接库DLL,运行时用到哪个模块就调用哪个DLL,会受到环境影响。
3.VTK
环境配置:借助VTK
静态编译:在编译时把所有模块都编译进可执行文件里,类似于带着工具包到处跑,不需要周围环境提供相应工具,不受环境影响.
动态编译:将应用程序需要的模块都编译成动态链接库DLL,运行时用到哪个模块就调用哪个DLL,会受到环境影响。
4.NTL数论库
定义:NTL是一种高性能的可移植C ++库,为任意长度的整数提供数据结构和算法。用于整数和有限域上的向量,矩阵和多项式以及任意精度的浮点运算。
作用:NTL为代表数学对象的各种类提供了一个干净一致的接口。它为轻松快速地实现新的数论算法提供了良好的环境,而又不影响性能。
原文链接:http://t.csdn.cn/mz7c9
NTL为以下方面提供了最新算法的高质量实现:
5.图像加密评判指标
1.PSNR——峰值信噪比
它是原图像与被处理图像之间的均方误差相对于(2n-1)2的对数值(信号最大值的平方,n是每个采样值的比特数),它的单位是dB。PSNR数值越高,则两图像相似度更高。
MSE:原图像与密文图像之间均方误差。
总结
【同态加密算法的学习日记】相关推荐
- 【联邦学习邂逅密码学系列】基于同态加密算法python代码实现
这是我的学习笔记,若有不足和错误之处,欢迎交流和指正,谢谢! 联系方式:lrcgnn@163.com 前言 联邦学习是一种参与方之间联合隐私训练的新范式,受到学术界和工业界的关注.然而一些研究表明,联 ...
- BabaSSL:支持半同态加密算法 EC-ElGamal
-- 数据不出域.可用不可见 01 背 景 随着大数据与人工智能的快速发展,个人隐私数据泄露和滥用时有发生,隐私安全问题也越来越被重视. 国家于 2020 年施行密码法.2021 年施行个人信息保护法 ...
- 经典同态加密算法Paillier解读 - 原理、实现和应用
摘要 随着云计算和人工智能的兴起,如何安全有效地利用数据,对持有大量数字资产的企业来说至关重要.同态加密,是解决云计算和分布式机器学习中数据安全问题的关键技术,也是隐私计算中,横跨多方安全计算,联邦学 ...
- 密码学中的同态加密算法,保证数据的安全,你了解吗?
密码学中的同态加密算法,保证数据的安全,你了解吗? 目录 密码学中的同态加密算法,保证数据的安全,你了解吗? 1:什么是同态加密? 2:同态加密算法原理 3:标准化进展 4: 主流同态加密算法原理 4 ...
- 隐私计算:半同态加密算法实践
对于零基础的隐私计算技术爱好者来说,同态加密(Homomorphic Encryption)算法有着最为神奇的特性:可在密文上进行计算且计算结果解密后所得的结果与明文计算一致.为了帮助大家更好地了解同 ...
- 开源同态加密库 HEhub 发布|首个由国内隐私计算团队研发的(全)同态加密算法库...
扫码关注 保护消费者权益 我们在行动 时至今日,数据要素已经成为数字经济时代最重要的生产要素之一,成为众多企业和机构的核心资产,而数据价值的体现依赖于数据的安全流通和利用.隐私计算作为新兴技术为数据的 ...
- java的圆周率_java学习日记,圆周率的打印
前段时间看到听说学习java每天写技术贴会对自己提升很大,我现在学习java也就2个周,算不上技术贴,就写写学习日记吧. 昨天师傅给我出了一道题,说是试试用java打印圆周率. 刚开始我的思路是,如果 ...
- GPU(CUDA)学习日记(十一)------ 深入理解CUDA线程层次以及关于设置线程数的思考
GPU(CUDA)学习日记(十一)------ 深入理解CUDA线程层次以及关于设置线程数的思考 标签: cuda存储线程结构网格 2012-12-07 16:30 6298人阅读 评论(4)收藏 举 ...
- GPU(CUDA)学习日记(十三)------ CUDA内存简介
GPU(CUDA)学习日记(十三)------ CUDA内存简介 标签: cuda存储线程结构 2012-12-07 16:53 2902人阅读 评论(0)收藏 举报 分类: GPU(16) CUDA ...
- GPU(CUDA)学习日记(九)------ CUDA存储器模型
GPU(CUDA)学习日记(九)------ CUDA存储器模型 标签: cuda存储bindingcache编程api 2012-09-27 10:53 1677人阅读 评论(1) 收藏 举报 分类 ...
最新文章
- C#反射使用时注意BindingFlags的用法(转载)
- parquet java_Apache Parquet Java API的文档?
- 【剑指offer-Java版】45圆圈中最后剩下的数字
- Highcharts-2.3.2 网页曲线绘制工具 一淘网价格曲线
- 9. Palindrome Number
- JAVA编程语言的基础知识(六)
- SAP标准OK Code Values 列表
- Luogu P5652 基础博弈练习题 (博弈论、图论)
- JDK中这些常用方法也有Bug
- cmd长ping记录日志和时间_Gin 框架系列 — 路由中间件:日志记录
- 你应该关注的几个网站
- Java 反射(初步)
- Ansible安装MySQL5.7.24
- 用户分析-RFM模型生命周期
- Visual Studio Code如何打开多个tab标签
- STM8S系列学习第一周目:1.用STVD组建第一个项目创建工程
- 中控考勤仪IFace302多线程操作时无法订阅事件
- 经济机器是如何运行的(观后感)
- 【python】pycharts画关联图
- 各大互联网企业Java面试题汇总,看我如何成功拿到百度的offer