当前位置: 首页 > 专利查询>南通大学专利>正文

一种字符型数据的加密、解密方法技术

技术编号:11246960 阅读:99 留言:0更新日期:2015-04-01 19:57
本发明专利技术公开了一种字符型数据的加密、解密方法,包括如下步骤:将明文字符型数据转化成数值序列;利用可变密钥混沌系统所产生的混沌信号,对数值序列中各元素进行双向加密,得到双向混沌加密数值序列;自定义数值型数据与可见密文字符对应关系,将双向混沌加密数值序列转化成可见密文字符序列,获得与明文字符型数据长度不相等的密文字符串,通过类似的方法可将密文解密恢复出原始的字符型数据。本发明专利技术采用自定义对应关系,对字符型数据进行双向混沌加密处理,产生长度变化的密文字符串,具有良好的抵抗已知/选择明文攻击、唯密文攻击的性能,保证了数据加密与解密的安全性和可行性。

【技术实现步骤摘要】
一种字符型数据的加密、解密方法
本专利技术涉及信息安全
,特别涉及一种字符型数据的加密、解密方法。
技术介绍
随着计算机技术、信息技术和网络技术的迅猛发展,以计算机为核心的庞大信息网正在全世界范围内逐渐形成。显而易见,信息的安全性和保密性已经越来越多地受到人们的重视,大到国家机密,小到寻常百姓的生活,比如信用卡、自动提款机、保密电话、保密传真、电子商务、金融电子化、数据库存储等,都需要一套切实可行的安全保密措施。其中,数据加密技术是一种应用较为广泛、效果较为理想的信息安全技术。传统的加密方法如置乱加密(permuting)或替换加密(substituting)方法由于其规律性,很容易被破译,又如传统的RSA和DES也面临着其算法的复杂性或安全性问题。随着现代计算机技术的发展和安全性要求的不断提高,寻找一个新的途径,采取新的加密方法来确保数据的安全性,已迫在眉睫。
技术实现思路
专利技术目的:本专利技术的目的是为了解决现有技术中的不足,提供一种字符型数据的加密以及解密方法,利用自定义对应关系,将字符型数据转化成数值序列并进行双向混沌加密以生成长度变化的密文字符串,从而保证了字符型数据加密与解密的安全性和可行性。技术方案:本专利技术所述的一种字符型数据的加密方法,包括如下几个步骤:(1)转码:将字符型数据逐个转换成数值型数据,然后将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列,再将数值字符逐个进行ASCII码转换,得到数值序列P,数值序列P长度记为L;(2)正向混沌加密:首先由初值x0和参数μ1,对如下公式1所示的Logistic混沌映射进行n次迭代,其中n≥200,将混沌信号xn记为xk+1=μ·xk·(1-xk)(1)然后对数值序列P中每个元素Pi,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ1,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照如下公式2进行整数化处理,得到混沌信号Xi,②利用混沌信号Xi对数据Pi按照如下公式3进行正向加密,得到正向加密密文C1i,C1i=mod(Pi-33+Xi+(C1i-1+2)⊕(Xi-1+1),94)(3)③根据正向加密密文C1i,对Logistic混沌映射的参数μ1按照如下公式4进行调整,最后得到正向混沌加密后的数值序列C1;(3)逆向混沌加密:首先由初值y0和参数μ2,原理同步骤(2),对如上所述公式1所示的Logistic混沌映射进行m次迭代,其中m≥200,将混沌信号ym记为然后对数值序列C1中每个元素C1L-i+1,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ2,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照上述公式2进行整数化处理,得到整数化后的混沌信号Yi,②利用混沌信号Yi对数据C1L-i+1按照如下公式5进行逆向加密,得到数值型密文C2i,C2i=mod(C1L-i+1+Yi+(C2i-1+1)⊕(Yi-1+2),94)(5)③根据密文C2i对Logistic混沌映射的参数μ2按照如下公式6进行调整,最后得到双向混沌加密后的数值序列C2;(4)根据自定义的数值型数据与可见密文字符对应关系,将数值序列C2转化成可见密文字符序列C,获得与明文字符型数据长度不相等的密文字符串。作为优选,步骤(1)中所述的将字符型数据逐个转换成数值型数据,是指直接将字符型数据转换成double型数据,范围属于[0,65535]。作为优选,步骤(1)中所述的将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列,并同时在字符串前用标注该字符串长度的字符变量将相邻的字符串进行分组,比如标注字符串长度的字符变量‘1’、‘2’、‘3’、‘4’和‘5’分别表示字符串长度为1,2,3,4,5。作为优选,步骤(4)中所述的数值型数据与可见密文字符对应关系为:Ci=char(C2i+33)。本专利技术还公开了一种字符型数据的解密方法,包括如下几个步骤:(1)根据自定义的可见密文字符与数值型数据对应关系,将密文字符串C转化成数值序列R1;(2)逆向混沌解密:首先由初值和参数对与逆向混沌加密采用的混沌系统完全同构的Logistic混沌映射进行m次迭代,其中m≥200,将混沌信号记为然后对数值序列R1中每个元素R1i,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照上述公式2进行整数化处理,得到整数化后的混沌信号②利用混沌信号对数据R1i按照如下公式7进行逆向解密,得到逆向解密数据R2L-i+1,③根据数据R1i对Logistic混沌映射的参数按照如下公式8进行调整,最后得到逆向混沌解密后的数值序列R2;(3)正向混沌解密:首先由初值和参数对与正向混沌加密采用的混沌系统完全同构的Logistic混沌映射进行n次迭代,其中n≥200,将混沌信号记为然后对数值序列R2中每个元素R2i,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照上述公式2进行整数化处理,得到整数化后的混沌信号②利用混沌信号对数据R2i按照如下公式9进行正向解密,得到双向解密数据RRi,③根据数据R2i对Logistic混沌映射的参数按照如下公式10进行调整,最后得到双向混沌解密后的数值序列RR;(4)转字符:将数值序列RR中各元素转换为相应ASCII码对应的字符,得到字符序列R,然后将字符序列R进行分组,并将分组后的字符串分别转化成数值与字符完全一样的数值型数据,再将数值型数据逐个转换成字符型数据,得到恢复的明文字符型数据。作为优选,步骤(1)中所述的可见密文字符与数值型数据对应关系为:R1i=double(Ci)-33。作为优选,步骤(4)中所述的将字符串R进行分组,是指提取字符串前用于标注该字符串长度的字符变量进行分组,比如标注字符串长度的字符变量‘1’、‘2’、‘3’、‘4’和‘5’分别表示字符串长度为1,2,3,4,5。有益效果:本专利技术采用自定义对应关系(数值型数据与可见密文字符以及可见密文字符与数值型数据),将字符型数据进行双向混沌加密以生成长度变化的密文字符串,保证了数据加密与解密的安全性和可行性。附图说明图1为本专利技术的字符型数据的加密、解密流程示意图。具体实施方式如图1所示的一种字符型数据的加密方法,包括如下几个步骤:(1)转码:直接将字符型数据逐个转换成double型数据,范围属于[0,65535],然后将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列P1,并在字符串前用标注该字符串长度的字符变量将相邻的字符串进行分组,比如标注字符串长度的字符变量‘1’、‘2’、‘3’、‘4’和‘5’分别表示字符串长度为1,2,3,4,5,再将数值字符逐个进行ASCII码转换,得到数值序列P,数值序列P长度记为L。(2)正向混沌加密:首先由初值x0和参数μ1,对Logistic混沌映射(公式如下)进行n次迭代,其中n取200,将混沌信号xn记为xk+1=μ·xk·(1-xk)然后对数值序列P中每个本文档来自技高网...
一种字符型数据的加密、解密方法

