一种基于敏感数字的安全存储方法及系统技术方案

技术编号:20623169 阅读:27 留言:0更新日期:2019-03-20 14:42
本发明专利技术提供一种基于敏感数字的安全存储方法及系统,属于数据处理领域。本发明专利技术的方法包括如下步骤:获取明文数据,通过加密函数对明文数据进行加密;将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;对密文数据进行运算,得到运算后的加密数据。本发明专利技术的有益效果为:实现对数据库里的数据进行加密,加密后依然可进行运算,运算结果也是加密数据,大大增加敏感数字存储的安全性。

A Secure Storage Method and System Based on Sensitive Digital

The invention provides a secure storage method and system based on sensitive digits, which belongs to the field of data processing. The method of the present invention includes the following steps: acquiring plaintext data, encrypting plaintext data by encryption function; storing encrypted data in the database's ciphertext data column while deleting the plaintext data column; and calculating the ciphertext data to obtain the encrypted data after operation. The beneficial effect of the present invention is that the data in the database can be encrypted, and the operation can still be performed after encrypting. The operation result is also encrypted data, which greatly increases the security of sensitive digital storage.

【技术实现步骤摘要】
一种基于敏感数字的安全存储方法及系统
本专利技术涉及数字加密技术,尤其涉及一种基于敏感数字的安全存储方法及系统。
技术介绍
现有的技术对能对敏感数字进行加密,在软件可以隐藏敏感数字。缺陷:对数字的加密表现在软件层面,在数据库里依然能看到数字明文;数字加密后的密文不能进行运算,运算过程能够看到数字明文,敏感数字的安全性不能保证。
技术实现思路
为解决现有技术中的问题,本专利技术提供一种基于敏感数字的安全存储方法及系统。本专利技术基于敏感数字的安全存储方法包括如下步骤:S1:获取明文数据,通过加密函数对明文数据进行加密;S2:将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;S3:对密文数据进行运算,得到运算后的加密数据。本专利技术作进一步改进,还包括解密步骤:调取数据库中的密文数据,并通过解密函数对密文数据进行解密,得到明文数据,供用户使用。本专利技术作进一步改进,在步骤S1中,定义一个数组key,保存指定的数字,作为加密类的密钥,该密钥供加密和解密时共同使用;并定义一个数组iv,保存指定的数字,作为加密类的初始化向量,所述初始化向量从所述数组iv中随机选择。本专利技术作进一步改进,所述加密函数的处理方法为:加密函数调用加密的转换运算将要加密的数字原文转变为密文字符,再将密文字符返回,其中,所述加密函数的参数为decimal类型的待加密数值,返回值为string类型的密文字符;解密的处理过程为:用解密的转换运算将要进行解密的密文字符转变为解密数值,再将解密数值返回,其中,解密参数为string类型的密文字符,返回值为decimal类型的解密数值。本专利技术作进一步改进,所述加密的转换运算是通过des的CreateEncryptor方法生成;所述解密的转换运算通过des的CreateDecryptor方法生成。本专利技术作进一步改进,步骤S2中,数据库的存储方法为:在数据库中设置数据表的列:C1和C2,如果C2的列名等于C1的列名加指定的后缀,则C2为C1的加密列,保存C1列数据加密后的密文,C1列进行加密后数据存到C2列,C1的数据清空。本专利技术作进一步改进,步骤S3中,将加解密方法引入数据库,在整个运算过程中,不会暴露算法细节,运算的处理过程为:先调用解密函数对密文字符解密,再按照业务逻辑对数字进行解密运算,运算后的数据经过加密函数加密为密文字符存储。本专利技术还提供了一种实现所述方法的系统,包括加密模块:用于获取明文数据,通过加密函数对明文数据进行加密;存储模块:用于将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;运算模块:用于对密文数据进行运算,得到运算后的加密数据。本专利技术作进一步改进,还包括解密模块:用于在客户端调取数据库中的密文数据,并通过解密函数对密文数据进行解密,得到明文数据,供用户使用。本专利技术作进一步改进,还包括定义模块:用于定义一个数组key,保存指定的数字,作为加密类的密钥,该密钥供加密和解密时共同使用;并定义一个数组iv,保存指定的数字,作为加密类的初始化向量,所述初始化向量从所述数组iv中随机选择。与现有技术相比,本专利技术的有益效果是:实现对数据库里的数据进行加密,加密后依然可进行运算,运算结果也是加密数据,保证了敏感数字存储的安全性。附图说明图1为本专利技术方法流程图;图2为本专利技术详细流程图。具体实施方式下面结合附图和实施例对本专利技术做进一步详细说明。如图1和图2所示,本专利技术本专利技术基于敏感数字的安全存储方法包括如下步骤:S1:获取明文数据,通过加密函数对明文数据进行加密;S2:将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;S3:对密文数据进行运算,得到运算后的加密数据。还包括解密步骤:调取数据库中的密文数据,并通过解密函数对密文数据进行解密,得到明文数据,供用户使用。在步骤S3中,将加解密方法引入数据库,在整个运算过程中,不会暴露算法细节,运算的处理过程为:先调用解密函数对密文字符解密,再按照业务逻辑对数字进行解密运算,运算后的数据经过加密函数加密为密文字符存储。本专利技术在软件中使用加密算法将敏感数字加密,同时使用用于自定的函数将加密算法引入到MSSQLServer数据库,支持客户按业务逻辑对加密数字进行四则运算,而不用暴露算法细节,在显示敏感数字前进行加解密操作,并将最终运算结果也以密文形式存储。实现对数据库里的数据进行加密,加密后依然可进行运算,运算结果也是加密数据,保证了敏感数字存储的安全性。本例的具体实现过程为:1、本例采用对称加密方法进行加解密操作,设置一个对称加密类CoreCryptor,应用命名空间System.Security.Cryptography。该加密类包括以下操作:(1)定义一个数组key,保存指定的数字,作为该加密类的密钥。该密钥供加密和解密时共同使用。(2)定义一个数组iv,保存指定的数字,作为该加密类的iv(初始化向量)。该iv供加密和解密时共同使用。在加解密时,随机选择数组中的数字作为初始化向量,并非固定数字,被破解的难度大大提升,增加了算法的安全性。(3)定义一个ICryptoTransform(密码变换)类型的用于加密的基本加密转换运算ENT:初始化一个RC2CryptoServiceProvider类的新实例des(数据加密算法),des的Key和iv分别等于(1)和(2)里的数组key、数组iv。然后用des的CreateEncryptor(加密者)方法生成一个基本加密运算,并且返回到ENT。(4)定义一个ICryptoTransform类型的用于解密的基本解密转换运算DET:初始化一个RC2CryptoServiceProvider的新实例des,des的Key和iv分别等于(1)和(2)里的数组key、数组iv。然后用des的CreateDecryptor方法生成一个基本解密运算,并且返回到DET。(5)设置加密函数Encrypt,该加密函数参数为decimal(十进制)类型的加密数值(需要加密的数值),返回值为string(字符串)类型的密文字符(加密数值加密后得到的字符串)。该函数调用(3)中的用于加密的转换运算ENT将要加密的数字原文转变为密文字符,再将密文字符返回。(6)设置解密函数Decyrpt,该函数参数为string类型的密文字符(需要进行解密的字符串),返回值为decimal类型的解密数值(密文字符解密后得到的原文数值)。该函数调用(4)中的用于解密的转换运算DET将要进行解密的密文字符转变为解密数值,再将解密数值返回。2、本例将加解密方法引入数据库,并对敏感数字进行安全存储,作为本专利技术的一个实施例,数据库的存储方法为:在数据库中设置数据表的列:C1和C2,如果C2的列名等于C1的列名加指定的后缀,则C2为C1的加密列,保存C1列数据加密后的密文,C1列进行加密后数据存到C2列,C1的数据清空。本例设置一个类DataCryptor,提供对数据集、表的数据加密服务。应用命名空间System.Security.Cryptography。该类处理过程包括以下步骤:(1)定义一个字符串变量EndStr,该字符串用于保存加密字段的后缀。即:有表的列C1和C2,若C2列名=C1列名+EndStr,C2列为C1列的加密列,C2列保存本文档来自技高网...

