CN113392428B - 数据保护方法、装置、设备及介质 - Google Patents
数据保护方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113392428B CN113392428B CN202110722074.6A CN202110722074A CN113392428B CN 113392428 B CN113392428 B CN 113392428B CN 202110722074 A CN202110722074 A CN 202110722074A CN 113392428 B CN113392428 B CN 113392428B
- Authority
- CN
- China
- Prior art keywords
- key
- ciphertext
- query
- data
- key value
- 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 61
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000013500 data storage Methods 0.000 claims description 9
- 238000002955 isolation Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000001010 compromised effect Effects 0.000 description 4
- 238000005336 cracking Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101100203322 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SKS1 gene Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及数据处理技术领域,揭示了一种数据保护方法、装置、介质及设备,其中方法包括:接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,直至所述第一密文更新完成后,退出密钥更新模式。从而避免个人数据因加密密钥被泄露而被盗取的问题,提高了数据的安全性。
Description
技术领域
本申请涉及到数据处理技术领域,特别是涉及到一种数据保护方法、装置、设备及介质。
背景技术
随着网络技术的发展,个人数据也渐渐被定义为数据资产,个人数据安全的重要性也日益提升。对于金融公司,其数据涉及了用户的姓名、身份证号码、手机号码、银行卡号等敏感的个人数据,一旦数据库发生泄露,也就意味着用户的个人数据泄露,不仅影响公司的声誉、带来了经济损失,更影响了用户的个人数据安全。
现有技术通常采用各种加密算法通过密钥对个人数据进行加密,然而,一旦密钥被泄露,依然会导致个人数据通过泄露的密钥被盗取的安全性问题。
发明内容
本申请的主要目的为提供一种数据保护方法、装置、介质及设备,旨在解决现有技术中的个人数据被盗取的风险较大,数据安全性较低的技术问题。
为了实现上述发明目的,本申请提出一种数据保护方法,所述方法包括:
接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
进一步的,所述退出密钥更新模式之后,还包括:
接收数据查询指令,其中,所述数据查询指令包括查询权限信息、查询对象信息和查询密钥值;
校验所述查询权限信息与所述查询对象信息是否匹配;
若匹配,校验所述查询对象信息对应的查询对象是否为所述第二密文;
若是,校验所述查询密钥值与所述第二密钥值是否匹配;
若匹配,根据所述查询对象信息和所述第一查询索引在所述数据库中获取所述第二密文,并根据所述第二密钥值对所述第二密文进行解密,得到所述目标字段的第一明文。
进一步的,所述校验所述查询权限信息与所述查询对象信息是否匹配之后,还包括:
若不匹配,向产生所述数据加密存储指令的系统推送告警信息。
进一步的,所述生成所述第一密文的第一查询索引,包括:
通过加盐算法对每一所述目标字段生成一hash值,根据一所述hash值得到一所述第一查询索引;
将所述hash值写入加密信息表中,作为所述查询对象信息,其中,所述加密信息表存储在产生所述数据加密存储指令的系统中。
进一步的,所述退出密钥更新模式之后,包括:
根据预设的版本更新时间,进入密钥更新模式;
将所述第二密钥值替换为所述第三密钥值,并根据所述第三密钥值对所述第二密文进行更新;
将当前版本号替换为新的版本号。
进一步的,所述根据所述第二密钥值对所述第一密文进行更新,包括:
读取所述第一密文;
采用所述第一密钥值对所述第一密文进行解密,得到第一明文;
根据所述第二密钥值对每一所述第一明文再次加密,得到第二密文,完成所述第一密文的更新。
进一步的,所述根据所述第一密钥值对所述目标字段进行加密,包括:
根据所述第一密钥值,采用对称加密算法对所述目标字段进行加密。
本申请还提出了一种数据保护装置,包括:
指令接收模块,用于接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
数据加密模块,用于根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
数据存储模块,用于生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
密钥获取模块,用于响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
密钥更新模块,用于进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
本申请还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法。
本申请还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法。
本申请的数据保护方法、装置、介质及设备,通过接收包含目标字段和加密类型的数据加密存储指令,避免了在业务系统中直接对目标字段进行加密的情况,实现了业务系统和数据库的物理隔离,从而在业务系统被恶意入侵时也能够防止数据泄露,提高了数据存储的安全性;通过根据加密类型获取不同目标字段对应的密钥值,对不同的目标字段按照不同的密钥值进行加密,从而确保当一密钥值泄露时,采用其它密钥值加密的目标字段不被泄露;通过建立第一密文对应的第一查询索引,在确保数据库与业务系统之间的物理隔离的同时,提高了数据查询效率和准确性;通过对密钥值进行变更,避免恶意人员通过原密钥从数据库中解析出用户的敏感信息,并通过对指定更新范围的密钥进行更新,提高了密钥更新的灵活性和指向性;通过设置密钥更新模式,避免数据查询指令影响密钥更新,并且避免恶意人员使用泄露的密钥值在更新时间内也能够查询到用户平安数据的情况,从而提高密钥更新的稳定性和数据的安全性。
附图说明
图1为本申请一实施例的数据保护方法的流程示意图;
图2为本申请一实施例的数据保护装置的结构示意框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,为了实现上述发明目的,本申请提出一种数据保护方法,所述方法包括:
S1:接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
S2:根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
S3:生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
S4:响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
S5:进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
本实施例通过接收包含目标字段和加密类型的数据加密存储指令,避免了在业务系统中直接对目标字段进行加密的情况,实现了业务系统和数据库的物理隔离,从而在业务系统被恶意入侵时也能够防止数据泄露,提高了数据存储的安全性;通过根据加密类型获取不同目标字段对应的密钥值,对不同的目标字段按照不同的密钥值进行加密,从而确保当一密钥值泄露时,采用其它密钥值加密的目标字段不被泄露;通过建立第一密文对应的第一查询索引,在确保数据库与业务系统之间的物理隔离的同时,提高了数据查询效率和准确性;通过对密钥值进行变更,避免恶意人员通过原密钥从数据库中解析出用户的敏感信息,并通过对指定更新范围的密钥进行更新,提高了密钥更新的灵活性和指向性;通过设置密钥更新模式,避免数据查询指令影响密钥更新,并且避免恶意人员使用泄露的密钥值在更新时间内也能够查询到用户平安数据的情况,从而提高密钥更新的稳定性和数据的安全性。
对于步骤S1,上述数据加密存储指令通常是由涉及各种用户敏感信息的业务系统发出的,该数据加密存储指令通常包括一个或多个需要加密的目标字段,例如用户姓名、身份证号码、手机号码、银行卡号等用户敏感信息的业务字段(BUSINESS_FIELD);加密类型为全局加密、应用系统加密和场景加密,分别对应于不同的密钥值,以便于根据不同的密钥值对该目标字段进行加密。本发明中,通过接收包含目标字段和加密类型的数据加密存储指令,避免了在业务系统中直接对目标字段进行加密的情况,实现了业务系统和数据库的物理隔离,从而在业务系统被恶意入侵时也能够防止数据泄露,提高了数据存储的安全性。
对于步骤S2,上述第一密钥值(SCERET_KEY)可以为用户预先自定义并输入的,也可以为系统随机生成的;一个第一密钥值对应一个密钥范围类型(SCOPE_TYPE),该密钥范围类型是指,第一密钥值用于加密的范围,即与加密类型对应的全局(global)密钥范围、应用系统(system)密钥范围或场景(scenario)密钥范围。具体来说,若上述加密类型为全局加密,则其对应的密钥范围类型为全局(global)密钥范围,此时,获取全局(global)密钥范围的密钥值作为第一密钥值;若加密类型为全应用系统加密,则其对应的密钥范围类型为应用系统(system)密钥范围,此时,获取应用系统(system)密钥范围的密钥值作为第一密钥值;若加密类型为场景加密,则其对应的密钥范围类型为场景(scenario)密钥范围,此时,获取场景(scenario)密钥范围的密钥值作为第一密钥值。示例性地,一数据加密存储指令可以包括来自应用系统01的目标字段A1和B1,若接收到的数据加密存储指令中,加密类型为应用系统01加密,此时获取密钥范围类型为应用系统01的密钥值X1作为第一密钥,对目标字段A1和B1采用密钥值X1进行加密;若接收到的数据加密存储指令中,加密类型为全局加密,此时获取密钥范围类型为全局的密钥值X2作为第一密钥,对目标字段A1和B1采用密钥值X2进行加密。本发明中,通过根据加密类型获取不同目标字段对应的密钥值,对不同的目标字段按照不同的密钥值进行加密,从而确保当一密钥值泄露时,采用其它密钥值加密的目标字段不被泄露。
对于步骤S3,通过密钥值对目标字段加密后,得到的第一密文的数据形式往往与原目标字段不同,难以通过关键词查询等方式查询原目标字段对应的第一密文;因此本发明通过在第一密文存储进存储系统前,先生成其对应的第一查询索引,以便于后续的数据查询。具体地,上述第一查询索引可以为指向该第一密文的数据库地址信息。本发明中,在确保数据库与业务系统之间的物理隔离的同时,提高了数据查询效率和准确性。
对于步骤S4,当密钥值发生泄漏时,用户或工作人员可以发起密钥更新指令,从而对第一密钥值进行变更,避免恶意人员通过第一密钥值从数据库中解析出用户的敏感信息。上述第二密钥值为与第一密钥值不相同的一串或多串密钥,且上述第二密钥值为与第一密钥值的加密类型相同,即,若第一密钥值为全局密钥,则第二密钥值也为全局密钥,从而按照全局、应用系统或场景范围等不同的范围分别进行密钥更新,从而提高了密钥更新的灵活性和指向性。
对于步骤S5,获取到第二密钥值后,立即进入密钥更新模式,此时将系统状态(STATUS)设置为updating,代表整个密钥更新范围内的密钥值正在更新,当进入密钥更新模式时,不再响应数据查询指令,即该模式下所有的数据查询结果都返回查询失败,当更新完成后,退出密钥更新模式,将系统状态(STATUS)设置为available,代表上述密钥更新范围的数据可被查询;本发明通过设置密钥更新模式,避免数据查询指令影响密钥更新,并且避免恶意人员使用泄露的密钥值在更新时间内也能够查询到用户平安数据的情况,从而提高密钥更新的稳定性和数据的安全性。
在一个实施例中,所述退出密钥更新模式S5之后,还包括:
S61:接收数据查询指令,其中,所述数据查询指令包括查询权限信息、查询对象信息和查询密钥值;
S62:校验所述查询权限信息与所述查询对象信息是否匹配;
S63:若匹配,校验所述查询对象信息对应的查询对象是否为所述第二密文;
S64:若是,校验所述查询密钥值与所述第二密钥值是否匹配
S65:若匹配,根据所述查询对象信息和所述第一查询索引在所述数据库中获取所述第二密文,并根据所述密钥值对所述第二密文进行解密,得到所述目标字段的第一明文。
本实施例通过在数据查询之前对数据查询指令中携带的查询权限信息与查询对象信息进行匹配,避免了跨权限查询数据的情况,提高了数据查询的安全性。
对于步骤S65,通过先初始化加密解密拦截器EncryptionDecryptionInterceptor,使该加密解密拦截器调用MethodInterceptor接口,在调用第一密文的加密或解密方法时,就可以实现在调用该方法之前、调用该方法过程中、调用该方法之后对其进行控制,随后通过invoke()函数,对上述方法参数化,即,将加密和解密的方法名写入invoke()中,调用invoke()即可根据预先设置的参数选择性地调用写入invoke()的加密或解密方法,而后通过Spring框架中的AOP(Aspect OrientedProgramming,面向切面编程)机制对需要加密解密的类进行拦截,具体来说,AOP机制在运行时,能够动态地将代码切入到类的指定方法或指定位置上,而切入的位置即切入点,从而实现面向各个目标字段的加密和第二密文的解密。在具体实施方式中,首先通过调用加密解密拦截器中的invoke()方法,根据输入的参数判断,此时应该对数据进行加密还是解密,再将目标字段作为加密的类或将第一密文作为解密的类进行<aop:config>切面初始化配置,最后调用参数处理器ParamProcessor的doProcess()调用进程方法,当需要加密时,调用encrypt()加密方法,当需要解密时调用decrypt()解密方法,从而区分应当对传输的数据进行解密还是加密,提高了存储和数据查询的准确性和安全性。
在一个实施例中,所述校验所述查询权限信息与所述查询对象信息是否匹配S62之后,还包括:
S64:若不匹配,向产生所述数据加密存储指令的系统推送告警信息。
本实施例通过对于查询权限信息与查询对象信息不匹配的情况进行告警,以便于用户或工作人员及时得知无法查询数据的原因,从而重新发起查询指令,提高了总查询过程的效率。
对于步骤S64,在识别到查询权限信息与所述查询对象信息不匹配时,可认为该指令发起异常。示例性地,若该查询权限信息仅为系统一,而查询对象信息为系统二中的目标字段所对应的hash值,则可认为指令发起异常,从而向发起指令的系统告警,以便于用户或工作人员重新发起查询指令,避免了不同系统的用户或工作人员跨权限查询数据的问题,提高了数据的安全性。
在一个实施例中,所述生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中S3,包括:
S31:通过加盐算法对每一所述目标字段生成一hash值,根据一所述hash值得到一所述第一查询索引;
S32:将所述hash值写入加密信息表中,作为所述查询对象信息,其中,所述加密信息表存储在产生所述数据加密存储指令的系统中。
本实施例通过采用加盐算法对目标字段生成唯一对应的hash值,将该hash值作为查询对应的目标字段的必要条件,从而在密钥泄露的情况下也能够避免目标字段被恶意获取,进一步提高了数据的安全性。
对于步骤S31,将用户的敏感信息保存为第一密文形式时,同时生成其对应的唯一且不可逆的hash值,比如SHA256,SHA512,SHA3等.
对于步骤S32,上述hash值存储在业务系统中,当用户通过业务系统发起进行数据查询时,调用加密信息表,使用该hash值作为查询对象信息,使其与数据库汇总的索引信息进行对照,如果两个值相同,则查询认证成功,否则查询认证失败。而加盐算法中的“盐”采用生成的随机数,以防止通过“跑字典”方式批量破解,从而即便恶意人员获取到了密钥值,即便没有加密信息表也无法查询到相应的信息。
在一个实施例中,所述退出密钥更新模式S5之后,包括:
S71:根据预设的版本更新时间,进入密钥更新模式;
S72:将所述第二密钥值替换为所述第三密钥值,并根据所述第三密钥值对所述第二密文进行更新;
S73:将当前版本号替换为新的版本号。
本实施例通过按时更新所有密钥值,从而在未能及时发现密钥发生泄露的情况下也能够动态更新密钥,减小密钥泄露的损失,并通过在每一次按照预设的版本更新时间进行更新后,均替换一次版本号,以便于对版本更新的排查,防止因偶发的系统异常导致密钥更新不成功的问题,提高了系统的可靠性。
对于步骤S71,预设一定的版本更新时间,可以为一周、半个月或一个月等,每经过一版本更新时间,则对所有密钥值均进行替换,并采用新的密钥值对第一密文重新加密,从而在尚不知道密钥发生泄露的情况下也能够及时动态更新密钥,减小密钥泄露的损失。
对于步骤S73,每一次按照预设的版本更新时间进行更新后,均替换一次版本号,例如将原版本号+1,以便于工作人员检查每一次的版本更新是否正常完成,防止因偶发的系统异常导致密钥更新不成功的问题,提高了系统的可靠性。
在一个实施例中,所述根据所述第二密钥值对所述第一密文进行更新S5,包括:
S51:读取所述第一密文;
S52:采用所述第一密钥值对所述第一密文进行解密,得到第一明文;
S53:根据所述第二密钥值对每一所述第一明文再次加密,得到第二密文,完成所述第一密文的更新。
本实施例通过对第一密文解密后的数据进行重新加密,以完成密钥更新,从而在密钥值泄露的情况下,也能够防止数据被盗取和解密。
对于步骤S52,通过对解密算法首先对第一密文进行解密,由于此时已进入密钥更新模式,因此不会响应其余数据查询指令,避免第一明文被恶意人员直接获取,当解密完成后,立刻对各个第一明文采用更新密钥进行加密,从而完成对密钥值泄露或疑似泄露的第一密文的密钥动态更新;直至更新完成后,才退出密钥更新模式,重新开始响应数据查询指令,从而即便密钥值泄露,也能够及时防止数据被盗取和解密。
在一个实施例中,所述根据所述密钥值对所述目标字段进行加密S2,包括:
S21:根据所述第一密钥值,采用对称加密算法对所述目标字段进行加密。
本实施例通过对称加密算法进行加密,能够提高加密和解密速度,由于密钥值的长度和码值可以自行定义,而越长的密钥值对应的破解难度越大,因此能够通过设定长密钥值提高数据密文破解难度,从而提高了数据的安全性以及数据的存储和查询效率。
对于步骤S21,通过对称加密算法进行加密,由于对称加密算法的加密和解密的方式均相同,因此其计算量较小、加密和解密的速度快、加密和解密效率高。具体来说,本发明尤其采用AES256算法,即采用256位长度的加密密钥,首先使用替换表替换信息,再更改数据行,最后使用加密密钥的不同部分在每列上完成的基本互斥过程,通常来说密钥值越长,破解所需要的计算回合越多,加密就越安全,因此AES256算法能够大大地提高数据密文破解难度。
参照图2,本申请还提出了一种数据保护装置,包括:
指令接收模块100,用于接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
数据加密模块200,用于根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
数据存储模块300,用于生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
密钥获取模块400,用于响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
密钥更新模块500,用于进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
本实施例通过接收包含目标字段和加密类型的数据加密存储指令,避免了在业务系统中直接对目标字段进行加密的情况,实现了业务系统和数据库的物理隔离,从而在业务系统被恶意入侵时也能够防止数据泄露,提高了数据存储的安全性;通过根据加密类型获取不同目标字段对应的密钥值,对不同的目标字段按照不同的密钥值进行加密,从而确保当一密钥值泄露时,采用其它密钥值加密的目标字段不被泄露;通过建立第一密文对应的第一查询索引,在确保数据库与业务系统之间的物理隔离的同时,提高了数据查询效率和准确性;通过对密钥值进行变更,避免恶意人员通过原密钥从数据库中解析出用户的敏感信息,并通过对指定更新范围的密钥进行更新,提高了密钥更新的灵活性和指向性;通过设置密钥更新模式,避免数据查询指令影响密钥更新,并且避免恶意人员使用泄露的密钥值在更新时间内也能够查询到用户平安数据的情况,从而提高密钥更新的稳定性和数据的安全性。
在一个实施例中,还包括数据查询模块600,用于:
接收数据查询指令,其中,所述数据查询指令包括查询权限信息、查询对象信息和查询密钥值;
校验所述查询权限信息与所述查询对象信息是否匹配;
若匹配,校验所述查询对象信息对应的查询对象是否为所述第二密文;
若是,校验所述查询密钥值与所述第二密钥值是否匹配;
若匹配,根据所述查询对象信息和所述第一查询索引在所述数据库中获取所述第二密文,并根据所述第二密钥值对所述第二密文进行解密,得到所述目标字段的第一明文。
在一个实施例中,所述数据查询模块600,还用于:
若不匹配,向产生所述数据加密存储指令的系统推送告警信息。
在一个实施例中,所述数据存储模块300,还用于:
通过加盐算法对每一所述目标字段生成一hash值,根据一所述hash值得到一所述第一查询索引;
将所述hash值写入加密信息表中,作为所述查询对象信息,其中,所述加密信息表存储在产生所述数据加密存储指令的系统中。
在一个实施例中,还包括版本更新模块700,用于:
根据预设的版本更新时间,进入密钥更新模式;
将所述第二密钥值均替换为所述第三密钥值,并根据所述第三密钥值对所述第二密文进行更新;
将当前版本号替换为新的版本号。
在一个实施例中,所述密钥更新模块500,还用于:
读取所述密钥更新范围内的第一密文;
采用所述第一密钥值对所述第一密文进行解密,得到第一明文;
根据所述第二密钥值对每一所述第一明文再次加密,得到第二密文,完成所述第二密钥值的更新。
在一个实施例中,所述数据加密模块200,还用于:
根据所述第一密钥值,采用对称加密算法对所述目标字段进行加密。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于储存数据保护方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据保护方法。所述数据保护方法,包括:接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种数据保护方法,包括步骤:接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式。
上述执行的数据保护方法,本实施例通过接收包含目标字段和加密类型的数据加密存储指令,避免了在业务系统中直接对目标字段进行加密的情况,实现了业务系统和数据库的物理隔离,从而在业务系统被恶意入侵时也能够防止数据泄露,提高了数据存储的安全性;通过根据加密类型获取不同目标字段对应的密钥值,对不同的目标字段按照不同的密钥值进行加密,从而确保当一密钥值泄露时,采用其它密钥值加密的目标字段不被泄露;通过建立第一密文对应的第一查询索引,在确保数据库与业务系统之间的物理隔离的同时,提高了数据查询效率和准确性;通过对密钥值进行变更,避免恶意人员通过原密钥从数据库中解析出用户的敏感信息,并通过对指定更新范围的密钥进行更新,提高了密钥更新的灵活性和指向性;通过设置密钥更新模式,避免数据查询指令影响密钥更新,并且避免恶意人员使用泄露的密钥值在更新时间内也能够查询到用户平安数据的情况,从而提高密钥更新的稳定性和数据的安全性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (9)
1.一种数据保护方法,其特征在于,所述方法包括:
接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式;
所述根据所述第二密钥值对所述第一密文进行更新,包括:读取所述第一密文,采用所述第一密钥值对所述第一密文进行解密,得到第一明文,根据所述第二密钥值对每一所述第一明文再次加密,得到第二密文,完成所述第一密文的更新。
2.根据权利要求1所述的数据保护方法,其特征在于,所述退出密钥更新模式之后,还包括:
接收数据查询指令,其中,所述数据查询指令包括查询权限信息、查询对象信息和查询密钥值;
校验所述查询权限信息与所述查询对象信息是否匹配;
若匹配,校验所述查询对象信息对应的查询对象是否为所述第二密文;
若是,校验所述查询密钥值与所述第二密钥值是否匹配;
若匹配,根据所述查询对象信息和所述第一查询索引在所述数据库中获取所述第二密文,并根据所述第二密钥值对所述第二密文进行解密,得到所述目标字段的第一明文。
3.根据权利要求2所述的数据保护方法,其特征在于,所述校验所述查询权限信息与所述查询对象信息是否匹配之后,还包括:
若不匹配,向产生所述数据加密存储指令的系统推送告警信息。
4.根据权利要求2所述的数据保护方法,其特征在于,所述生成所述第一密文的第一查询索引,包括:
通过加盐算法对每一所述目标字段生成一hash值,根据一所述hash值得到一所述第一查询索引;
将所述hash值写入加密信息表中,作为所述查询对象信息,其中,所述加密信息表存储在产生所述数据加密存储指令的系统中。
5.根据权利要求1所述的数据保护方法,其特征在于,所述退出密钥更新模式之后,包括:
根据预设的版本更新时间,进入密钥更新模式;
将所述第二密钥值替换为第三密钥值,并根据所述第三密钥值对所述第二密文进行更新;
将当前版本号替换为新的版本号。
6.根据权利要求1所述的数据保护方法,其特征在于,所述根据所述第一密钥值对所述目标字段进行加密,包括:
根据所述第一密钥值,采用对称加密算法对所述目标字段进行加密。
7.一种数据保护装置,其特征在于,包括:
指令接收模块,用于接收数据加密存储指令,其中,所述数据加密存储指令包括目标字段和加密类型;
数据加密模块,用于根据所述加密类型获取所述目标字段对应的第一密钥值,并根据所述第一密钥值对所述目标字段进行加密,得到第一密文;
数据存储模块,用于生成所述第一密文的第一查询索引,将所述第一密文和所述第一查询索引存储至数据库中;
密钥获取模块,用于响应于所述第一密文的密钥更新指令,根据所述密钥更新指令获取第二密钥值;
密钥更新模块,用于进入密钥更新模式,根据所述第二密钥值对所述第一密文进行更新,得到第二密文,直至所述第一密文更新完成后,退出密钥更新模式,其中,所述密钥更新模式为不执行数据查询操作的模式;所述密钥更新模块,还用于:读取所述密钥更新范围内的第一密文,采用所述第一密钥值对所述第一密文进行解密,得到第一明文,根据所述第二密钥值对每一所述第一明文再次加密,得到第二密文,完成所述第二密钥值的更新。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110722074.6A CN113392428B (zh) | 2021-06-28 | 2021-06-28 | 数据保护方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110722074.6A CN113392428B (zh) | 2021-06-28 | 2021-06-28 | 数据保护方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113392428A CN113392428A (zh) | 2021-09-14 |
CN113392428B true CN113392428B (zh) | 2023-11-10 |
Family
ID=77624355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110722074.6A Active CN113392428B (zh) | 2021-06-28 | 2021-06-28 | 数据保护方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113392428B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114286131A (zh) * | 2021-12-27 | 2022-04-05 | 上海哔哩哔哩科技有限公司 | 直播连麦中主播形象模型文件的传输方法及装置 |
CN115168907B (zh) * | 2022-09-05 | 2022-11-29 | 盛业信息科技服务(深圳)有限公司 | 保护数据隐私的数据匹配方法、系统、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110831A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种数字密钥保护方法 |
CN108427889A (zh) * | 2018-01-10 | 2018-08-21 | 链家网(北京)科技有限公司 | 文件处理方法及装置 |
CN109858263A (zh) * | 2019-01-21 | 2019-06-07 | 北京城市网邻信息技术有限公司 | 数据存储检索方法、装置、电子设备及存储介质 |
CN110427779A (zh) * | 2019-08-13 | 2019-11-08 | 威富通科技有限公司 | 一种数据库表字段的加、解密方法及数据服务器 |
CN112883388A (zh) * | 2021-02-05 | 2021-06-01 | 浙江大华技术股份有限公司 | 文件加密方法及装置、存储介质、电子装置 |
CN112966303A (zh) * | 2021-03-10 | 2021-06-15 | 中国民航信息网络股份有限公司 | 数据的加解密方法及装置、电子设备、计算机存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918937A (zh) * | 2017-12-13 | 2019-06-21 | 航天信息股份有限公司 | 一种信息处理方法、装置、设备及介质 |
CN108880806A (zh) * | 2018-08-01 | 2018-11-23 | 深圳三角形科技有限公司 | 加密、解密方法、芯片及可读存储介质 |
CN109474423B (zh) * | 2018-12-10 | 2022-10-21 | 平安科技(深圳)有限公司 | 数据加解密方法、服务器及存储介质 |
-
2021
- 2021-06-28 CN CN202110722074.6A patent/CN113392428B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110831A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种数字密钥保护方法 |
CN108427889A (zh) * | 2018-01-10 | 2018-08-21 | 链家网(北京)科技有限公司 | 文件处理方法及装置 |
CN109858263A (zh) * | 2019-01-21 | 2019-06-07 | 北京城市网邻信息技术有限公司 | 数据存储检索方法、装置、电子设备及存储介质 |
CN110427779A (zh) * | 2019-08-13 | 2019-11-08 | 威富通科技有限公司 | 一种数据库表字段的加、解密方法及数据服务器 |
CN112883388A (zh) * | 2021-02-05 | 2021-06-01 | 浙江大华技术股份有限公司 | 文件加密方法及装置、存储介质、电子装置 |
CN112966303A (zh) * | 2021-03-10 | 2021-06-15 | 中国民航信息网络股份有限公司 | 数据的加解密方法及装置、电子设备、计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113392428A (zh) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110365670B (zh) | 黑名单共享方法、装置、计算机设备和存储介质 | |
CN109325342B (zh) | 身份信息管理方法、装置、计算机设备和存储介质 | |
CN113392428B (zh) | 数据保护方法、装置、设备及介质 | |
CN111680305A (zh) | 一种基于区块链的数据处理方法、装置及设备 | |
CN109587103B (zh) | 用于执行云端系统中的应用的方法、装置及云端系统 | |
US20140289535A1 (en) | Cryptographic System and Methodology for Securing Software Cryptography | |
JP4876169B2 (ja) | データを安全に記憶するための方法、システム、およびコンピュータ・プログラム | |
CN109600377B (zh) | 防越权方法、装置、计算机设备及存储介质 | |
CN112632581A (zh) | 用户数据处理方法、装置、计算机设备及存储介质 | |
CN105577379A (zh) | 一种信息处理方法及装置 | |
CN110750810A (zh) | 数据脱敏方法、装置、计算机设备和存储介质 | |
CN104063788A (zh) | 一种移动平台可信支付系统及方法 | |
CN112800393B (zh) | 授权认证、软件开发工具包生成方法、装置及电子设备 | |
US20180077135A1 (en) | Eliminating abuse caused by password reuse in different systems | |
CN113472716A (zh) | 系统访问方法、网关设备、服务器、电子设备及存储介质 | |
CN113239853A (zh) | 一种基于隐私保护的生物识别方法、装置及设备 | |
CN112016122A (zh) | 网页数据处理方法、装置、计算机设备及存储介质 | |
CN114428784A (zh) | 数据存取方法、装置、计算机设备及存储介质 | |
CN111917711B (zh) | 数据访问方法、装置、计算机设备和存储介质 | |
CN112329063A (zh) | 敏感信息的加密方法、装置、计算机设备和存储介质 | |
EP4322095A1 (en) | Resource transfer | |
CN113992359A (zh) | 用户信息的加密控制方法、装置、计算机设备和存储介质 | |
CN115168907B (zh) | 保护数据隐私的数据匹配方法、系统、设备及存储介质 | |
CN115102795B (zh) | 一种通信安全验证方法及系统 | |
Ziegler et al. | Do you think your passwords are secure? |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20231009 Address after: Room 3605, Floor 5, Building 3, Micro World, No. 23, Century Avenue, Liuwu New District, Lhasa, Xizang Autonomous Region, 851414 Applicant after: Xizang Liansa Intelligent Technology Co.,Ltd. Address before: 200000 floor 15, No. 1333, Lujiazui Ring Road, Shanghai pilot Free Trade Zone Applicant before: Weikun (Shanghai) Technology Service Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |