CN104393988B - 一种可逆的数据加密方法及装置 - Google Patents
一种可逆的数据加密方法及装置 Download PDFInfo
- Publication number
- CN104393988B CN104393988B CN201410727512.8A CN201410727512A CN104393988B CN 104393988 B CN104393988 B CN 104393988B CN 201410727512 A CN201410727512 A CN 201410727512A CN 104393988 B CN104393988 B CN 104393988B
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- base32
- improved
- segment
- coding
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000002441 reversible effect Effects 0.000 title claims abstract description 19
- 238000013478 data encryption standard Methods 0.000 claims description 41
- 230000008859 change Effects 0.000 claims description 8
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 238000012986 modification Methods 0.000 abstract description 2
- 230000004048 modification Effects 0.000 abstract description 2
- 238000012795 verification Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 230000006854 communication Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000037433 frameshift Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明披露了一种可逆的数据加密方法及装置,其中方法包括:在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。本发明通过将基本的Base32中的32个字符集替换为不易混淆的32个字符集,只通过少量的修改和验证,改造Base32内部的字符对应关系,使Base32能够成为正确的编解码载介。通过DES可逆加解密方法将明文加密成密文,使得密文能够避免容易引起混淆的字母和数字出现,从而保证密文的正确传输及正确识别。
Description
技术领域
本发明涉及软件开发的可逆加解密技术,尤其涉及可逆的数据加密方法及装置。
背景技术
随着软件业的不断发展,在软件开发、软件销售以及数据库的数据加密等各个环节和流程中都需要运用可逆的数据加密技术。
数据加密标准(DES,Data Encryption Standard)是美国经长时间征集和筛选后,于1977年由美国国家标准局颁布的一种加密算法。它主要用于民用敏感信息的加密,后来被国际标准化组织接受作为国际标准。DES主要采用替换和移位的方法加密。它用56位密钥对64位二进制数据块进行加密,每次加密可对64位的输入数据进行16轮编码,经一系列替换和移位后,输入的64位原始数据转换成完全不同的64位输出数据。DES算法仅使用最大为64位的标准算术和逻辑运算,运算速度快,密钥生产容易,适合于在当前大多数计算机上用软件方法实现,同时也适合于在专用芯片上实现。DES是一种得到世界公认的较好的加密算法。自它问世20多年来,成为密码界研究的重点,经受住了许多科学家的研究和破译,在民用密码领域得到了广泛的应用,曾为全球贸易等非官方部门提供了可靠的通信安全保障。
由于在更多的情况下需要对DES密文进行传播,在传播过程中出现密文字符混淆的问题,也就是经过加密后的数据会出现易于混淆的密文字符,导致传播错误或传播后的识别错误。例如,在41dxx2is2I1izsdO07uiO1这个密文序列中,大写的字母O和小写的字母o以及数字0经常容易混淆,导致序列传递的错误以及正确传递后识别上的错误。
因此,需要提供一种可逆的数据加密方法及装置,能够保证密文的正确传输及正确识别。
发明内容
本发明所要解决的技术问题是提供一种可逆的数据加密方法及装置,能够保证密文的正确传输及正确识别。
为了解决上述技术问题,本发明提供了一种可逆的数据加密方法,包括:
在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;
将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。
进一步地,在基本的Base32编码字符中去掉易混淆的字符形成改进的Base32编码,是指:
在Base32的java类中,将基本的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ234567”替换为改进的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”。
进一步地,将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文,是指:
用数据加密标准将明文加密成数据加密标准的密文片段,然后对该数据加密标准的密文片段用改进的Base32编码进行编码,生成密文。
进一步地,该方法还包括:
对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成明文。
进一步地,对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成所述明文,是指:
对密文用改进的Base32编码进行解码,形成数据加密标准的密文片段,然后用数据加密标准将该数据加密标准的密文片段解密成明文。
为了解决上述技术问题,本发明提供了一种可逆的数据加密装置,包括Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码-解码模块,其中:
Base32编码更改模块,用于在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码,并传递给编码-解码模块;
加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块;
编码-解码模块,用于用改进的Base32编码对密文片段进行编码,生成密文。
进一步地,Base32编码更改模块在Base32的java类中,将基本的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ234567”替换为改进的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”。
进一步地,
加密-解密模块将明文用数据加密标准加密成数据加密标准的密文片段,并传递给编码-解码模块;
编码-解码模块用改进的Base32编码对数据加密标准的密文片段进行编码,生成密文。
进一步地,
编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块;
加密-解密模块对该密文片段进行解密生成明文。
进一步地,
编码-解码模块用改进的Base32编码对密文进行解码,生成数据加密标准的密文片段,并传递给加密-解密模块;
加密-解密模块用数据加密标准对该数据加密标准的密文片段进行解密生成明文。
本发明通过将基本的Base32中的32个字符集替换为不易混淆的32个字符集,只通过少量的修改和验证,改造Base32内部的字符对应关系,使Base32能够成为正确的编解码载介。通过DES可逆加解密方法将明文加密成密文,密文由大写的26个字母和345678这6个字符组成,能够避免容易引起混淆的字母和数字出现,从而保证密文的正确传输及正确识别。
附图说明
图1为本发明的可逆的数据加密方法实施例的流程图;
图2为本发明的可逆的数据加密装置实施例的结构框图。
具体实施方式
以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下列举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
如图1所示,是本发明的可逆的数据加密方法实施例的流程,包括如下步骤:
110:在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码;
在Base32的java类中将基本的常量属性private static final Stringbase32chars=“ABCDEFGHIJKLMNOPQRSTUVWXYZ234567”替换为改进的常量属性privatestatic final String base32chars=“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”,亦即用数字“8”替换了原来的数字“2”。
120:将明文加密成密文片段,将密文片段用改进的Base32编码进行编码,生成密文。
本发明适用于任何可逆的加解密算法。
在此,本发明是用DES将明文加密成DES密文片段,然后对该DES密文片段用改进的Base32编码进行编码,生成密文。
进行解码时,是相反的过程。即首先对密文用改进的Base32编码进行解码,形成密文片段;然后将密文片段解密成明文。
本发明是用DES将DES密文片段解密成明文。
本发明针对上述方法实施例,还提供了一种可逆的数据加密装置实施例,其结构如图2所示,包括:Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码-解码模块,其中:
Base32编码更改模块,用于在基本的Base32编码字符中去掉易混淆的字符,形成改进的Base32编码,并传递给编码-解码模块;
加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块;
编码-解码模块,用于用改进的Base32编码对密文片段进行编码,生成密文。
在上述装置实施例中,
Base32编码更改模块在Base32的java类中将基本的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ234567”替换为改进的常量属性“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”。
在上述装置实施例中,
加密-解密模块将明文用DES加密成DES密文片段,并传递给编码-解码模块;
编码-解码模块用改进的Base32编码对DES密文片段进行编码,生成密文。
在上述装置实施例中,
编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块;
加密-解密模块对密文片段进行解密生成明文。
在上述装置实施例中,
编码-解码模块用改进的Base32编码对密文进行解码,生成DES密文片段,并传递给加密-解密模块;
加密-解密模块用DES对DES密文片段进行解密生成明文。
Claims (8)
1.一种可逆的数据加密方法,其特征在于,包括:
从基本的Base32编码字符中去掉与字符“Z”易混淆的字符“2”,用字符“8”替换,形成改进的Base32编码字符“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”,所述改进的Base32编码为正确编解码载介;
将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文。
2.按照权利要求1所述的方法,其特征在于,将需要加密的明文加密成密文片段,并将密文片段用改进的Base32编码进行编码,生成密文,是指:
用数据加密标准将所述明文加密成数据加密标准的密文片段,然后对该数据加密标准的密文片段用改进的Base32编码进行编码,生成密文。
3.按照权利要求2所述的方法,其特征在于,还包括:
对所述密文用所述改进的Base32编码进行解码,形成密文片段;然后将所述密文片段解密成所述明文。
4.按照权利要求3所述的方法,其特征在于,所述对所述密文用所述改进的Base32编码进行解码,形成密文片段;然后将所述密文片段解密成所述明文,是指:
对所述密文用所述改进的Base32编码进行解码,形成数据加密标准的密文片段,然后用数据加密标准将所述数据加密标准的密文片段解密成明文。
5.一种可逆的数据加密装置,其特征在于,包括Base32编码更改模块以及分别与该Base32编码更改模块连接的加密-解密模块和编码-解码模块,其中:
Base32编码更改模块,用于从基本的Base32编码字符中去掉与字符“Z”易混淆的字符“2”,用字符“8”替换,形成改进的Base32编码“ABCDEFGHIJKLMNOPQRSTUVWXYZ834567”,并传递给编码-解码模块;
加密-解密模块,用于将明文加密成密文片段,并传递给编码-解码模块;
编码-解码模块,用于用改进的Base32编码对所述密文片段进行编码,生成密文;
其中,所述改进的Base32编码为正确编解码载介。
6.按照权利要求5所述的装置,其特征在于,
所述加密-解密模块将明文用数据加密标准加密成数据加密标准的密文片段,并传递给编码-解码模块;
所述编码-解码模块用改进的Base32编码对所述数据加密标准的密文片段进行编码,生成密文。
7.按照权利要求6所述的装置,其特征在于,
所述编码-解码模块还用改进的Base32编码对密文进行解码,生成密文片段,并传递给加密-解密模块;
所述加密-解密模块对所述密文片段进行解密生成所述明文。
8.按照权利要求7所述的装置,其特征在于,
所述编码-解码模块用所述改进的Base32编码对密文进行解码,生成数据加密标准的密文片段,并传递给加密-解密模块;
所述加密-解密模块用数据加密标准对所述数据加密标准的密文片段进行解密生成所述明文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410727512.8A CN104393988B (zh) | 2014-12-03 | 2014-12-03 | 一种可逆的数据加密方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410727512.8A CN104393988B (zh) | 2014-12-03 | 2014-12-03 | 一种可逆的数据加密方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104393988A CN104393988A (zh) | 2015-03-04 |
CN104393988B true CN104393988B (zh) | 2018-06-22 |
Family
ID=52611825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410727512.8A Active CN104393988B (zh) | 2014-12-03 | 2014-12-03 | 一种可逆的数据加密方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104393988B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110061967B (zh) * | 2019-03-15 | 2022-02-22 | 平安科技(深圳)有限公司 | 业务数据提供方法、装置、设备及计算机可读存储介质 |
CN111193723B (zh) * | 2019-12-13 | 2022-10-14 | 上海数据交易中心有限公司 | 数据传输、匹配、存储方法及装置、存储介质、终端 |
CN112788051A (zh) * | 2021-01-25 | 2021-05-11 | 高新兴讯美科技股份有限公司 | 一种https动态加密的传输方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5177800A (en) * | 1990-06-07 | 1993-01-05 | Aisi, Inc. | Bar code activated speech synthesizer teaching device |
CN101159546A (zh) * | 2007-11-20 | 2008-04-09 | 重庆大学 | 一种电子邮件加密收发系统 |
CN101282212A (zh) * | 2008-05-20 | 2008-10-08 | 北京方正国际软件系统有限公司 | 一种基于模板的加密解密系统与方法 |
US7991153B1 (en) * | 2008-08-26 | 2011-08-02 | Nanoglyph, LLC | Glyph encryption system and related methods |
CN102231707A (zh) * | 2011-06-27 | 2011-11-02 | 中国建设银行股份有限公司 | 一种银行网点内数据报文可靠传输的方法和系统 |
CN102790672A (zh) * | 2012-08-08 | 2012-11-21 | 浪潮集团有限公司 | 一种自适应的数据加解密的方法 |
CN103580851A (zh) * | 2013-11-13 | 2014-02-12 | 福建省视通光电网络有限公司 | 信息加密及解密方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120260108A1 (en) * | 2011-04-11 | 2012-10-11 | Steve Lee | Font encryption and decryption system and method |
-
2014
- 2014-12-03 CN CN201410727512.8A patent/CN104393988B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5177800A (en) * | 1990-06-07 | 1993-01-05 | Aisi, Inc. | Bar code activated speech synthesizer teaching device |
CN101159546A (zh) * | 2007-11-20 | 2008-04-09 | 重庆大学 | 一种电子邮件加密收发系统 |
CN101282212A (zh) * | 2008-05-20 | 2008-10-08 | 北京方正国际软件系统有限公司 | 一种基于模板的加密解密系统与方法 |
US7991153B1 (en) * | 2008-08-26 | 2011-08-02 | Nanoglyph, LLC | Glyph encryption system and related methods |
CN102231707A (zh) * | 2011-06-27 | 2011-11-02 | 中国建设银行股份有限公司 | 一种银行网点内数据报文可靠传输的方法和系统 |
CN102790672A (zh) * | 2012-08-08 | 2012-11-21 | 浪潮集团有限公司 | 一种自适应的数据加解密的方法 |
CN103580851A (zh) * | 2013-11-13 | 2014-02-12 | 福建省视通光电网络有限公司 | 信息加密及解密方法 |
Non-Patent Citations (1)
Title |
---|
RFC4648:The Base16,Base32,and Base64 Data Encodings;S.Josefsson;《IETF》;20061031;第8页至第15页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104393988A (zh) | 2015-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101295343B (zh) | 二维码多重加密防伪印刷方法 | |
CN106788995B (zh) | 文件加密方法及装置 | |
CN101894244B (zh) | 电子资料加密系统及方法 | |
CN101996298A (zh) | 加密方法及与加密方法相对应的解密方法 | |
CN106375083B (zh) | 一种基于Base64的加解密方法及其装置 | |
CN103684760A (zh) | 通信的加密和解密的方法、装置及系统 | |
CN103049777A (zh) | 二维码的安全应用方法及编解码系统 | |
CN105099652A (zh) | 数据加密、解密方法和装置 | |
CN105282090B (zh) | 一种互联网上防非法访问的公开url加密编码方法 | |
CN103095449B (zh) | 一种基于流密码的动态加密解密方法 | |
CN105893861A (zh) | 用于生成二维码的方法和系统 | |
CN106100841A (zh) | 一种基于分子加密技术的数据加密系统及方法 | |
CN104268480A (zh) | 一种xml配置文件安全保护处理方法及系统 | |
CN104393988B (zh) | 一种可逆的数据加密方法及装置 | |
CN105007256A (zh) | 用于在非信任平台上执行安全功能的安全模块 | |
CN103414727A (zh) | 针对input密码输入框的加密保护系统及其使用方法 | |
CN104023332A (zh) | 一种电子终端及其短信加密、解密方法 | |
CN103532960A (zh) | 文本加密交互方法、加密方法及装置、解密方法及装置 | |
CN103326851B (zh) | 基于单片机的一种罗盘式加密解密方法 | |
CN102882675A (zh) | 社交网站用的密码加密方法 | |
CN110990846B (zh) | 信息存储方法、设备及计算机可读存储介质 | |
CN110175462B (zh) | 一种跨平台解密方法、装置及存储介质 | |
CN104038337A (zh) | 一种基于aes128的数据加密方法 | |
CN108134799B (zh) | 新型编解码方法及其装置 | |
CN106817216A (zh) | 一种基于Zlib库和AES算法的ZIP包解压方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180823 Address after: 200436 Room 411, No. three, JIANGCHANG Road, Jingan District, Shanghai, 411 Patentee after: Shanghai wave Cloud Computing Service Co., Ltd. Address before: 100085 floor 1, C 2-1, No. 2, Shang Di Road, Haidian District, Beijing. Patentee before: Electronic information industry Co.,Ltd of the tide (Beijing) |
|
TR01 | Transfer of patent right |