CN115757535A - 数据查询方法、数据存储方法、装置及电子设备 - Google Patents
数据查询方法、数据存储方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115757535A CN115757535A CN202211371015.XA CN202211371015A CN115757535A CN 115757535 A CN115757535 A CN 115757535A CN 202211371015 A CN202211371015 A CN 202211371015A CN 115757535 A CN115757535 A CN 115757535A
- Authority
- CN
- China
- Prior art keywords
- data
- character sequence
- sequence
- query
- target
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据查询方法、数据存储方法、装置及电子设备,涉及数据处理技术领域,该数据查询方法包括:基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及所述多个第一数组的第一排列顺序;基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列;基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,所述目标加密字符序列用于从第二数据库中获取与所述待查询数据对应的目标查询数据,解决了现有技术中如何提高数据查找效率以及保证数据安全性的技术问题。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据查询方法、数据存储方法、装置及电子设备。
背景技术
生产上的服务难免需要采集一些用户的敏感信息,从而可以根据用户的敏感信息从数据库中读取用户的应用数据,进而可以将用户的应用数据应用于特定的应用场景,以解决特定应用场景下的应用需求,例如,可以根据用户的应用数据实现向用户定向推荐的功能。
为了保障敏感信息的安全性,需要将用户的敏感信息进行加密并存储到数据库中,并且通常在进行敏感信息检索时只能获取到的用户的部分敏感信息。因此,现有技术在进行敏感信息检索时,需要将数据库中存储的所有敏感信息加载到内存,并对所有敏感信息进行解密,然后根据用户的部分敏感信息进行模糊查找,以从解密后的所有敏感信息中获取到用户的全部敏感信息。然而,这种方法在数据库中存储的敏感信息的数据量比较大的情况下存在查找速度慢以及容易泄露用户敏感信息的缺陷。
因此,如何提高数据查找效率以及保证数据安全性,是相关领域技术人员亟待解决的技术问题。
发明内容
本发明提供一种数据查询方法、数据存储方法、装置及电子设备,用以解决现有技术中如何提高数据查找效率以及保证数据安全性的技术问题。
本发明提供一种数据查询方法,包括:
基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及所述多个第一数组的第一排列顺序;
基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列;
基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,所述目标加密字符序列用于从第二数据库中获取与所述待查询数据对应的目标查询数据。
根据本发明提供的一种数据查询方法,所述基于预设数据拆分规则对获取到的待查询数据进行拆分,包括:
判断所述待查询数据中是否包含第一数据类型的数据,所述第一数据类型为除英文或数字之外的其他数据类型;
在所述待查询数据中包含第一数据类型的数据的情况下,将所述待查询数据中的第一数据类型的数据编码为第二数据类型的数据,所述第二数据类型包括英文以及数字;
获取编码后的待查询数据,并基于所述预设数据拆分规则对所述编码后的待查询数据进行拆分。
根据本发明提供的一种数据查询方法,所述基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列,包括:
基于所述预设加密规则对各所述第一数组进行加密,得到各所述第一数组对应的第一密文;
基于所述第一排列顺序对各所述第一数组对应的第一密文进行拼接,得到所述第一搜索字符序列。
根据本发明提供的一种数据查询方法,所述基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,包括:
基于所述待查询数据确定当前数据查询场景,并获取所述当前数据查询场景对应的查询经验数据;
基于所述查询经验数据和所述第一搜索字符序列,确定第二搜索字符序列,所述第二搜索字符序列的序列长度小于或者等于所述第一搜索字符序列的序列长度;
基于所述第二搜索字符序列从所述第一数据库中的多个加密字符序列中确定出所述目标加密字符序列。
根据本发明提供的一种数据查询方法,所述第二搜索字符序列的序列长度小于所述第一搜索字符序列的序列长度;所述第二搜索字符序列的数量为多个;
所述基于所述第二搜索字符序列从所述第一数据库中的多个加密字符序列中确定出所述目标加密字符序列,包括:
获取多个所述第二搜索字符序列的搜索顺序,并基于所述搜索顺序确定当前第二搜索字符序列;
将所述当前第二搜索字符序列分别与从所述第一数据库中的多个加密字符序列进行匹配,并获取匹配成功的第一加密字符序列;
在确定所述第一加密字符序列的数量为一个的情况下,将所述第一加密字符序列确定为所述目标加密字符序列。
根据本发明提供的一种数据查询方法,在所述获取匹配成功的第一加密字符序列之后,所述方法还包括:
在确定所述第一加密字符序列的数量为多个的情况下,基于所述搜索顺序确定下一第二搜索字符序列;
将所述下一第二搜索字符序列与多个所述第一加密字符序列进行匹配,并获取匹配成功的第二加密字符序列;
在确定所述第二加密字符序列为一个的情况下,确定所述第二加密字符序列为所述目标加密字符序列;
在确定所述第二加密字符序列为多个的情况下,基于所述搜索顺序重新确定下一第二搜索字符序列,并基于所述第二加密字符序列以及重新确定的下一第二搜索字符序列确定所述目标加密字符序列。
根据本发明提供的一种数据查询方法,在所述基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列之后,所述方法还包括:
基于所述预设数据拆分规则对所述目标加密字符序列进行拆分,得到多个第二密文以及所述多个第二密文的第二排列顺序;
基于预设解密规则对各所述第二密文进行解密,得到各所述第二密文对应的第二数组,所述预设解密规则与所述预设加密规则相对应;
基于所述第二排列顺序对各所述第二密文对应的第二数组进行拼接,得到第一查询数据;
基于所述第一查询数据确定所述待查询数据对应的目标数据标识,并基于所述目标数据标识从所述第二数据库中获取目标查询数据。
根据本发明提供的一种数据查询方法,所述基于所述第一查询数据确定所述待查询数据对应的目标数据标识,包括:
获取解码前的第二数据类型的数据与解码后的第一数据类型的数据之间的解码对应关系;
基于所述解码对应关系将所述第一查询数据中的第二数据类型的数据解码为第一数据类型的数据;
获取解码后的第一查询数据,并基于所述解码后的第一查询数据确定所述待查询数据对应的目标数据标识。
本发明还提供一种数据存储方法,包括:
基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;
基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;
将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
根据本发明提供的一种数据存储方法,在所述将所述原始存储数据存储至第二数据库中之前,所述方法还包括:
确定所述第一存储数据的数据标识,并将所述数据标识与所述第一存储数据对应的原始存储数据进行关联,以使所述数据查询端基于所述目标加密字符序列对应的第一查询数据确定目标数据标识,并基于所述目标数据标识从所述第二数据库中获取所述目标查询数据。
根据本发明提供的一种数据存储方法,所述基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,包括:
判断所述第一存储数据中是否包含第一数据类型的数据,所述第一数据类型为除英文或数字之外的其他数据类型;
在所述第一存储数据中包含第一数据类型的数据的情况下,将所述第一存储数据中第一数据类型的数据编码为第二数据类型的数据,所述第二数据类型包括英文以及数字;
获取编码后的第一存储数据,并基于所述预设数据拆分规则对所述编码后的第一存储数据进行拆分。
根据本发明提供的一种数据存储方法,在所述基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分之前,所述方法还包括:
获取所述第一存储数据的属性信息;
基于所述属性信息确定所述预设数据拆分规则。
本发明还提供一种数据查询装置,包括:
第一拆分模块,用于基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及所述多个第一数组的第一排列顺序;
第一加密模块,用于基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列;
数据查询模块,用于基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,所述目标加密字符序列用于从第二数据库中获取与所述待查询数据对应的目标查询数据。
本发明还提供一种数据存储装置,包括:
第二拆分模块,用于基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;
第二加密模块,用于基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;
数据存储模块,用于将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的数据查询方法或者如上述任一种所述的数据存储方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的数据查询方法或者如上述任一种所述的数据存储方法。
本发明提供的数据查询方法、数据存储方法、装置及电子设备,通过基于数据查询端和数据存储端共同协商好的数据处理方法对待查询数据进行拆分、加密以及重新拼接,得到待查询数据对应的第一搜索字符序列,从而可以将第一搜索字符序列与第一数据库中基于同样的数据处理方法得到的多个加密字符序列进行匹配,进而可以基于匹配成功的目标加密字符序列从第二数据库中获取与待查询数据对应的目标查询数据,在数据查找过程中不需要将第一数据库中存储的所有加密字符序列加载至内存,避免了将加密字符序列加载至内存导致的对内存空间和时间成本的消耗,并且消除了过多占用内存空间导致数据处理速度慢的缺陷,从而可以提高数据查询效率,另外,在数据查找过程中也不需要对加密字符序列进行解密,从而可以提高数据查询过程中的数据安全性,解决了现有技术中如何提高数据查找效率以及保证数据安全性的技术问题。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据查询方法的流程示意图之一;
图2是本发明实施例提供的数据查询方法的流程示意图之二;
图3是本发明实施例提供的数据查询方法的流程示意图之三;
图4是本发明实施例提供的数据查询方法的流程示意图之四;
图5是本发明实施例提供的数据查询方法的流程示意图之五;
图6是本发明实施例提供的数据查询方法的流程示意图之六;
图7是本发明实施例提供的数据查询方法的流程示意图之七;
图8是本发明实施例提供的数据查询方法的流程示意图之八;
图9是本发明具体实施例中数据查询方法的示意图之一;
图10是本发明具体实施例中数据查询方法的示意图之二;
图11是本发明实施例提供的数据存储方法的流程示意图之一;
图12是本发明实施例提供的数据存储方法的流程示意图之二;
图13是本发明具体实施例中数据存储方法的示意图;
图14是本发明实施例提供的数据查询装置的结构示意图;
图15是本发明实施例提供的数据存储装置的结构示意图;
图16是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得到的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图8描述本发明提供的数据查询方法。如图1所示,本发明提供一种数据查询方法,应用于数据查询端,该方法包括:
步骤101,基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及多个第一数组的第一排列顺序。
其中,预设数据拆分规则表示数据查询端和数据存储端共同协商好的数据拆分规则,其中,数据查询端和数据存储端可以集成在同一台电子设备上,也可以属于不同的电子设备。待查询数据中包含待查询对象本身的部分标识信息,其中,该待查询对象可以是用户、设备或者系统。
进一步地,拆分后的各第一数组中分别包含待查询对象本身的一部分标识信息,将多个第一数组中的各部分标识信息按照第一排列顺序进行拼接,能够得到拆分前的待查询数据。
步骤102,基于预设加密规则、多个第一数组以及第一排列顺序,生成待查询数据对应的第一搜索字符序列。
其中,预设加密规则表示数据查询端和数据存储端共同协商好的数据加密规则,用于对各第一数组进行加密,以基于加密后的第一数组以及第一排列顺序生成第一搜索字符序列。
步骤103,基于第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,目标加密字符序列用于从第二数据库中获取与待查询数据对应的目标查询数据。
其中,每一个加密字符序列对应一组原始存储数据,每一组原始存储数据对应一个对象,每一组原始存储数据中包含其对应对象的过程数据,例如,用户的应用数据、设备或者系统的运行信息。第二数据库中存储有每一个对象的原始存储数据,具体包括每一个对象的过程数据。
加密字符序列基于原始存储数据对应的第一存储数据、预设数据拆分规则以及预设加密规则生成,第一存储数据中包含其对应对象本身的需要保密存储的全部标识信息,例如,全部标识信息可以是用户的身份信息、设备或者系统的登录密码以及设备或者系统中存储的财务信息。第一数据库中存储有每一个对象的第一存储数据的加密字符序列,具体包括每一个对象的全部标识信息的加密字符序列。
具体地,采用相同的数据处理方法分别对数据查询端的待查询数据以及数据存储端的第一存储数据进行拆分、加密以及重新拼接,得到待查询数据对应的第一搜索字符序列以及第一存储数据对应的加密字符序列,从而将第一搜索字符序列与第一数据库中的多个加密字符序列进行匹配,以确定出与第一搜索字符序列匹配成功的目标加密字符序列,其中,相同的数据处理方法包括预设数据拆分规则、预设加密规则以及按照数组的排列顺序进行拼接的规则。
上述步骤101至步骤103,通过基于数据查询端和数据存储端共同协商好的数据处理方法对待查询数据进行拆分、加密以及重新拼接,得到待查询数据对应的第一搜索字符序列,从而可以将第一搜索字符序列与第一数据库中基于同样的数据处理方法得到的多个加密字符序列进行匹配,进而可以基于匹配成功的目标加密字符序列从第二数据库中获取与待查询数据对应的目标查询数据,在数据查找过程中不需要将第一数据库中存储的所有加密字符序列加载至内存,避免了将加密字符序列加载至内存导致的对内存空间和时间成本的消耗,并且消除了过多占用内存空间导致数据处理速度慢的缺陷,从而可以提高数据查询效率,另外,在数据查找过程中也不需要对加密字符序列进行解密,从而可以提高数据查询过程中的数据安全性,解决了现有技术中如何提高数据查找效率以及保证数据安全性的技术问题。
在一个实施例中,如图2所示,上述步骤101包括步骤201至步骤203,其中:
步骤201,判断待查询数据中是否包含第一数据类型的数据,第一数据类型为除英文或数字之外的其他数据类型。例如,第一数据类型可以包括中文、日文以及法文。
步骤202,在待查询数据中包含第一数据类型的数据的情况下,将待查询数据中的第一数据类型的数据编码为第二数据类型的数据,第二数据类型包括英文以及数字。
其中,编码前的第一数据类型的数据与编码后的第二数据类型的数据存在固定的编码对应关系。
进一步地,可以采用Unicode编码方式将待查询数据中的第一数据类型的数据编码为第二数据类型的数据,其中,Unicode编码方式是一种采用二个字节进行编码的国际标准编码方式。
步骤203,获取编码后的待查询数据,并基于预设数据拆分规则对编码后的待查询数据进行拆分。
上述步骤201至步骤203,通过将待查询数据中的第一数据类型的数据编码为计算机通用的第二数据类型的数据,并基于编码后的待查询数据生成第一搜索字符序列,从而可以保证后续的数据查询过程的顺利进行。
在一个实施例中,如图3所示,上述步骤102包括步骤301至步骤302,其中:
步骤301,基于预设加密规则对各第一数组进行加密,得到各第一数组对应的第一密文。
进一步地,预设加密规则为对称加密算法或者可逆加密算法,以保证能够对加密后的数组进行解密,从而可以避免加密后无法解密的问题。例如,预设加密规则可以是ASE+BASE64加密算法,其中,AES(Advanced Encryption Standard)为高级加密标准算法,BASE64是网络上最常见的用于传输8Bit字节代码的编码方式之一。
步骤302,基于第一排列顺序对各第一数组对应的第一密文进行拼接,得到第一搜索字符序列。
上述实施例,通过基于多个第一数组的第一排列顺序对各第一数组对应的第一密文进行拼接,从而可以保证获取到的第一搜索字符序列中的第一密文的顺序与加密前的第一数组的顺序一致,以保证第一搜索字符序列的拼接方式与第一数据库中的加密字符序列的拼接方式一致,其中,加密字符序列中的第二密文的顺序与加密前的第二数组的顺序一致,进而可以基于第一搜索字符序列顺利查找到目标加密字符序列。
在一个实施例中,如图4所示,上述步骤103包括步骤401至步骤403,其中:
步骤401,基于待查询数据确定当前数据查询场景,并获取当前数据查询场景对应的查询经验数据。
进一步地,可以基于待查询数据的属性信息确定当前数据查询场景,其中,待查询数据表示待查询对象对应的部分标识信息,属性信息包括待查询数据对应的待查询对象的标识类型。
在一个实施例中,待查询对象为用户,待查询对象的标识类型可以是用户的身份标识,例如,用户的身份证号码,则确定可以确实当前数据查询场景为基于用户的身份证号码进行数据查询的场景,从而可以确定这一数据查询场景下的查询经验数据为基于身份证号码中的中间八位数值进行数据查找,其中,身份证号码中的中间八位数值为用户的出生年月日。
步骤402,基于查询经验数据和第一搜索字符序列,确定第二搜索字符序列,第二搜索字符序列的序列长度小于或者等于第一搜索字符序列的序列长度。
其中,“第二搜索字符序列的序列长度等于第一搜索字符序列的序列长度”表示选取完整的第一搜索字符序列作为第二搜索字符序列进行数据搜索匹配。“第二搜索字符序列的序列长度小于第一搜索字符序列的序列长度”表示截取第一搜索字符序列中的一部分字符序列作为第二搜索字符序列进行数据搜索匹配,第二搜索字符序列的数量为一个或者多个。
例如,第一搜索字符序列为身份证号码对应的字符序列,选取身份证号码中的中间八位数值对应的字符序列作为第二搜索字符序列进行数据搜索匹配。或者选取完整的身份证号码对应的字符序列作为第二搜索字符序列进行数据搜索匹配。
步骤403,基于第二搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列。
具体地,将第二搜索字符序列与第一数据库中每一个加密字符序列进行匹配,以确定匹配成功的目标加密字符序列。
上述步骤401至步骤403,通过基于当前数据查询场景对应的查询经验数据以及第一搜索字符序列,能够确定出比较合适的第二搜索字符序列,从而能够基于第二搜索字符序列快速地从第一数据库中的多个加密字符序列中确定出目标加密字符序列,从而可以提高数据查询效率。
在一个实施例中,第二搜索字符序列的序列长度小于第一搜索字符序列的序列长度;第二搜索字符序列的数量为多个;如图5所示,上述步骤403包括步骤501至步骤503,其中:
步骤501,获取多个第二搜索字符序列的搜索顺序,并基于搜索顺序确定当前第二搜索字符序列。其中,多个第二搜索字符序列的搜索顺序基于查询经验数据确定。
步骤502,将当前第二搜索字符序列分别与从第一数据库中的多个加密字符序列进行匹配,并获取匹配成功的第一加密字符序列。
步骤503,在确定第一加密字符序列的数量为一个的情况下,将第一加密字符序列确定为目标加密字符序列。
上述步骤501至步骤503,通过将第一搜索字符序列拆分为多个第二搜索字符序列,并基于查询经验数据确定多个第二搜索字符序列的搜索顺序,以便于基于拆分后的多个第二搜索字符序列以及多个第二搜索字符序列的搜索顺序快速地从第一数据库中确定出目标加密字符序列,并在基于当前第二搜索字符序列确定的第一加密字符序列的数量为一个的情况下,直接将第一加密字符序列确定为目标加密字符序列,极大地缩短了搜索字符序列的序列长度,从而可以提高数据的搜索匹配效率。
在一个实施例中,如图6所示,本发明提供的数据查询方法还包括步骤504至步骤507,其中:
步骤504,在确定第一加密字符序列的数量为多个的情况下,基于搜索顺序确定下一第二搜索字符序列。
步骤505,将下一第二搜索字符序列与多个第一加密字符序列进行匹配,并获取匹配成功的第二加密字符序列。
步骤506,在确定第二加密字符序列为一个的情况下,确定第二加密字符序列为目标加密字符序列。
具体地,在确定第二加密字符序列为一个的情况下,停止搜索匹配流程,并确定第二加密字符序列为目标加密字符序列。
步骤507,在确定第二加密字符序列为多个的情况下,基于搜索顺序重新确定下一第二搜索字符序列,并基于第二加密字符序列以及重新确定的下一第二搜索字符序列确定目标加密字符序列。
具体地,在确定第二加密字符序列为多个的情况下,基于搜索顺序重新确定的下一第二搜索字符序列继续执行搜索匹配流程,以基于第二加密字符序列以及重新确定的下一第二搜索字符序列确定目标加密字符序列。
上述步骤504至步骤507,通过在基于下一第二搜索字符序列确定的第二加密字符序列为一个的情况下,直接确定第二加密字符序列为目标加密字符序列,缩短了搜索字符序列的序列长度,从而可以提高数据的搜索匹配效率;在确定第二加密字符序列为多个的情况下,基于搜索顺序重新确定下一第二搜索字符序列,并基于第二加密字符序列以及重新确定的下一第二搜索字符序列确定目标加密字符序列,这种渐进式的搜索匹配方法能够最大程度地缩短搜索字符序列的序列长度,从而提高数据的搜索匹配效率。
在一个实施例中,如图7所示,本发明提供的数据查询方法还包括步骤104至步骤107,其中:
步骤104,基于预设数据拆分规则对目标加密字符序列进行拆分,得到多个第二密文以及多个第二密文的第二排列顺序。
其中,预设数据拆分规则表示数据查询端和数据存储端共同协商好的数据拆分规则。
步骤105,基于预设解密规则对各第二密文进行解密,得到各第二密文对应的第二数组,预设解密规则与预设加密规则相对应。
其中,预设解密规则表示数据查询端和数据存储端共同协商好的数据解密规则,预设解密规则与预设加密规则相对应,两者可以是对称的关系,也可以是互逆的关系。
步骤106,基于第二排列顺序对各第二密文对应的第二数组进行拼接,得到第一查询数据。其中,第一查询数据中包含待查询对象本身的全部标识信息。
步骤107,基于第一查询数据确定待查询数据对应的目标数据标识,并基于目标数据标识从第二数据库中获取目标查询数据。其中,目标数据标识表示待查询对象在计算机中的数据标识。目标查询数据表示待查询对象的过程数据。
需要说明的是,本实施例提供的数据解密以及数据查询过程可以在独立的电子设备上执行,也可以与上述各个实施例提供的数据加密以及数据查询过程统一在一台电子设备上执行,本发明不作限制。
上述步骤104至步骤107,通过基于数据查询端和数据存储端共同协商好的数据处理方法对待查询数据进行拆分、解密以及重新拼接,从而能够成功还原出目标加密字符序列对应的第一查询数据,从而可以通过查询到的与第一查询数据相关联的目标数据标识顺利地从第二数据库中获取到待查询对象的目标查询数据,在数据查找过程中不涉及对解密后的第一查询数据进行数据传输以及直接基于解密后的第一查询数据进行数据查找的步骤,而是基于与第一查询数据相关联的目标数据标识从第二数据库中查找目标查询数据,极大地提高了解密后的第一查询数据的数据安全性,从而可以进一步提高数据查询过程中的数据安全性。
在一个实施例中,如图8所示,上述步骤107包括步骤601至步骤603,其中:
步骤601,获取解码前的第二数据类型的数据与解码后的第一数据类型的数据之间的解码对应关系。
步骤602,基于解码对应关系将第一查询数据中的第二数据类型的数据解码为第一数据类型的数据。
步骤603,获取解码后的第一查询数据,并基于解码后的第一查询数据确定待查询数据对应的目标数据标识。
上述步骤601至步骤603,通过基于解码前的第二数据类型的数据与解码后的第一数据类型的数据之间的解码对应关系,将第一查询数据中的第二数据类型的数据解码为第一数据类型的数据,从而可以保证解码后的第一查询数据与编码前的第一查询数据的一致性,以便于能够基于解码后的第一查询数据确定的目标数据标识顺利获取到待查询对象的目标查询数据,保证了后续数据查询流程的顺利进行。
下面提供一个具体实施例,以对本发明提供的数据查询方法作进一步说明。
本具体实施例1应用于基于用户的敏感信息的数据查找场景,其中,待查询数据为待查询用户的部分敏感信息,第一查询数据为用户的全部敏感信息,该全部敏感信息包括用户的身份信息以及财产信息,目标查询数据包括用户在第三方应用程序APP或者第三方网站中的浏览记录或者购买记录,具体包括以下步骤:
(1)如图9所示,基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及多个第一数组的第一排列顺序;基于预设加密规则对各第一数组进行加密,得到各第一数组对应的第一密文;基于第一排列顺序对各第一数组对应的第一密文进行拼接,得到第一搜索字符序列。基于第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列。
(2)如图10所示,基于预设数据拆分规则对目标加密字符序列进行拆分,得到多个第二密文以及多个第二密文的第二排列顺序;基于预设解密规则对各第二密文进行解密,得到各第二密文对应的第二数组,预设解密规则与预设加密规则相对应;基于第二排列顺序对各第二密文对应的第二数组进行拼接,得到第一查询数据;基于第一查询数据确定待查询数据对应的目标数据标识,并基于目标数据标识从第二数据库中获取目标查询数据。
下面结合图11-图12描述本发明提供的数据存储方法。如图11所示,本发明提供一种数据存储方法,应用于数据存储端,该方法包括:
步骤701,基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及多个第三数组的第三排列顺序。
具体地,每一组原始存储数据对应一个对象,每一组原始存储数据中包含其对应对象的过程数据,例如,用户的应用数据、设备或者系统的运行信息。针对每一个对象的原始存储数据,将该原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及多个第三数组的第三排列顺序。第一存储数据中包含该对象本身需要保密存储的全部标识信息,该对象可以是用户、设备或者系统,例如,全部标识信息可以是用户的身份信息、设备或者系统的登录密码以及设备或者系统中存储的财务信息。
进一步地,拆分后的各第三数组中分别包含该对象本身的一部分标识信息,将多个第三数组中的各部分标识信息按照第三排列顺序进行拼接,能够得到拆分前的第一存储数据。
步骤702,基于预设加密规则、多个第三数组以及第三排列顺序,生成第一存储数据对应的加密字符序列。
其中,预设加密规则表示数据查询端和数据存储端共同协商好的数据加密规则,还用于对各第三数组进行加密,以基于加密后的第三数组以及第三排列顺序生成加密字符序列。
具体地,基于预设加密规则对各第三数组进行加密,得到各第三数组对应的第三密文。基于第三排列顺序对各第三数组对应的第三密文进行拼接,得到加密字符序列。
步骤703,将加密字符序列存储至第一数据库中,以及将原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
上述步骤701至步骤703,通过采用相同的数据处理方法分别对数据查询端的待查询数据以及数据存储端的第一存储数据进行拆分、加密以及重新拼接,得到待查询数据对应的第一搜索字符序列以及第一存储数据对应的加密字符序列,从而将第一搜索字符序列与第一数据库中的多个加密字符序列进行匹配,以确定出与第一搜索字符序列匹配成功的目标加密字符序列,在数据查找过程中不需要将第一数据库中存储的所有加密字符序列加载至内存,避免了将加密字符序列加载至内存导致的对内存空间和时间成本的消耗,并且消除了过多占用内存空间导致数据处理速度慢的缺陷,从而可以提高数据查询效率,另外,在数据查找过程中也不需要对加密字符序列进行解密,从而可以提高数据查询过程中的数据安全性,解决了现有技术中如何提高数据查找效率以及保证数据安全性的技术问题。
在一个实施例中,在上述步骤703之前,本发明提供的数据存储方法还包括:
确定第一存储数据的数据标识,并将数据标识与第一存储数据对应的原始存储数据进行关联,以使数据查询端基于目标加密字符序列对应的第一查询数据确定目标数据标识,并基于目标数据标识从第二数据库中获取目标查询数据。
上述实施例,通过确定第一存储数据的数据标识,并将数据标识与第一存储数据对应的原始存储数据进行关联,从而可以通过查询到的与第一查询数据相关联的目标数据标识顺利地从第二数据库中获取到待查询对象的目标查询数据,在数据查找过程中不涉及对解密后的第一查询数据进行数据传输以及直接基于解密后的第一查询数据进行数据查找的步骤,而是基于与第一查询数据相关联的目标数据标识从第二数据库中查找目标查询数据,极大地提高了解密后的第一查询数据的数据安全性,从而可以进一步提高数据查询过程中的数据安全性。
在一个实施例中,如图12所示,上述步骤701包括步骤801至步骤803,其中:
步骤801,判断第一存储数据中是否包含第一数据类型的数据,第一数据类型为除英文或数字之外的其他数据类型。例如,第一数据类型可以包括中文、日文以及法文。
步骤802,在第一存储数据中包含第一数据类型的数据的情况下,将第一存储数据中第一数据类型的数据编码为第二数据类型的数据,第二数据类型包括英文以及数字。
其中,编码前的第一数据类型的数据与编码后的第二数据类型的数据存在固定的编码对应关系。
进一步地,可以采用Unicode编码方式将第一存储数据中的第一数据类型的数据编码为第二数据类型的数据,其中,Unicode编码方式是一种采用二个字节进行编码的国际标准编码方式。
步骤803,获取编码后的第一存储数据,并基于预设数据拆分规则对编码后的第一存储数据进行拆分。
上述步骤801至步骤803,通过将第一存储数据中的第一数据类型的数据编码为计算机通用的第二数据类型的数据,并基于编码后的第一存储数据生成加密字符序列,从而可以保证数据查询过程的顺利进行。
在一个实施例中,本发明提供的数据存储方法还包括:获取第一存储数据的属性信息;基于属性信息确定预设数据拆分规则。
其中,第一存储数据中包含其对应对象本身的需要保密存储的全部标识信息,属性信息包括第一存储数据对应的对象的标识类型。
例如,待查询对象为用户,在待查询对象的标识类型为身份证号码的情况下,可以基于构成身份证号码的多个代码段对第一存储数据中用户的身份证号码进行拆分,得到省市县代码、出生年月日、申报顺序码和验证位这四个代码段的数据,每个代码段的数据构成一个第三数组。
又例如,在待查询对象的标识类型为手机号码的情况下,可以基于构成手机号码的多个代码段对第一存储数据中用户的手机号码进行拆分,得到网络识别号、地区编码以及用户号码这三个代码段的数据,每个代码段的数据构成一个第三数组。
下面提供一个具体实施例,以对本发明提供的数据存储方法作进一步说明。本具体实施例2应用于基于用户的敏感信息的数据查找场景,其中,待查询数据为待查询用户的部分敏感信息,第一查询数据为用户的全部敏感信息,该全部敏感信息包括用户的身份信息以及财产信息,目标查询数据包括用户在第三方应用程序APP或者第三方网站中的浏览记录或者购买记录,具体包括以下步骤:
如图13所示,基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及多个第三数组的第三排列顺序;基于预设加密规则、多个第三数组以及第三排列顺序,生成第一存储数据对应的加密字符序列。
确定第一存储数据的数据标识,并将数据标识与第一存储数据对应的原始存储数据进行关联,以使数据查询端基于目标加密字符序列对应的第一查询数据确定目标数据标识。
将加密字符序列存储至第一数据库中,以及将原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及第一数据库中存储的加密字符序列确定目标加密字符序列,并基于目标加密字符序列确定的目标数据标识从第二数据库中获取与待查询数据对应的目标查询数据。其中,第一数据库中存储有多个用户的第一存储数据对应的加密字符序列,第一存储数据中包含其对应用户的全部敏感信息。第二数据库中存储有多个用户的原始存储数据,原始存储数据中包含其对应用户在第三方应用程序APP或者第三方网站中的浏览记录或者购买记录。
下面对本发明提供的数据查询装置进行描述,下文描述的数据查询装置与上文描述的数据查询方法可相互对应参照。
如图14所示,本发明提供一种数据查询装置,数据查询装置100包括:
第一拆分模块101,用于基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及多个第一数组的第一排列顺序。
第一加密模块102,用于基于预设加密规则、多个第一数组以及第一排列顺序,生成待查询数据对应的第一搜索字符序列。
数据查询模块103,用于基于第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,目标加密字符序列用于从第二数据库中获取与待查询数据对应的目标查询数据。
在一个实施例中,第一拆分模块101包括类型判断单元、数据编码单元和数据拆分单元,其中:
类型判断单元,用于判断待查询数据中是否包含第一数据类型的数据,第一数据类型为除英文或数字之外的其他数据类型。
数据编码单元,用于在待查询数据中包含第一数据类型的数据的情况下,将待查询数据中的第一数据类型的数据编码为第二数据类型的数据,第二数据类型包括英文以及数字。
数据拆分单元,用于获取编码后的待查询数据,并基于预设数据拆分规则对编码后的待查询数据进行拆分。
在一个实施例中,第一加密模块102包括第一加密单元和密文拼接单元,其中:
第一加密单元,用于基于预设加密规则对各第一数组进行加密,得到各第一数组对应的第一密文。
密文拼接单元,用于基于第一排列顺序对各第一数组对应的第一密文进行拼接,得到第一搜索字符序列。
在一个实施例中,数据查询模块103包括经验获取单元、搜索确定单元和序列搜索单元,其中:
经验获取单元,用于基于待查询数据确定当前数据查询场景,并获取当前数据查询场景对应的查询经验数据。
搜索确定单元,用于基于查询经验数据和第一搜索字符序列,确定第二搜索字符序列,第二搜索字符序列的序列长度小于或者等于第一搜索字符序列的序列长度。
序列搜索单元,用于基于第二搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列。
在一个实施例中,第二搜索字符序列的序列长度小于第一搜索字符序列的序列长度;第二搜索字符序列的数量为多个;序列搜索单元还用于获取多个第二搜索字符序列的搜索顺序,并基于搜索顺序确定当前第二搜索字符序列;将当前第二搜索字符序列分别与从第一数据库中的多个加密字符序列进行匹配,并获取匹配成功的第一加密字符序列;在确定第一加密字符序列的数量为一个的情况下,将第一加密字符序列确定为目标加密字符序列。
在一个实施例中,序列搜索单元还用于在确定第一加密字符序列的数量为多个的情况下,基于搜索顺序确定下一第二搜索字符序列;将下一第二搜索字符序列与多个第一加密字符序列进行匹配,并获取匹配成功的第二加密字符序列;在确定第二加密字符序列为一个的情况下,确定第二加密字符序列为目标加密字符序列;在确定第二加密字符序列为多个的情况下,基于搜索顺序重新确定下一第二搜索字符序列,并基于第二加密字符序列以及重新确定的下一第二搜索字符序列确定目标加密字符序列。
在一个实施例中,数据查询模块103还包括序列拆分单元、密文解密单元、数组拼接单元和数据查询单元,其中:
序列拆分单元,用于基于预设数据拆分规则对目标加密字符序列进行拆分,得到多个第二密文以及多个第二密文的第二排列顺序。
密文解密单元,用于基于预设解密规则对各第二密文进行解密,得到各第二密文对应的第二数组,预设解密规则与预设加密规则相对应。
数组拼接单元,用于基于第二排列顺序对各第二密文对应的第二数组进行拼接,得到第一查询数据。
数据查询单元,用于基于第一查询数据确定待查询数据对应的目标数据标识,并基于目标数据标识从第二数据库中获取目标查询数据。
在一个实施例中,数据查询单元,还用于获取解码前的第二数据类型的数据与解码后的第一数据类型的数据之间的解码对应关系;基于解码对应关系将第一查询数据中的第二数据类型的数据解码为第一数据类型的数据;获取解码后的第一查询数据,并基于解码后的第一查询数据确定待查询数据对应的目标数据标识。
下面对本发明提供的数据存储装置进行描述,下文描述的数据存储装置与上文描述的数据存储方法可相互对应参照。
如图15所示,本发明提供一种数据存储装置,数据存储装置200包括:
第二拆分模块201,用于基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及多个第三数组的第三排列顺序。
第二加密模块202,用于基于预设加密规则、多个第三数组以及第三排列顺序,生成第一存储数据对应的加密字符序列。
数据存储模块203,用于将加密字符序列存储至第一数据库中,以及将原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
在一个实施例中,数据存储装置200还包括:标识关联模块,用于确定所述第一存储数据的数据标识,并将所述数据标识与所述第一存储数据对应的原始存储数据进行关联,以使所述数据查询端基于所述目标加密字符序列对应的第一查询数据确定目标数据标识,并基于所述目标数据标识从所述第二数据库中获取所述目标查询数据。
在一个实施例中,第二拆分模块201还用于判断第一存储数据中是否包含第一数据类型的数据,第一数据类型为除英文或数字之外的其他数据类型;在第一存储数据中包含第一数据类型的数据的情况下,将第一存储数据中第一数据类型的数据编码为第二数据类型的数据,第二数据类型包括英文以及数字;获取编码后的第一存储数据,并基于预设数据拆分规则对编码后的第一存储数据进行拆分。
在一个实施例中,数据存储装置200还用于获取第一存储数据的属性信息;基于属性信息确定预设数据拆分规则。
图16示例了一种电子设备的实体结构示意图,如图16所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行上述各实施例提供的数据查询方法或者执行上述各实施例提供的数据存储方法,其中,该数据查询方法包括:基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及多个第一数组的第一排列顺序;基于预设加密规则、多个第一数组以及第一排列顺序,生成待查询数据对应的第一搜索字符序列;基于第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,目标加密字符序列用于从第二数据库中获取与待查询数据对应的目标查询数据;该数据存储方法包括:基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的数据查询方法或者执行上述各实施例提供的数据存储方法,其中,该数据查询方法包括:基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及多个第一数组的第一排列顺序;基于预设加密规则、多个第一数组以及第一排列顺序,生成待查询数据对应的第一搜索字符序列;基于第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,目标加密字符序列用于从第二数据库中获取与待查询数据对应的目标查询数据;该数据存储方法包括:基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (16)
1.一种数据查询方法,其特征在于,包括:
基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及所述多个第一数组的第一排列顺序;
基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列;
基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,所述目标加密字符序列用于从第二数据库中获取与所述待查询数据对应的目标查询数据。
2.根据权利要求1所述的数据查询方法,其特征在于,所述基于预设数据拆分规则对获取到的待查询数据进行拆分,包括:
判断所述待查询数据中是否包含第一数据类型的数据,所述第一数据类型为除英文或数字之外的其他数据类型;
在所述待查询数据中包含第一数据类型的数据的情况下,将所述待查询数据中的第一数据类型的数据编码为第二数据类型的数据,所述第二数据类型包括英文以及数字;
获取编码后的待查询数据,并基于所述预设数据拆分规则对所述编码后的待查询数据进行拆分。
3.根据权利要求1所述的数据查询方法,其特征在于,所述基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列,包括:
基于所述预设加密规则对各所述第一数组进行加密,得到各所述第一数组对应的第一密文;
基于所述第一排列顺序对各所述第一数组对应的第一密文进行拼接,得到所述第一搜索字符序列。
4.根据权利要求1所述的数据查询方法,其特征在于,所述基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,包括:
基于所述待查询数据确定当前数据查询场景,并获取所述当前数据查询场景对应的查询经验数据;
基于所述查询经验数据和所述第一搜索字符序列,确定第二搜索字符序列,所述第二搜索字符序列的序列长度小于或者等于所述第一搜索字符序列的序列长度;
基于所述第二搜索字符序列从所述第一数据库中的多个加密字符序列中确定出所述目标加密字符序列。
5.根据权利要求4所述的数据查询方法,其特征在于,所述第二搜索字符序列的序列长度小于所述第一搜索字符序列的序列长度;所述第二搜索字符序列的数量为多个;
所述基于所述第二搜索字符序列从所述第一数据库中的多个加密字符序列中确定出所述目标加密字符序列,包括:
获取多个所述第二搜索字符序列的搜索顺序,并基于所述搜索顺序确定当前第二搜索字符序列;
将所述当前第二搜索字符序列分别与从所述第一数据库中的多个加密字符序列进行匹配,并获取匹配成功的第一加密字符序列;
在确定所述第一加密字符序列的数量为一个的情况下,将所述第一加密字符序列确定为所述目标加密字符序列。
6.根据权利要求5所述的数据查询方法,其特征在于,在所述获取匹配成功的第一加密字符序列之后,所述方法还包括:
在确定所述第一加密字符序列的数量为多个的情况下,基于所述搜索顺序确定下一第二搜索字符序列;
将所述下一第二搜索字符序列与多个所述第一加密字符序列进行匹配,并获取匹配成功的第二加密字符序列;
在确定所述第二加密字符序列为一个的情况下,确定所述第二加密字符序列为所述目标加密字符序列;
在确定所述第二加密字符序列为多个的情况下,基于所述搜索顺序重新确定下一第二搜索字符序列,并基于所述第二加密字符序列以及重新确定的下一第二搜索字符序列确定所述目标加密字符序列。
7.根据权利要求1-6任一项所述的数据查询方法,其特征在于,在所述基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列之后,所述方法还包括:
基于所述预设数据拆分规则对所述目标加密字符序列进行拆分,得到多个第二密文以及所述多个第二密文的第二排列顺序;
基于预设解密规则对各所述第二密文进行解密,得到各所述第二密文对应的第二数组,所述预设解密规则与所述预设加密规则相对应;
基于所述第二排列顺序对各所述第二密文对应的第二数组进行拼接,得到第一查询数据;
基于所述第一查询数据确定所述待查询数据对应的目标数据标识,并基于所述目标数据标识从所述第二数据库中获取目标查询数据。
8.根据权利要求7所述的数据查询方法,其特征在于,所述基于所述第一查询数据确定所述待查询数据对应的目标数据标识,包括:
获取解码前的第二数据类型的数据与解码后的第一数据类型的数据之间的解码对应关系;
基于所述解码对应关系将所述第一查询数据中的第二数据类型的数据解码为第一数据类型的数据;
获取解码后的第一查询数据,并基于所述解码后的第一查询数据确定所述待查询数据对应的目标数据标识。
9.一种数据存储方法,其特征在于,包括:
基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;
基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
10.根据权利要求9所述的数据存储方法,其特征在于,在所述将所述原始存储数据存储至第二数据库中之前,所述方法还包括:
确定所述第一存储数据的数据标识,并将所述数据标识与所述第一存储数据对应的原始存储数据进行关联,以使所述数据查询端基于所述目标加密字符序列对应的第一查询数据确定目标数据标识,并基于所述目标数据标识从所述第二数据库中获取所述目标查询数据。
11.根据权利要求9所述的数据存储方法,其特征在于,所述基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,包括:
判断所述第一存储数据中是否包含第一数据类型的数据,所述第一数据类型为除英文或数字之外的其他数据类型;
在所述第一存储数据中包含第一数据类型的数据的情况下,将所述第一存储数据中第一数据类型的数据编码为第二数据类型的数据,所述第二数据类型包括英文以及数字;
获取编码后的第一存储数据,并基于所述预设数据拆分规则对所述编码后的第一存储数据进行拆分。
12.根据权利要求9-11任一项所述的数据存储方法,其特征在于,在所述基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分之前,所述方法还包括:
获取所述第一存储数据的属性信息;
基于所述属性信息确定所述预设数据拆分规则。
13.一种数据查询装置,其特征在于,包括:
第一拆分模块,用于基于预设数据拆分规则对获取到的待查询数据进行拆分,得到拆分后的多个第一数组以及所述多个第一数组的第一排列顺序;
第一加密模块,用于基于预设加密规则、所述多个第一数组以及所述第一排列顺序,生成所述待查询数据对应的第一搜索字符序列;
数据查询模块,用于基于所述第一搜索字符序列从第一数据库中的多个加密字符序列中确定出目标加密字符序列,所述目标加密字符序列用于从第二数据库中获取与所述待查询数据对应的目标查询数据。
14.一种数据存储装置,其特征在于,包括:
第二拆分模块,用于基于预设数据拆分规则对原始存储数据对应的第一存储数据进行拆分,得到拆分后的多个第三数组以及所述多个第三数组的第三排列顺序;
第二加密模块,用于基于预设加密规则、所述多个第三数组以及所述第三排列顺序,生成所述第一存储数据对应的加密字符序列;
数据存储模块,用于将所述加密字符序列存储至第一数据库中,以及将所述原始存储数据存储至第二数据库中,以使数据查询端基于待查询数据对应的第一搜索字符序列以及所述第一数据库中存储的加密字符序列确定目标加密字符序列,并基于所述目标加密字符序列从所述第二数据库中获取与所述待查询数据对应的目标查询数据。
15.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述的数据查询方法或者执行如权利要求9至12任一项所述的数据存储方法。
16.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的数据查询方法或者执行如权利要求9至12任一项所述的数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211371015.XA CN115757535A (zh) | 2022-11-03 | 2022-11-03 | 数据查询方法、数据存储方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211371015.XA CN115757535A (zh) | 2022-11-03 | 2022-11-03 | 数据查询方法、数据存储方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115757535A true CN115757535A (zh) | 2023-03-07 |
Family
ID=85357774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211371015.XA Pending CN115757535A (zh) | 2022-11-03 | 2022-11-03 | 数据查询方法、数据存储方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115757535A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116257887A (zh) * | 2023-05-16 | 2023-06-13 | 建信金融科技有限责任公司 | 数据查询方法、装置、系统、设备及存储介质 |
-
2022
- 2022-11-03 CN CN202211371015.XA patent/CN115757535A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116257887A (zh) * | 2023-05-16 | 2023-06-13 | 建信金融科技有限责任公司 | 数据查询方法、装置、系统、设备及存储介质 |
CN116257887B (zh) * | 2023-05-16 | 2023-08-22 | 建信金融科技有限责任公司 | 数据查询方法、装置、系统、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107609418B (zh) | 文本数据的脱敏方法、装置、存储设备以及计算机设备 | |
CN106610995B (zh) | 一种创建密文索引的方法、装置及系统 | |
CN108833361B (zh) | 一种基于虚拟账号的身份认证方法及装置 | |
CN108898005B (zh) | 一种硬盘识别的方法、系统、设备及计算机可读存储介质 | |
US11695740B2 (en) | Anonymization method and apparatus, device, and storage medium | |
CN110266682B (zh) | 数据加密方法、装置、移动终端及解密方法 | |
CN105468990A (zh) | 一种敏感信息的管理控制方法和装置 | |
CN107196840B (zh) | 数据处理方法、装置及设备 | |
CN109936546B (zh) | 数据加密存储方法和装置以及计算设备 | |
CN114285575B (zh) | 图像加密和解密方法和装置、存储介质及电子装置 | |
CN111859435B (zh) | 一种数据安全处理方法及装置 | |
CN112437060A (zh) | 一种数据传输方法、装置、计算机设备及存储介质 | |
CN115603907A (zh) | 加密存储数据的方法、装置、设备和存储介质 | |
CN112733169A (zh) | 一种基于区块链的数据管理方法、系统及终端设备 | |
CN115757535A (zh) | 数据查询方法、数据存储方法、装置及电子设备 | |
CN115765976B (zh) | 验证码加密方法、电子设备及存储介质 | |
CN114448722B (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
CN115879157A (zh) | 数据安全搜索方法及其装置、设备、介质、产品 | |
CN115941279A (zh) | 数据中用户标识的加解密方法、系统及设备 | |
CN106570410B (zh) | 一种数据的加密方法、解密方法、装置和系统 | |
CN110598426B (zh) | 基于信息安全的数据通信方法、装置、设备和存储介质 | |
CN114124469A (zh) | 数据处理的方法、装置和设备 | |
JP6763096B1 (ja) | システム | |
CN113645025A (zh) | 数据加密存储方法、存储设备、用户设备及存储介质 | |
CN113762958A (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 |