发明名称 基于多分数阶混沌系统的彩色图像加密和解密方法
摘要 本发明公开了一种基于多分数阶混沌系统的彩色图像加密和解密方法,其中,加密算法包括原始图像置乱阶段和置乱图像加密阶段:首先,利用两个不同的分数阶混沌系统生成三个置乱矩阵,并分别对原始彩色图像<i>I</i><sub>0</sub>的<i>R</i><i>、</i><i>G</i><i>、</i><i>B</i>三基色分量矩阵进行置乱处理,得到置乱后的图像<i>I</i><sub>1</sub>;其次,利用另外两个不同的分数阶混沌系统生成三个密钥矩阵,并将密钥矩阵中的元素与置乱图像<i>I</i><sub>1</sub>的像素逐个进行异或运算,以改变置乱图像<i>I</i><sub>1</sub>各像素点的数值,从而得到加密图像<i>I</i><sub>2</sub>;图像解密则是加密的逆过程。本方法使用多个分数阶混沌系统,极大的增强了本发明的安全性,且该算法密钥空间大,密钥敏感度高,抗攻击能力强。
申请公布号 CN102982499B 申请公布日期 2015.10.07
申请号 CN201210366647.7 申请日期 2012.09.28
申请人 河南大学 发明人 武相军;宋亚林;杨一平;王慧;冯东栋;李阳
分类号 G06T1/00(2006.01)I 主分类号 G06T1/00(2006.01)I
代理机构 郑州联科专利事务所(普通合伙) 41104 代理人 时立新;崔卫琴
主权项 一种基于多分数阶混沌系统的彩色图像加密方法,其特征在于:包括以下步骤:(1)输入图像大小为<img file="dest_path_image001.GIF" wi="56" he="21" />的原始彩色图像<img file="dest_path_image002.GIF" wi="20" he="26" />,分离图像<img file="402798dest_path_image002.GIF" wi="20" he="26" />的<i>R</i><i>、</i><i>G</i><i>、</i><i>B</i>三基色分量得到三个矩阵<img file="dest_path_image003.GIF" wi="58" he="26" />、<img file="dest_path_image004.GIF" wi="61" he="26" />和<img file="dest_path_image005.GIF" wi="58" he="26" />,并将各分量的长和宽分别划分为<img file="dest_path_image006.GIF" wi="20" he="17" />等份和<img file="dest_path_image007.GIF" wi="16" he="17" />等份,得到<img file="dest_path_image008.GIF" wi="45" he="17" />个大小为<img file="dest_path_image009.GIF" wi="120" he="26" />的块矩阵;(2)利用多个分数阶混沌系统生成用于置乱原始彩色图像<img file="943107dest_path_image002.GIF" wi="20" he="26" />的置乱矩阵<img file="dest_path_image010.GIF" wi="25" he="26" />、<img file="dest_path_image011.GIF" wi="26" he="26" />和<img file="dest_path_image012.GIF" wi="25" he="26" />;(3)利用置乱矩阵<img file="909795dest_path_image010.GIF" wi="25" he="26" />、<img file="305004dest_path_image011.GIF" wi="26" he="26" />和<img file="119377dest_path_image012.GIF" wi="25" he="26" />对原始图像<img file="879522dest_path_image002.GIF" wi="20" he="26" />逐块进行置乱,得到置乱图像<img file="dest_path_image013.GIF" wi="17" he="26" />;(4)将置乱图像<img file="146555dest_path_image013.GIF" wi="17" he="26" />分解成<i>R</i><i>、</i><i>G</i><i>、</i><i>B</i>三基色图像,得到三基色分量矩阵<img file="dest_path_image014.GIF" wi="57" he="26" />、<img file="dest_path_image015.GIF" wi="58" he="26" />和<img file="dest_path_image016.GIF" wi="57" he="26" />;(5)利用多个分数阶混沌系统生成用于加密置乱图像<img file="33871dest_path_image013.GIF" wi="17" he="26" />的密钥矩阵<img file="dest_path_image017.GIF" wi="44" he="29" />、<img file="dest_path_image018.GIF" wi="44" he="29" />和<img file="dest_path_image019.GIF" wi="44" he="29" />;(6)利用密钥矩阵<img file="640433dest_path_image017.GIF" wi="44" he="29" />、<img file="820747dest_path_image018.GIF" wi="44" he="29" />和<img file="575077dest_path_image019.GIF" wi="44" he="29" />改变置乱后的图像<img file="312089dest_path_image013.GIF" wi="17" he="26" />各像素点的<i>RGB</i>值,得到加密图像<img file="dest_path_image020.GIF" wi="20" he="26" />;所述的步骤(2)中使用的分数阶混沌系统为分数阶Chen混沌系统和分数阶Lü混沌系统,分数阶Chen混沌系统:<img file="dest_path_image021.GIF" wi="225" he="108" />,分数阶Lü混沌系统:<img file="dest_path_image022.GIF" wi="195" he="113" />,二者的分数阶次、系统参数和初始值均不相同;利用多个分数阶混沌系统生成置乱矩阵的具体步骤如下:21.选取分数阶次<img file="dest_path_image023.GIF" wi="21" he="26" />,系统参数<img file="dest_path_image024.GIF" wi="18" he="26" />、<img file="dest_path_image025.GIF" wi="17" he="26" />、<img file="dest_path_image026.GIF" wi="17" he="26" />、<img file="dest_path_image027.GIF" wi="20" he="26" />,初始值<img file="dest_path_image028.GIF" wi="21" he="29" />、<img file="dest_path_image029.GIF" wi="22" he="29" />和<img file="dest_path_image030.GIF" wi="21" he="29" />,利用分数阶Chen混沌系统生成长度为<img file="dest_path_image031.GIF" wi="122" he="29" />的三个实值混沌序列,<img file="dest_path_image032.GIF" wi="69" he="26" />,抛弃每个序列的前<img file="dest_path_image033.GIF" wi="14" he="26" />个值,得到实值序列<img file="dest_path_image034.GIF" wi="25" he="26" />、<img file="dest_path_image035.GIF" wi="18" he="26" />和<img file="dest_path_image036.GIF" wi="21" he="26" />;22.选取分数阶次<img file="dest_path_image037.GIF" wi="24" he="26" />,系统参数<img file="dest_path_image038.GIF" wi="21" he="26" />、<img file="dest_path_image039.GIF" wi="20" he="26" />、<img file="dest_path_image040.GIF" wi="20" he="26" />,初始值<img file="dest_path_image041.GIF" wi="21" he="29" />、<img file="dest_path_image042.GIF" wi="22" he="29" />和<img file="dest_path_image043.GIF" wi="21" he="29" />,利用分数阶Lü混沌系统生成长度为<img file="dest_path_image044.GIF" wi="125" he="29" />的三个实值混沌序列,<img file="dest_path_image045.GIF" wi="72" he="26" />,抛弃每个序列的前<img file="dest_path_image046.GIF" wi="17" he="26" />个值,得到实值序列<img file="dest_path_image047.GIF" wi="26" he="26" />、<img file="dest_path_image048.GIF" wi="20" he="26" />和<img file="dest_path_image049.GIF" wi="24" he="26" />;23.将<img file="334009dest_path_image034.GIF" wi="25" he="26" />和<img file="763853dest_path_image047.GIF" wi="26" he="26" />、<img file="943162dest_path_image035.GIF" wi="18" he="26" />和<img file="218286dest_path_image048.GIF" wi="20" he="26" />、<img file="861757dest_path_image036.GIF" wi="21" he="26" />和<img file="882409dest_path_image049.GIF" wi="24" he="26" />分别组合成长度为<img file="611330dest_path_image001.GIF" wi="56" he="21" />的实值序列<img file="dest_path_image050.GIF" wi="22" he="20" />、<img file="dest_path_image051.GIF" wi="17" he="20" />和<img file="dest_path_image052.GIF" wi="18" he="20" />;24.将序列<img file="dest_path_image053.GIF" wi="38" he="26" />、<img file="dest_path_image054.GIF" wi="32" he="26" />和<img file="dest_path_image055.GIF" wi="36" he="26" />分别放大<img file="dest_path_image056.GIF" wi="29" he="25" />倍并取整,<img file="dest_path_image057.GIF" wi="77" he="24" />即<img file="dest_path_image058.GIF" wi="253" he="48" />,<img file="dest_path_image059.GIF" wi="225" he="49" />,<img file="dest_path_image060.GIF" wi="252" he="50" />,<img file="dest_path_image061.GIF" wi="169" he="24" />,得到新的序列<img file="dest_path_image062.GIF" wi="26" he="21" />、<img file="dest_path_image063.GIF" wi="21" he="21" />和<img file="dest_path_image064.GIF" wi="22" he="21" />;25.将序列<img file="440877dest_path_image062.GIF" wi="26" he="21" />、<img file="938855dest_path_image063.GIF" wi="21" he="21" />和<img file="648185dest_path_image064.GIF" wi="22" he="21" />分别转化为<img file="598823dest_path_image008.GIF" wi="45" he="17" />行<img file="481328dest_path_image009.GIF" wi="120" he="26" />列的矩阵<img file="dest_path_image065.GIF" wi="29" he="26" />、<img file="dest_path_image066.GIF" wi="26" he="26" />和<img file="dest_path_image067.GIF" wi="28" he="26" />;26.分别将矩阵<img file="958446dest_path_image065.GIF" wi="29" he="26" />、<img file="900994dest_path_image066.GIF" wi="26" he="26" />和<img file="338929dest_path_image067.GIF" wi="28" he="26" />的每一行都作为一个子序列,每个子序列包含<img file="759546dest_path_image009.GIF" wi="120" he="26" />个数据;将每个子序列中的数据按升序重新排列,得到新的子序列;然后将原子序列中每个元素所在的位置序号替换新的子序列中的对应元素,最终得到<img file="917602dest_path_image008.GIF" wi="45" he="17" />行<img file="31051dest_path_image009.GIF" wi="120" he="26" />列的置乱矩阵<img file="956282dest_path_image010.GIF" wi="25" he="26" />、<img file="118273dest_path_image011.GIF" wi="26" he="26" />和<img file="179770dest_path_image012.GIF" wi="25" he="26" />;所述的步骤(3)中利用置乱矩阵对原始图像<img file="dest_path_image068.GIF" wi="17" he="25" />进行置乱的具体步骤如下:31. 步骤(1)中的<img file="464121dest_path_image008.GIF" wi="45" he="17" />个大小为<img file="63598dest_path_image009.GIF" wi="120" he="26" />的块矩阵,分别表示为<img file="dest_path_image069.GIF" wi="260" he="26" />,<img file="dest_path_image070.GIF" wi="261" he="26" />,<img file="dest_path_image071.GIF" wi="260" he="26" />,<img file="dest_path_image072.GIF" wi="120" he="24" />;32. 从各分量的第1块开始进行置乱,首先将第1块的各元素存放到一个一维数组中,即<img file="dest_path_image073.GIF" wi="489" he="26" />,<img file="dest_path_image074.GIF" wi="492" he="26" />,<img file="dest_path_image075.GIF" wi="488" he="26" />;然后,利用置乱矩阵<img file="717695dest_path_image010.GIF" wi="25" he="26" />、<img file="899278dest_path_image011.GIF" wi="26" he="26" />和<img file="26634dest_path_image012.GIF" wi="25" he="26" />的第1行元素分别对<img file="dest_path_image076.GIF" wi="78" he="25" />、<img file="dest_path_image077.GIF" wi="78" he="25" />、<img file="dest_path_image078.GIF" wi="76" he="25" />中的元素逐个进行置乱,即<img file="dest_path_image079.GIF" wi="266" he="26" />,<img file="dest_path_image080.GIF" wi="268" he="26" />,<img file="dest_path_image081.GIF" wi="264" he="26" />,<img file="dest_path_image082.GIF" wi="198" he="26" />;最后,将一维数组<img file="dest_path_image083.GIF" wi="84" he="25" />、<img file="dest_path_image084.GIF" wi="85" he="25" />、<img file="dest_path_image085.GIF" wi="84" he="25" />中的元素分别保存到三维数组中,即<img file="dest_path_image086.GIF" wi="502" he="26" /><img file="dest_path_image087.GIF" wi="505" he="26" /><img file="dest_path_image088.GIF" wi="502" he="26" />;33. 利用与步骤32相同的方法分别对各分量的第2,3,…,<img file="736577dest_path_image008.GIF" wi="45" he="17" />块依次进行置乱,得到如下三维矩阵:<img file="dest_path_image089.GIF" wi="272" he="26" />,…,<img file="dest_path_image090.GIF" wi="301" he="26" />;<img file="dest_path_image091.GIF" wi="273" he="26" />,…,<img file="dest_path_image092.GIF" wi="304" he="26" />;<img file="dest_path_image093.GIF" wi="272" he="26" />,…,<img file="dest_path_image094.GIF" wi="301" he="26" />;34. 将置乱后的各块进行合并,具体方法如下:<img file="dest_path_image095.GIF" wi="492" he="56" />,<img file="dest_path_image096.GIF" wi="494" he="56" />,<img file="dest_path_image097.GIF" wi="494" he="57" />,其中,<img file="dest_path_image098.GIF" wi="94" he="24" />,<img file="dest_path_image099.GIF" wi="94" he="25" />,经过上述块合并处理后得到的<img file="dest_path_image100.GIF" wi="46" he="26" />、<img file="dest_path_image101.GIF" wi="49" he="26" />和<img file="dest_path_image102.GIF" wi="46" he="26" />就是置乱图像<img file="53420dest_path_image013.GIF" wi="17" he="26" />的<i>R</i><i>、</i><i>G</i><i>、</i><i>B</i>三基色分量;35. 将三基色分量<img file="292771dest_path_image100.GIF" wi="46" he="26" />、<img file="653345dest_path_image101.GIF" wi="49" he="26" />和<img file="40464dest_path_image102.GIF" wi="46" he="26" />进行合并,即<img file="dest_path_image103.GIF" wi="262" he="26" />,<img file="dest_path_image104.GIF" wi="268" he="26" />,<img file="dest_path_image105.GIF" wi="264" he="26" />,从而得到置乱后的图像<img file="597216dest_path_image013.GIF" wi="17" he="26" />;所述的步骤(5)中使用的分数阶混沌系统为分数阶Qi混沌系统和分数阶Liu混沌系统,二者的分数阶次、系统参数和初始值均不相同,且与步骤(2)中的分数阶混沌系统的分数阶次、系统参数和初始值也各不相同;分数阶Qi混沌系统:<img file="dest_path_image106.GIF" wi="225" he="107" />,分数阶Liu混沌系统:<img file="dest_path_image107.GIF" wi="197" he="111" />,利用多个分数阶混沌系统生成密钥矩阵的具体步骤如下:51.选取分数阶次<img file="dest_path_image108.GIF" wi="22" he="26" />,系统参数<img file="dest_path_image109.GIF" wi="20" he="26" />、<img file="dest_path_image110.GIF" wi="18" he="26" />、<img file="dest_path_image111.GIF" wi="18" he="26" />,初始值<img file="dest_path_image112.GIF" wi="21" he="29" />、<img file="dest_path_image113.GIF" wi="22" he="29" />和<img file="dest_path_image114.GIF" wi="21" he="29" />,利用分数阶Qi混沌系统生成长度为<img file="dest_path_image115.GIF" wi="124" he="29" />的三个实值混沌序列,<img file="dest_path_image116.GIF" wi="73" he="26" />,抛弃每个序列的前<img file="dest_path_image117.GIF" wi="16" he="26" />个值,得到实值序列<img file="dest_path_image118.GIF" wi="26" he="26" />、<img file="dest_path_image119.GIF" wi="20" he="26" />和<img file="dest_path_image120.GIF" wi="22" he="26" />;52.选取分数阶次<img file="dest_path_image121.GIF" wi="24" he="26" />,系统参数<img file="dest_path_image122.GIF" wi="21" he="26" />、<img file="dest_path_image123.GIF" wi="20" he="26" />、<img file="dest_path_image124.GIF" wi="20" he="26" />、<img file="dest_path_image125.GIF" wi="22" he="26" />、<img file="dest_path_image126.GIF" wi="20" he="26" />,初始值<img file="dest_path_image127.GIF" wi="21" he="29" />、<img file="dest_path_image128.GIF" wi="22" he="29" />和<img file="dest_path_image129.GIF" wi="21" he="29" />,利用分数阶Liu混沌系统生成长度为<img file="dest_path_image130.GIF" wi="125" he="29" />的三个实值混沌序列,<img file="dest_path_image131.GIF" wi="73" he="26" />,抛弃每个序列的前<img file="dest_path_image132.GIF" wi="17" he="26" />个值,得到实值序列<img file="dest_path_image133.GIF" wi="26" he="26" />、<img file="dest_path_image134.GIF" wi="20" he="26" />和<img file="dest_path_image135.GIF" wi="24" he="26" />;53.将<img file="924030dest_path_image118.GIF" wi="26" he="26" />和<img file="721085dest_path_image133.GIF" wi="26" he="26" />、<img file="851344dest_path_image119.GIF" wi="20" he="26" />和<img file="24837dest_path_image134.GIF" wi="20" he="26" />、<img file="35518dest_path_image120.GIF" wi="22" he="26" />和<img file="941157dest_path_image135.GIF" wi="24" he="26" />分别组合成长度为<img file="37289dest_path_image001.GIF" wi="56" he="21" />的实值序列<img file="dest_path_image136.GIF" wi="22" he="22" />、<img file="dest_path_image137.GIF" wi="18" he="22" />和<img file="dest_path_image138.GIF" wi="20" he="22" />;54.将序列<img file="dest_path_image139.GIF" wi="38" he="28" />、<img file="dest_path_image140.GIF" wi="32" he="28" />和<img file="dest_path_image141.GIF" wi="36" he="28" />分别放大<img file="dest_path_image142.GIF" wi="40" he="25" />倍并取整,即<img file="dest_path_image143.GIF" wi="266" he="44" />,<img file="dest_path_image144.GIF" wi="266" he="50" /><img file="dest_path_image145.GIF" wi="266" he="46" />,其中<img file="dest_path_image146.GIF" wi="191" he="27" />,得到新的序列<img file="dest_path_image147.GIF" wi="26" he="22" />、<img file="dest_path_image148.GIF" wi="21" he="22" />和<img file="dest_path_image149.GIF" wi="22" he="22" />;55.将序列<img file="499625dest_path_image147.GIF" wi="26" he="22" />、<img file="364813dest_path_image148.GIF" wi="21" he="22" />和<img file="503671dest_path_image149.GIF" wi="22" he="22" />中的数据按降序重新排列,得到新的序列<img file="dest_path_image150.GIF" wi="22" he="25" />、<img file="dest_path_image151.GIF" wi="17" he="25" />和<img file="dest_path_image152.GIF" wi="18" he="25" />;56.将原序列<img file="211732dest_path_image147.GIF" wi="26" he="22" />、<img file="461448dest_path_image148.GIF" wi="21" he="22" />和<img file="446722dest_path_image149.GIF" wi="22" he="22" />中各元素所在的位置序号取代新的序列<img file="756480dest_path_image150.GIF" wi="22" he="25" />、<img file="512690dest_path_image151.GIF" wi="17" he="25" />和<img file="566097dest_path_image152.GIF" wi="18" he="25" />中的对应元素,得到三个由位置序号组成的序列<img file="dest_path_image153.GIF" wi="24" he="26" />、<img file="dest_path_image154.GIF" wi="24" he="26" />和<img file="dest_path_image155.GIF" wi="24" he="26" />;57.将序列<img file="343560dest_path_image153.GIF" wi="24" he="26" />、<img file="824220dest_path_image154.GIF" wi="24" he="26" />和<img file="116661dest_path_image155.GIF" wi="24" he="26" />中的每个元素对256取余,即<img file="dest_path_image156.GIF" wi="136" he="30" />,<img file="dest_path_image157.GIF" wi="155" he="30" />,<img file="dest_path_image158.GIF" wi="158" he="31" />,其中,<img file="dest_path_image159.GIF" wi="61" he="31" />,<img file="dest_path_image160.GIF" wi="64" he="28" />,<img file="dest_path_image161.GIF" wi="63" he="28" />,<img file="dest_path_image162.GIF" wi="183" he="26" />,从而得到改进的序列<img file="dest_path_image163.GIF" wi="24" he="26" />、<img file="dest_path_image164.GIF" wi="24" he="26" />和<img file="dest_path_image165.GIF" wi="24" he="26" />;58.根据序列<img file="786808dest_path_image163.GIF" wi="24" he="26" />、<img file="418778dest_path_image164.GIF" wi="24" he="26" />和<img file="70339dest_path_image165.GIF" wi="24" he="26" />,生成密钥矩阵<img file="115655dest_path_image017.GIF" wi="44" he="29" />、<img file="510864dest_path_image018.GIF" wi="44" he="29" />和<img file="246608dest_path_image019.GIF" wi="44" he="29" />。
地址 475001 河南省开封市明伦街85号