一种可逆的数据加密方法及装置制造方法

文档序号:7821830阅读:263来源:国知局
一种可逆的数据加密方法及装置制造方法
【专利摘要】本发明披露了一种可逆的数据加密方法及装置,其中方法包括:在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。本发明通过将基本的Base32中的32个字符集替换为不易混淆的32个字符集,只通过少量的修改和验证,改造Base32内部的字符对应关系,使Base32能够成为正确的编解码载介。通过DES可逆加解密方法将明文加密成密文,使得密文能够避免容易引起混淆的字母和数字出现,从而保证密文的正确传输及正确识别。
【专利说明】—种可逆的数据加密方法及装置

【技术领域】
[0001]本发明涉及软件开发的可逆加解密技术,尤其涉及可逆的数据加密方法及装置。

【背景技术】
[0002]随着软件业的不断发展,在软件开发、软件销售以及数据库的数据加密等各个环节和流程中都需要运用可逆的数据加密技术。
[0003]数据加密标准(DES,Data Encrypt1n Standard)是美国经长时间征集和筛选后,于1977年由美国国家标准局颁布的一种加密算法。它主要用于民用敏感信息的加密,后来被国际标准化组织接受作为国际标准。DES主要采用替换和移位的方法加密。它用56位密钥对64位二进制数据块进行加密,每次加密可对64位的输入数据进行16轮编码,经一系列替换和移位后,输入的64位原始数据转换成完全不同的64位输出数据。DES算法仅使用最大为64位的标准算术和逻辑运算,运算速度快,密钥生产容易,适合于在当前大多数计算机上用软件方法实现,同时也适合于在专用芯片上实现。DES是一种得到世界公认的较好的加密算法。自它问世20多年来,成为密码界研究的重点,经受住了许多科学家的研究和破译,在民用密码领域得到了广泛的应用,曾为全球贸易等非官方部门提供了可靠的通信安全保障。
[0004]由于在更多的情况下需要对DES密文进行传播,在传播过程中出现密文字符混淆的问题,也就是经过加密后的数据会出现易于混淆的密文字符,导致传播错误或传播后的识别错误。例如,在41dxx2is2Ilizsd007ui01这个密文序列中,大写的字母O和小写的字母ο以及数字O经常容易混淆,导致序列传递的错误以及正确传递后识别上的错误。
[0005]因此,需要提供一种可逆的数据加密方法及装置,能够保证密文的正确传输及正确识别。


【发明内容】

[0006]本发明所要解决的技术问题是提供一种可逆的数据加密方法及装置,能够保证密文的正确传输及正确识别。
[0007]为了解决上述技术问题,本发明提供了一种可逆的数据加密方法,包括:
[0008]在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;
[0009]将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。
[0010]进一步地,在基本的Base32编码字符中去掉易混淆的字符形成改进的Base32编码,是指:
[0011]在Base32的 java类中,将基本的常量属性“ABCDEFGHIJKLMN0PQRSTUVWXYZ234567”替换为改进的常量属性 “ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”。
[0012]进一步地,将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文,是指:
[0013]用数据加密标准将明文加密成数据加密标准的密文片段,然后对该数据加密标准的密文片段用改进的Base32编码进行编码,生成密文。
[0014]进一步地,该方法还包括:
[0015]对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成明文。
[0016]进一步地,对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成所述明文,是指:
[0017]对密文用改进的Base32编码进行解码,形成数据加密标准的密文片段,然后用数据加密标准将该数据加密标准的密文片段解密成明文。
[0018]为了解决上述技术问题,本发明提供了一种可逆的数据加密装置,包括Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码_解码模块,其中:
[0019]Base32编码更改模块,用于在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码,并传递给编码-解码模块;
[0020]加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块;
[0021]编码-解码模块,用于用改进的Base32编码对密文片段进行编码,生成密文。
[0022]进一步地,Base32编码更改模块在Base32的java类中,将基本的常量属性“ABCDEFGHIJKLMN0PQRSTUVWXYZ234567”替换为改进的常量属性“ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”。
[0023]进一步地,
[0024]加密-解密模块将明文用数据加密标准加密成数据加密标准的密文片段,并传递给编码-解码模块;
[0025]编码-解码模块用改进的Base32编码对数据加密标准的密文片段进行编码,生成密文。
[0026]进一步地,
[0027]编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块;
[0028]加密-解密模块对该密文片段进行解密生成明文。
[0029]进一步地,
[0030]编码-解码模块用改进的Base32编码对密文进行解码,生成数据加密标准的密文片段,并传递给加密-解密模块;
[0031]加密-解密模块用数据加密标准对该数据加密标准的密文片段进行解密生成明文。
[0032]本发明通过将基本的Base32中的32个字符集替换为不易混淆的32个字符集,只通过少量的修改和验证,改造Base32内部的字符对应关系,使Base32能够成为正确的编解码载介。通过DES可逆加解密方法将明文加密成密文,密文由大写的26个字母和345678这6个字符组成,能够避免容易引起混淆的字母和数字出现,从而保证密文的正确传输及正确识别。