【技术保护点】
一种字符型数据的加密方法,其特征在于:包括如下几个步骤:(1)转码:将字符型数据逐个转换成数值型数据,然后将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列,再将数值字符逐个进行ASCII码转换,得到数值序列P,数值序列P长度记为L;(2)正向混沌加密:首先由初值x0和参数μ1,对如下公式1所示的Logistic混沌映射进行n次迭代,其中n≥200,将混沌信号xn记为xk+1=μ·xk·(1‑xk)   (1)然后对数值序列P中每个元素Pi,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ1,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照如下公式2进行整数化处理,得到混沌信号Xi,②利用混沌信号Xi对数据Pi按照如下公式3进行正向加密,得到正向加密密文C1i,C1i=mod(Pi‑33+Xi+(C1i‑1+2)⊕(Xi‑1+1),94)   (3)③根据正向加密密文C1i,对Logistic混沌映射的参数μ1按照如下公式4进行调整,μ1=μ1-C1i/1000ifμ1≥3.85&mu;1+C1i/1000ifμ1<3.85---(4)]]>最后得到正向混沌加密后的数值序列C1;(3)逆向混沌加密:首先由初值y0和参数μ2,原理同步骤(2),对如上所述公式1所示的Logistic混沌映射进行m次迭代,其中m≥200,将混沌信号ym记为然后对数值序列C1中每个元素C1L‑i+1,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ2,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照上述公式2进行整数化处理,得到整数化后的混沌信号Yi,②利用混沌信号Yi对数据C1L‑i+1按照如下公式5进行逆向加密,得到数值型密文C2i,C2i=mod(C1L‑i+1+Yi+(C2i‑1+1)⊕(Yi‑1+2),94)   (5)③根据密文C2i对Logistic混沌映射的参数μ2按照如下公式6进行调整,μ2=μ2-C2i/1000ifμ2≥3.86μ2+C2i/1000ifμ2<3.86---(6)]]>最后得到双向混沌加密后的数值序列C2;(4)根据自定义的数值型数据与可见密文字符对应关系,将数值序列C2转化成可见密文字符序列C,获得与明文字符型数据长度不相等的密文字符串。...

