CN109981246A - 一种字符串的加密方法和解密方法 - Google Patents
一种字符串的加密方法和解密方法 Download PDFInfo
- Publication number
- CN109981246A CN109981246A CN201910215951.3A CN201910215951A CN109981246A CN 109981246 A CN109981246 A CN 109981246A CN 201910215951 A CN201910215951 A CN 201910215951A CN 109981246 A CN109981246 A CN 109981246A
- Authority
- CN
- China
- Prior art keywords
- sequence
- values
- character
- character string
- low level
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种字符串的加密方法和解密方法,包括如下步骤:将某段字符串转化成高位数值序列、低位数值序列;然后利用混沌系统产生混沌信号,根据混沌序列排序前、后的位置变化置乱规则,对高位数值序列进行置乱;再利用混沌系统产生混沌信号,对低位数值序列进行正向、逆向扩散加密;最后进行数值与字符的转换,得到该段字符串的加密密文,通过类似的方法可将密文解密恢复出原始的某段字符串。本发明采用混沌序列的置乱规则,对字符串转换而成的高位数值序列进行置乱或者反置乱,同时利用混沌序列的密码特性,对字符串转换而成的低位数值序列进行双向扩散加密或者解密,具有良好的抵抗已知/选择明文攻击、唯密文攻击的性能,保证了字符串加密与解密的安全性和可行性。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种字符串的加密方法和解密方法。
背景技术
随着Internet技术与多媒体技术的飞速发展,数据通信逐渐成为人们进行信息交流的重要手段。由Internet网传输数据方便快捷,不受地域限制,但由于某些数据的特殊性,即发送双方都不希望网络上所传输的数据被未授权者所浏览或处理。这些信息不但涉及个人隐私,有的涉及到国家安全,而且与国家的政治、军事和外交等也有重大的关系,因而数据的安全与保密显得越来越重要。在这些要求数据保密的特殊领域或者当数据所有者需要保护自身的利益时,就需要可靠的数据加密技术。
传统的字符串加密通常采用DES、RAS加密方法进行,加密运算相对比较复杂,随着网络通讯技术的发展,对于字符串加密的安全性、便捷性需求逐渐增加,采用一种安全可靠的密码技术进行字符数据加密已经迫在眉睫。混沌密码技术是一种利用混沌信号对所需对象进行加密的新技术。混沌系统对初始条件和结构参数具有敏感依赖性,可以提供数量众多的非相关、类随机而又确定可再生的混沌序列。由于混沌加密具有连续宽带谱、冲激式的尖锐自相关特性,混沌在数字信息加密和保密通信等领域中所具有的巨大应用前景已引起了人们广泛的研究兴趣。混沌在密码学领域的研究起源于80年代末期,由英国数学家Matthews首先提出一种基于变形Logistic映射作为序列密码方案。自从Matthews的混沌密码提出以来,混沌加密开始受到了来自不同领域研究者的关注。
发明内容
发明目的:本发明的目的是为了解决现有技术中的不足,提供一种字符串的加密方法和解密方法,利用混沌系统所产生混沌序列排序前、后的位置变化规则,将某段字符串转化成的高位数值序列进行置乱,同时利用混沌系统所产生混沌序列的密码特性,对某段字符串转换而成的低位数值序列进行双向扩散加密,进而高、低位数值序列转换以生成密文,从而保证了字符串加密与解密的安全性和可行性。
技术方案:本发明所述的一种字符串的加密方法,包括如下几个步骤:
(1)转码:将某段字符串逐个字符转换为数值型数据,得到高位数值序列P1={P11,P21,...,Pi1,....,PL1}和低位数值序列P2={P12,P22,...,Pi2,....,PL2},其中数值序列P1、P2的长度与该段字符串的长度一致,记为L;
(2)高位数值序列的置乱:
首先利用外部加密密钥(α、β),按照如下所示公式(1)分别计算得到混沌系统的初始迭代步数m1和抽取间隔n1,
然后令初值x1=α和参数μ=β,对如下公式(2)所示的倾斜帐篷混沌系统进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X,从第m1个元素开始每隔n1个元素取1个,从而形成长度为L的混沌序列Y,
最后将混沌序列Y按升序排序,根据序列Y排序前、后的位置变化置乱规则,对高位数值序列P1={P11,P21,...,Pi1,....,PL1}进行置乱,得到置乱后的高位数值序列
(3)低位数值序列的双向扩散加密:
首先,进行低位数值序列的正向扩散加密
利用外部加密密钥(α、β),按照如下所示公式(3)计算得到混沌系统的初始迭代步数m2,
从混沌序列X中抽取第m2个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数μ1,即μ1=β,
对低位数值序列P2={P12,P22,...,Pi2,....,PL2}中每个元素Pi2,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ1,对如公式(2)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(4)进行整数化处理,得到混沌信号Y1i,
②利用混沌信号Y1i对数据Pi2按照如下公式(5)进行正向扩散加密,得到正向扩散加密密文C1i,
其中,Y10和C10为正向扩散加密密钥,
③根据正向扩散加密密文C1i,以及C1i-1和Y1i-1,对倾斜帐篷混沌系统的参数μ1按照如下公式(6)进行调整,
从而得到正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L};
然后,进行低位数值序列的逆向扩散加密
利用外部加密密钥(α、β),按照如下所示公式(7)计算得到混沌系统的初始迭代步数m3,
从混沌序列X中抽取第m3个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数μ2,即μ2=β,
对正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L}中每个元素C1i,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ2,对如公式(2)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(8)进行整数化处理,得到混沌信号Y2i,
②利用混沌信号Y2i对数据C1i按照如下公式(9)进行逆向扩散加密,得到双向扩散加密密文C2i,
其中,Y20和C20为逆向扩散加密密钥,
③根据双向扩散加密密文C2i,以及C2i-1和Y2i-1,对倾斜帐篷混沌系统的参数μ2按照如下公式(10)进行调整,
从而得到双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L};
(4)转码:将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2,进行数值与字符的转换,得到字符序列C,即为该段字符串的加密密文,其中序列C的长度为且
进一步的,步骤(1)中所述的将某段字符串逐个字符转换为数值型数据,其中某段字符串包括,除空格以外的可显示ASCII码字符,以及GB2312字符集中双字节编码的6763个汉字;逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可以用[Pi1,Pi2]表示,相应的数据组合得到高位数值序列P1={P11,P21,...,Pi1,....,PL1}和低位数值序列P2={P12,P22,...,Pi2,....,PL2}。
进一步的,步骤(4)中所述的将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2,进行数值与字符的转换,其转换关系表述如下:
设定一个空字符序列C,将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L}中各对应元素依次进行如下运算,
如果则
首先判断,如果且(C2i+161)≥250,那么在字符序列C中添加1个空格,即C=[C,”],并设
然后利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列C中,即
如果则
直接利用char(·)函数将数值数据(C2i+33)转换为单个ASCII码字符,并添加到字符序列C中,即C=[C,char(C2i+33)]。
本发明还公开了一种字符串的解密方法,其特征在于,包括如下几个步骤:
(1)转码:将某段待解密字符串密文逐个字符转换成数值型数据,得到高位数值序列和低位数值序列其中数值序列R1、R2的长度为某段待解密字符串密文的长度为
(2)高位数值序列的反置乱:
首先利用外部解密密钥按照如下所示公式(11)分别计算得到混沌系统的初始迭代步数和抽取间隔
然后令初值和参数对如下公式(12)所示的倾斜帐篷混沌系统进行迭代,k表示迭代次数(k=1,2,...),表示第k次迭代得到的混沌信号,
得到混沌序列从第个元素开始每隔个元素取1个,从而形成长度为的混沌序列
最后将混沌序列按升序排序,根据序列排序前、后的位置变化置乱规则,对高位数值序列进行反置乱,得到反置乱后的高位数值序列
(3)低位数值序列的双向扩散解密:
首先,进行低位数值序列的逆向扩散解密
利用外部解密密钥按照如下所示公式(13)计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对低位数值序列中每个元素Ri2,其中依次进行如下操作:
①由初值和参数对如公式(12)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(14)进行整数化处理,得到混沌信号
②利用混沌信号对数据Ri2按照如下公式(15)进行逆向扩散解密,得到逆向扩散解密数据
其中,和R′02为逆向扩散解密密钥,
③根据低位数值序列中元素Ri2、Ri-12对应的数值R′i2、R′i-12,以及对倾斜帐篷混沌系统的参数按照如下公式(16)进行调整,
从而得到逆向扩散解密后的低位数值序列
然后,进行低位数值序列的正向扩散解密
利用外部解密密钥按照如下所示公式(17)计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对逆向扩散解密后的低位数值序列中每个元素D1i,其中依次进行如下操作:
①由初值和参数对如公式(12)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(18)进行整数化处理,得到混沌信号
②利用混沌信号对数据D1i按照如下公式(19)进行正向扩散解密,得到双向扩散解密数据D2i,
其中,和D10为正向扩散解密密钥,
③根据正向扩散解密数据D1i,以及D1i-1和对倾斜帐篷混沌系统的参数按照如下公式(20)进行调整,
从而得到双向扩散解密后的低位数值序列
(4)转码:将反置乱后的高位数值序列和双向扩散解密后的低位数值序列D2,进行数值与字符的转换,得到字符序列PP,即为该段待解密字符串解密后恢复的字符串,其中字符序列PP的长度为
进一步的,步骤(1)中所述的将某段待解密字符串密文逐个转换成数值型数据,得到高位数值序列和低位数值序列其转换关系表述如下:
首先将某段待解密字符串密文中逐个字符转换为数值数据,即采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可用[Ri1,Ri2]表示;
然后将数值型数据[Ri1,Ri2]对应组合得到高位数值序列和低位数值序列
接着逐个检查低位数值序列R2中是否有Ri2=32的元素,如果是,则将对应高位数值序列R1中后一元素Ri+11数值加1,并删除该数值为32的元素Ri2和其对应高位数值序列R1中的元素Ri1;
最后得到高位数值序列和低位数值序列
进一步的,步骤(4)中所述的将反置乱后的高位数值序列和双向扩散解密后的低位数值序列D2,进行数值与字符的转换,其转换关系表述如下:
设定一个空字符串PP,将反置乱后的高位数值序列和双向扩散解密后的低位数值序列中对应元素依次进行如下运算,
如果则
如果且D2i≥250,那么在字符序列PP中添加1个空格,即PP=[PP,”];
否则利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列PP中,即
如果则
直接利用char(·)函数将数值数据(D2i)转换为单个ASCII码字符,并添加到字符序列PP中,即PP=[PP,char(D2i)]。
有益效果:本发明利用混沌系统所产生混沌序列排序前、后的位置变化规则,将某段字符串转化成的高位数值序列进行置乱,同时利用混沌系统所产生混沌序列的密码特性,对某段字符串转换而成的低位数值序列进行双向扩散加密,进而高、低位数值序列转换以生成密文,从而保证了字符串加密与解密的安全性和可行性。
附图说明
图1为本发明的一种字符串的加密、解密流程示意图。
具体实施方式
如图1所示的一种字符串的加密方法,包括如下几个步骤:
(1)转码:将某段字符串逐个字符转换为数值型数据,其中字符串包括,除空格以外的可显示ASCII码字符,以及GB2312字符集中双字节编码的6763个汉字;逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可以用[Pi1,Pi2]表示,相应的数据组合得到高位数值序列P1={P11,P21,...,Pi1,....,PL1}和低位数值序列P2={P12,P22,...,Pi2,....,PL2},数值序列P1、P2的长度与该段字符串的长度一致,记为L,
(2)高位数值序列的置乱:
首先利用外部加密密钥(α、β),按照如下公式分别计算得到混沌系统的初始迭代步数(m1)和抽取间隔(n1),
然后令初值x1=α和参数μ=β,对倾斜帐篷混沌系统(公式如下)进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X,从第m1个元素开始每隔n1个元素取1个,从而形成长度为L的混沌序列Y,
最后将混沌序列Y按升序排序,根据序列Y排序前、后的位置变化置乱规则,对高位数值序列P1={P11,P21,...,Pi1,....,PL1}进行置乱,得到置乱后的高位数值序列
(3)低位数值序列的双向扩散加密:
首先,进行低位数值序列的正向扩散加密
利用外部加密密钥(α、β),按照如下公式计算得到混沌系统的初始迭代步数(m2),
从混沌序列X中抽取第m2个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数(μ1),即μ1=β,
对低位数值序列P2={P12,P22,...,Pi2,....,PL2}中每个元素Pi2,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ1,对倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号进行如下整数化处理,得到混沌信号Y1i,
②利用混沌信号Y1i对数据Pi2进行如下正向扩散加密,得到正向扩散加密密文C1i,
其中,Y10和C10为正向扩散加密密钥,
③根据正向扩散加密密文C1i,以及C1i-1和Y1i-1,对倾斜帐篷混沌系统的参数μ1进行如下调整,
从而得到正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L};
然后,进行低位数值序列的逆向扩散加密
利用外部加密密钥(α、β),按照如下公式计算得到混沌系统的初始迭代步数(m3),
从混沌序列X中抽取第m3个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数(μ2),即μ2=β,
对正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L}中每个元素C1i,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ2,对倾斜帐篷混沌系统(公式如下)进行单次迭代,得到混沌信号同时对混沌信号进行如下整数化处理,得到混沌信号Y2i,
②利用混沌信号Y2i对数据C1i进行如下逆向扩散加密,得到双向扩散加密密文C2i,
其中,Y20和C20为逆向扩散加密密钥,
③根据双向扩散加密密文C2i,以及C2i-1和Y2i-1,对倾斜帐篷混沌系统的参数μ2进行如下调整,
从而得到双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L};
(4)转码:设定一个空字符序列C,将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L}中各对应元素依次进行如下运算,
如果则
首先判断,如果且(C2i+161)≥250,那么在字符序列C中添加1个空格,即C=[C,”],并设
然后利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列C中,即
如果则
直接利用char(·)函数将数值数据(C2i+33)转换为单个ASCII码字符,并添加到字符序列C中,即C=[C,char(C2i+33)]
从而得到字符序列C,即为该段字符串的加密密文,其中序列C的长度为且
如图1所示,一种字符串的解密方法,包括如下几个步骤:
(1)转码:将某段待解密字符串密文逐个字符转换成数值型数据,得到高位数值序列和低位数值序列具体转换关系表述如下:
首先将某段待解密字符串密文中逐个字符转换为数值数据,即采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可用[Ri1,Ri2]表示;
然后将数值型数据[Ri1,Ri2]对应组合得到高位数值序列和低位数值序列
接着逐个检查低位数值序列R2中是否有Ri2=32的元素,如果是,则将对应高位数值序列R1中后一元素Ri+11数值加1,并删除该数值为32的元素Ri2和其对应高位数值序列R1中的元素Ri1;
最后得到高位数值序列和低位数值序列其中数值序列R1、R2的长度为某段待解密字符串密文的长度为
(2)高位数值序列的反置乱:
首先利用外部解密密钥按照如下所示公式分别计算得到混沌系统的初始迭代步数和抽取间隔
然后令初值和参数对倾斜帐篷混沌系统(公式如下)进行迭代,k表示迭代次数(k=1,2,...),表示第k次迭代得到的混沌信号,
得到混沌序列从第个元素开始每隔个元素取1个,从而形成长度为的混沌序列
最后将混沌序列按升序排序,根据序列排序前、后的位置变化置乱规则,对高位数值序列进行反置乱,得到反置乱后的高位数值序列
(3)低位数值序列的双向扩散解密:
首先,进行低位数值序列的逆向扩散解密
利用外部解密密钥按照如下公式计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对低位数值序列中每个元素Ri2,其中依次进行如下操作:
①由初值和参数对倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号进行如下整数化处理,得到混沌信号
②利用混沌信号对数据Ri2按照如下公式(15)进行逆向扩散解密,得到逆向扩散解密数据
其中,和R0′2为逆向扩散解密密钥,
③根据低位数值序列中元素Ri2、Ri-12对应的数值R′i2、R′i-12,以及对倾斜帐篷混沌系统的参数按照如下公式(16)进行调整,
从而得到逆向扩散解密后的低位数值序列
然后,进行低位数值序列的正向扩散解密
利用外部解密密钥按照如下公式计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对逆向扩散解密后的低位数值序列中每个元素D1i,其中依次进行如下操作:
①由初值和参数对如公式(12)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号进行如下整数化处理,得到混沌信号
②利用混沌信号对数据D1i进行如下正向扩散解密,得到双向扩散解密数据D2i,
其中,和D10为正向扩散解密密钥,
③根据正向扩散解密数据D1i,以及D1i-1和对倾斜帐篷混沌系统的参数进行如下调整,
从而得到双向扩散解密后的低位数值序列
(4)转码:设定一个空字符串PP,将反置乱后的高位数值序列和双向扩散解密后的低位数值序列中对应元素依次进行数值与字符的转换,具体转换关系表述如下,
如果则
如果且D2i≥250,那么在字符序列PP中添加1个空格,即PP=[PP,”];
否则利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列PP中,即
如果则
直接利用char(·)函数将数值数据(D2i)转换为单个ASCII码字符,并添加到字符序列PP中,即PP=[PP,char(D2i)]。
从而得到字符序列PP,即为该段密文解密后恢复的字符串,其中字符序列PP的长度为
下面结合具体的实施例对本发明作进一步说明:
实施例1
按照上述具体实施方式中一种字符串的加密方法,步骤如下:
(1)将某段字符串“字符串加解密111111aaaaaa”逐个字符转换成数值型数据,得到高位数值序列P1={215,183,180,188,189,195,0,0,0,0,0,0,0,0,0,0,0,0}和低位数值序列P2={214,251,174,211,226,220,49,49,49,49,49,49,97,97,97,97,97,97},其中数值序列P1、P2的长度与该段字符串的长度一致,记为L=18;
(2)首先利用外部加密密钥(α=0.12345、β=0.75),根据上述具体实施方式中一种字符串的加密方法步骤(2)中公式进行计算,得到混沌系统的初始迭代步数(m1)和抽取间隔(n1),
m1=513+25=538
n1=9+1=10
然后令初值x1=α=0.12345和参数μ=β=0.75,上述具体实施方式中一种字符串的加密方法步骤(2)中所示的倾斜帐篷混沌系统进行迭代,得到混沌序列X,从第538个元素开始每隔10个元素取1个,从而形成长度为L=18的混沌序列Y={0.722203285427244,0.890875205023236,0.074566505410670,0.027605142635845,0.490204576614745,0.736737938553961,0.706512185278734,0.160908579611954,0.909369772129020,0.010038655637092,0.178263702574469,0.045578446993861,0.809369602110701,0.830644585500888,0.781903572849237,0.654761047957817,0.428568530673860,0.790729026121181},
最后将混沌序列Y按升序排序,根据序列Y排序前、后的位置变化置乱规则{10,4,12,3,8,11,17,5,16,7,1,6,15,18,13,14,2,9},对高位数值序列P1={215,183,180,188,189,195,0,0,0,0,0,0,0,0,0,0,0,0}进行置乱,得到置乱后的高位数值序列
(3)首先,进行低位数值序列的正向扩散加密
利用外部加密密钥(α=0.12345、β=0.75),根据上述具体实施方式中一种字符串的加密方法步骤(3)中公式进行计算,得到混沌系统的初始迭代步数(m2),
m2=432+48=480
从混沌序列X中抽取第480个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数(μ1=0.75),
对低位数值序列P2={P12,P22,...,Pi2,....,P182}={214,251,174,211,226,220,49,49,49,49,49,49,97,97,97,97,97,97}中每个元素Pi2,依次进行上述具体实施方式中一种字符串的加密方法步骤(3)中公式所示的倾斜帐篷混沌系统单次迭代、整数化处理、正向扩散加密和倾斜帐篷混沌系统参数μ1调整等操作,其中取正向扩散加密密钥Y10=46和C10=26,从而得到正向扩散加密后的低位数值序列C1={59,32,0,6,86,62,52,43,12,42,44,26,18,93,34,39,16,71};
然后,进行低位数值序列的逆向扩散加密
利用外部加密密钥(α=0.12345、β=0.75),根据上述具体实施方式中一种字符串的加密方法步骤(3)中公式进行计算,得到混沌系统的初始迭代步数(m3),
m3=543+50=593
从混沌序列X中抽取第593个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数(μ2=0.75),
对低位数值序列C1={C11,C12,...,C1i,....,C118}={59,32,0,6,86,62,52,43,12,42,44,26,18,93,34,39,16,71}中每个元素C1i,依次进行上述具体实施方式中一种字符串的加密方法步骤(3)中公式所示的倾斜帐篷混沌系统单次迭代、整数化处理、逆向扩散加密和倾斜帐篷混沌系统参数μ2调整等操作,其中取逆向扩散加密密钥Y20=56和C20=36,从而得到双向扩散加密后的低位数值序列C2={82,71,64,49,26,63,31,10,61,26,18,6,67,63,33,22,22,3};
(4)将置乱后的高位数值序列 和双向扩散加密后的低位数值序列C2={82,71,64,49,26,63,31,10,61,26,18,6,67,63,33,22,22,3}中各对应元素依次进行数值与字符的转换,从而得到字符串密文C为“s艰a匆;`@将^;壮莽d`B7贩$”。
按照上述具体实施方式中一种字符串的解密方法,步骤如下:
(1)将某段待解密密文“s艰a匆;`@将^;壮莽d`B7贩$”逐个字符转换成数值型数据,得到高位数值序列R1={0,188,0,180,0,0,0,189,0,0,215,195,0,0,0,0,183,0}和低位数值序列R2={115,232,97,210,59,96,64,171,94,59,179,167,100,96,66,55,183,36};
(2)首先利用外部解密密钥根据上述具体实施方式中一种字符串的解密方法步骤(2)中公式进行计算,得到倾斜帐篷混沌系统的初始迭代步数和抽取间隔
然后令初值和参数上述具体实施方式中一种字符串的解密方法步骤(2)中所示的倾斜帐篷混沌系统进行迭代,得到混沌序列从第538个元素开始每隔10个元素取1个,从而形成长度为的混沌序列0.890875205023236,0.074566505410670,0.027605142635845,0.490204576614745,0.736737938553961,0.706512185278734,0.160908579611954,0.909369772129020,0.010038655637092,0.178263702574469,0.045578446993861,0.809369602110701,0.830644585500888,0.781903572849237,0.654761047957817,0.428568530673860,0.790729026121181},
最后将混沌序列按升序排序,根据序列排序前、后的位置变化置乱规则{10,4,12,3,8,11,17,5,16,7,1,6,15,18,13,14,2,9},对高位数值序列R1={0,188,0,180,0,0,0,189,0,0,215,195,0,0,0,0,183,0}进行反置乱,得到反置乱后的高位数值序列
(3)首先,进行低位数值序列的逆向扩散解密
利用外部解密密钥根据上述具体实施方式中一种字符串的解密方法步骤(3)中公式进行计算,计算得到混沌系统的初始迭代步数
从混沌序列中抽取第593个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数
对低位数值序列R2={R12,R22,...,Ri2,....,R182}={115,232,97,210,59,96,64,171,94,59,179,167,100,96,66,55,183,36}中每个元素Ri2,其中i=1,2,3,...,18,依次进行上述具体实施方式中一种字符串的解密方法步骤(3)中公式所示的倾斜帐篷混沌系统单次迭代、整数化处理、逆向扩散解密和倾斜帐篷混沌系统参数调整等操作,其中取逆向扩散解密密钥和R′02=36,从而得到双向扩散解密后的低位数值序列D1={59,32,0,6,86,62,52,43,12,42,44,26,18,93,34,39,16,71};
然后,进行低位数值序列的正向扩散解密
利用外部解密密钥根据上述具体实施方式中一种字符串的解密方法步骤(3)中公式进行计算,得到混沌系统的初始迭代步数
从混沌序列中抽取第480个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数
对逆向扩散解密后的低位数值序列D1={D11,D12,...,D1i,...,D118}={59,32,0,6,86,62,52,43,12,42,44,26,18,93,34,39,16,71}中每个元素D1i,依次进行上述具体实施方式中一种字符串的解密方法步骤(3)中公式所示的倾斜帐篷混沌系统单次迭代、整数化处理、正向扩散解密和倾斜帐篷混沌系统参数调整等操作,其中取正向扩散解密密钥和D10=26,从而得到双向扩散解密后的低位数值序列D2={214,251,174,211,226,220,49,49,49,49,49,49,97,97,97,97,97,97};
(4)将反置乱后的高位数值序列和双向扩散解密后的低位数值序列D2,进行数值与字符的转换,得到字符序列PP,即为该段密文解密后恢复的字符串为“字符串加解密111111aaaaaa”。
实施例2
按照上述一种字符串的加密方法,某段待加密字符串为“字符串加解密111111aaaaaa”,一种字符串的加密步骤与具体实施例1相似,仅加密密钥发生细微变化:α=0.12345000000001;或β=0.75000000000001;或Y10=45;或C10=27;或Y20=55;或C20=37,字符串加密结果如表1所示。由表1可知,加密密钥的细微变化会引起字符串加密密文发生很大的变化,由此可见本专利所提一种字符串的加密方法对加密密钥具有敏感性。
表1外部加密密钥发生微变时,字符串加密结果
实施例3
按上述一种字符串的加密方法,其加密步骤与具体实施例1相似,仅某段待加密字符串(“字符串加解密111111aaaaaa”)发生细微变化:“子符串加解密111111aaaaaa”;或“字符串加解蜜111111aaaaaa”;或“字符串加解密211111aaaaaa”;或“字符串加解密111112aaaaaa”;或“字符串加解密111111baaaaa”;或“字符串加解密111111aaaaab”,字符串加密结果如表2所示。由表2可见:待加密字符串平文信息的细微变化会引起加密密文的“面目全非”,由此可见本专利所提一种字符串加密方法对待加密字符串的平文信息具有敏感性。
表2待加密字符串发生微变时,字符串加密结果
由上述具体实施例2、3分析可知,本专利所提一种字符串加密方法所生成的字符串密文不仅与加密密钥密切相关,而且依赖于待加密字符串平文信息,因此本专利所提一种字符串加密方法可抵抗已知/选择明文攻击,具有很强的安全性。
实施例4
按照上述一种字符串的解密方法,某段待解密密文为“s艰a匆;`@将^;壮莽d`B7贩$”,一种字符串的解密步骤与具体实施例1相似,仅解密密钥发生细微变化:或或或D10=27;或或R0′2=37,字符串密文解密结果如表3所示。由表3可知,解密密钥的细微变化会引起密文解密结果发生很大的变化,恢复出的字符串将是无用信息,由此可见本专利所提一种字符串的解密方法对解密密钥具有敏感性。
表3外部解密密钥发生微变时,密文解密结果
实施例5
按照上述一种字符串的解密方法,其解密步骤与具体实施例1相似,仅某段待解密字符串密文(“s艰a匆;`@将^;壮莽d`B7贩$”)发生细微变化:“S艰a匆;`@将^;壮莽d`B7贩$”;或“s艰a匆:`@将^;壮莽d`B7贩$”;或“s艰a匆;`@讲^;壮莽d`B7贩$”;或“s艰a匆;`@将^;壮莽c`B7贩$”;或“s艰a匆;`@将^;壮莽d`B7饭$”;或“s艰a匆;`@将^;壮莽d`B7贩&”;或“艰sa匆;`@将^;壮莽d`B7贩$”;或“s艰a匆;`@将^;壮莽d`B7$贩”,字符串解密结果如表4所示。由表4可知,待解密字符串密文的细微变化会引起密文解密结果发生很大的变化,难以恢复出原始的字符串,由此可见本专利所提一种字符串解密方法可抵抗唯密文攻击。
表4待解密字符串密文发生微变时,密文解密结果
Claims (6)
1.一种字符串的加密方法,其特征在于,包括如下几个步骤:
(1)转码:将某段字符串逐个字符转换为数值型数据,得到高位数值序列P1={P11,P21,...,Pi1,....,PL1}和低位数值序列P2={P12,P22,...,Pi2,....,PL2},其中数值序列P1、P2的长度与该段字符串的长度一致,记为L;
(2)高位数值序列的置乱:
首先利用外部加密密钥(α、β),按照如下所示公式(1)分别计算得到混沌系统的初始迭代步数m1和抽取间隔n1,
然后令初值x1=α和参数μ=β,对如下公式(2)所示的倾斜帐篷混沌系统进行迭代,k表示迭代次数(k=1,2,...),xk+1表示第k次迭代得到的混沌信号,
得到混沌序列X,从第m1个元素开始每隔n1个元素取1个,从而形成长度为L的混沌序列Y,
最后将混沌序列Y按升序排序,根据序列Y排序前、后的位置变化置乱规则,对高位数值序列P1={P11,P21,...,Pi1,....,PL1}进行置乱,得到置乱后的高位数值序列
(3)低位数值序列的双向扩散加密:
首先,进行低位数值序列的正向扩散加密
利用外部加密密钥(α、β),按照如下所示公式(3)计算得到混沌系统的初始迭代步数m2,
从混沌序列X中抽取第m2个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数μ1,即μ1=β,
对低位数值序列P2={P12,P22,...,Pi2,....,PL2}中每个元素Pi2,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ1,对如公式(2)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(4)进行整数化处理,得到混沌信号Y1i,
②利用混沌信号Y1i对数据Pi2按照如下公式(5)进行正向扩散加密,得到正向扩散加密密文C1i,
其中,Y10和C10为正向扩散加密密钥,
③根据正向扩散加密密文C1i,以及C1i-1和Y1i-1,对倾斜帐篷混沌系统的参数μ1按照如下公式(6)进行调整,
从而得到正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L};
然后,进行低位数值序列的逆向扩散加密
利用外部加密密钥(α、β),按照如下所示公式(7)计算得到混沌系统的初始迭代步数m3,
从混沌序列X中抽取第m3个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数μ2,即μ2=β,
对正向扩散加密后的低位数值序列C1={C11,C12,...,C1i,...,C1L}中每个元素C1i,其中i=1,2,3,...,L,依次进行如下操作:
①由初值和参数μ2,对如公式(2)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(8)进行整数化处理,得到混沌信号Y2i,
②利用混沌信号Y2i对数据C1i按照如下公式(9)进行逆向扩散加密,得到双向扩散加密密文C2i,
C2i=mod(C1L+1-i-Y2i⊕(C2i-1+11)+Y2i-1+13,94) (9)
其中,Y20和C20为逆向扩散加密密钥,
③根据双向扩散加密密文C2i,以及C2i-1和Y2i-1,对倾斜帐篷混沌系统的参数μ2按照如下公式(10)进行调整,
从而得到双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L};
(4)转码:将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2,进行数值与字符的转换,得到字符序列C,即为该段字符串的加密密文,其中序列C的长度为且
2.根据权利要求1所述的一种字符串的加密方法,其特征在于:步骤(1)中所述的将某段字符串逐个字符转换为数值型数据,其中某段字符串包括,除空格以外的可显示ASCII码字符,以及GB2312字符集中双字节编码的6763个汉字;逐个字符转换为数值型数据,是指采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可以用[Pi1,Pi2]表示,相应的数据组合得到高位数值序列P1={P11,P21,...,Pi1,....,PL1}和低位数值序列P2={P12,P22,...,Pi2,....,PL2}。
3.根据权利要求1所述的一种字符串的加密方法,其特征在于:步骤(4)中所述的将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2,进行数值与字符的转换,其转换关系表述如下:
设定一个空字符序列C,将置乱后的高位数值序列和双向扩散加密后的低位数值序列C2={C21,C22,...,C2i,...,C2L}中各对应元素依次进行如下运算,
如果则
首先判断,如果且(C2i+161)≥250,那么在字符序列C中添加1个空格,即C=[C,”],并设
然后利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列C中,即
如果则
直接利用char(·)函数将数值数据(C2i+33)转换为单个ASCII码字符,并添加到字符序列C中,即C=[C,char(C2i+33)]。
4.一种字符串的解密方法,其特征在于,包括如下几个步骤:
(1)转码:将某段待解密字符串密文逐个字符转换成数值型数据,得到高位数值序列和低位数值序列其中数值序列R1、R2的长度为某段待解密字符串密文的长度为
(2)高位数值序列的反置乱:
首先利用外部解密密钥按照如下所示公式(11)分别计算得到混沌系统的初始迭代步数和抽取间隔
然后令初值和参数对如下公式(12)所示的倾斜帐篷混沌系统进行迭代,k表示迭代次数(k=1,2,...),表示第k次迭代得到的混沌信号,
得到混沌序列从第个元素开始每隔个元素取1个,从而形成长度为的混沌序列
最后将混沌序列按升序排序,根据序列排序前、后的位置变化置乱规则,对高位数值序列进行反置乱,得到反置乱后的高位数值序列
(3)低位数值序列的双向扩散解密:
首先,进行低位数值序列的逆向扩散解密
利用外部解密密钥按照如下所示公式(13)计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对低位数值序列中每个元素Ri2,其中依次进行如下操作:
①由初值和参数对如公式(12)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(14)进行整数化处理,得到混沌信号
②利用混沌信号对数据Ri2按照如下公式(15)进行逆向扩散解密,得到逆向扩散解密数据
其中,和R′02为逆向扩散解密密钥,
③根据低位数值序列中元素Ri2、Ri-12对应的数值R′i2、R′i-12,以及对倾斜帐篷混沌系统的参数按照如下公式(16)进行调整,
从而得到逆向扩散解密后的低位数值序列
然后,进行低位数值序列的正向扩散解密
利用外部解密密钥按照如下所示公式(17)计算得到混沌系统的初始迭代步数
从混沌序列中抽取第个元素,作为倾斜帐篷混沌系统的初值同时得到倾斜帐篷混沌系统的参数即
对逆向扩散解密后的低位数值序列中每个元素D1i,其中依次进行如下操作:
①由初值和参数对如公式(12)所示倾斜帐篷混沌系统进行单次迭代,得到混沌信号同时对混沌信号按照如下公式(18)进行整数化处理,得到混沌信号
②利用混沌信号对数据D1i按照如下公式(19)进行正向扩散解密,得到双向扩散解密数据D2i,
其中,和D10为正向扩散解密密钥,
③根据正向扩散解密数据D1i,以及D1i-1和对倾斜帐篷混沌系统的参数按照如下公式(20)进行调整,
从而得到双向扩散解密后的低位数值序列
(4)转码:将反置乱后的高位数值序列和双向扩散解密后的低位数值序列D2,进行数值与字符的转换,得到字符序列PP,即为该段待解密字符串解密后恢复的字符串,其中字符序列PP的长度为
5.根据权利要求4所述的一种字符串的解密方法,其特征在于:步骤(1)中所述的将某段待解密字符串密文逐个字符转换成数值型数据,得到高位数值序列和低位数值序列其转换关系表述如下:
首先将某段待解密字符串密文中逐个字符转换为数值数据,即采用unicode2native(·)函数,将单个汉字转换为区位码数值数据,表示为[区数值数据,位数值数据],或将可显示ASCII码字符转换为ASCII码数值数据,表示为[0,ASCII码数值数据],都可用[Ri1,Ri2]表示;
然后将数值型数据[Ri1,Ri2]对应组合得到高位数值序列和低位数值序列
接着逐个检查低位数值序列R2中是否有Ri2=32的元素,如果是,则将对应高位数值序列R1中后一元素Ri+11数值加1,并删除该数值为32的元素Ri2和其对应高位数值序列R1中的元素Ri1;
最后得到高位数值序列和低位数值序列
6.根据权利要求4所述的一种字符串的解密方法,其特征在于:步骤(4)中所述的将反置乱后的高位数值序列和双向扩散解密后的低位数值序列D2,进行数值与字符的转换,其转换关系表述如下:
设定一个空字符序列PP,将反置乱后的高位数值序列和双向扩散解密后的低位数值序列中对应元素依次进行如下运算,
如果则
如果且D2i≥250,那么在字符序列PP中添加1个空格,即PP=[PP,”];
否则利用native2unicode(·)函数将数值数据转换为单个汉字,并添加到字符序列PP中,即
如果则
直接利用char(·)函数将数值数据(D2i)转换为单个ASCII码字符,并添加到字符序列PP中,即PP=[PP,char(D2i)]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910215951.3A CN109981246B (zh) | 2019-03-21 | 2019-03-21 | 一种字符串的加密方法和解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910215951.3A CN109981246B (zh) | 2019-03-21 | 2019-03-21 | 一种字符串的加密方法和解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109981246A true CN109981246A (zh) | 2019-07-05 |
CN109981246B CN109981246B (zh) | 2021-12-17 |
Family
ID=67079846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910215951.3A Active CN109981246B (zh) | 2019-03-21 | 2019-03-21 | 一种字符串的加密方法和解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981246B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457949A (zh) * | 2019-08-14 | 2019-11-15 | 于向东 | 一种基于数据字典的保持唯一性、完整性、关联性的数据脱敏方法 |
CN110650005A (zh) * | 2019-09-17 | 2020-01-03 | 南通大学 | 一种中英文字符串加密方法 |
CN114500035A (zh) * | 2022-01-24 | 2022-05-13 | 杭州天宽科技有限公司 | 一种基于服务数据共享云平台的数据加密系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532701A (zh) * | 2013-10-16 | 2014-01-22 | 南通纺织职业技术学院 | 一种数值型数据的加密、解密方法 |
CN104486073A (zh) * | 2014-12-23 | 2015-04-01 | 南通大学 | 一种字符型数据的加密、解密方法 |
CN109472338A (zh) * | 2018-11-19 | 2019-03-15 | 南通大学 | 一种商品防伪二维码的批量生成方法 |
-
2019
- 2019-03-21 CN CN201910215951.3A patent/CN109981246B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103532701A (zh) * | 2013-10-16 | 2014-01-22 | 南通纺织职业技术学院 | 一种数值型数据的加密、解密方法 |
CN104486073A (zh) * | 2014-12-23 | 2015-04-01 | 南通大学 | 一种字符型数据的加密、解密方法 |
CN109472338A (zh) * | 2018-11-19 | 2019-03-15 | 南通大学 | 一种商品防伪二维码的批量生成方法 |
Non-Patent Citations (5)
Title |
---|
SUYING SHENG,XINHUA WU: "A novel bit-level image encryption scheme using hyper-chaotic systems", 《IEEE》 * |
XINHUA WU: "A novel chaos-based image encryption scheme using coupled map lattices", 《IEEE》 * |
张子振: "基于有限状态斜帐篷映射的图像加密算法", 《湖南理工学院学报(自然科学版)》 * |
张芳君等: "基于混沌序列置乱与扩散变换的彩色数字图像加密算法", 《软件导刊》 * |
李春虎等: "基于斜帐篷混沌映射和Arnold变换的图像加密方案", 《计算机应用研究》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457949A (zh) * | 2019-08-14 | 2019-11-15 | 于向东 | 一种基于数据字典的保持唯一性、完整性、关联性的数据脱敏方法 |
CN110650005A (zh) * | 2019-09-17 | 2020-01-03 | 南通大学 | 一种中英文字符串加密方法 |
CN110650005B (zh) * | 2019-09-17 | 2022-02-01 | 南通大学 | 一种中英文字符串加密方法 |
CN114500035A (zh) * | 2022-01-24 | 2022-05-13 | 杭州天宽科技有限公司 | 一种基于服务数据共享云平台的数据加密系统 |
CN114500035B (zh) * | 2022-01-24 | 2023-06-23 | 杭州天宽科技有限公司 | 一种基于服务数据共享云平台的数据加密系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109981246B (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109995504A (zh) | 一种字符串的加密和解密方法 | |
CN109981245A (zh) | 一种字符串的加密、解密方法 | |
Kumar et al. | Development of modified AES algorithm for data security | |
CN105847629A (zh) | 一种加密图像的可逆信息隐藏方法 | |
CN109981246A (zh) | 一种字符串的加密方法和解密方法 | |
CN110011783A (zh) | 一种汉字的加密、解密方法 | |
CN110795762A (zh) | 基于流密码的保留格式加密方法 | |
CN107292802A (zh) | 一种量子混沌的并行图像加密方法 | |
CN105701755A (zh) | 一种基于分形和dna序列操作的图像加密方法 | |
Limbong et al. | Testing the classic caesar cipher cryptography using of matlab | |
Ditta et al. | Information hiding: Arabic text steganography by using Unicode characters to hide secret data | |
Aung et al. | A complex transformation of monoalphabetic cipher to polyalphabetic cipher:(Vigenère-Affine cipher) | |
CN108833733B (zh) | 一种基于混沌s盒的图像加密算法的解密方法 | |
Sari et al. | Cryptography Triple Data Encryption Standard (3DES) for Digital Image Security | |
CN114915400A (zh) | 同步时间可调节的异构分数阶超混沌系统图像加解密方法 | |
CN104050625B (zh) | 一种明文构建初始密钥的复合混沌图像加密方法 | |
Pertiwi et al. | Simulations of text encryption and decryption by applying vertical bit rotation algorithm | |
CN110278066B (zh) | 一种中文字符串的加密、解密方法 | |
CN101364868B (zh) | 基于广义信息域的伪随机码发生器及其发生方法 | |
CN110287713B (zh) | 一种中文字符串的加密方法和解密方法 | |
Lwin et al. | Information hiding system using text and image steganography | |
Wang et al. | A new chaotic cryptography based on ergodicity | |
CN110287712B (zh) | 一种中英文字符串的加密方法 | |
Dhingra et al. | An improved version of playfair technique | |
Wang et al. | Steganographic method based on keyword shift |
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 |