【专利附图】

【附图说明】
[0033]图1为本发明的可逆的数据加密方法实施例的流程图;
[0034]图2为本发明的可逆的数据加密装置实施例的结构框图。

【具体实施方式】
[0035]以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下列举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
[0036]如图1所示,是本发明的可逆的数据加密方法实施例的流程,包括如下步骤:
[0037]110:在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;
[0038]在Base32 的 java 类中将基本的常量属性 private static final Stringbase32chars = “ABCDEFGHIJKLMN0PQRSTUVWXYZ234567” 替换为改进的常量属性 privatestatic final String base32chars =“ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”,亦即用数字“8”替换了原来的数字“2”。
[0039]120:将明文加密成密文片段,将密文片段用改进的Base32编码进行编码,生成密文。
[0040]本发明适用于任何可逆的加解密算法。
[0041]在此,本发明是用DES将明文加密成DES密文片段,然后对该DES密文片段用改进的Base32编码进行编码,生成密文。
[0042]进行解码时,是相反的过程。即首先对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成明文。
[0043]本发明是用DES将DES密文片段解密成明文。
[0044]本发明针对上述方法实施例,还提供了一种可逆的数据加密装置实施例,其结构如图2所示,包括:Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码-解码模块,其中:
[0045]Base32编码更改模块,用于在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码,并传递给编码-解码模块;
[0046]加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块;
[0047]编码-解码模块,用于用改进的Base32编码对密文片段进行编码,生成密文。
[0048]在上述装置实施例中,
[0049]Base32编码更改模块在Base32的java类中将基本的常量属性“ABCDEFGHIJKLMN0PQRSTUVWXYZ234567” 替换为改进的常量属性 “ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”。
[0050]在上述装置实施例中,
[0051]加密-解密模块将明文用DES加密成DES密文片段,并传递给编码-解码模块;
[0052]编码-解码模块用改进的Base32编码对DES密文片段进行编码,生成密文。
[0053]在上述装置实施例中,
[0054]编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块;
[0055]加密-解密模块对密文片段进行解密生成明文。
[0056]在上述装置实施例中,
[0057]编码-解码模块用改进的Base32编码对密文进行解码,生成DES密文片段,并传递给加密-解密模块;
[0058]加密-解密模块用DES对DES密文片段进行解密生成明文。
【权利要求】
1.一种可逆的数据加密方法,其特征在于,包括: 在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码; 将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。
2.按照权利要求1所述的方法,其特征在于,所述在基本的Base32编码字符中去掉易混淆的字符形成改进的Base32编码,是指: 在 Base32 的 java 类中,将基本的常量属性“ABCDEFGHIJKLMN0PQRSTUVWXYZ234567”替换为改进的常量属性 “ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”。
3.按照权利要求1或2所述的方法,其特征在于,将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文,是指: 用数据加密标准将所述明文加密成数据加密标准的密文片段,然后对该数据加密标准的密文片段用改进的Base32编码进行编码,生成密文。
4.按照权利要求3所述的方法,其特征在于,还包括: 对所述密文用所述改进的Base32编码进行解码,形成密文片段;然后将所述密文片段解密成所述明文。
5.按照权利要求4所述的方法,其特征在于,所述对所述密文用所述改进的Base32编码进行解码,形成密文片段;然后将所述密文片段解密成所述明文,是指: 对所述密文用所述改进的Base32编码进行解码,形成数据加密标准的密文片段,然后用数据加密标准将所述数据加密标准的密文片段解密成明文。
6.一种可逆的数据加密装置,其特征在于,包括Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码_解码模块,其中: Base32编码更改模块,用于在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码,并传递给编码-解码模块; 加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块; 编码-解码模块,用于用改进的Base32编码对所述密文片段进行编码,生成密文。
7.按照权利要求6所述的装置,其特征在于, Base32编码更改模块在Base32的java类中,将基本的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ234567” 替换为改进的常量属性 “ABCDEFGHIJKLMN0PQRSTUVWXYZ834567”。
8.按照权利要求6或7所述的装置,其特征在于, 所述加密-解密模块将明文用数据加密标准加密成数据加密标准的密文片段,并传递给编码-解码模块; 所述编码-解码模块用改进的Base32编码对所述数据加密标准的密文片段进行编码,生成密文。
9.按照权利要求8所述的装置,其特征在于, 所述编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块; 所述加密-解密模块对所述密文片段进行解密生成所述明文。
10.按照权利要求9所述的装置,其特征在于, 所述编码-解码模块用所述改进的Base32编码对密文进行解码,生成数据加密标准的密文片段,并传递给加密-解密模块; 所述加密-解密模块用数据加密标准对所述数据加密标准的密文片段进行解密生成所述明文。
【文档编号】H04L9/06GK104393988SQ201410727512
【公开日】2015年3月4日 申请日期:2014年12月3日 优先权日:2014年12月3日
【发明者】李新虎, 胡玉鹏, 于辉 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1