[发明专利]一种基于传统分组密码的保持格式加密方法有效
申请号: | 201810574634.6 | 申请日: | 2018-06-06 |
公开(公告)号: | CN108768617B | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 谢明明;彭长根;刘波涛;吴睿雪;丁红发 | 申请(专利权)人: | 贵州大学 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/08 |
代理公司: | 贵阳中新专利商标事务所 52100 | 代理人: | 胡绪东 |
地址: | 550025 贵州*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 传统 分组 密码 保持 格式 加密 方法 | ||
本发明公开了一种基于传统分组密码的保持格式加密方法。本发明设计了一种保持数字型和字母型混合格式的加密方法,该加密方法通过构造替换表实现数字和字母与比特串之间的转化,使用了Feistel网络结构,在轮运算中使用了传统的分组密码算法,保障算法的安全性,在轮运算前后设计了压缩映射运算,不但保障了加密后的数据在指定格式范围内,也在整体上保留了Feistel网络结构加密与解密过程一致的特点,最终加密结果的长度与明文保持一致。用户根据实际应用场景需求,可以选择不同的替换表和选择不同的分组密码算法对数据进行加密和解密。该加密方法保障了数据在传输和存储阶段的安全,并且不会破坏数据库结构和业务系统功能。
技术领域
本发明属于隐私保护数据加密领域,具体涉及一种基于传统分组密码的保持格式的加密方法,该方法可以应用于电子商务等需要保护数字型和字母型格式数据的场景。
背景技术
随着电子商务平台的快速发展,网上交易、手机银行等服务给人们(用户)的生活带来了许多便利。在这些服务中存在着这样一类敏感数据,其特征是内容少,价值高,是攻击者重点窃取的数据,如电子交易过程中发挥重要的身份认证作用的验证码,在传输和存储阶段需要进行保护,一旦被窃取,极大可能会造成用户财产损失。密码技术是保障数据安全性的最有效方法之一,这类敏感数据往往会包含一定的格式,如:固定长度、纯数字、数字与字母混合等,传统的加密算法(如:AES)会破坏数据的格式,会出现加密后的数据与原有数据长度不等、包含除原有格式之外的其他字符等现象,而且会影响数据库结构和业务系统功能。因此,对这类敏感数据做到保持格式加密不仅可以保证数据的安全传输和存储,而且可以让窃取者无法判断数据的真伪,也为进一步追踪窃取者提供基础技术手段。
发明内容
本发明目的是提供一种基于传统分组密码的保持格式加密方法,它能够解决包含数字和字母的数据在加密之后仍然保持原数据格式的特征。
本发明为实现上述目的,通过以下技术方案实现:一种基于传统分组密码的保持格式加密方法包括以下步骤:
S1:设明文的长度为n,构造替换表T,将明文中的数字、大写字母和小写字母替换成{0,1,2,…,61}中数,并依次将每一位数转化为6位二进制比特串,得到长度为6n的明文m;
S2:选择一种分组长度大于3n的分组密码算法(Block cipher algorithm),记为E,并选取与E对应长度的密钥Key,将密钥Key进行密钥扩展,得到key0,key1,key2,…,keyr共r+1个子密钥,除key0外,每一个子密钥的长度与分组密码算法E的密钥长度相同,并根据子密钥key0计算得到两个校验码check1,check2,校验码不需要进行传输,解密不使用校验码,明文加密之后校验码可销毁;
S3:将明文m与子密钥key0进行f1运算,即m=f1(m,key0),经过轮函数F的运算,即c=F(m),得到密文c,将密文c与子密钥key0进行f2运算,即c=f2(c,key0),然后按每6位转化为十进制,并根据替换表T变换成明文格式,此时完成明文加密,如果得到加密后的结果包含校验码中的一个或两个,则更换密钥重新进行加密操作;
S4:解密过程与加密过程相似,不同之处是在轮运算中解密过程中子密钥使用的顺序与加密过程相反。
进一步,所述步骤S1包括如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵州大学,未经贵州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810574634.6/2.html,转载请声明来源钻瓜专利网。