1.一种基于多分数阶混沌系统的彩色图像加密方法,其特征在于:包括以下步骤:(1)输入图像大小为 的原始彩色图像 ,分离图像 的R、G、B三基色分量得到三个矩阵 、 和 ,并将各分量的长和宽分别划分为 等份和 等份,得到 个大小为 的块矩阵;
(2)利用多个分数阶混沌系统生成用于置乱原始彩色图像 的置乱矩阵 、 和;
(3)利用置乱矩阵 、 和 对原始图像 逐块进行置乱,得到置乱图像 ;
(4)将置乱图像 分解成R、G、B三基色图像,得到三基色分量矩阵 、 和;
(5)利用多个分数阶混沌系统生成用于加密置乱图像 的密钥矩阵 、 和;
(6)利用密钥矩阵 、 和 改变置乱后的图像 各像素点的RGB值,得到加密图像 ;
所述的步骤(2)中使用的分数阶混沌系统为分数阶Chen混沌系统和分数阶Lü混沌系统,分数阶Chen混沌系统: ,分数阶Lü混沌系统: ,二者的分数阶次、系统参数和初始值均不相同;利用多个分数阶混沌系统生成置乱矩阵的具体步骤如下:
21.选取分数阶次 ,系统参数 、 、 、 ,初始值 、 和 ,利用分数阶Chen混沌系统生成长度为 的三个实值混沌序列, ,抛弃每个序列的前 个值,得到实值序列 、 和 ;
22.选取分数阶次 ,系统参数 、 、 ,初始值 、 和 ,利用分数阶Lü混沌系统生成长度为 的三个实值混沌序列, ,抛弃每个序列的前个值,得到实值序列 、 和 ;
23.将 和 、 和 、 和 分别组合成长度为 的实值序列 、 和 ;
24.将 序 列 、 和 分别放大 倍并取整, 即,
,
, ,
得到新的序列 、 和 ;
25.将序列 、 和 分别转化为 行 列的矩阵 、 和;
26.分别将矩阵 、 和 的每一行都作为一个子序列,每个子序列包含个数据;将每个子序列中的数据按升序重新排列,得到新的子序列;然后将原子序列中每个元素所在的位置序号替换新的子序列中的对应元素,最终得到 行列的置乱矩阵 、 和 ;
所述的步骤(3)中利用置乱矩阵对原始图像 进行置乱的具体步骤如下:
31. 步骤(1)中的 个大小为 的块矩阵,分别表示为, ,
, ;
32. 从各分量的第1块开始进行置乱,首先将第1块的各元素存放到一个一维数组中,即,
,
;然后,利用置
乱矩阵 、 和 的第1行元素分别对 、 、 中的元素逐个进行置乱,即
,
, , ;最 后, 将
一维数组 、 、 中的元素分别保存到三维数组中, 即
;
33. 利用与步骤32相同的方法分别对各分量的第2,3,…, 块依次进行置乱,得到如下三维矩阵: , …,; ,…,
; ,…,
;
34. 将置乱后的各块进行合并,具体方法如下:,
,
, 其 中,
, ,经过上述块合并处理后得到的 、 和 就是置乱图像 的R、G、B三基色分量;
35. 将三基色分量 、 和 进行合并,即 ,, ,从而得到
置乱后的图像 ;
所述的步骤(5)中使用的分数阶混沌系统为分数阶Qi混沌系统和分数阶Liu混沌系统,二者的分数阶次、系统参数和初始值均不相同,且与步骤(2)中的分数阶混沌系统的分数阶次、系统参数和初始值也各不相同;
分数阶Qi混沌系统: ,分数阶Liu混沌系统: ,利用多个分数阶混沌系统生成密钥矩阵的具体步骤如下:
51.选取分数阶次 ,系统参数 、 、 ,初始值 、 和 ,利用分数阶Qi混沌系统生成长度为 的三个实值混沌序列, ,抛弃每个序列的前个值,得到实值序列 、 和 ;
52.选取分数阶次 ,系统参数 、 、 、 、 ,初始值 、 和 ,利用分数阶Liu混沌系统生成长度为 的三个实值混沌序列, ,抛弃每个序列的前 个值,得到实值序列 、 和 ;
53.将 和 、 和 、 和 分别组合成长度为 的实值序列 、 和;
54. 将 序 列 、 和 分别放大 倍并取整,即,
,其中 ,得到新的序
列 、 和 ;
55.将序列 、 和 中的数据按降序重新排列,得到新的序列 、 和 ;
56.将原序列 、 和 中各元素所在的位置序号取代新的序列 、 和 中的对应元素,得到三个由位置序号组成的序列 、 和 ;
57.将序列 、 和 中的每个元素对256取余,即 ,, ,其 中, , , ,,从而得到改进的序列 、 和 ;
58.根据序列 、 和 ,生成密钥矩阵 、 和 。
2.根据权利要求1所述的基于多分数阶混沌系统的彩色图像加密方法,其特征在于:所述的步骤(6)中改变置乱图像 各像素点RGB值的方法是:将三基色分量矩阵、 和 中的元素分别与密钥矩阵 、 和 中的元素逐个进行异或运算,即 ,
, , 其 中
, 。