【技术特征摘要】
1.一种字符型数据的加密方法,其特征在于:包括如下几个步骤:(1)转码:将字符型数据逐个转换成数值型数据,然后将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列,再将数值字符逐个进行ASCII码转换,得到数值序列P,数值序列P长度记为L;(2)正向混沌加密:首先由初值x0和参数μ1,对如下公式1所示的Logistic混沌映射进行n次迭代,其中n≥200,将混沌信号xn记为xk+1=μ·xk·(1-xk)(1)然后对数值序列P中每个元素Pi,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ1,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照如下公式2进行整数化处理,得到混沌信号Xi,②利用混沌信号Xi对数据Pi按照如下公式3进行正向加密,得到正向加密密文C1i,③根据正向加密密文C1i,对Logistic混沌映射的参数μ1按照如下公式4进行调整,最后得到正向混沌加密后的数值序列C1;(3)逆向混沌加密:首先由初值y0和参数μ2,原理同步骤(2),对如上所述公式1所示的Logistic混沌映射进行m次迭代,其中m≥200,将混沌信号ym记为然后对数值序列C1中每个元素C1L-i+1,其中i=1,2,3,...,L,依次进行如下操作:①由混沌信号和参数μ2,对Logistic混沌映射进行单次迭代,得到混沌信号同时对混沌信号按照上述公式2进行整数化处理,得到整数化后的混沌信号Yi,②利用混沌信号Yi对数据C1L-i+1按照如下公式5进行逆向加密,得到数值型密文C2i,③根据密文C2i对Logistic混沌映射的参数μ2按照如下公式6进行调整,最后得到双向混沌加密后的数值序列C2;(4)根据自定义的数值型数据与可见密文字符对应关系,将数值序列C2转化成可见密文字符序列C,获得与明文字符型数据长度不相等的密文字符串。2.根据权利要求1所述的一种字符型数据的加密方法,其特征在于:步骤(1)中所述的将字符型数据逐个转换成数值型数据,是指直接将字符型数据转换成double型数据,范围属于[0,65535]。3.根据权利要求1所述的一种字符型数据的加密方法,其特征在于:步骤(1)中所述的将数值型数据分别转化成字符与数值型数据完全一样的字符串以形成字符序列,并同时在字符串前用标注该字符串长度的字符变量将相邻的字符...

【专利技术属性】
技术研发人员:盛苏英陆国平堵俊吴晓吴新华张振娟
申请(专利权)人:南通大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1