CN116132079A - 数据处理方法及装置 - Google Patents
数据处理方法及装置 Download PDFInfo
- Publication number
- CN116132079A CN116132079A CN202210950280.7A CN202210950280A CN116132079A CN 116132079 A CN116132079 A CN 116132079A CN 202210950280 A CN202210950280 A CN 202210950280A CN 116132079 A CN116132079 A CN 116132079A
- Authority
- CN
- China
- Prior art keywords
- data
- index
- encryption
- plaintext
- ciphertext
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 66
- 238000013507 mapping Methods 0.000 claims abstract description 97
- 238000000034 method Methods 0.000 claims abstract description 69
- 238000006243 chemical reaction Methods 0.000 claims description 74
- 230000006870 function Effects 0.000 claims description 50
- 238000012545 processing Methods 0.000 claims description 47
- 238000013500 data storage Methods 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012216 screening Methods 0.000 claims description 14
- 230000006798 recombination Effects 0.000 claims description 11
- 238000005215 recombination Methods 0.000 claims description 11
- 238000005336 cracking Methods 0.000 abstract description 22
- 230000000694 effects Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 31
- 238000010586 diagram Methods 0.000 description 19
- 230000008521 reorganization Effects 0.000 description 18
- 230000001960 triggered effect Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Document Processing Apparatus (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例公开了一种数据处理方法及装置。所述方法包括:将明文数据包括的至少一个字符数据分别转换为第一索引数据;根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个所述第一索引数据对应的第一索引字符;确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据第一索引字符确定,第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。该技术方案能够提升数据的保护效果,增加密文数据的破解难度。
Description
技术领域
本公开涉及数据安全技术领域,尤其涉及一种数据处理方法及装置。
背景技术
目前,对敏感数据的保护是各大企业非常看重的一项关键技术。对于这类敏感数据,企业在使用时通常会采用各种加密手段做加密处理。数据库作为企业互联网系统中必不可少的核心技术之一,主要用来存储企业内部的重要数据,对于企业来说,数据库中存储的数据的安全性无疑是非常重要的,尤其是企业内部的商业数据,可能数据就是企业的根本,因此,在将数据存储至数据库中之前,首先需要对数据进行加密。相关技术中,通常采用对称加密、非对称加密、透明加密、非透明加密等方式对数据进行加密,这些加密方式均过于简单,很难对敏感数据起到有效的保护作用。
发明内容
本申请实施例的目的是提供一种数据处理方法及装置,用以解决现有的数据保护效果较差的问题。
为解决上述技术问题,本申请实施例是这样实现的:
一方面,本申请实施例提供一种数据处理方法,包括:
根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个所述第一索引数据对应的第一索引字符;
确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
采用本申请实施例的技术方案,通过首先将明文数据包括的至少一个字符数据分别转换为第一索引数据,然后根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符,进而根据明文数据对应的第一加密信息对第一索引字符串进行加密,并将加密得到的索引密文数据和第一加密信息对应的第一加密标识信息进行组合,得到明文数据对应的目标密文数据。可见,该技术方案在对明文数据进行加密时,并非是采用单一的加密方式或者直接对明文数据进行加密,而是先对明文数据进行多次转换,如转换为第一索引数据、再转换为第一索引字符,进而再对转换后得到的第一索引字符串进行加密,由于明文数据的数据转换过程不易被外人破解,且通过结合数据转换过程和数据加密方式,使得明文数据被赋予多重保护,因此能够增加目标密文数据的破解难度,提升数据安全性。此外,由于目标密文数据是通过将第一加密标识信息和索引密文数据组合后得到的,也即,目标密文数据中隐含了加密标识信息,使得具有获取明文数据权限的用户能够基于目标密文数据中隐含的加密标识信息确定出对应的加密信息,从而便于用户将目标密文数据还原为明文数据,确保明文数据的加密具有可还原性。
另一方面,本申请实施例提供一种数据处理方法,包括:
对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
采用本申请实施例的技术方案,通过将目标密文数据解析为第一加密标识信息和索引密文数据,并利用基于第一加密标识信息所确定的第一解密信息对索引密文数据进行解密,得到第一索引字符串;进而将第一索引字符串包括的每个第一索引字符转换为对应的第一索引数据,再进一步将每个第一索引数据转换为对应的字符数据,根据每个字符数据确定出目标密文数据对应的明文数据。可见,该技术方案在对目标密文数据进行解密时,首先需要根据目标密文数据中隐含的加密标识信息确定出解密信息,由于加密标识信息在目标密文数据中的隐含方式(如隐含位置)不易被外人获知,因此使得目标密文数据的破解难度加大。进一步地,在利用解密信息对索引密文数据解密后,得到的并非是明文数据本身,而是明文数据对应的第一索引字符串,只有对第一索引字符串中包括的每个第一索引字符进行多次转换过程(如转换为第一索引数据、再转换为字符数据)后,才可得到明文数据本身。由于目标密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了目标密文数据的破解难度,提升了数据安全性。
再一方面,本申请实施例提供一种数据处理方法,包括:
响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则通过上述一方面所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
采用本申请实施例的技术方案,在将明文数据存储至目标数据库之前,首先确定明文数据对应的目标字段,若目标字段属于预设的敏感字段,则需要按照上述一方面所述的数据处理方法对明文数据进行加密,并将加密后得到的密文数据存储至目标数据中与目标字段对应的位置。可见,该技术方案通过有针对性地对敏感字段的明文数据进行加密后存储,使得敏感字段对应的数据的安全性得以确保。此外,由于对明文数据采用了结合数据转换过程和数据加密方式进行多重保护的方式,因此相较于单一的加密方式或者直接对明文数据进行加密的方式而言,增加了目标数据库中密文数据的破解难度,从而确保目标数据库中数据的安全性。
再一方面,本申请实施例提供一种数据处理方法,包括:
响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
通过上述另一方面所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
采用本申请实施例的技术方案,在从目标数据库中获取敏感字段对应的数据时,并非是直接获取到明文数据,而是获取到明文数据对应的密文数据,需要按照上述另一方面所述的数据处理方法对密文数据进行解密,才可获取到明文数据。可见,该技术方案通过有针对性地将敏感字段对应的数据以密文数据的形式存储,使得敏感字段对应的数据的安全性得以确保。此外,由于目标数据库中存储的密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了密文数据的破解难度,从而提升目标数据库中数据的安全性。
再一方面,本申请实施例提供一种数据处理装置,包括:
第一转换模块,用于根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
第一确定模块,用于根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引数据对应的第一索引字符;
第一加密模块,用于确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
组合模块,用于将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
再一方面,本申请实施例提供一种数据处理装置,包括:
解析模块,用于对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
第一解密模块,用于根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
第二确定模块,用于根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
第二转换模块,用于根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
再一方面,本申请实施例提供一种数据处理装置,包括:
第三确定模块,用于响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
第二加密模块,用于若所述目标字段属于预设的敏感字段,则通过上述一方面所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
存储模块,用于将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
再一方面,本申请实施例提供一种数据处理装置,包括:
第四确定模块,用于响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
获取模块,用于若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
第二解密模块,用于通过上述另一方面所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
再一方面,本申请实施例提供一种数据处理设备,包括处理器和与所述处理器电连接的存储器,所述存储器存储有计算机程序,所述处理器用于从所述存储器调用并执行所述计算机程序以实现上述数据处理方法。
再一方面,本申请实施例提供一种存储介质,用于存储计算机程序,所述计算机程序能够被处理器执行以实现上述数据处理方法。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请一实施例的一种数据处理方法的示意性流程图;
图2是根据本申请一具体实施例的一种数据处理方法的示意性原理图;
图3是根据本申请另一实施例的一种数据处理方法的示意性流程图;
图4是根据本申请再一实施例的一种数据处理方法的示意性流程图;
图5是根据本申请再一实施例的一种数据处理方法的示意性流程图;
图6是根据本申请一实施例的一种数据处理装置的示意性框图;
图7是根据本申请另一实施例的一种数据处理装置的示意性框图;
图8是根据本申请再一实施例的一种数据处理装置的示意性框图;
图9是根据本申请再一实施例的一种数据处理装置的示意性框图;
图10是根据本申请一实施例的一种数据处理设备的示意性框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
在数据安全领域,数据的安全性对各大企业或者个人而言非常重要。相关技术中,通常采用一种或多种技术的组合对数据进行加密,例如对称加密、非对称加密、透明加密(即自动加密)、非透明加密(即非自动加密)等加密方式。经过加密后的数据存储至数据库中,可确保数据库中数据的安全性。下面将数据写入数据库的场景作为示例,列举两种常见的加密方式:第一种方式、针对某些自带加密函数的数据库,如MySQL(关系型数据库管理系统)数据库中自带的加密函数ENCODE(),通过将需要加密的数据和密钥以参数的形式输入加密函数ENCODE(),即可返回加密后的数据,然后将加密后的数据写入数据库中。第二种方式、通过计算机中的软件对需要加密的数据进行加密,并将加密后的数据组装成sql(Structured Query Language,结构化查询语言)之后再写入数据库中。显然,上述两种常见的加密方式均比较简单,对数据保护力度较低。并且,用户需要自己维护密钥,在敏感数据的数据量较大场景中,维护大量密钥对用户而言十分不便,且管理起来较为复杂。为了提升数据保护力度,本申请实施例提供了一种数据处理方法,通过首先将明文数据包括的字符数据转换为索引数据,然后根据预先创建的索引字符和索引数据之间的映射关系,确定每个索引数据对应的索引字符,进而根据明文数据对应的加密信息对索引字符串进行加密,从而提供一种通过结合数据转换过程和数据加密方式的数据保护方案,使得明文数据被赋予多重保护,增加了密文数据的破解难度,提升数据安全性。进一步地,为了方便用户将密文数据还原为明文数据,本申请实施例提供的数据处理方法中,通过将加密后得到的索引密文数据和加密信息对应的加密标识信息进行组合,使得加密标识信息被隐含在明文数据对应的密文数据中,从而使用户想要还原明文数据时,只需根据密文数据中隐含的加密标识信息确定出对应的加密信息,即可基于加密信息结合数据转换方式将密文数据还原为明文数据,确保明文数据的加密具有可还原性,且无需用户维护密钥。
本申请实施例提供的数据处理方法可由数据处理设备执行,或者由安装于数据处理设备中的软件执行,具体地,数据处理设备可以是终端设备或者服务端设备。下面详细介绍本申请实施例提供的数据处理方法。
图1是根据本申请一实施例的一种数据处理方法的示意性流程图,如图1所示,该方法包括:
S102,根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据。
其中,明文数据包括至少一个字符数据,字符数据指的是信息单位,简单来讲,一个汉字、一个字母或一个数字均可以认为是一个字符数据。例如,明文数据“Man”包括M、a、n三个字符数据。
索引数据和字符数据之间的转换算法可以是单一的一种算法,也可以是多种算法的结合。可选地,转换算法为单一的一种算法,则转换算法可理解为索引数据和字符数据之间的映射关系,该映射关系可以是一一对应、多对一或者一对多的映射关系。根据索引数据和字符数据之间的映射关系,可直接将字符数据转换为对应的第一索引数据。
可选地,索引数据和字符数据之间的转换算法为多种算法的结合,这种情况下,将字符数据转换为第一索引数据时,需要先将字符数据转换为至少一个中间数据(如下述实施例中的第一类数据、第二类数据等),最后再将中间数据转换为第一索引数据。
S104,根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符。
其中,索引字符和索引数据之间的第一映射关系可以由用户自定义创建,也可以采用现有的规范性编码方式表征,例如标准base64编码算法,是一种常见的用于传输8比特字节码的编码方式,包括64个用于表示二进制数据的字符。具体地,标准base64编码表中包括64个数值(0-63)和字符之间的映射关系,则可将标准base64编码表中的64个数值作为索引数据,并将标准base64编码表中的字符作为索引字符,从而,标准base64编码表即为索引字符和索引数据之间的第一映射关系。可选地,索引字符和索引数据之间的第一映射关系还可以基于规范性编码方式进行改良,例如在标准base64编码算法的基础上进行改良,使得标准base64编码算法中的64个数值和字符之间的映射关系发生改变。
可选地,在第一映射关系创建完成之后,为确保数据加密效果,可以每隔一段时间对第一映射关系进行一次更新。第一映射关系的更新方式有多种,可选地,将索引字符和索引数据之间的映射关系进行有规律地重新排列,例如索引数据不变、同时将每相邻的两位索引字符对调,从而使索引数据和索引字符之间的映射关系发生改变。
S106,确定明文数据对应的第一加密信息和第一加密标识信息,并根据第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,第一索引字符串根据第一索引字符确定,第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定。
其中,若明文数据仅对应有一个第一索引字符,则第一索引字符即为第一索引字符串。若明文数据对应有多个第一索引字符,则多个第一索引字符的组合即为第一索引字符串。
根据第一加密信息对第一索引字符串进行加密时,可采用现有的任一种加密方式进行加密。例如,可以直接利用第一加密信息对第一索引字符串进行加密。或者,可以利用现有的加密器进行加密,具体地,将第一加密信息和第一索引字符串以参数形式输入加密器,加密器的输出即为索引密文数据。再或者,可以采用较为复杂的加密算法进行加密,例如AES128(Advanced Encryption Standard,高级加密算法),AES128的加密原理为公知技术,此处不过多赘述。
S108,将第一加密标识信息和索引密文数据进行组合,得到明文数据对应的目标密文数据。
该步骤中,第一加密标识信息和索引密文数据的组合方式可以有多种。可选地,可直接将第一加密标识信息和索引密文数据进行拼接,本实施例对第一加密标识信息和索引密文数据的拼接方式不作限定,例如可以是第一加密标识信息在前、索引密文数据在后的拼接方式,也可以是索引密文数据在前、第一加密标识信息在后的拼接方式。可选地,可将第一加密标识信息添加至索引密文数据中的预设位置,该预设位置可以是索引密文数据中的任意位置,例如索引密文数据的首位数据之前、索引密文数据的最后一位数据之后、索引密文数据中相邻的两位数据之间(如第n位数据和第n+1位数据之间)等。
采用本申请实施例的技术方案,通过首先将明文数据包括的至少一个字符数据分别转换为第一索引数据,然后根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符,进而根据明文数据对应的第一加密信息对第一索引字符串进行加密,并将加密得到的索引密文数据和第一加密信息对应的第一加密标识信息进行组合,得到明文数据对应的目标密文数据。可见,该技术方案在对明文数据进行加密时,并非是采用单一的加密方式或者直接对明文数据进行加密,而是先对明文数据进行多次转换,如转换为第一索引数据、再转换为第一索引字符,进而再对转换后得到的第一索引字符串进行加密,由于明文数据的数据转换过程不易被外人破解,且通过结合数据转换过程和数据加密方式,使得明文数据被赋予多重保护,因此能够增加目标密文数据的破解难度,提升数据安全性。此外,由于目标密文数据是通过将第一加密标识信息和索引密文数据组合后得到的,也即,目标密文数据中隐含了加密标识信息,使得具有获取明文数据权限的用户能够基于目标密文数据中隐含的加密标识信息确定出对应的加密信息,从而便于用户将目标密文数据还原为明文数据,确保明文数据的加密具有可还原性。
在一个实施例中,执行根据预设的索引字符和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据的步骤时,可具体执行为以下步骤A1-A4:
步骤A1、根据预设的第一类数据转换方式,将每个字符数据分别转换为第一类数据。
可选地,第一类数据转换方式可以是ASCII(American Standard Code forInformation Interchange,美国信息交换标准代码)编码算法,第一类数据为ASCII码。ASCII编码算法定义了128个指定字符的编码方式。在使用ASCII编码算法将明文数据中的每个字符数据转换为第一类数据(即ASCII码)时,可将明文数据中的字符数据和ASCII表中定义的指定字符进行匹配,并将匹配到的指定字符对应的ASCII码,作为字符数据对应的第一类数据。由于ASCII编码算法以及ASCII表已是公知技术,因此不过多赘述。
步骤A2、根据第一类数据和第二类数据之间的第三映射关系,确定明文数据对应的每个第一类数据对应的第二类数据。其中,每个第二类数据包括N位数据,N为大于或等于1的整数。
为提升数据保护力度,第一类数据和第二类数据的表征方式可不同。可选地,第一类数据为ASCII码,第二类数据为二进制数据。由于ASCII码采用十进制数表示,因此可基于十进制数和二进制数之间的转换方式,将ASCII码转换为二进制数据,从而实现将第一类数据转换为对应的第二类数据。
可选地,第二类数据中包括多个字符数据,可按照第二类数据所包括的字符数据的个数来确定第二类数据的位数,其中,每个字符数据被认为是一位数据。因此,第二类数据包括的字符数据的个数即为第二类数据的位数,即,第二类数据包括N位数据,N为第二类数据包括的字符数据的个数。
在第二类数据为二进制数据的情况下,二进制数据中的每个二进制字符即为第二类数据的一位数据。例如,第二类数据“011”包括0、1、1共三位数据。
步骤A3、按照预设的数据重组规则对第二类数据进行重组,得到重组后的每个第二类数据;重组后的每个第二类数据包括M位数据,M与N的值不同,M为大于或等于1的整数。
该步骤中,重组指的是改变第二类数据的位数。通过执行步骤A2,得到的每个第二类数据包括N位数据,通过执行步骤A3之后,得到的重组后的第二类数据包括M位数据。
可选地,数据重组规则可以是:按照每个第二类数据中数据位数从高到低的顺序,依次将相邻的每M位数据作为一组进行划分,从而得到重组后的每个第二类数据。
若明文数据仅对应有一个第二类数据,则可通过减小第二类数据的数据位数来重组第二类数据,例如,对包含6位数据的第二类数据进行重组,得到重组后的两个第二类数据,每个第二类数据包含3位数据,其中,N=6,M=3。
若明文数据对应有多个第二类数据,则可通过减小或增大第二类数据的数据位数来重组第二类数据。假设N=6,M=4,则第一个第二类数据中的后2位数据需要和第二个第二类数据中的前2位数据进行组合,以使重组后的每个第二类数据中均包括4位数据。例如,明文数据对应有2个第一类数据,根据第一类数据和第二类数据之间的第三映射关系,将2个第一类数据分别转换为对应的第二类数据:“011000”和“011011”,若N=6,M=4,则通过重组后,可得到以下第二类数据:“0110”、“0001”和“1011”。
除上述示例的数据重组规则之外,也可预设其它的数据重组规则。例如,按照每个第二类数据中数据位数从低到高的顺序,依次将相邻的每M位数据作为一组进行划分;或者,先将每个第二类数据按照数据位数从低到高或从高到低的顺序排列,然后采用跳跃式的重组方式来重组第二类数据,跳跃式的重组方式即为被选取的数据位数不相邻,比如依次选取偶数位数上的M位数据,并将选取出的M位数据重组为一个新的第二类数据。例如,将每个第二类数据按照数据位数从低到高或从高到低的顺序排列之后,选取第2、4、6、8……位数据(共M位)重组为新的第二类数据。
步骤A4、根据第二类数据和索引数据之间的第四映射关系,确定重组后的每个第二类数据对应的第一索引数据。
该步骤中,由于第二类数据经过重组后,第二类数据的数据位数发生改变,因此即使第一类数据和索引数据均为十进制数据,二者的值也是不同的。可选地,第一类数据为ASCII码,第二类数据为二进制数据,索引数据为与ASCII码不同的十进制数据。
本实施例中,通过将明文数据中包括的字符数据先转换为第一类数据,然后再将第一类数据转换为第二类数据,进而对第二类数据进行重组,以及根据第二类数据和索引数据之间的映射关系,确定重组后的第二类数据对应的第一索引数据。由于字符数据转换为第一索引数据的过程并不是单一过程,而是经过多次不同类型数据之间的转换后实现,因此对明文数据的保护力度得到加强,即使第一索引数据被泄露,也很难被还原为明文数据,从而确保明文数据的安全性。此外,由于在根据第二类数据确定对应的第一索引数据时,并非是根据初始的第二类数据来确定,而是对第二类数据按照不同的数据位数进行了重组,从而在对字符数据进行多次转换的基础上再增加一重数据保护手段,从而大大提升明文数据的安全性。
在一个实施例中,明文数据对应的第一加密信息可基于预设密钥库确定。预设密钥库中包括多个加密信息和加密标识信息之间的第二映射关系。基于此,可从预设密钥库中筛选出一个加密信息作为明文数据对应的第一加密信息,筛选出的加密信息对应的加密标识信息,即为明文数据对应的第一加密标识信息。
预设密钥库中的每个加密信息为一个密钥,可以是对称密钥或者非对称密钥。可选地,可通过现有的密码生成器随机生成多个密钥,并基于随机生成的多个密钥创建预设密钥库。加密信息对应的加密标识信息可以是数字、字母、图形等任一种或多种标识,例如,可采用数字“1、2、3……n”作为加密标识信息,或者可采用字母“a、b、c”等作为加密标识信息,再或者,采用数字和字母的结合“1、2、3……a、b、c……”作为加密标识信息。需要说明的是,为便于理解,这里列举的加密标识信息均较为简单,在实际应用中,加密标识信息可以是更为复杂的表征方式,例如a12、>2p-1等等。根据加密标识信息,能够准确、唯一地确定出对应的加密信息。
可选地,可按照预设的密钥筛选方式,从预设密钥库中筛选出一个加密信息作为第一加密信息。密钥筛选方式可以是以下任一种:随机筛选方式、按序筛选方式(比如上一次选取了预设密钥库中的第n个密钥信息,则本次可选取第n+1个密钥信息)等。
本实施例中,由于预设密钥库包括多个加密信息,因此按照预设的筛选方式筛选出的第一加密信息不易被外人获知。尤其是存在多个明文数据需要加密的情况下,选用多个不同的加密信息分别对不同明文数据对应的第一索引字符串进行加密,更能增加外人获知加密信息的难度,从而确保数据的安全性。
下面以明文数据“Man”为例,详细说明本申请提供的数据处理方法。
图2是根据本申请一具体实施例的一种数据处理方法的示意性原理图。如图2所示,首先,根据预设的索引数据和字符数据之间的转换算法,将明文数据“Man”包括的每个字符数据转换为第一索引数据。具体地,索引数据和字符数据之间的转换算法包括多个转换步骤,第一步是将字符数据转换为第一类数据,第二步是将第一类数据转换为第二类数据,第三步是将第二类数据进行重组,第四步是将重组后的第二类数据转换为第一索引数据。本实施例中,第一类数据转换方式为ASCII编码算法,第一类数据为ASCII码,第二类数据为包括8位数据的二进制数据。索引数据为十进制数据,重组后的第二类数据包括6位数据。
明文数据“Man”包括M、a、n三个字符数据,针对这三个字符数据,分别和ASCII表中定义的指定字符进行匹配,并将匹配到的指定字符对应的ASCII码,作为字符数据对应的第一类数据。具体地,通过将每个字符数据和ASCII表进行匹配,可得到字符数据“M”对应的ASCII码为77,字符数据“a”对应的ASCII码为97,字符数据“n”对应的ASCII码为100。
然后,根据二进制数据和十进制数据之间的转换方式(即第一类数据和第二类数据之间的第三映射关系),将ASCII码转换为二进制数据(即第二类数据)。本实施例中,通过将ASCII码77、97、100进行转换,可得到以下二进制数据(即第二类数据):01001101、01100001、01101110。可以看出,每个第二类数据包括8位数据,每位数据即为一个二进制字符。
然后,按照预设的数据重组规则,对上一步转换后得到的二进制数据(即第二类数据)进行重组。本实施例中,数据重组规则为:按照每个第二类数据中数据位数从高到低的顺序,依次将相邻的每M位数据作为一组进行划分,从而得到重组后的每个第二类数据,其中,M=6。通过将二进制数据“01001101”、“01100001”以及“01101110”进行重组,可得到以下二进制数据“010011”、“010110”、“000101”以及“101110”。可以看出,每个重组后的第二类数据包括6位数据。
然后,根据二进制数据和十进制数据之间的转换方式(即第二类数据和索引数据之间的第四映射关系),确定重组后得到的每个二进制数据对应的十进制数据(即第一索引数据)。本实施例中,通过将重组后得到的每个二进制数据进行转换,可得到以下十进制数据:19、22、5、46。可以看出,虽然第一索引数据和第一类数据均以十进制数据来表征,但是经过对第二类数据的重组过程,使得第一索引数据和第一类数据的值不同,从而提升字符数据被还原的难度,进而增强对明文数据的保护力度。
在将明文数据包括的每个字符数据转换为第一索引数据之后,根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符。本实施例中,索引字符和索引数据之间的第一映射关系是在标准base64编码算法的基础上进行改良的一种索引表,下面简称为base64索引表。下表1示出了一实施例中的一种base64索引表。
表1
表1所示的base64索引表相较于传统的标准base64编码表,其调整方式具体为:将标准base64编码表中64个数值(0-63)和字符之间的映射关系中,每个数值和字符之间的映射关系作为一对映射关系,那么从第一对映射关系开始,每10对映射关系为一组,组成一个一级组。在一级组的内部,按照每5对映射关系为一组再次划分为两个二级组,假设划分为A、B两个二级组。接着再将A、B两个二级组对调。再然后,在每个二级组内部,保持数值不变的同时将第一位字符和第五位字符对调。针对每个一级组均执行一次上述过程,即可得到调整后的base64索引表。当然,此处仅是示意性地列举出一种调整方式,在实际应用中,还可采用其它调整方式对标准base64编码表进行调整,只要调整后的base64索引表与标准base64编码表中的映射关系发生改变即可。
由表1可以看出,相较于传统的标准base64编码表,64个数值和字符之间的映射关系已发生改变,也即,索引字符和索引数据之间的第一映射关系和标准base64编码表中64个数值和字符之间的映射关系不同。通过将第一索引字符和base64索引表进行匹配,即可确定出每个第一索引数据对应的第一索引字符。本实施例中,通过将每个第一索引数据(19、22、5、46)分别和base64索引表进行匹配,可得到以下第一索引字符:K、b、E、P。通过将多个第一索引字符组合,即可得到第一索引字符串“KbEP”。
为方便理解,下表2示出了从明文数据“Man”到第一索引字符“K、b、E、P”的转换过程。
表2
在确定出每个第一索引字符以及第一索引字符串之后,确定明文数据对应的第一加密信息和第一加密标识信息,并根据第一加密信息对第一索引字符串进行加密,得到索引密文数据。本实施例中预先创建有预设密钥库,预设密钥库中包括多个加密信息和加密标识信息之间的映射关系。其中,加密信息可利用现有的密码生成器随机生成,下表3示出了一实施例中的加密信息和加密标识信息之间的映射关系,表3中所示的预设密钥库中包括999个加密信息(即16位密钥串),每个加密信息对应有唯一的加密标识信息,如编号001-999。需要说明的是,表3中所示的16位密钥串“k1(xxxxx)、k2(xxxxx)……k999(xxxxx)”仅是一种示意性表征方式,并不代表真实的密钥串。
表3
加密标识信息 | 16位密钥串 |
001 | k1(xxxxx) |
002 | k2(xxxxx) |
… | … |
999 | K999(xxxx) |
可按照预设的密钥筛选方式,从表3所示的预设密钥库中筛选出一个加密信息作为明文数据“Man”对应的第一加密信息。密钥筛选方式可以是以下任一种:随机筛选方式、按序筛选方式(比如上一次选取了预设密钥库中的第n个密钥信息,则本次可选取第n+1个密钥信息)等。本实施例中,假设筛选出编号(即加密标识信息)为847的加密信息“i4k1i0p5h0AXBjuC”(16位密钥串)作为明文数据“Man”对应的第一加密信息。
然后,利用加密信息“i4k1i0p5h0AXBjuC”对明文数据“Man”对应的第一索引字符串“KbEP”进行加密,得到索引密文数据“U2FsdGVkX19hZi7jbc2hBJXbgtIWRtd3Ufg4UzrgBdc”。
在得到明文数据对应的索引密文数据之后,将明文数据对应的第一加密标识信息和索引密文数据进行组合,得到明文数据对应的目标密文数据。本实施例中,通过将第一加密标识信息添加至索引密文数据中的预设位置,以得到目标密文数据。由于本实施例列举的加密标识信息均包括3位,因此预设位置也包括3位。具体地,预设位置可包括:索引密文数据中的首位数据之前的一位,以及,最末位数据之后的两位。将加密标识信息“847”的第一位“8”添加至索引密文数据的首位数据之前的一位,同时将加密标识信息“847”的后两位“47”添加至索引密文数据的最末位数据之后的两位,得到目标密文数据“8U2FsdGVkX19hZi7jbc2hBJXbgtIWRtd3Ufg4UzrgBdc47”。
可见,采用本实施例提供的数据处理方法,明文数据“Man”经过多次数据转换过程和数据加密过程,得到的目标密文数据很难被外人破解,从而很大程度上提升数据的安全性。并且,由于目标密文数据中隐含了加密标识信息,使得具有获取明文数据权限的用户能够基于目标密文数据中隐含的加密标识信息确定出对应的加密信息,从而便于用户将目标密文数据还原为明文数据,确保明文数据的加密具有可还原性。
图3是根据本申请另一实施例的一种数据处理方法的示意性流程图,如图3所示,该方法包括:
S302,对目标密文数据进行解析,得到目标密文数据对应的第一加密标识信息和索引密文数据。
该步骤中,目标密文数据是通过将第一加密标识信息和索引密文数据进行组合后得到的,因此,对目标密文数据的解析方式应和组合方式相匹配。
第一加密标识信息和索引密文数据的组合方式可以有多种。可选地,可直接将第一加密标识信息和索引密文数据进行拼接,例如第一加密标识信息包括3位数据(即第一加密标识信息包括3个字符数据),索引密文数据包括8位数据(即索引密文数据包括8个字符数据),则通过将第一加密标识信息和索引密文数据进行拼接,可得到包括11位数据的目标密文数据,其中,前3位数据组成了第一加密标识信息,后8位数据组成了索引密文数据。基于此,可在目标密文数据的前3位和后8位数据之间进行拆分,从而得到目标密文数据对应的第一加密标识信息和索引密文数据。
可选地,目标密文数据通过将第一加密标识信息添加至索引密文数据中的预设位置后得到,该预设位置可以是索引密文数据中的任意位置,例如索引密文数据的首位数据之前、索引密文数据的最后一位数据之后、索引密文数据中相邻的两位数据之间等。基于此,在解析目标密文数据时,可从目标密文数据的预设位置处获取第一加密标识信息,并将目标密文数据中除第一加密标识信息之外的其他数据确定为索引密文数据。例如,预设位置为索引密文数据的第3位数据之后,第一加密标识信息包括3位数据,则可将目标密文数据的第3位数据之后的3位数据拆分出来,得到第一加密标识信息,目标密文数据中除拆分出来的3位数据之外的其他字符数据组成了索引密文数据。
S304,根据第一加密标识信息,确定索引密文数据对应的第一解密信息,并根据第一解密信息对索引密文数据进行解密,得到第一索引字符串;其中,第一解密信息与第一加密标识信息对应的第一加密信息相匹配,第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定。
由于加密信息可以是对称密钥或非对称密钥,因此,若加密信息为对称密钥,则与第一加密信息相匹配的第一解密信息即为对称密钥本身,也即,第一加密信息和第一解密信息相同。若加密信息为非对称密钥,则第一加密信息和与其相匹配的第一解密信息构成了非对称密钥对,例如第一加密信息为公钥,第一解密信息则为对应的私钥。
S306,根据预先创建的索引字符和索引数据之间的第一映射关系,确定第一索引字符串包括的每个第一索引字符对应的第一索引数据。
其中,索引字符和索引数据之间的第一映射关系可以由用户自定义创建,也可以采用现有的规范性编码方式表征,例如标准base64编码算法,是一种常见的用于传输8比特字节码的编码方式,包括64个用于表示二进制数据的字符。具体地,标准base64编码表中包括64个数值(0-63)和字符之间的映射关系,则可将标准base64编码表中的64个数值作为索引数据,并将标准base64编码表中的字符作为索引字符,从而,标准base64编码表即为索引字符和索引数据之间的第一映射关系。可选地,索引字符和索引数据之间的第一映射关系还可以基于规范性编码方式进行改良,例如在标准base64编码算法的基础上进行改良,使得标准base64编码算法中的64个数值和字符之间的映射关系发生改变。
可选地,在第一映射关系创建完成之后,为确保数据加密效果,可以每隔一段时间对第一映射关系进行一次更新。第一映射关系的更新方式有多种,可选地,将索引字符和索引数据之间的映射关系进行有规律地重新排列,例如索引数据不变、同时将每相邻的两位索引字符对调,从而使索引数据和索引字符之间的映射关系发生改变。
S308,根据预设的索引数据和字符数据之间的转换算法,将每个第一索引数据转换为对应的字符数据,并根据每个字符数据确定目标密文数据对应的明文数据。
索引数据和字符数据之间的转换算法可以是单一的一种算法,也可以是多种算法的结合。可选地,转换算法为单一的一种算法,则转换算法可理解为索引数据和字符数据之间的映射关系,该映射关系可以是一一对应、多对一或者一对多的映射关系。根据索引数据和字符数据之间的映射关系,可直接将字符数据转换为对应的第一索引数据。
可选地,索引数据和字符数据之间的转换算法为多种算法的结合,这种情况下,将字符数据转换为第一索引数据时,需要先将字符数据转换为至少一个中间数据(如下述实施例中的第一类数据、第二类数据等),最后再将中间数据转换为第一索引数据。
采用本申请实施例的技术方案,通过将目标密文数据解析为第一加密标识信息和索引密文数据,并利用基于第一加密标识信息所确定的第一解密信息对索引密文数据进行解密,得到第一索引字符串;进而将第一索引字符串包括的每个第一索引字符转换为对应的第一索引数据,再进一步将每个第一索引数据转换为对应的字符数据,根据每个字符数据确定出目标密文数据对应的明文数据。可见,该技术方案在对目标密文数据进行解密时,首先需要根据目标密文数据中隐含的加密标识信息确定出解密信息,由于加密标识信息在目标密文数据中的隐含方式(如隐含位置)不易被外人获知,因此使得目标密文数据的破解难度加大。进一步地,在利用解密信息对索引密文数据解密后,得到的并非是明文数据本身,而是明文数据对应的第一索引字符串,只有对第一索引字符串中包括的每个第一索引字符进行多次转换过程(如转换为第一索引数据、再转换为字符数据)后,才可得到明文数据本身。由于目标密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了目标密文数据的破解难度,提升了数据安全性。
在一个实施例中,执行根据预设的索引数据和字符数据之间的转换算法,将每个第一索引数据转换为对应的字符数据的步骤时,可具体执行为以下步骤B1-B4:
步骤B1、根据第二类数据和索引数据之间的第四映射关系,确定每个第一索引数据对应的第二类数据;每个第二类数据包括M位数据,M为大于或等于1的整数。
步骤B2、按照预设的数据重组规则对第二类数据进行重组,得到重组后的每个第二数据;重组后的每个第二类数据包括N位数据,M与N的值不同。
步骤B3、根据第一类数据和第二类数据之间的第三映射关系,确定重组后的每个第二类数据对应的第一类数据。
步骤B4、根据预设的第一类数据转换方式,将目标密文数据对应的每个第一类数据分别转换为对应的字符数据。
可选地,第一类数据为ASCII码,第二类数据为二进制数据,索引数据为与ASCII码不同的十进制数据。本实施例中,数据重组规则、第二类数据和索引数据之间的第四映射关系、第一类数据和第二类数据之间的第三映射关系以及预设的第一类数据转换方式已在上述实施例(如步骤A1-A4)详细说明,此处不再重复。区别在于,步骤A1-A4与本实施例中的步骤B1-B4互为逆过程。
图4是根据本申请另一实施例的一种数据处理方法的示意性流程图,如图4所示,该方法包括:
S402,响应于将明文数据存储至目标数据库的数据存储请求,确定明文数据对应的目标字段;数据存储请求包括明文数据和目标字段,目标数据库包括多个字段。
可选地,目标数据库为MySQL(一种开放源代码的关系型数据库管理系统)数据库。目标数据库用于存储多个字段对应的数据,针对多个字段中的部分或全部字段,可以预先标识为敏感字段,敏感字段对应的数据为需要加密存储的敏感数据。
敏感字段的标识方式可以有多种,例如,为敏感字段添加对应的标签信息,标签信息用于标识对应的字段为敏感字段。在接收到数据存储请求时,将数据存储请求中携带的目标字段和目标数据库中的字段进行匹配,如果匹配到的字段具有对应的标签信息,则说明目标字段属于敏感字段。
再例如,在目标数据库中建立一个子数据库,子数据库中用于存储敏感字段的字段名称。在接收到数据存储请求时,将数据存储请求中携带的目标字段的字段名称和子数据库存储的字段名称相匹配,如果匹配成功,则说明目标字段属于敏感字段。
S404,若目标字段属于预设的敏感字段,则通过上述实施例提供的数据处理方法对明文数据进行加密,得到明文数据对应的密文数据。
对明文数据的加密方式已在上述实施例中详细说明,此处不再重复。
S406,将密文数据存储至目标数据库中与目标字段对应的位置。
采用本申请实施例的技术方案,在将明文数据存储至目标数据库之前,首先确定明文数据对应的目标字段,若目标字段属于预设的敏感字段,则需要按照上述一方面所述的数据处理方法对明文数据进行加密,并将加密后得到的密文数据存储至目标数据中与目标字段对应的位置。可见,该技术方案通过有针对性地对敏感字段的明文数据进行加密后存储,使得敏感字段对应的数据的安全性得以确保。此外,由于对明文数据采用了结合数据转换过程和数据加密方式进行多重保护的方式,因此相较于单一的加密方式或者直接对明文数据进行加密的方式而言,增加了目标数据库中密文数据的破解难度,从而确保目标数据库中数据的安全性。
在一个实施例中,在响应于将明文数据存储至目标数据库的数据存储请求之前,可将基于加密插件方式实现的加密函数写入目标数据库中,以及,为敏感字段添加加密触发器。这样,在确定目标字段属于预设的敏感字段时,就会触发加密触发器调用加密函数,以使加密函数对明文数据进行加密。
其中,加密插件方式可以实现加密函数的定义。可选地,加密插件方式可以是UDF(User-Defined Function,用户定义函数)插件方式,即,利用UDF插件方式来实现开发加密函数。加密函数的功能即为按照上述实施例实施例提供的数据处理方法(如图1、图2所示实施例)对明文数据进行加密。在开发好加密函数之后,将加密函数加载至目标数据库中,如加载至MySQL数据库实例中待用。
可选地,加密触发器可以是Insert触发器,Insert触发器能够使目标数据库响应某个指令(或请求)时自动执行的一条语句。例如,目标数据库响应了将明文数据存储至目标数据库的数据存储请求、且明文数据对应的目标字段属于预设的敏感字段时,就会触发Insert触发器。Insert触发器被触发后,就会调用预先写入的加密函数对明文数据进行加密。
可见,本实施例中,通过将加密插件方式实现的加密函数写入目标数据库,并针对敏感字段添加加密触发器,使得明文数据需要加密时,会自动触发加密触发器,进而使加密触发器调用加密函数,并基于上述实施例提供的数据处理方法对明文数据进行加密。因此,整个数据加密及存储过程实现了自动化效果,无需人工参与。并且,通过目标数据库中写入的加密函数来实现数据加密,使得加密过程被隐含在了数据存储过程中,即“隐式加密”,相较于现有的“显式加密”(如直接将密钥和数据以参数形式输入加密器中)的方式而言,加密方式更加隐蔽,从而提升了数据保护效果。
图5是根据本申请另一实施例的一种数据处理方法的示意性流程图,如图5所示,该方法包括:
S502,响应于从目标数据库中获取明文数据的数据获取请求,确定明文数据对应的目标字段;数据获取请求包括目标字段,目标数据库包括多个字段。
可选地,目标数据库为MySQL数据库。目标数据库用于存储多个字段对应的数据,针对多个字段中的部分或全部字段,可以预先标识为敏感字段,敏感字段对应的数据为需要加密存储的敏感数据。
敏感字段的标识方式可以有多种,例如,为敏感字段添加对应的标签信息,标签信息用于标识对应的字段为敏感字段。在接收到数据存储请求时,将数据存储请求中携带的目标字段和目标数据库中的字段进行匹配,如果匹配到的字段具有对应的标签信息,则说明目标字段属于敏感字段。
再例如,在目标数据库中建立一个子数据库,子数据库中用于存储敏感字段的字段名称。在接收到数据存储请求时,将数据存储请求中携带的目标字段的字段名称和子数据库存储的字段名称相匹配,如果匹配成功,则说明目标字段属于敏感字段。
S504,若目标字段属于预设的敏感字段,则从目标数据库中获取明文数据对应的密文数据。
S506,通过上述实施例提供的数据处理方法对密文数据进行解密,得到密文数据对应的明文数据。
对密文数据的解密方式已在上述实施例中详细说明,此处不再重复。
采用本申请实施例的技术方案,在从目标数据库中获取敏感字段对应的数据时,并非是直接获取到明文数据,而是获取到明文数据对应的密文数据,需要按照上述另一方面所述的数据处理方法对密文数据进行解密,才可获取到明文数据。可见,该技术方案通过有针对性地将敏感字段对应的数据以密文数据的形式存储,使得敏感字段对应的数据的安全性得以确保。此外,由于目标数据库中存储的密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了密文数据的破解难度,从而提升目标数据库中数据的安全性。
在一个实施例中,在响应于从目标数据库中获取明文数据的数据获取请求之前,可将基于加密插件方式实现的解密函数写入目标数据库中,以及,为敏感字段添加解密触发器。这样,在确定目标字段属于预设的敏感字段,并从目标数据库中获取到明文数据对应的密文数据时,就会触发解密触发器调用解密函数,以使解密函数对明文数据进行解密。
其中,加密插件方式可以实现解密函数的定义。可选地,加密插件方式可以是UDF插件方式,即,利用UDF插件方式来实现开发解密函数。解密函数的功能即为按照上述实施例实施例提供的数据处理方法(如图3所示实施例)对密文数据进行解密。在开发好解密函数之后,将解密函数加载至目标数据库中,如加载至MySQL数据库实例中待用。
可选地,解密触发器可以是Update触发器,Update触发器能够使目标数据库响应某个指令(或请求)时自动执行的一条语句。例如,目标数据库响应了从目标数据库中获取明文数据的数据获取请求、且明文数据对应的目标字段属于预设的敏感字段时,就会触发Update触发器。Update触发器被触发后,就会调用预先写入的解密函数对获取到的密文数据进行解密,从而得到明文数据。
可见,本实施例中,通过将加密插件方式实现的解密函数写入目标数据库,并针对敏感字段添加解密触发器,使得需要获取被加密存储的明文数据时,会自动触发解密触发器,进而使解密触发器调用解密函数,并基于上述实施例提供的数据处理方法对密文数据进行解密。因此,整个数据解密及获取过程实现了自动化效果,无需人工参与。并且,通过目标数据库中写入的解密函数来实现数据解密,使得解密过程被隐含在了数据获取过程中,即“隐式解密”,相较于现有的“显式解密”(如直接将密钥和密文以参数形式输入解密器中)的方式而言,解密方式更加隐蔽,从而提升了数据保护效果。
综上,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
以上为本申请实施例提供的数据处理方法,基于同样的思路,本申请实施例还提供一种数据处理装置。
图6是根据本申请一实施例的一种数据处理装置的示意性框图,如图6所示,数据处理装置包括:
第一转换模块61,用于根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
第一确定模块62,用于根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引数据对应的第一索引字符;
第一加密模块63,用于确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
组合模块64,用于将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
在一个实施例中,所述第一确定模块62包括:
第一转换单元,用于根据预设的第一类数据转换方式,将每个所述字符数据分别转换为第一类数据;
第一确定单元,用于根据第一类数据和第二类数据之间的第三映射关系,确定每个所述第一类数据对应的第二类数据;每个所述第二类数据包括N位数据,N为大于或等于1的整数;
第一重组单元,用于按照预设的数据重组规则对所述第二类数据进行重组,得到重组后的每个第二类数据;所述重组后的每个第二类数据包括M位数据,M与N的值不同;
第二确定单元,用于根据第二类数据和索引数据之间的第四映射关系,确定所述重组后的每个第二类数据对应的第一索引数据。
在一个实施例中,所述第一加密模块63包括:
筛选及确定单元,用于按照预设的密钥筛选方式,从预设密钥库中筛选出一个加密信息作为所述第一加密信息,并确定所述筛选出的加密信息对应的加密标识信息为所述第一加密标识信息;其中,所述预设密钥库中包括所述第二映射关系。
在一个实施例中,所述组合模块64包括:
添加单元,用于将所述第一加密标识信息添加至所述索引密文数据中的预设位置。
采用本申请实施例的装置,通过首先将明文数据包括的至少一个字符数据分别转换为第一索引数据,然后根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符,进而根据明文数据对应的第一加密信息对第一索引字符串进行加密,并将加密得到的索引密文数据和第一加密信息对应的第一加密标识信息进行组合,得到明文数据对应的目标密文数据。可见,该装置在对明文数据进行加密时,并非是采用单一的加密方式或者直接对明文数据进行加密,而是先对明文数据进行多次转换,如转换为第一索引数据、再转换为第一索引字符,进而再对转换后得到的第一索引字符串进行加密,由于明文数据的数据转换过程不易被外人破解,且通过结合数据转换过程和数据加密方式,使得明文数据被赋予多重保护,因此能够增加目标密文数据的破解难度,提升数据安全性。此外,由于目标密文数据是通过将第一加密标识信息和索引密文数据组合后得到的,也即,目标密文数据中隐含了加密标识信息,使得具有获取明文数据权限的用户能够基于目标密文数据中隐含的加密标识信息确定出对应的加密信息,从而便于用户将目标密文数据还原为明文数据,确保明文数据的加密具有可还原性。
图7是根据本申请一实施例的一种数据处理装置的示意性框图,如图7所示,数据处理装置包括:
解析模块71,用于对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
第一解密模块72,用于根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
第二确定模块73,用于根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
第二转换模块74,用于根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
在一个实施例中,所述第二转换模块74包括:
第三确定单元,用于根据第二类数据和索引数据之间的第四映射关系,确定每个所述第一索引数据对应的第二类数据;每个所述第二类数据包括M位数据,M为大于或等于1的整数;
第二重组单元,用于按照预设的数据重组规则对所述第二类数据进行重组,得到重组后的每个第二数据;所述重组后的每个第二类数据包括N位数据,M与N的值不同;
第四确定单元,用于根据第一类数据和第二类数据之间的第三映射关系,确定重组后的每个第二类数据对应的第一类数据;
第二转换单元,用于根据预设的第一类数据转换方式,将所述目标密文数据对应的每个所述第一类数据分别转换为对应的字符数据。
在一个实施例中,所述解析模块71包括:
获取单元,用于从所述目标密文数据中的预设位置处,获取所述第一加密标识信息;
第五确定单元,用于将所述目标密文数据中除所述第一加密标识信息之外的其他数据,确定为所述索引密文数据。
采用本申请实施例的装置,通过将目标密文数据解析为第一加密标识信息和索引密文数据,并利用基于第一加密标识信息所确定的第一解密信息对索引密文数据进行解密,得到第一索引字符串;进而将第一索引字符串包括的每个第一索引字符转换为对应的第一索引数据,再进一步将每个第一索引数据转换为对应的字符数据,根据每个字符数据确定出目标密文数据对应的明文数据。可见,该装置在对目标密文数据进行解密时,首先需要根据目标密文数据中隐含的加密标识信息确定出解密信息,由于加密标识信息在目标密文数据中的隐含方式(如隐含位置)不易被外人获知,因此使得目标密文数据的破解难度加大。进一步地,在利用解密信息对索引密文数据解密后,得到的并非是明文数据本身,而是明文数据对应的第一索引字符串,只有对第一索引字符串中包括的每个第一索引字符进行多次转换过程(如转换为第一索引数据、再转换为字符数据)后,才可得到明文数据本身。由于目标密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了目标密文数据的破解难度,提升了数据安全性。
图8是根据本申请一实施例的一种数据处理装置的示意性框图,如图8所示,数据处理装置包括:
第三确定模块81,用于响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
第二加密模块82,用于若所述目标字段属于预设的敏感字段,则通过上述所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
存储模块83,用于将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
在一个实施例中,所述装置还包括:
第一添加模块,用于所述响应于将明文数据存储至目标数据库的数据存储请求之前,将基于加密插件方式实现的加密函数写入所述目标数据库中,以及,为所述敏感字段添加加密触发器;
所述第二加密模块82包括:
第一触发单元,用于若所述目标字段属于预设的敏感字段,则触发所述加密触发器调用所述加密函数,以使所述加密函数对所述明文数据进行加密;所述加密函数用于执行上述所述的数据处理方法。
采用本申请实施例的装置,在将明文数据存储至目标数据库之前,首先确定明文数据对应的目标字段,若目标字段属于预设的敏感字段,则需要按照上述一方面所述的数据处理方法对明文数据进行加密,并将加密后得到的密文数据存储至目标数据中与目标字段对应的位置。可见,该装置通过有针对性地对敏感字段的明文数据进行加密后存储,使得敏感字段对应的数据的安全性得以确保。此外,由于对明文数据采用了结合数据转换过程和数据加密方式进行多重保护的方式,因此相较于单一的加密方式或者直接对明文数据进行加密的方式而言,增加了目标数据库中密文数据的破解难度,从而确保目标数据库中数据的安全性。
图9是根据本申请一实施例的一种数据处理装置的示意性框图,如图9所示,数据处理装置包括:
第四确定模块91,用于响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
获取模块92,用于若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
第二解密模块93,用于通过上述所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
在一个实施例中,所述装置还包括:
第二添加模块,用于所述响应于从目标数据库中获取明文数据的数据获取请求之前,将基于加密插件方式实现的解密函数写入所述目标数据库中,以及,为所述敏感字段添加解密触发器;
所述第二解密模块93包括:
第二触发单元,用于触发所述解密触发器调用所述解密函数,以使所述解密函数对所述明文数据进行解密。
采用本申请实施例的装置,在从目标数据库中获取敏感字段对应的数据时,并非是直接获取到明文数据,而是获取到明文数据对应的密文数据,需要按照上述另一方面所述的数据处理方法对密文数据进行解密,才可获取到明文数据。可见,该装置通过有针对性地将敏感字段对应的数据以密文数据的形式存储,使得敏感字段对应的数据的安全性得以确保。此外,由于目标数据库中存储的密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了密文数据的破解难度,从而提升目标数据库中数据的安全性。
本领域的技术人员应可理解,上述的数据处理装置能够用来实现前文所述的数据处理装方法,其中的细节描述应与前文方法部分描述类似,为避免繁琐,此处不另赘述。
基于同样的思路,本申请实施例还提供一种数据处理设备,如图10所示。数据处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1001和存储器1002,存储器1002中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1002可以是短暂存储或持久存储。存储在存储器1002的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对数据处理设备中的一系列计算机可执行指令。更进一步地,处理器1001可以设置为与存储器1002通信,在数据处理设备上执行存储器1002中的一系列计算机可执行指令。数据处理设备还可以包括一个或一个以上电源1003,一个或一个以上有线或无线网络接口1004,一个或一个以上输入输出接口1005,一个或一个以上键盘1006。
具体在本实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个所述第一索引数据对应的第一索引字符;
确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
采用本申请实施例的技术方案,通过首先将明文数据包括的至少一个字符数据分别转换为第一索引数据,然后根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个第一索引数据对应的第一索引字符,进而根据明文数据对应的第一加密信息对第一索引字符串进行加密,并将加密得到的索引密文数据和第一加密信息对应的第一加密标识信息进行组合,得到明文数据对应的目标密文数据。可见,该技术方案在对明文数据进行加密时,并非是采用单一的加密方式或者直接对明文数据进行加密,而是先对明文数据进行多次转换,如转换为第一索引数据、再转换为第一索引字符,进而再对转换后得到的第一索引字符串进行加密,由于明文数据的数据转换过程不易被外人破解,且通过结合数据转换过程和数据加密方式,使得明文数据被赋予多重保护,因此能够增加目标密文数据的破解难度,提升数据安全性。此外,由于目标密文数据是通过将第一加密标识信息和索引密文数据组合后得到的,也即,目标密文数据中隐含了加密标识信息,使得具有获取明文数据权限的用户能够基于目标密文数据中隐含的加密标识信息确定出对应的加密信息,从而便于用户将目标密文数据还原为明文数据,确保明文数据的加密具有可还原性。
具体在另一实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
采用本申请实施例的技术方案,通过将目标密文数据解析为第一加密标识信息和索引密文数据,并利用基于第一加密标识信息所确定的第一解密信息对索引密文数据进行解密,得到第一索引字符串;进而将第一索引字符串包括的每个第一索引字符转换为对应的第一索引数据,再进一步将每个第一索引数据转换为对应的字符数据,根据每个字符数据确定出目标密文数据对应的明文数据。可见,该技术方案在对目标密文数据进行解密时,首先需要根据目标密文数据中隐含的加密标识信息确定出解密信息,由于加密标识信息在目标密文数据中的隐含方式(如隐含位置)不易被外人获知,因此使得目标密文数据的破解难度加大。进一步地,在利用解密信息对索引密文数据解密后,得到的并非是明文数据本身,而是明文数据对应的第一索引字符串,只有对第一索引字符串中包括的每个第一索引字符进行多次转换过程(如转换为第一索引数据、再转换为字符数据)后,才可得到明文数据本身。由于目标密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了目标密文数据的破解难度,提升了数据安全性。
具体在另一实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则通过上述所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
采用本申请实施例的技术方案,在将明文数据存储至目标数据库之前,首先确定明文数据对应的目标字段,若目标字段属于预设的敏感字段,则需要按照上述所述的数据处理方法对明文数据进行加密,并将加密后得到的密文数据存储至目标数据中与目标字段对应的位置。可见,该技术方案通过有针对性地对敏感字段的明文数据进行加密后存储,使得敏感字段对应的数据的安全性得以确保。此外,由于对明文数据采用了结合数据转换过程和数据加密方式进行多重保护的方式,因此相较于单一的加密方式或者直接对明文数据进行加密的方式而言,增加了目标数据库中密文数据的破解难度,从而确保目标数据库中数据的安全性。
具体在另一实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
通过上述另一方面所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
采用本申请实施例的技术方案,在从目标数据库中获取敏感字段对应的数据时,并非是直接获取到明文数据,而是获取到明文数据对应的密文数据,需要按照上述所述的数据处理方法对密文数据进行解密,才可获取到明文数据。可见,该技术方案通过有针对性地将敏感字段对应的数据以密文数据的形式存储,使得敏感字段对应的数据的安全性得以确保。此外,由于目标数据库中存储的密文数据是通过对明文数据进行多重保护后得到的,因此需要针对多重保护方式一一破解后才可获取到明文数据,增加了密文数据的破解难度,从而提升目标数据库中数据的安全性。
本申请实施例还提出了一种存储介质,该存储介质存储一个或多个计算机程序,该一个或多个计算机程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据处理方法实施例的各个过程,并具体用于执行:
根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个所述第一索引数据对应的第一索引字符;
确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
本申请实施例还提出了一种存储介质,该存储介质存储一个或多个计算机程序,该一个或多个计算机程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据处理方法实施例的各个过程,并具体用于执行:
对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
本申请实施例还提出了一种存储介质,该存储介质存储一个或多个计算机程序,该一个或多个计算机程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据处理方法实施例的各个过程,并具体用于执行:
响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则通过上述所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
本申请实施例还提出了一种存储介质,该存储介质存储一个或多个计算机程序,该一个或多个计算机程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据处理方法实施例的各个过程,并具体用于执行:
响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
通过上述所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种数据处理方法,其特征在于,包括:
根据预设的索引数据和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定每个所述第一索引数据对应的第一索引字符;
确定所述明文数据对应的第一加密信息和第一加密标识信息,并根据所述第一加密信息对第一索引字符串进行加密,得到索引密文数据;其中,所述第一索引字符串根据所述第一索引字符确定,所述第一加密标识信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
将所述第一加密标识信息和所述索引密文数据进行组合,得到所述明文数据对应的目标密文数据。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的索引字符和字符数据之间的转换算法,将明文数据包括的至少一个字符数据分别转换为第一索引数据,包括:
根据预设的第一类数据转换方式,将每个所述字符数据分别转换为第一类数据;
根据第一类数据和第二类数据之间的第三映射关系,确定每个所述第一类数据对应的第二类数据;每个所述第二类数据包括N位数据,N为大于或等于1的整数;
按照预设的数据重组规则对所述第二类数据进行重组,得到重组后的每个第二类数据;所述重组后的每个第二类数据包括M位数据,M与N的值不同;
根据第二类数据和索引数据之间的第四映射关系,确定所述重组后的每个第二类数据对应的第一索引数据。
3.根据权利要求1所述的方法,其特征在于,所述确定所述明文数据对应的第一加密信息和第一加密标识信息,包括:
按照预设的密钥筛选方式,从预设密钥库中筛选出一个加密信息作为所述第一加密信息,并确定所述筛选出的加密信息对应的加密标识信息为所述第一加密标识信息;其中,所述预设密钥库中包括所述第二映射关系。
4.根据权利要求1所述的方法,其特征在于,所述将所述第一加密标识信息和所述索引密文数据进行组合,包括:
将所述第一加密标识信息添加至所述索引密文数据中的预设位置。
5.一种数据处理方法,其特征在于,包括:
对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据;
根据所述第一加密标识信息,确定所述索引密文数据对应的第一解密信息,并根据所述第一解密信息对所述索引密文数据进行解密,得到第一索引字符串;其中,所述第一解密信息与所述第一加密标识信息对应的第一加密信息相匹配,所述第一加密信息基于预设的加密信息和加密标识信息之间的第二映射关系确定;
根据预先创建的索引字符和索引数据之间的第一映射关系,确定所述第一索引字符串包括的每个第一索引字符对应的第一索引数据;
根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,并根据每个所述字符数据确定所述目标密文数据对应的明文数据。
6.根据权利要求5所述的方法,其特征在于,所述根据预设的索引数据和字符数据之间的转换算法,将每个所述第一索引数据转换为对应的字符数据,包括:
根据第二类数据和索引数据之间的第四映射关系,确定每个所述第一索引数据对应的第二类数据;每个所述第二类数据包括M位数据,M为大于或等于1的整数;
按照预设的数据重组规则对所述第二类数据进行重组,得到重组后的每个第二数据;所述重组后的每个第二类数据包括N位数据,M与N的值不同;
根据第一类数据和第二类数据之间的第三映射关系,确定所述重组后的每个第二类数据对应的第一类数据;
根据预设的第一类数据转换方式,将所述目标密文数据对应的每个所述第一类数据分别转换为对应的字符数据。
7.根据权利要求5所述的方法,其特征在于,所述对目标密文数据进行解析,得到所述目标密文数据对应的第一加密标识信息和索引密文数据,包括:
从所述目标密文数据中的预设位置处,获取所述第一加密标识信息;
将所述目标密文数据中除所述第一加密标识信息之外的其他数据,确定为所述索引密文数据。
8.一种数据处理方法,其特征在于,包括:
响应于将明文数据存储至目标数据库的数据存储请求,确定所述明文数据对应的目标字段;所述数据存储请求包括所述明文数据和所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则通过上述权利要求1-4中任一项所述的数据处理方法对所述明文数据进行加密,得到所述明文数据对应的密文数据;
将所述密文数据存储至所述目标数据库中与所述目标字段对应的位置。
9.根据权利要求8所述的方法,其特征在于,所述响应于将明文数据存储至目标数据库的数据存储请求之前,所述方法还包括:
将基于加密插件方式实现的加密函数写入所述目标数据库中,以及,为所述敏感字段添加加密触发器;
所述若所述目标字段属于预设的敏感字段,则通过上述权利要求1-4中任一项所述的数据处理方法对所述明文数据进行加密,包括:
若所述目标字段属于预设的敏感字段,则触发所述加密触发器调用所述加密函数,以使所述加密函数对所述明文数据进行加密;所述加密函数用于执行上述权利要求1-4中任一项所述的数据处理方法。
10.一种数据处理方法,其特征在于,包括:
响应于从目标数据库中获取明文数据的数据获取请求,确定所述明文数据对应的目标字段;所述数据获取请求包括所述目标字段,所述目标数据库包括多个字段;
若所述目标字段属于预设的敏感字段,则从所述目标数据库中获取所述明文数据对应的密文数据;
通过上述权利要求5-7中任一项所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据。
11.根据权利要求10所述的方法,其特征在于,所述响应于从目标数据库中获取明文数据的数据获取请求之前,所述方法还包括:
将基于加密插件方式实现的解密函数写入所述目标数据库中,以及,为所述敏感字段添加解密触发器;
所述通过上述权利要求5-7中任一项所述的数据处理方法对所述密文数据进行解密,得到所述密文数据对应的所述明文数据,包括:
触发所述解密触发器调用所述解密函数,以使所述解密函数对所述明文数据进行解密;所述解密函数用于执行上述权利要求5-7中任一项所述的数据处理方法。
12.一种数据处理设备,其特征在于,包括处理器和与所述处理器电连接的存储器,所述存储器存储有计算机程序,所述处理器用于从所述存储器调用并执行所述计算机程序以实现如权利要求1-11任一项所述的数据处理方法。
13.一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序能够被处理器执行以实现如权利要求1-11任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210950280.7A CN116132079B (zh) | 2022-08-09 | 数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210950280.7A CN116132079B (zh) | 2022-08-09 | 数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116132079A true CN116132079A (zh) | 2023-05-16 |
CN116132079B CN116132079B (zh) | 2024-09-27 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117910022A (zh) * | 2024-03-19 | 2024-04-19 | 深圳高灯计算机科技有限公司 | 数据搜索方法、装置、计算机设备、存储介质和产品 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282798A (zh) * | 2008-12-29 | 2011-12-14 | 北电网络有限公司 | 一种用于隐藏通信信道中加密的存在的高效带宽的方法和系统 |
CN103825723A (zh) * | 2014-01-24 | 2014-05-28 | 深圳市太和物联信息技术有限公司 | 一种加密方法和装置 |
CN106850187A (zh) * | 2017-01-13 | 2017-06-13 | 温州大学瓯江学院 | 一种隐私字符信息加密查询方法及系统 |
CN106934030A (zh) * | 2016-12-08 | 2017-07-07 | 戴林 | 一种面向数据库加密的密文索引方法和库内加密系统 |
CN107196840A (zh) * | 2016-03-14 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及设备 |
CN108667599A (zh) * | 2018-05-21 | 2018-10-16 | 平安科技(深圳)有限公司 | 加密方法、装置、计算机设备和存储介质 |
CN108768951A (zh) * | 2018-05-03 | 2018-11-06 | 上海海事大学 | 一种云环境下保护文件隐私的数据加密和检索方法 |
US20190220620A1 (en) * | 2018-01-18 | 2019-07-18 | Sap Se | Secure Substring Search to Filter Encrypted Data |
CN110166644A (zh) * | 2019-04-15 | 2019-08-23 | 中国平安人寿保险股份有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN114218592A (zh) * | 2021-12-20 | 2022-03-22 | 平安壹钱包电子商务有限公司 | 敏感数据的加解密方法、装置、计算机设备及存储介质 |
WO2022093994A1 (en) * | 2020-10-27 | 2022-05-05 | Titaniam, Inc. | Data entanglement for improving the security of search indexes |
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282798A (zh) * | 2008-12-29 | 2011-12-14 | 北电网络有限公司 | 一种用于隐藏通信信道中加密的存在的高效带宽的方法和系统 |
CN103825723A (zh) * | 2014-01-24 | 2014-05-28 | 深圳市太和物联信息技术有限公司 | 一种加密方法和装置 |
CN107196840A (zh) * | 2016-03-14 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及设备 |
CN106934030A (zh) * | 2016-12-08 | 2017-07-07 | 戴林 | 一种面向数据库加密的密文索引方法和库内加密系统 |
CN106850187A (zh) * | 2017-01-13 | 2017-06-13 | 温州大学瓯江学院 | 一种隐私字符信息加密查询方法及系统 |
US20190220620A1 (en) * | 2018-01-18 | 2019-07-18 | Sap Se | Secure Substring Search to Filter Encrypted Data |
CN110110163A (zh) * | 2018-01-18 | 2019-08-09 | Sap欧洲公司 | 安全子字符串搜索以过滤加密数据 |
CN108768951A (zh) * | 2018-05-03 | 2018-11-06 | 上海海事大学 | 一种云环境下保护文件隐私的数据加密和检索方法 |
CN108667599A (zh) * | 2018-05-21 | 2018-10-16 | 平安科技(深圳)有限公司 | 加密方法、装置、计算机设备和存储介质 |
CN110166644A (zh) * | 2019-04-15 | 2019-08-23 | 中国平安人寿保险股份有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
WO2022093994A1 (en) * | 2020-10-27 | 2022-05-05 | Titaniam, Inc. | Data entanglement for improving the security of search indexes |
CN114218592A (zh) * | 2021-12-20 | 2022-03-22 | 平安壹钱包电子商务有限公司 | 敏感数据的加解密方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
L. ZHANG等: ""Encrypting wireless network traces to protect user privacy: A case study for smart campus"", 《2016 IEEE 12TH INTERNATIONAL CONFERENCE ON WIRELESS AND MOBILE COMPUTING》, 5 November 2019 (2019-11-05) * |
王柠;赵威;刘国华;赵春红;: "外包数据库中字符数据的k-映射密文索引技术", 燕山大学学报, no. 05, 30 September 2009 (2009-09-30) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117910022A (zh) * | 2024-03-19 | 2024-04-19 | 深圳高灯计算机科技有限公司 | 数据搜索方法、装置、计算机设备、存储介质和产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9489521B2 (en) | Format preserving encryption methods for data strings with constraints | |
US9514330B2 (en) | Meta-complete data storage | |
US7864952B2 (en) | Data processing systems with format-preserving encryption and decryption engines | |
US8855296B2 (en) | Data processing systems with format-preserving encryption and decryption engines | |
US8208627B2 (en) | Format-preserving cryptographic systems | |
US11488134B2 (en) | Format-preserving cryptographic systems | |
US9208491B2 (en) | Format-preserving cryptographic systems | |
US20220358227A1 (en) | Linking encrypted datasets using common identifiers | |
US10607726B2 (en) | System for anonymizing and aggregating protected health information | |
US9054872B2 (en) | Secure lookup | |
US9021259B2 (en) | Encrypted database system, client terminal, encrypted database server, natural joining method, and program | |
US20180294952A1 (en) | Method for operating a distributed key-value store | |
US8600048B1 (en) | Format-translating encryption systems | |
WO2020134712A1 (zh) | 区块链数据处理方法、装置及系统 | |
US8769302B2 (en) | Encrypting data and characterization data that describes valid contents of a column | |
CN107168998A (zh) | 一种基于保留格式的数据库透明加密方法 | |
CN109802832A (zh) | 一种数据文件的处理方法、系统、大数据处理服务器和计算机存储介质 | |
US11494499B1 (en) | Searching encrypted data stores | |
KR100910303B1 (ko) | 가변코드 테이블을 이용한 데이터 암복호화 장치 및 그 방법 | |
Devi et al. | Two fish Algorithm Implementation for lab to provide data security with predictive analysis | |
CN115455463A (zh) | 一种基于同态加密的隐匿sql查询方法 | |
CN116132079A (zh) | 数据处理方法及装置 | |
CN114900284A (zh) | 一种基于助记词生成sm2密钥的方法 | |
KR102108542B1 (ko) | 영상 메타정보 보안 방법 및 이를 이용한 암호화된 영상 데이터 검색 방법 | |
CN1588366A (zh) | 密文数据库检索技术 |
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 |