【技术保护点】
1.一种基于敏感数字的安全存储方法,其特征在于,包括如下步骤:S1:获取明文数据,通过加密函数对明文数据进行加密;S2:将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;S3:对密文数据进行运算,得到运算后的加密数据。

【技术特征摘要】
1.一种基于敏感数字的安全存储方法,其特征在于,包括如下步骤:S1:获取明文数据,通过加密函数对明文数据进行加密;S2:将加密后的数据存储在数据库的密文数据列,同时删除明文数据列;S3:对密文数据进行运算,得到运算后的加密数据。2.根据权利要求1所述的基于敏感数字的安全存储方法,其特征在于:还包括解密步骤:调取数据库中的密文数据,并通过解密函数对密文数据进行解密,得到明文数据,供用户使用。3.根据权利要求2所述的基于敏感数字的安全存储方法,其特征在于:在步骤S1中,定义一个数组key,保存指定的数字,作为加密类的密钥,该密钥供加密和解密时共同使用;并定义一个数组iv,保存指定的数字,作为加密类的初始化向量,所述初始化向量从所述数组iv中随机选择。4.根据权利要求3所述的基于敏感数字的安全存储方法,其特征在于:所述加密函数的处理方法为:加密函数调用加密的转换运算将要加密的数字原文转变为密文字符,再将密文字符返回,其中,所述加密函数的参数为decimal类型的待加密数值,返回值为string类型的密文字符;解密的处理过程为:用解密的转换运算将要进行解密的密文字符转变为解密数值,再将解密数值返回,其中,解密参数为string类型的密文字符,返回值为decimal类型的解密数值。5.根据权利要求4所述的基于敏感数字的安全存储方法,其特征在于:所述加密的转换运算是通过des的CreateEncryptor方法生成;所述解密的转换运算通过des的Creat...

【专利技术属性】
技术研发人员:帅东华
申请(专利权)人:深圳市东宝信息技术有限公司
类型:发明
国别省市:广东,44

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

1