内容简介
系统地研究了新型数字图像密码系统及其安全性能分析,阐述了基于DES与AES的图像密码算法和基于混沌系统的明文关联图像密码算法的MATLAB和C#语言实现技术及其安全性能。深入探讨了DES和AES算法实现及其数字图像加密应用技术;从加密/解密速度、密钥空间、信息熵、统计特性和敏感性分析等方面研究了图像密码系统的性能分析方法;阐述了明文关联的图像密码系统的实现算法与性能分析;讨论了加密算法与解密算法相同的统一图像密码系统的设计方法与性能分析;诠释了融合公钥与私钥的数字图像密码算法及其性能评价体系。
目录
目录
第1章绪论
1.1图像加密的研究进展
1.2准备工作
1.2.1常用的灰度图像
1.2.2MATLAB R2016a数学软件
1.2.3Eclipse C集成开发环境
1.2.4Visual Studio 2017集成开发环境
1.3本章小结
第2章数据加密标准
2.1DES算法
2.1.1DES加密算法
2.1.2DES解密算法
2.2TDES算法
2.2.1TDES图像密码系统
2.2.2TDES MATLAB程序
2.2.3TDES C程序
2.2.4TDES C#程序
2.3本章小结
第3章高级加密标准
3.1AES算法
3.1.1AES加密算法
3.1.2AES密钥扩展算法
3.1.3AES解密算法
3.2AES图像密码系统
3.2.1AES MATLAB程序
3.2.2AES图像加密MATLAB程序
试读
第5章明文关联的数字图像加密算法
典型的基于混沌系统的数字图像密码系统如图51所示,包括加密系统与解密系统。对于加密系统而言,输入为密钥和明文图像,输出为密文图像; 对于解密系统而言,输入为密钥和密文图像,输出为明文图像。
图51典型的基于混沌系统的数字图像密码系统
由图51可知,典型的基于混沌系统的图像密码系统中,加密算法由“置乱—扩散”的循环结构组成。本章将研究基于“扩散—置乱—扩散”结构的新型图像密码算法,其结构如图52所示[121,127,130,134135]。
图52置乱算法与明文关联的图像密码系统
在图52所示的图像密码系统中,加密或解密过程包括混沌密码发生器、两个扩散算法和一个置乱算法,没有循环处理,且只有置乱算法与明文相关联。由于置乱算法与明文相关联,因此,这类系统称为明文关联的图像密码系统,记为PRIC(PlaintextRelated Image Cryptosystem)。
5.1PRIC
如图52所示,PRIC主要包括4部分,即混沌密码发生器、明文无关的扩散算法Ⅰ模块、明文关联的置乱算法模块和明文无关的扩散算法Ⅱ模块。
这里使用了分段线性混沌映射(PWLCM),如式(51)所示。
xi=f(xi-1,p)=xi-1p,0<xi-1<p
xi-1-p0.5-p,p≤xi-1<0.5
f(1-xi-1,p),0.5≤xi-1<1(51)
其中,p为PWLCM的参数,0<p<0.5; x为PWLCM的状态变量,0<x<1。状态变量的初始值x0不能取p。
这里使用了两个PWLCM,其中一个的初始值和参数记为x0和p,另一个的初始值和参数记为y0和q。这里,{x0,p,y0,q}属于密钥的一部分。
前言/序言
前言
1977年,美国国家标准局,即现在的美国国家标准与技术研究院(NIST)发布了数据加密标准(DES),这是地球上第一个用于文本信息加密的标准(为美国政府服务)。由于DES的密钥长度仅为56位,20世纪末的个人计算机已经可以在有限的时间内借助穷举密钥方法破译DES。于是2002年,NIST发布了高级加密标准(AES)取代DES。AES的密钥长度可以取128位、192位或256位,至今仍然为文本信息的加密标准。
然而,在数字图像加密方面,全球仍然没有一个标准密码算法,同时也没有衡量图像密码算法优劣的一系列标准指标。有些学者认为基于文本数据的AES算法不适合于数字图像加密,由于数字图像具有数据量巨大、信息冗余度大、相邻像素点相关性强等特点,AES用于数字图像加密可能存在加密速度慢、加密效果差的缺点。事实上,这种观点忽视了AES的强大数据加密能力。本书首先从DES和AES算法的阐述开始,详细分析了这两种数据加密算法应用于图像加密时的性能特点; 然后以基于AES的图像密码算法的性能为比较基准,研究了3种基于混沌系统的图像密码算法。
全书内容共分为7章。
第1章首先回顾了图像密码技术的研究历程,按时间顺序,从Shannon关于保密通信的杰作开始,一直阐述到本书截稿时图像密码算法的最新研究成果; 然后展示了本书使用的灰度图像以及3个软件平台,即MATLAB、Eclipse C和Visual Studio。其中,Eclipse C用于C语言开发,第2章的DES使用了C语言; 而Visual Studio用于C#语言开发,全部章节的图像密码算法均使用了C#语言。
第2章首先详细介绍了DES算法结构及其实现方法,然后介绍了TDES(三重数据加密标准)算法及其在图像加密方面的应用技术,并给出了MATLAB、C语言和C#语言工程。一般地,由于MATLAB库函数丰富,所以MATLAB常用于图像密码算法快速实现,但是,MATLAB程序是解释执行的(MATLAB库函数除外),故MATLAB程序不能用于客观地评价图像密码算法的执行效率; C语言是比较图像密码算法执行速度的最佳语言,但是C语言程序调试复杂且图形界面设计难度大; C#语言的执行效率较C语言稍差,但是基于面向对象技术,程序健壮,本书借助C#语言评