【技术实现步骤摘要】
数据加密方法、解密方法及装置
本专利技术涉及数据处理领域,尤其涉及一种数据加密方法、解密方法及装置。
技术介绍
随着计算机技术的发展,人们普遍使用计算机进行数据的存储、传输。但不少存储传输的数据具有保密要求,因此需要对存储、传输的数据进行加密。例如,电信运行客户敏感数据信息的安全性一直是客户和运营商共同关注的问题,一旦客户的敏感数据被意外修改或泄漏,将会造成客户隐私信息被滥用,给运营商的业务收入、企业形象、客户满意度等带来重大影响,甚至影响社会稳定,造成难以估量的损失。目前电信运营商都存储了海量的客户敏感数据,传统技术中对客户敏感数据采用的是DES加密方法,系统开销大,通讯开销成本较高。比如对客户姓名使用RC2算法加密后,数据长度由原来的8位变为64位,需要对数据库字段进行扩位,大大增加了系统开销。由于使用该算法,需要额外增加存储空间,且数据加密脱敏是在数据提取-转换-加载(Extraction-Transformation-Loading,简称ETL)过程中完成的,严重影响了数据入库的速度。
技术实现思路
为了解决现有技术中数据加密后,系统开销大,通讯开销成本高的技术问题,本专利技术提出一种数据加密方法及装置、数据解密方法及装置。本专利技术的一个方面,提供一种数据加密方法,包括:获取敏感数据,判断所述敏感数据的数据类型属于字符型或数值型;若所述敏感数据的数据类型属于字符型,则提取所述敏感数据中的单个原始字符,将所述单个原始字符转换成加密字符集中的加密字符,所述敏感数据即转换为加密数据;若所述敏感数据的数据类型属于数值型,则将所述敏感数据后N位原始数字转换成N ...
【技术保护点】
一种数据加密方法,其特征在于,包括:获取敏感数据,判断所述敏感数据的数据类型属于字符型或数值型;若所述敏感数据的数据类型属于字符型,则提取所述敏感数据中的单个原始字符,将所述单个原始字符转换成加密字符集中的加密字符,所述敏感数据即转换为加密数据;若所述敏感数据的数据类型属于数值型,则将所述敏感数据后N位原始数字转换成N位加密数字,所述敏感数据即转换为所述加密数据。
【技术特征摘要】
1.一种数据加密方法,其特征在于,包括:获取敏感数据,判断所述敏感数据的数据类型属于字符型或数值型;若所述敏感数据的数据类型属于字符型,则提取所述敏感数据中的单个原始字符,将所述单个原始字符转换成加密字符集中的加密字符,所述敏感数据即转换为加密数据;若所述敏感数据的数据类型属于数值型,则将所述敏感数据后N位原始数字转换成N位加密数字,所述敏感数据即转换为所述加密数据;其中,所述将所述单个原始字符转换成加密字符集中的加密字符,所述敏感数据即转换为加密数据步骤包括:将所述加密字符集划分为M块大小相等的分区域Am(1<=m<=M),指定分区域Am+1、Am+2分别为Am的主映射区和从映射区,A1、A2分别为AM的主映射区和从映射区;计算所述单个原始字符的GBK编码值在所述加密字符集中的第一偏移量NP,所述第一偏移量NP为所述单个原始字符的GBK编码值在所述分区域Am中高位偏移的位数;根据所述敏感数据的长度值与预设的第一密钥计算所述敏感数据的第一动态偏移量OP;根据所述第一偏移量NP和所述第一动态偏移量OP计算第二偏移量;根据所述第二偏移量,获取所述单个原始字符的GBK编码值在所述分区域Am的主映射区Am+1中对应的所述加密字符,所述敏感数据即转换为加密数据;所述根据所述敏感数据的长度值与预设的第一密钥计算所述敏感数据的第一动态偏移量OP步骤包括:计算所述敏感数据的第一动态偏移量OP,所述第一动态偏移量OP等于所述敏感数据的长度值与预设的第一密钥ASCII码值求和再对所述分区域的长度取模后所得的值;所述根据所述第一偏移量NP和所述第一动态偏移量OP计算第二偏移量步骤包括:计算所述单个原始字符对应的加密字符的第二偏移量,所述第二偏移量为所述第一偏移量NP与所述第一动态偏移量OP之和;所述根据所述第二偏移量,获取所述单个原始字符的GBK编码值在所述分区域Am的主映射区Am+1中对应的所述加密字符步骤包括:计算所述加密字符的编码位,获取所述加密字符,所述加密字符的编码位为从所述单个原始字符GBK编码值所在分区域Am的主映射区Am+1的头部开始偏移所述第二偏移量个位数后对应的编码位,该编码位所对应的字符即为所述加密字符。2.根据权利要求1所述的数据加密方法,其特征在于,所述若所述敏感数据的数据类型属于字符型,则提取所述敏感数据中的单个原始字符步骤包括:循环提取所述敏感数据的每一个字符,判断提取到的字符的类型属于中文字符、英文字符、数字字符或标点符号,提取中文字符、英文字符和数字字符为需要加密的单个原始字符。3.根据权利要求1所述的数据加密方法,其特征在于,单个原始字符为中文字符时,所述中文字符的加密字符集为中文GB2312字符集。4.根据权利要求1所述的数据加密方法,其特征在于,单个原始字符为英文字符或数字字符时,所述英文字符和数字字符的加密字符集为由英文和数字组成的集合。5.根据权利要求1-4任一所述的数据加密方法,其特征在于,所述若所述敏感数据的数据类型属于数值型,则将所述敏感数据后N位原始数字转换成N位加密数字,所述敏感数据即转换为所述加密数据步骤包括:将预设的第二密钥分为N组第一分密钥Sn(1<=n<=N),并计算每个第一分密钥的ASCII码值;计算所述敏感数据后N位前的数字之和str,将每个第一分密钥的ASCII码值加上str后生成N组第二分密钥SNn(0<=n<N);对所述敏感数据后N位中的每个原始数字和对应的第二分密钥SNn求和,再加上前一位数字,并经过数字对调和移位操作生成N位加密数字;所述敏感数据后N位前的原始数字和移位后的N位加密数字组合即获得所述加密数据。6.一种数据加密装置,其特征在于,包括:第一数据类型判断模块,用于获取敏感数据,判断所述敏感数据的数据类型属于字符型或数值型;字符加密模块,用于若所述敏感数据的数据类型属于字符型,则提取所述敏感数据中的单个原始字符,将所述单个原始字符转换成加密字符集中的加密字符,所述敏感数据即转换为加密数据;数值加密模块,用于若所述敏感数据的数据类型属于数值型,则将所述敏感数据后N位原始数字转换成N位加密数字,所述敏感数据即转换为所述加密数据;所述字符加密模块包括:第一预设单元,用于将所述加密字符集划分为M块大小相等的分区域Am(1<=m<=M),指定分区域Am+1、Am+2分别为Am的主映射区和从映射区,A1、A2分别为AM的主映射区和从映射区;第一偏移量计算单元,用于计算所述单个原始字符的GBK编码值在所述加密字符集中的第一偏移量NP,所述第一偏移量NP为所述单个原始字符的GBK编码值在所述分区域Am中高位偏移的位数;第一动态偏移量计算单元,用于根据所述敏感数据的长度值与预设的第一密钥计算所述敏感数据的第一动态偏移量OP;第二偏移量计算单元,用于根据所述第一偏移量NP和所述第一动态偏移量OP计算第二偏移量;字符加密单元,用于根据所述第二偏移量,获取所述单个原始字符的GBK编码值在所述分区域Am的主映射区Am+1中对应的所述加密字符,所述敏感数据即转换为加密数据;所述第一动态偏移量计算单元还用于:计算所述敏感数据的第一动态偏移量OP,所述第一动态偏移量OP等于所述敏感数据的长度值与预设的第一密钥ASCII码值求和再对所述分区域的长度取模后所得的值;所述第二偏移量计算单元还用于:计算所述单个原始字符对应的加密字符的第二偏移量,所述第二偏移量为所述第一偏移量NP与所述第一动态偏移量OP之和;所述字符加密单元还用于:计算所述加密字符的编码位,获取所述加密字符,所述加密字符的编码位为从所述单个原始字符GBK编码值所在分区域Am的主映射区Am+1的头部开始偏移所述第二偏移量个位数后对应的编码位,该编码位所对应的字符即为所述加密字符。7.根据权利要求6所述的数据加密装置,其特征在于,所述字符加密模块还包括:单个原始字符提取单元,用于循环提取所述敏感数据的每一个字符,判断提取到的字符的类型属于中文字符、英文字符、数字字符或标点符号,提取中文字符、英文字符和数字字符为需要加密的单个原始字符。8.根据权利要求6所述的数据加密装置,其特征在于,单个原始字符为中文字符时,所述中文字符的加密字符集为中文GB2312字符集。9.根据权利要求6所述的数据加密装置,其特征在于,单个原始字符为英文字符或数字字符时,所述英文字符和数字字符的加密字符集为由英文和数字组成的集合。10.根据权利要求6-9任一所述的数据加密装置,其特征在于,所述数值加密模块包括:第一分密钥生成单元,用于将预设的第二密钥分为N组第一分密钥Sn(1<=n<=N),并计算每个第一分密钥的ASCII码值;第二分密钥生成单元,用于计算所述敏感数据后N位前的数字之和str,将每个第一分密钥的ASCII码值加上str后生成N组第二分密钥SNn(0<=n<N);加密数字生成单元,用于对所述敏感数据后N位中的每个原始数字和对应的第二分密钥SNn求和,再加上前一位数字,并经过数字对调和移位操作生成N位加密数字;数字加密单元,用于所述敏感数据后N位前的原始数字和移位后的N位加密数字组合即获得所述加密数据。11.一种数据解密方法,其特征在...
【专利技术属性】
技术研发人员:赵洪松,何鸿凌,迟建德,孙德志,朱晨,王广华,苏燕,王依兴,张硕,李杨,
申请(专利权)人:中国移动通信集团黑龙江有限公司,
类型:发明
国别省市:黑龙江;23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。