CN110650006B - 一种中英文字符串的加密和解密方法 - Google Patents
一种中英文字符串的加密和解密方法 Download PDFInfo
- Publication number
- CN110650006B CN110650006B CN201910874188.5A CN201910874188A CN110650006B CN 110650006 B CN110650006 B CN 110650006B CN 201910874188 A CN201910874188 A CN 201910874188A CN 110650006 B CN110650006 B CN 110650006B
- Authority
- CN
- China
- Prior art keywords
- sequence
- binary bit
- chinese
- binary
- elements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/001—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
Abstract
本发明公开了一种中英文字符串的加密和解密方法,包括:将某段中英文字符串逐个字符转换得到二进制位序列;然后利用倾斜帐篷混沌映射产生的混沌信号,将二进制位序列以8个元素为单位进行分组后进行正向和逆向移位操作,得到双向移位后的二进制位序列;最后将序列正向以6个元素为单位进行分组,并转换为数值型数据,同时进行数值与字符的转换,得到该段中英文字符串的加密密文,通过类似的方法可将密文解密恢复出原始的中英文字符串。本发明利用混沌信号的密码特性,对中英文字符串转换而成的二进制位序列进行双向移位操作的加密/解密,具有良好的抵抗已知/选择明文攻击、唯密文攻击的性能,保证了中英文字符串加密与解密的安全性和可行性。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种中英文字符串的加密和解密方法。
背景技术
随着现代通信技术的飞速发展,计算机网络已成为众多领域进行信息交换的手段。由于计算机网络是一个开放式网络,信息交换时往往面临信息被窃取、篡改和伪造等安全问题,此时信息加密技术的研究与应用势在必行。
目前大多数主流信息加密解密技术都只能应用于如字母、数字、英文标点符号等单字节字符构成的信息,而可用于汉字、中文标点符号等双字节字符所构成的信息加密算法却很少。现有的中文字符加密算法,主要包括根据汉字区位码,进行的简单取反、区位码位置交换、异或,以及DES或RAS混合加密,所得的大多数密文可读性及可复制性太差,出现太多不易书写或者辨认的密文字符,也没有综合中文、英文字符的特点,提出一套简单方便、安全可靠的加密算法。在此情况下,结合混沌信号的密码特性,提出一套具有良好抗攻击性能的中英文字符串的加密和解密方法,显得尤为重要。
发明内容
本发明的目的在于提供一种中英文字符串的加密和解密方法,利用混沌信号的密码特性,对中英文字符串转换而成的二进制位序列进行分组,并对分组后的二进制位序列进行双向移位操作,进而再进行分组并转换为数值型数据,以及数值与字符的转换以生成密文,从而保证了中英文字符串加密与解密的安全性和可行性。
本发明提供了一种中英文字符串的加密方法,包括如下几个步骤:
(1)转码:将某段中英文字符串逐个字符转换为数值型数据,得到数值序列P={P1,P2,...,Pi,....,Pm},再将数值序列P逐个元素转换成8bits的二进制数据,得到二进制位序列B={B1,B2,...,Bi,....,B8×m},其中该段中英文字符串的长度为L,数值序列P的长度为m,二进制位序列B的长度为8×m,且L≤m≤2×L;
(2)混沌序列产生:
首先利用外部加密密钥(α、β),按照如下公式(1)计算分别得到倾斜帐篷混沌映射的初值x1、参数μ和取样间隔M,
其中,PB_1为二进制位序列B中元素为二进制‘1’的总个数,PB_0为二进制位序列B中元素为二进制‘0’的总个数,
然后利用初值x1和参数μ,对如下公式(2)所示的倾斜帐篷混沌映射进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X={x1,x2,...},从中每隔M个元素取1个,从而形成长度为8×m的混沌序列Y={Y1,Y2,...,Y8×m},
(3)二进制位序列B的正向移位:
首先将二进制位序列B中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为BF{1},BF{2},...,BF{i},...BF{m},
然后令dircshift1=0、numshift1=0,将每一个二进制位分组序列BF{i},其中i=1,2,3,...,m,依次进行如下操作,
①利用混沌信号Yi,按照如下公式(3)计算分别得到移位方向direction_shift1、移位个数k_shift1,
②当direction_shift1=0时,将二进制位分组序列BF{i}中元素循环左移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
当direction_shift1=1时,将二进制位分组序列BF{i}中元素循环右移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
③利用正向移位后的二进制位分组序列BF1{i},对dircshift1和numshift1按照如下公式(4)进行计算,
然后令dircshift2=0、numshift2=0,将每一个二进制位分组序列BF2{i},其中i=1,2,3,...,m,依次进行如下操作,
①利用混沌信号Yi,按照如下公式(5)计算分别得到移位方向direction_shift2、移位个数k_shift2,
②当direction_shift2=0时,将二进制位分组序列BF2{i}中元素循环左移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
当direction_shift2=1时,将二进制位分组序列BF2{i}中元素循环右移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
③利用逆向移位后的二进制位分组序列BF3{i},对dircshift2和numshift2按照如下公式(6)进行计算,
(5)转码:首先将二进制位序列中元素从头到尾依次正向以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止;然后将分组后的二进制位序列,分别转换为数值型数据,即进行bin2dec(·)操作,得到数值序列再将数值序列DBF进行数值与字符的转换,得到字符序列C,即为该段中英文字符串的加密密文,其中数值序列DBF的长度为字符序列C的长度为且
进一步地,步骤(1)中所述的将某段中英文字符串逐个字符转换为数值型数据,其中某段中英文字符串包括,GB2312字符集中的中文标点符号、GB2312字符集中双字节编码的6763个汉字,以及可显示ASCII码字符;逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],从而得到数值序列P={P1,P2,...,Pi,....,Pm};将数值序列P逐个元素转换成8bits的二进制数据,是指采用dec2bin(·,8)函数,用二进制数据[B8l-7,B8l-6,B8l-5,B8l-4,B8l-3,B8l-2,B8l-1,B8l]表示,l=1,2,...,m,,从而得到二进制位序列B={B1,B2,...,Bi,....,B8×m}。
进一步地,步骤(5)中所述的将数值序列DBF进行数值与字符的转换,其转换关系表述如下:
首先设定一个空字符序列C,将数值序列中两个元素为一组[DBF2t-1,DBF2t],其中,依次利用native2unicode(·)函数将数值型数据[DBF2t-1+180,DBF2t+170]转换为单个中文字符,并添加到字符序列C中,即C=[C,native2unicode([DBF2t-1+180,DBF2t+170])];
一种中英文字符串的解密方法,其特征在于,包括如下几个步骤:
(1)转码:首先将某段待解密的中英文字符串密文逐个字符转换成数值型数据,得到数值序列然后将数值序列R逐个元素转换成6bits的二进制数据,得到二进制位序列再将二进制位序列RB中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RBF{1},RBF{2},...,RBF{i},...RBF{m},且RBF{i}={RB8×i-7,RB8×i-6,...,RB8×i-1,RB8×i},并将分组后的二进制位序列RBF{i}进行组合,以得到二进制位序列RF={RBF{1},RBF{2},...,RBF{m}}={RF1,RF2,...,RF8×m},其中该段待解密的中英文字符串的长度为数值序列R的长度为二进制位序列RB的长度为二进制位序列RF的长度为8×m,且
(2)混沌序列产生:
其中,RF_1为二进制位序列RF中元素为二进制‘1’的总个数,RF_0为二进制位序列RF中元素为二进制‘0’的总个数,
(3)二进制位序列RF的逆向反移位:
首先将二进制位序列RF中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RF1{1},RF1{2},...,RF1{i},...RF1{m},
最后将反移位后的二进制位分组序列RF2{i}进行正向组合得到{RF2{1},RF2{2},...,RF2{m}},并进行逆向翻转,得到逆向反移位后的二进制位序列RC={RC1,RC2,...,RC8×m};
(4)二进制位序列RC的正向反移位:
首先将二进制位序列RC中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RC1{1},RC1{2},...,RC1{i},...RC1{m},
最后将反移位后的二进制位分组序列RC2{i}进行正向组合,即{RC2{1},RC2{2},...,RC2{m}},得到正向反移位后的二进制位序列RP={RP1,RP2,...,RP8×m};
(5)转码:将二进制位序列RP={RP1,RP2,...,RP8×m},进行二进制位与字符的转换,得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串,其中字符序列RR的长度为L。
进一步地,步骤(1)中所述的将某段待解密的中英文字符串密文逐个字符转换成数值型数据,其转换关系是指采用unicode2native(·)函数,将某段待解密的中英文字符串密文中的单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],同时将区数值数据、码数值数据分别减去180、170,并添加到数值序列R中,即R=[R,[区数值数据-180,位数值数据-170]],或将某段待解密的中英文字符串密文中的可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],同时将ASCII码数值数据减去40,并添加到数值序列R中,即R=[R,ASCII码数值数据-40],从而得到数值序列步骤(1)中所述的将数值序列R逐个元素转换成6bits的二进制数据,其转换关系是指将采用dec2bin(·,6)函数,将数值型数据转换为6bits的二进制位,并添加到二进制位序列RB中,即从而得到二进制位序列
进一步地,步骤(5)中所述的将二进制位序列RP={RP1,RP2,...,RP8×m},进行二进制位与字符的转换,其转换关系表述如下:
设定一个空字符序列RR,令标志位flag=0,将二进制位序列RP中8个元素划分为一组,即RP1{k}={RP8×k-7,RP8×k-6,...,RP8×k},其中,k=1,2,...,m,并将RP1{k}分别转换为数值型数据,即RDk=bin2dec(RP1{k}),将数值型数据RDk依次进行如下运算,
首先判断RDk的大小,
如果RDk<128,则利用char(·)函数将数值型数据RDk转换为单个英文字符,并添加到字符序列RR中,即RR=[RR,char(RDk)],并令标志位flag=0;
否则如果RDk>128,则继续判定RDk+1(或RDk-1)以及标志位flag的大小,
如果RDk>128,且RDk+1>128,且flag=0,则利用native2unicode(·)函数将数值型数据[RDk,RDk+1]转换为单个中文字符,并添加到字符序列RR中,即
RR=[RR,native2unicode([RDk,RDk+1])],并令标志位flag=1;
否则如果RDk>128,且RDk+1<128,且flag=0,则将英文字符‘@’添加到字符序列RR中,即RR=[RR,'@'],并令标志位flag=1;
否则如果RDk>128,且RDk-1>128,且flag=1,则令标志位flag=0。
从而得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串,其中字符序列RR的长度为L。
有益效果:本发明利用混沌信号的密码特性,对中英文字符串转换而成的二进制位序列进行分组,并对分组后的二进制位序列进行双向移位操作,进而再进行分组并转换为数值型数据,以及数值与字符的转换,以完成中英文字符串的加密或者解密,具有良好的抵抗已知/选择明文攻击、唯密文攻击的性能,从而保证了中英文字符串加密与解密的安全性和可行性。
附图说明
图1为本发明的一种中英文字符串的加密和解密流程示意图。
具体实施方式
如图1所示的一种中英文字符串的加密方法,包括如下几个步骤:
(1)转码:将某段中英文字符串逐个字符转换为数值型数据,其中某段中英文字符串包括,GB2312字符集中的中文标点符号、GB2312字符集中双字节编码的6763个汉字,以及可显示ASCII码字符,逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],得到数值序列P={P1,P2,...,Pi,....,Pm};再将数值序列P逐个元素转换成8bits的二进制数据,即采用dec2bin(·,8)函数,用二进制数据[B8l-7,B8l-6,B8l-5,B8l-4,B8l-3,B8l-2,B8l-1,B8l]表示(l=1,2,...,m),从而得到二进制位序列B={B1,B2,...,Bi,....,B8×m},其中该段中英文字符串的长度为L,数值序列P的长度为m,二进制位序列B的长度为8×m,且L≤m≤2×L;
(2)混沌序列产生:
首先利用外部加密密钥(α、β),按照如下所示公式计算分别得到倾斜帐篷混沌映射的初值x1、参数μ和取样间隔M,
其中,PB_1为二进制位序列B中元素为二进制‘1’的总个数,PB_0为二进制位序列B中元素为二进制‘0’的总个数,
然后利用初值x1和参数μ,对如下公式所示的倾斜帐篷混沌映射进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X={x1,x2,...},从中每隔M个元素取1个,从而形成长度为8×m的混沌序列
Y={Y1,Y2,...,Y8×m},
(3)二进制位序列B的正向移位:
首先将二进制位序列B中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为BF{1},BF{2},...,BF{i},...BF{m},
然后令dircshift1=0、numshift1=0,将每一个二进制位分组序列BF{i},其中i=1,2,3,...,m,依次进行如下操作,
①利用混沌信号Yi,按照如下所示公式计算分别得到移位方向direction_shift1、移位个数k_shift1,
direction_shift1=mod(Y1i-Y2i+dircshift1,2)
k_shift1=mod(Y1i+Y2i+numshift1,8)
②当direction_shift1=0时,将二进制位分组序列BF{i}中元素循环左移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
当direction_shift1=1时,将二进制位分组序列BF{i}中元素循环右移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
③利用正向移位后的二进制位分组序列BF1{i},对dircshift1和numshift1按照如下所示公式进行计算,
然后令dircshift2=0、numshift2=0,将每一个二进制位分组序列BF2{i},其中i=1,2,3,...,m,依次进行如下操作,
①利用混沌信号Yi,按照如下所示公式计算分别得到移位方向direction_shift2、移位个数k_shift2,
direction_shift2=mod(Y1i+Y2i+dircshift2,2)
k_shift2=mod(Y1i-Y2i+numshift2,8)
②当direction_shift2=0时,将二进制位分组序列BF2{i}中元素循环左移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
当direction_shift2=1时,将二进制位分组序列BF2{i}中元素循环右移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
③利用逆向移位后的二进制位分组序列BF3{i},对dircshift2和numshift2按照如下所示公式进行计算,
(5)转码:首先将二进制位序列中元素从头到尾依次正向以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止;然后将分组后的二进制位序列,分别转换为数值型数据,即进行bin2dec(·)操作,得到数值序列再将数值序列DBF进行数值与字符的转换,其转换关系表述如下:
首先设定一个空字符序列C,将数值序列中两个元素为一组[DBF2t-1,DBF2t],其中,依次利用native2unicode(·)函数将数值型数据[DBF2t-1+180,DBF2t+170]转换为单个中文字符,并添加到字符序列C中,即C=[C,native2unicode([DBF2t-1+180,DBF2t+170])];
如图1所示,一种中英文字符串的解密方法,包括如下几个步骤:
(1)转码:首先将某段待解密的中英文字符串密文逐个字符转换成数值型数据,即采用unicode2native(·)函数,将某段待解密的中英文字符串密文中的单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],同时将区数值数据、码数值数据分别减去180、170,并添加到数值序列R中,即R=[R,[区数值数据-180,位数值数据-170]],或将某段待解密的中英文字符串密文C中的可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],同时将ASCII码数值数据减去40,并添加到数值序列R中,即R=[R,ASCII码数值数据-40],得到数值序列然后将数值序列R逐个元素转换成6bits的二进制数据,即将采用dec2bin(·,6)函数,将数值型数据转换为6bits的二进制位,并添加到二进制位序列RB中,表示为RB=[RB,dec2bin(Ri,6)],得到二进制位序列再将二进制位序列RB中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RBF{1},RBF{2},...,RBF{i},...RBF{m},且RBF{i}={RB8×i-7,RB8×i-6,...,RB8×i-1,RB8×i},并将分组后的二进制位序列RBF{i}进行组合,以得到二进制位序列RF={RBF{1},RBF{2},...,RBF{m}}={RF1,RF2,...,RF8×m},其中该段待解密的中英文字符串的长度为数值序列R的长度为二进制位序列RB的长度为二进制位序列RF的长度为8×m,且
(2)混沌序列产生:
其中,RF_1为二进制位序列RF中元素为二进制‘1’的总个数,RF_0为二进制位序列RF中元素为二进制‘0’的总个数,
(3)二进制位序列RF的逆向反移位:
首先将二进制位序列RF中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RF1{1},RF1{2},...,RF1{i},...RF1{m},
最后将反移位后的二进制位分组序列RF2{i}进行正向组合得到{RF2{1},RF2{2},...,RF2{m}},并进行逆向翻转,得到逆向反移位后的二进制位序列RC={RC1,RC2,...,RC8×m};
(4)二进制位序列RC的正向反移位:
首先将二进制位序列RC中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RC1{1},RC1{2},...,RC1{i},...RC1{m},
最后将反移位后的二进制位分组序列RC2{i}进行正向组合,即{RC2{1},RC2{2},...,RC2{m}},得到正向反移位后的二进制位序列RP={RP1,RP2,...,RP8×m};
(5)转码:将二进制位序列RP={RP1,RP2,...,RP8×m},进行二进制位与字符的转换,其转换关系表述如下:
设定一个空字符序列RR,令标志位flag=0,将二进制位序列RP中8个元素划分为一组,即RP1{k}={RP8×k-7,RP8×k-6,...,RP8×k}(其中k=1,2,...,m),并将RP1{k}分别转换为数值型数据,即RDk=bin2dec(RP1{k}),将数值型数据RDk依次进行如下运算,
首先判断RDk的大小,
如果RDk<128,则利用char(·)函数将数值型数据RDk转换为单个英文字符,并添加到字符序列RR中,即RR=[RR,char(RDk)],并令标志位flag=0;
否则如果RDk>128,则继续判定RDk+1(或RDk-1)以及标志位flag的大小,
如果RDk>128,且RDk+1>128,且flag=0,则利用native2unicode(·)函数将数值型数据[RDk,RDk+1]转换为单个中文字符,并添加到字符序列RR中,即
RR=[RR,native2unicode([RDk,RDk+1])],并令标志位flag=1;
否则如果RDk>128,且RDk+1<128,且flag=0,则将英文字符‘@’添加到字符序列
RR中,即RR=[RR,'@'],并令标志位flag=1;
否则如果RDk>128,且RDk-1>128,且flag=1,则令标志位flag=0。
从而得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串,其中字符序列RR的长度为L。
下面结合具体的实施例对本发明作进一步说明:
实施例1
按照上述具体实施方式中一种中英文字符串的加密方法,步骤如下:
(1)将某段中英文字符串“一种中英文字符串的加密和解密方法,1+1>2吗?”逐个字符按照如上述具体实施方式中一种中英文字符串的加密方法步骤(1)中所示字符与数值的转换运算,将其转换成数值型数据,得到数值序列P={210,187,214,214,214,208,211,162,206,196,215,214,183,251,180,174,181,196,188,211,195,220,186,205,189,226,195,220,183,189,183,168,163,172,49,43,49,62,50,194,240,163,191},再将数值序列P逐个元素转换成8bits的二进制数据,得到二进制位序列B={1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,1,1,1,0,1,0,0,0,1,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1,0,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,0,1,1,0,1,0,1,1,1,0,0,0,1,0,0,1,0,1,1,1,1,0,0,1,1,0,1,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,1,1,1,0,0,1,0,1,1,1,0,1,0,1,1,0,0,1,1,0,1,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,1,1,1,1,0,1,1,1,0,0,1,0,1,1,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,1,0,1,1,1,1,0,1,0,1,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,1,1,0,0,0,0,1,1,0,0,0,1,0,0,1,0,1,0,1,1,0,0,1,1,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,1,0,0,1,0,1,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,1,1,1,1,1},其中该段中英文字符串的长度为L=24,数值序列P的长度为43,二进制位序列B的长度为344;
(2)首先利用外部加密密钥(α=0.12345、β=0.54321),计算得到倾斜帐篷混沌映射的初值参数 和取样间隔M=mod(5×198+7×146,47)=38,利用初值x1和参数μ,根据上述具体实施方式中一种中英文字符串的加密方法步骤(2)中公式所示的倾斜帐篷混沌映射进行迭代,得到混沌序列X,从中每隔38个元素取1个,从而形成长度为344的混沌序列Y;
(3)首先将二进制位序列B中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为BF{1},BF{2},...,BF{i},...BF{m},然后令dircshift1=0、numshift1=0,将分组后的每一个二进制位序列BF{i}依次进行上述具体实施方式中一种中英文字符串的加密方法步骤(3)中所示的循环移位操作,从而得到正向移位后的二进制位序列
(4)首先将二进制位序列中元素从尾到头依次逆向以8个元素为单位进行分组,得到逆向分组后的二进制位序列,表示为BF2{1},BF2{2},...,BF2{i},...BF2{m},然后令dircshift2=0、numshift2=0,将每一个二进制位分组序列BF2{i}依次进行上述具体实施方式中一种中英文字符串的加密方法步骤(4)中所示的循环移位操作,从而得到双向移位后的二进制位序列
(5)首先将二进制位序列中元素从头到尾依次正向以6个元素为单位进行分组,如剩多余元素则末尾补二进制‘0’直至补满6个一组为止;然后将分组后的二进制位序列,分别转换为数值型数据,得到数值序列DBF={61,56,47,3,16,52,50,15,12,35,22,17,41,34,56,42,47,29,58,61,59,1,57,7,59,28,57,23,39,19,51,37,52,49,39,22,53,29,10,63,61,37,46,47,35,9,46,40,57,21,35,22,26,61,27,46,52,32};再将数值序列DBF,按照如上述具体实施方式中一种中英文字符串的加密方法步骤(5)中所示数值与字符的转换运算,得到字符序列C,即为该段中英文字符串的加密密文为“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”,其中数值序列DBF的长度为字符序列C的长度为
按照上述具体实施方式中一种中英文字符串的解密方法,步骤如下:
(1)将某段待解密的中英文字符串密文 逐个字符按照如上述具体实施方式中一种中英文字符串的解密方法步骤(1)中所示字符与数值的转换运算,得到数值序列R={61,56,47,3,16,52,50,15,12,35,22,17,41,34,56,42,47,29,58,61,59,1,57,7,59,28,57,23,39,19,51,37,52,49,39,22,53,29,10,63,61,37,46,47,35,9,46,40,57,21,35,22,26,61,27,46,52,32},然后将数值序列R逐个元素转换成6bits的二进制数据,得到二进制位序列RB,再将二进制位序列RB中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RBF{1},RBF{2},...,RBF{i},...RBF{m},并将分组后的二进制位序列RBF{i}进行组合,得到二进制位序列RF={1,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,1,1,0,0,1,0,0,0,1,1,1,1,0,0,1,1,0,0,1,0,0,0,1,1,0,1,0,1,1,0,0,1,0,0,0,1,1,0,1,0,0,1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,1,0,1,0,1,0,1,1,1,1,0,1,1,1,0,1,1,1,1,0,1,0,1,1,1,1,0,1,1,1,1,0,1,1,0,0,0,0,0,1,1,1,1,0,0,1,0,0,0,1,1,1,1,1,1,0,1,1,0,1,1,1,0,0,1,1,1,0,0,1,0,1,0,1,1,1,1,0,0,1,1,1,0,1,0,0,1,1,1,1,0,0,1,1,1,0,0,1,0,1,1,1,0,1,0,0,1,1,0,0,0,1,1,0,0,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,0,1,1,1,0,1,0,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,1,0,1,1,0,1,1,1,0,1,0,1,1,1,1,1,0,0,0,1,1,0,0,1,0,0,1,1,0,1,1,1,0,1,0,1,0,0,0,1,1,1,0,0,1,0,1,0,1,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,1,0,1,0,1,1,1,1,0,1,0,1,1,0,1,1,1,0,1,1,1,0,1,1,0,1,0,0,1,0},其中该段待解密的中英文字符串的长度为数值序列R的长度为二进制位序列RB的长度为6×58=348,二进制位序列RF的长度为8×43=344;
(2)首先利用外部加密密钥计算得到倾斜帐篷混沌映射的初值参数 和取样间隔利用初值和参数根据上述具体实施方式中一种中英文字符串的解密方法步骤(2)中公式所示的倾斜帐篷混沌映射进行迭代,得到混沌序列从中每隔38个元素取1个,从而形成长度为344的混沌序列
(3)首先将二进制位序列RF中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RF1{1},RF1{2},...,RF1{i},...RF1{m},然后令将每一个二进制位分组序列RF1{i}依次进行上述具体实施方式中一种中英文字符串的解密方法步骤(3)中所示的循环反移位、逆向翻转操作,从而得到逆向反移位后的二进制位序列RC={1,1,0,1,0,0,1,0,1,1,0,1,1,1,0,1,1,0,1,1,0,1,0,1,0,1,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,0,0,0,1,1,0,1,0,1,0,0,1,1,1,0,0,1,0,1,0,1,0,0,1,1,1,0,1,1,0,0,0,0,1,0,0,1,1,1,1,1,1,0,1,0,1,0,1,1,0,1,1,0,1,1,1,1,1,0,1,1,0,1,1,1,1,1,0,1,1,0,1,0,0,1,0,1,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,1,1,0,0,1,1,0,0,0,1,1,1,1,0,0,1,0,1,1,0,0,1,1,1,1,0,1,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,0,1,0,1,0,1,1,1,1,0,1,1,1,0,0,1,0,1,1,0,1,1,1,0,0,1,0,1,1,1,0,0,0,0,1,1,1,1,0,0,0,1,1,0,1,1,1,0,1,1,0,1,1,1,1,1,1,0,1,1,1,1,0,0,1,1,1,1,0,1,1,0,1,0,0,0,1,0,1,0,1,0,0,0,1,1,1,1,0,0,1,0,1,0,1,0,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,0,0,1,1,0,0,0,1,0,0,0,1,1,1,1,1,0,0,0,1,1,0,0,0,1,0,1,1,0,0,0,1,0,0,0,0,1,1,1,1,1,1,0,1,0,0,0,1,1,0,1,1,1,1,1};
(4)首先将二进制位序列RC中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RC1{1},RC1{2},...,RC1{i},...RC1{m},然后令将每一个二进制位分组序列RC1{i}依次进行上述具体实施方式中一种中英文字符串的加密方法步骤(3)中所示的循环反移位操作,从而得到正向反移位后的二进制位序列RP={1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,0,0,0,0,1,1,0,1,0,0,1,1,1,0,1,0,0,0,1,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1,0,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,0,1,0,0,1,0,1,0,1,1,1,0,1,0,1,1,0,1,0,1,1,1,0,0,0,1,0,0,1,0,1,1,1,1,0,0,1,1,0,1,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,1,1,1,0,0,1,0,1,1,1,0,1,0,1,1,0,0,1,1,0,1,1,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,1,1,1,1,0,1,1,1,0,0,1,0,1,1,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,1,0,1,1,1,1,0,1,0,1,0,0,0,1,0,1,0,0,0,1,1,1,0,1,0,1,1,0,0,0,0,1,1,0,0,0,1,0,0,1,0,1,0,1,1,0,0,1,1,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,1,0,0,1,0,1,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,1,0,1,0,0,0,1,1,1,0,1,1,1,1,1,1};
(5)将二进制位序列RP={RP1,RP2,...,RP8×m},按照如上述具体实施方式中一种中英文字符串的解密方法步骤(5)中所示二进制位与字符的转换运算,进行二进制位与字符的转换,得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串为“一种中英文字符串的加密和解密方法,1+1>2吗?”。
实施例2
按照上述一种中英文字符串的加密方法,某段待加密中英文字符串为“一种中英文字符串的加密和解密方法,1+1>2吗?”,其加密步骤与具体实施例1相似,仅加密密钥发生细微变化:α=0.12345000000001,或β=0.54321000000001,中英文字符串加密结果如表1所示。由表1可知,加密密钥的细微变化会引起中英文字符串加密密文发生很大的变化,由此可见本专利所提一种中英文字符串的加密方法对加密密钥具有敏感性。
表1外部加密密钥发生微变时,中英文字符串加密结果
实施例3
按上述一种中英文字符串的加密方法,其加密步骤与具体实施例1相似,仅某段待加密中英文字符串(“一种中英文字符串的加密和解密方法,1+1>2吗?”)发生细微变化:“二种中英文字符串的加密和解密方法,1+1>2吗?”;或“一种中英文字俯串的加密和解密方法,1+1>2吗?”;或“一种中英文字符串的加蜜和解密方法,1+1>2吗?”;或“一种中英文字符串的加密及解密方法,1+1>2吗?”;或“一种中英文字符串的加密和解密方法,1+1<2吗?”;或“一种中英文字符串的加密和解密方法,1+1>2吗。”,中英文字符串加密结果如表2所示。由表2可见:待加密中英文字符串平文信息的细微变化会引起加密密文的“面目全非”,由此可见本专利所提一种中英文字符串加密方法对待加密中英文字符串的平文信息具有敏感性。
表2待加密字符串发生微变时,字符串加密结果
由上述具体实施例2、3分析可知,本专利所提一种中英文字符串加密方法所生成的中英文字符串密文不仅与加密密钥密切相关,而且依赖于待加密中英文字符串平文信息,因此本专利所提一种中英文字符串加密方法可抵抗已知/选择明文攻击,具有很强的安全性。
实施例4
按照上述一种中英文字符串的解密方法,某段待解密中英文密文为“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”,一种中英文字符串的解密步骤与具体实施例1相似,仅解密密钥发生细微变化:或中英文字符串密文解密结果如表3所示。由表3可知,解密密钥的细微变化会引起密文解密结果发生很大的变化,恢复出的中英文字符串将是无用信息,由此可见本专利所提一种中英文字符串的解密方法对解密密钥具有敏感性。
表3外部解密密钥发生微变时,密文解密结果
实施例5
按照上述一种中英文字符串的解密方法,其解密步骤与具体实施例1相似,仅某段待解密中英文字符串密文(“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”)发生细微变化:“证悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”;或“疋悱霓婀劳使萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”;或“疋悱霓婀劳驶萏煸闱炫铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”;或“疋悱霓婀劳驶萏煸闱铉铽肀锲哎劢缦枸劾榍鹃裣赓壮庖砜桌午县枋”;或“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃捡赓壮庖砜桌午县枋”;或“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖枫桌午县枋”;或“疋悱霓婀劳驶萏煸闱铉铽肀锲砹劢缦枸劾榍鹃裣赓壮庖砜桌午县防”,中英文字符串密文解密结果如表4所示。由表4可知,待解密中英文字符串密文的细微变化会引起密文解密结果发生很大的变化,难以恢复出原始的中英文字符串,由此可见本专利所提一种中英文字符串解密方法可抵抗唯密文攻击。
表4待解密中英文字符串密文发生微变时,密文解密结果
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权力要求所限定的范围为准。
Claims (6)
1.一种中英文字符串的加密方法,其特征在于,包括如下几个步骤:
(1)转码:将某段中英文字符串逐个字符转换为数值型数据,得到数值序列P={P1,P2,...,Pi,....,Pm},再将数值序列P逐个元素转换成8bits的二进制数据,得到二进制位序列B={B1,B2,...,Bi,....,B8×m},其中该段中英文字符串的长度为L,数值序列P的长度为m,二进制位序列B的长度为8×m,且L≤m≤2×L;
(2)混沌序列产生:
首先利用外部加密密钥(α、β),按照如下公式(1)计算分别得到倾斜帐篷混沌映射的初值x1、参数μ和取样间隔M,
其中,PB_1为二进制位序列B中元素为二进制‘1’的总个数,PB_0为二进制位序列B中元素为二进制‘0’的总个数,
然后利用初值x1和参数μ,对如下公式(2)所示的倾斜帐篷混沌映射进行迭代,k表示迭代次数,k=1,2,...,xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X={x1,x2,...},从中每隔M个元素取1个,从而形成长度为8×m的混沌序列Y={Y1,Y2,...,Y8×m};
(3)二进制位序列B的正向移位:
首先将二进制位序列B中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为BF{1},BF{2},...,BF{i},...BF{m},
然后令dircshift1=0、numshift1=0,将每一个二进制位分组序列BF{i},其中i=1,2,3,...,m,依次进行如下操作:
①利用混沌信号Yi,按照如下公式(3)计算分别得到移位方向direction_shift1、移位个数k_shift1,
②当direction_shift1=0时,将二进制位分组序列BF{i}中元素循环左移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
当direction_shift1=1时,将二进制位分组序列BF{i}中元素循环右移k_shift1位,得到正向移位后的二进制位分组序列BF1{i},
③利用正向移位后的二进制位分组序列BF1{i},对dircshift1和numshift1按照如下公式(4)进行计算,
然后令dircshift2=0、numshift2=0,将每一个二进制位分组序列BF2{i},其中i=1,2,3,...,m,依次进行如下操作,
①利用混沌信号Yi,按照如下公式(5)计算分别得到移位方向direction_shift2、移位个数k_shift2,
②当direction_shift2=0时,将二进制位分组序列BF2{i}中元素循环左移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
当direction_shift2=1时,将二进制位分组序列BF2{i}中元素循环右移k_shift2位,得到逆向移位后的二进制位分组序列BF3{i},
③利用逆向移位后的二进制位分组序列BF3{i},对dircshift2和numshift2按照如下公式(6)进行计算,
2.根据权利要求1所述的一种中英文字符串的加密方法,其特征在于:步骤(1)中所述的将某段中英文字符串逐个字符转换为数值型数据,其中某段中英文字符串包括,GB2312字符集中的中文标点符号、GB2312字符集中双字节编码的6763个汉字,以及可显示ASCII码字符;逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],从而得到数值序列P={P1,P2,...,Pi,....,Pm};将数值序列P逐个元素转换成8bits的二进制数据,是指采用dec2bin(·,8)函数,用二进制数据[B8l-7,B8l-6,B8l-5,B8l-4,B8l-3,B8l-2,B8l-1,B8l]表示,l=1,2,...,m,从而得到二进制位序列B={B1,B2,...,Bi,....,B8×m}。
4.一种中英文字符串的解密方法,其特征在于,包括如下几个步骤:
(1)转码:首先将某段待解密的中英文字符串密文逐个字符转换成数值型数据,得到数值序列然后将数值序列R逐个元素转换成6bits的二进制数据,得到二进制位序列再将二进制位序列RB中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RBF{1},RBF{2},...,RBF{i},...RBF{m},且RBF{i}={RB8×i-7,RB8×i-6,...,RB8×i-1,RB8×i},并将分组后的二进制位序列RBF{i}进行组合,以得到二进制位序列RF={RBF{1},RBF{2},...,RBF{m}}={RF1,RF2,...,RF8×m},其中该段待解密的中英文字符串的长度为数值序列R的长度为二进制位序列RB的长度为二进制位序列RF的长度为8×m,且
(2)混沌序列产生:
其中,RF_1为二进制位序列RF中元素为二进制‘1’的总个数,RF_0为二进制位序列RF中元素为二进制‘0’的总个数,
(3)二进制位序列RF的逆向反移位:
首先将二进制位序列RF中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RF1{1},RF1{2},...,RF1{i},...RF1{m},
最后将反移位后的二进制位分组序列RF2{i}进行正向组合得到{RF2{1},RF2{2},...,RF2{m}},并进行逆向翻转,得到逆向反移位后的二进制位序列RC={RC1,RC2,...,RC8×m};
(4)二进制位序列RC的正向反移位:
首先将二进制位序列RC中元素从头到尾依次正向以8个元素为单位进行分组,得到分组后的二进制位序列,表示为RC1{1},RC1{2},...,RC1{i},...RC1{m},
最后将反移位后的二进制位分组序列RC2{i}进行正向组合,即{RC2{1},RC2{2},...,RC2{m}},得到正向反移位后的二进制位序列RP={RP1,RP2,...,RP8×m};
(5)转码:将二进制位序列RP={RP1,RP2,...,RP8×m},进行二进制位与字符的转换,得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串,其中字符序列RR的长度为L。
5.根据权利要求4所述的一种中英文字符串的解密方法,其特征在于:步骤(1)中所述的将某段待解密的中英文字符串密文逐个字符转换成数值型数据,其转换关系是指采用unicode2native(·)函数,将某段待解密的中英文字符串密文中的单个中文字符转换为区位码数值数据,表示为[区数值数据,位数值数据],同时将区数值数据、码数值数据分别减去180、170,并添加到数值序列R中,即R=[R,[区数值数据-180,位数值数据-170]],或将某段待解密的中英文字符串密文中的可显示ASCII码字符转换为ASCII码数值数据,表示为[ASCII码数值数据],同时将ASCII码数值数据减去40,并添加到数值序列R中,即R=[R,ASCII码数值数据-40],从而得到数值序列步骤(1)中所述的将数值序列R逐个元素转换成6bits的二进制数据,其转换关系是指将采用dec2bin(·,6)函数,将数值型数据转换为6bits的二进制位,并添加到二进制位序列RB中,即RB=[RB,dec2bin(Ri,6)],从而得到二进制位序列
6.根据权利要求4所述的一种中英文字符串的解密方法,其特征在于:步骤(5)中所述的将二进制位序列RP={RP1,RP2,...,RP8×m},进行二进制位与字符的转换,其转换关系表述如下:
设定一个空字符序列RR,令标志位flag=0,将二进制位序列RP中8个元素划分为一组,即RP1{k}={RP8×k-7,RP8×k-6,...,RP8×k}(其中k=1,2,...,m),并将RP1{k}分别转换为数值型数据,即RDk=bin2dec(RP1{k}),将数值型数据RDk依次进行如下运算,
首先判断RDk的大小,
如果RDk<128,则利用char(·)函数将数值型数据RDk转换为单个英文字符,并添加到字符序列RR中,即RR=[RR,char(RDk)],并令标志位flag=0;
否则如果RDk>128,则继续判定RDk+1(或RDk-1)以及标志位flag的大小,
如果RDk>128,且RDk+1>128,且flag=0,则利用native2unicode(·)函数将数值型数据[RDk,RDk+1]转换为单个中文字符,并添加到字符序列RR中,即RR=[RR,native2unicode([RDk,RDk+1])],并令标志位flag=1;
否则如果RDk>128,且RDk+1<128,且flag=0,则将英文字符‘@’添加到字符序列RR中,即RR=[RR,'@'],并令标志位flag=1;
否则如果RDk>128,且RDk-1>128,且flag=1,则令标志位flag=0,
从而得到字符序列RR,即为该段待解密中英文字符串解密后恢复的中英文字符串,其中字符序列RR的长度为L。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910874188.5A CN110650006B (zh) | 2019-09-17 | 2019-09-17 | 一种中英文字符串的加密和解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910874188.5A CN110650006B (zh) | 2019-09-17 | 2019-09-17 | 一种中英文字符串的加密和解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110650006A CN110650006A (zh) | 2020-01-03 |
CN110650006B true CN110650006B (zh) | 2021-11-12 |
Family
ID=68991923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910874188.5A Active CN110650006B (zh) | 2019-09-17 | 2019-09-17 | 一种中英文字符串的加密和解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110650006B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115632756B (zh) * | 2022-08-18 | 2023-08-04 | 重庆市地理信息和遥感应用中心 | 基于动态循环位移的地理数据加密系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579693A (zh) * | 2015-02-09 | 2015-04-29 | 广西师范大学 | 基于高次二阶logistic映射的嵌入式加密方法及装置 |
CN105975869A (zh) * | 2016-02-05 | 2016-09-28 | 四川长虹电器股份有限公司 | 基于显著性区域的自适应选择加密方法 |
CN106056527A (zh) * | 2016-09-05 | 2016-10-26 | 中山大学 | 基于混合型平衡二阶可逆二维细胞自动机图像加密方法 |
WO2018153317A1 (zh) * | 2017-02-24 | 2018-08-30 | 陈伟 | 一种基于混沌数谱的数字化混沌密码方法 |
CN109981245A (zh) * | 2019-03-21 | 2019-07-05 | 江苏工程职业技术学院 | 一种字符串的加密、解密方法 |
-
2019
- 2019-09-17 CN CN201910874188.5A patent/CN110650006B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579693A (zh) * | 2015-02-09 | 2015-04-29 | 广西师范大学 | 基于高次二阶logistic映射的嵌入式加密方法及装置 |
CN105975869A (zh) * | 2016-02-05 | 2016-09-28 | 四川长虹电器股份有限公司 | 基于显著性区域的自适应选择加密方法 |
CN106056527A (zh) * | 2016-09-05 | 2016-10-26 | 中山大学 | 基于混合型平衡二阶可逆二维细胞自动机图像加密方法 |
WO2018153317A1 (zh) * | 2017-02-24 | 2018-08-30 | 陈伟 | 一种基于混沌数谱的数字化混沌密码方法 |
CN109981245A (zh) * | 2019-03-21 | 2019-07-05 | 江苏工程职业技术学院 | 一种字符串的加密、解密方法 |
Non-Patent Citations (1)
Title |
---|
一种基于双向扩散的混沌图像加密算法研究;吴新华等;《南通纺织职业技术学院学报》;20140625;第14卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110650006A (zh) | 2020-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110299989B (zh) | 一种中英文字符串的加密、解密方法 | |
CN110650005B (zh) | 一种中英文字符串加密方法 | |
CN109995504B (zh) | 一种字符串的加密和解密方法 | |
CN116032474B (zh) | 一种基于大数据计算机网络安全防护系统 | |
CN101894244B (zh) | 电子资料加密系统及方法 | |
CN109981249B (zh) | 基于拉链式动态散列和nlfsr的加密解密方法及装置 | |
CN102752108B (zh) | 魔方加密和解密方法 | |
CN116155620B (zh) | 一种刷卡器交易数据安全传输方法 | |
CN114553391A (zh) | 一种基于分层移位的字符串加密方法 | |
CN110650006B (zh) | 一种中英文字符串的加密和解密方法 | |
Xian et al. | Fractal sorting vector-based least significant bit chaotic permutation for image encryption | |
CN114707165A (zh) | 一种基于分层置乱的字符串加密方法 | |
CN114553393A (zh) | 一种基于分层移位的汉字加密方法 | |
CN114741712A (zh) | 一种基于分层置乱的汉字加密方法 | |
CN110287713B (zh) | 一种中文字符串的加密方法和解密方法 | |
KR20010034058A (ko) | 이진 데이터 블록의 암호 변환 방법 | |
CN114745096A (zh) | 一种基于分层双向扩散的字符串加密方法 | |
CN108777614B (zh) | 一种加解密装置和基于通用散列函数的加解密方法 | |
KR101076747B1 (ko) | 스트림 모듈의 계층적 트리 구조를 통한 무작위 접근이 가능한 암호화/복호화 방법 및 장치 | |
Taher et al. | An efficient hybrid technique for message encryption using Caesar cipher and deoxyribonucleic acid steganography | |
Fasila et al. | A multiphase cryptosystem with secure key encapsulation scheme based on principles of DNA computing | |
Mendrofa et al. | Manipulation Vigenere Cipher Algorithm with Vernam Cipher through Matrix Table Rotation | |
Al-Farraji | DNA Cryptographic System Utilizing Random Permutation | |
CN114722409A (zh) | 一种基于分层双向扩散的字符串解密方法 | |
CN114726499A (zh) | 一种基于分层置乱的字符串解密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |