基于matlab GUI混沌图像加密解密算法及正交拉丁方置乱的实现
随着互联网的发展以及信息技术的不断进步,隐私安全问题日益引人注目。随之而来的是现有加密算法的不断被攻破,因此,构建一种高效、安全的加密算法变得越来越必要。本文就是要介绍一种基于matlab GUI中的混沌图像加密解密算法以及正交拉丁方置乱的实现方法。
一、混沌图像加密解密算法
- 算法简介
混沌图像加密解密算法是一种按照混沌理论设计的用于图片加密解密的算法。该算法首先将加密图片进行初始处理,然后利用混沌系统生成一个加密密钥,再通过置乱操作对加密图片进行处理,最后使用异或非线性映射的方式进行混淆处理,达到保护图片隐私的目的。
- 算法流程
(1) 将输入的图片进行灰度处理,转换为一个二维灰度矩阵。
(2) 利用混沌系统产生一组密钥。在这里我们使用了lorenz混沌系统产生密钥,其公式为:
dx/dt = sigma*(y-x)
dy/dt = x*(rho-z)-y
dz/dt = xy-beta*z
(3) 对灰度图像进行置乱操作,本文使用正交拉丁方置乱算法,其主要思想是将灰度矩阵的每一行和每一列都进行交换,从而实现置乱。
(4) 将置乱后的灰度图像进行混淆处理,使用异或非线性映射让像素点发生置换,达到更好的加密效果。
(5) 最后得到加密