CN110347723A - 一种数据查询方法、系统及电子设备和存储介质 - Google Patents
一种数据查询方法、系统及电子设备和存储介质 Download PDFInfo
- Publication number
- CN110347723A CN110347723A CN201910629065.5A CN201910629065A CN110347723A CN 110347723 A CN110347723 A CN 110347723A CN 201910629065 A CN201910629065 A CN 201910629065A CN 110347723 A CN110347723 A CN 110347723A
- Authority
- CN
- China
- Prior art keywords
- string
- data
- character
- encrypted
- key
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种数据查询方法、系统及设备和介质,该方法包括:获取查询请求中的查询字符串;将查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;利用密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;预设数据库预先保存所有加密后数据,加密后数据为将所有明文数据切割为单个字符后利用预设加密算法对单个字符进行加密得到的数据;对目标字符串进行解密,得到查询请求对应的解密后数据。由上可知,本申请利用密文字符串在数据库中进行模糊查询,匹配出对应的密文,无需将所有密文数据解析后才能进行模糊查询,由此避免了解密与查询请求无关的数据,有效地提高了数据查询效率。
Description
技术领域
本申请涉及数据库技术领域,更具体地说,涉及一种数据查询方法、系统及一种电子设备和一种计算机可读存储介质。
背景技术
随着计算机科学技术的发展,数据库中存储着大批量的重要业务数据,例如:姓名、手机号码、身份证号等用户隐私信息。为了保护数据库中隐私数据的安全,不被攻击者利用系统的漏洞或非法获取访问权限窃取和篡改隐私数据,需要对这些重要的业务数据进行加密,将密文存储在数据库中,从而有效地保护隐私数据的安全性。
然而,在对存储密文数据的数据库进行模糊查询时,传统的解决方案是将数据库中的密文数据解密得到明文,在明文上模糊查询,再将数据重新加密成密文,重新存储在数据库中。这种方式下,在查询大批量数据时,解密的明文中将存在大量的不相关数据,导致查询响应时间较长,且降低了数据库的性能。
因此,如何解决上述问题是本领域技术人员需要重点关注的。
发明内容
本申请的目的在于提供一种数据查询方法、系统及一种电子设备和一种计算机可读存储介质,有效地提高了数据查询效率。
为实现上述目的,本申请提供了一种数据查询方法,包括:
获取查询请求中的查询字符串;
将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
可选的,所述获取查询请求中的查询字符串之后,还包括:
获取所述查询请求携带的标识信息;
利用所述标识信息获取对应的密钥。
可选的,所述将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串,包括:
利用分词算法将所述查询字符串切割为单个字符;
基于预设映射表获取单个字符对应的预设数值;
利用希尔密码算法和所述密钥确定所述预设数值对应的加密数值;
基于所述预设映射表确定每个所述加密数值对应的字符,编码得到密文字符串。
可选的,所述基于预设映射表获取单个字符对应的预设数值,包括:
将所述单个字符转换为对应的Unicode码;
基于所述预设映射表确定所述Unicode码对应的预设数值,得到当前单个字符对应的预设数值。
可选的,所述对所述目标字符串进行解密,得到所述查询请求对应的解密后数据,包括:
利用扩展欧几里得算法确定所述密钥对应的乘法逆元;
利用所述希尔密码算法和所述乘法逆元确定所述加密数值对应的预设数值;
基于所述预设映射表获取所述预设数值对应的字符,编码得到所述查询请求对应的解密后数据。
可选的,所述获取所述查询请求携带的标识信息,利用所述标识信息获取对应的密钥,包括:
调用远程密钥管理平台获取所述查询请求携带的标识信息,并获取所述标识信息对应的密钥。
可选的,所述获取所述标识信息对应的密钥,包括:
获取所述标识信息对应的密钥令牌,以及密钥字符串;所述密钥字符串为预先利用所述密钥令牌对密钥进行二次加密后存储至所述远程密钥管理平台的字符串;
利用所述密钥令牌对所述密钥字符串进行解密,得到对应的密钥。
为实现上述目的,本申请提供了一种数据查询系统,包括:
查询获取模块,用于获取查询请求中的查询字符串;
字符加密模块,用于将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
目标匹配模块,用于利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
字符解密模块,用于对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现前述公开的任一种数据查询方法的步骤。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的任一种数据查询方法的步骤。
通过以上方案可知,本申请提供的一种数据查询方法,包括:获取查询请求中的查询字符串;将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
由上可知,本申请预先将所有明文数据切割为单个字符后,利用预设加密算法对单个字符进行加密并保存至数据库中,在获取到查询请求后,将其中的查询字符串切割并加密,得到加密后用于查询的密文字符串,进而利用密文字符串在数据库中进行模糊查询,匹配出对应的密文,无需将所有密文数据解析后才能进行模糊查询,由此避免了解密与查询请求无关的数据,有效地提高了数据查询效率。
本申请还公开了一种数据查询系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种数据查询方法的流程图;
图2为本申请实施例公开的另一种数据查询方法的流程图;
图3为本申请实施例公开的一种具体的数据查询方法的示意图;
图4为本申请实施例公开的一种数据查询系统的结构图;
图5为本申请实施例公开的一种电子设备的结构图;
图6为本申请实施例公开的另一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,在对存储密文数据的数据库进行模糊查询时,传统的解决方案是将数据库中的密文数据解密得到明文,在明文上模糊查询,再将数据重新加密成密文,重新存储在数据库中。这种方式下,在查询大批量数据时,解密的明文中将存在大量的不相关数据,导致查询响应时间较长,且降低了数据库的性能。
因此,本申请实施例公开了一种数据查询方法,有效地提高了数据查询效率。
参见图1所示,本申请实施例公开的一种数据查询方法包括:
S11:获取查询请求中的查询字符串;
本步骤中,获取用户发起的用于查询数据的查询请求,并确定其中的查询字符串。
S12:将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
具体地,本实施例利用预设的分词算法将查询字符串切割为单个字符,如单个字母或单个数字,进而利用预设加密算法对切割得到的单个字符进行加密,得到密文字符串。
S13:利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
本实施例中,利用密文字符串在预设数据库中进行模糊查询,从而匹配到对应的目标字符串。可以理解的是,本实施例预先将所有待存储的明文数据按照预设分词算法切割为单个字符,并在切割后对单个字符进行加密,得到加密后数据,将加密后数据保存至创建好的预设数据库中。
S14:对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
本步骤中,对上述匹配得到的目标字符串进行解密,从而得到解密后的数据,即查询请求对应的查询结果。
由上可知,本申请预先将所有明文数据切割为单个字符后,利用预设加密算法对单个字符进行加密并保存至数据库中,在获取到查询请求后,将其中的查询字符串切割并加密,得到加密后用于查询的密文字符串,进而利用密文字符串在数据库中进行模糊查询,匹配出对应的密文,无需将所有密文数据解析后才能进行模糊查询,由此避免了解密与查询请求无关的数据,有效地提高了数据查询效率。
本申请实施例公开了另一种数据查询方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体的:
S21:获取查询请求中的查询字符串以及所述查询请求携带的标识信息,利用所述标识信息获取对应的密钥;
在一种具体的实施方式中,本实施例在获取到查询请求后,进而获取查询请求携带的标识信息,从而利用该标识信息获取对应的密钥。其中,标识信息可以为表征当前用户的标识信息。
在现有数据加密技术中,通常将加密数据和密钥信息同时存放在同一数据库中,不利于密钥的管理。攻击者通过数据库的账号和口令得到数据库的加密数据的情况下,有极大地可能获取到密钥信息,导致密钥的保护性较差。因此,作为一种优选的实施方式,本实施例可以将密钥单独存放至密钥管理平台中,从而在获取密钥时,需要远程调用密钥管理平台获取查询请求携带的标识信息,并获取标识信息对应的密钥。
进一步地,为了更好地保证密钥的安全性,本实施例利用远程密钥管理平台对密钥进行二次加密,得到密钥字符串并存储至远程密钥管理平台中,相应的,在获取标识信息对应的密钥时,首先根据标识信息获取对应的密钥令牌以及密钥字符串,再利用密钥令牌对密钥字符串进行解密,得到对应的密钥。通过对密钥的二次加密,即使攻击者可以获得密钥信息,也是加密后无法直接使用的密钥信息,增加了密钥破解的难度,进一步提高了密钥及加密数据的安全性。
S22:将所述查询字符串切割为单个字符,基于预设映射表获取单个字符对应的预设数值;
S23:利用希尔密码算法和所述密钥确定预设数值对应的加密数值;
S24:基于预设映射表确定每个加密数值对应的字符,编码得到密文字符串;
上述利用预设加密算法对切割得到的单个字符进行加密,得到密文字符串的过程可以具体为:基于预设映射表获取单个字符对应的预设数值;利用希尔密码算法和上述基于标识信息得到的密钥确定预设数值对应的加密数值;基于预设映射表确定每个加密数值对应的字符,编码得到密文字符串。
需要说明的是,上述预设映射表可以为预先建立的保存Unicode码及对应的预设数值的映射表。相应的,上述基于预设映射表获取单个字符对应的预设数值的过程具体为:将单个字符转换为对应的Unicode码,基于预设映射表确定Unicode码对应的预设数值,得到当前单个字符对应的预设数值。其中,预设数值可以具体为正整数,预设数值与Unicode码的对应关系以及预设数值的具体格式可以在具体实施过程中根据用户的需求进行设定,本实施例不对此进行具体限定。
优选的,本实施例可以将预设映射表存储在本地缓存中,从而无需远程调用,可以在本地直接基于预设映射表获取对应的数值。
S25:利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
S26:利用扩展欧几里得算法确定所述密钥对应的乘法逆元;
S27:利用所述希尔密码算法和所述乘法逆元确定所述加密数值对应的预设数值;
S28:基于所述预设映射表获取所述预设数值对应的字符,编码得到所述查询请求对应的解密后数据。
本申请实施例公开了一种具体的数据查询方法,图3为本实施例提供的数据查询方法的示意图,首先对希尔密码算法进行介绍:设明文为M=m1,m2,…,mn∈Zn,密文为C=c1,c2,…,cn∈Zn;密钥为Z上的n×n阶可逆方阵K=(kij)n×n,其中,N表示明文中间映射表中数值的个数,希尔密码的方程为:
矩阵表示为:
下面对远程密钥管理服务平台、明文映射中间表的建立以及存储加密数据的数据库的建立过程进行介绍,具体地:
步骤一:建立密钥管理服务平台:使用欧几里得算法动态生成希尔密码算法的密钥K=(kij)n×n;进而利用AES对称加密方式生成各个客户端对应的唯一ID和密钥令牌;利用密钥令牌对密钥K=(kij)n×n进行二次加密,生成密钥字符串保存至密钥管理服务平台中,将产生的唯一ID通过RPC(远程过程调用协议,Remote Procedure Call Protocol)调用方式分配给业务方,即客户端。
步骤二:建立明文映射中间表:将对应的明文通过计算转换成unicode码并确定对应的正整数存储于明文映射中间表,也即,中间表存储每个Unicode码以及每个Unicode码对应的正整数;业务方通过调用接口访问密钥管理服务平台,从而密钥管理服务平台通过RPC将中间表存储的对应关系下发给业务方客户端,并存储在本地缓存中。
步骤三:对要加密的明文字符串进行分词操作:利用分词算法对传入的明文字符串切割成单个字母或数字;将每个分词后的字母或数字转化成对应的unicode码。
步骤四:通过希尔密码算法将明文转化成密文:将传入的Unicode码在本地缓存的中间表中查找对应整数值Mn,构成一个n维列向量M=[m1,m2,…,mn];通过算法C=MK modN,计算出数值Cn;利用数值Cn在中间表中查找对应的Unicode码,再将n个分向量反查Unicode码编码成字符串,从而将密文字符串存储到数据库中。
步骤五:对数据的模糊查询:将查询字符串通过步骤一到步骤四过程转化成密文字符串,在数据库中使用like操作符对密文进行检索和查询,匹配对应的密文。
步骤六:将模糊匹配的字符串进行解密:调用密钥管理服务平台传入步骤一分配的唯一ID,使用扩展欧几里得算法求解出乘法逆元K-1;通过算法M=K-1C mod N,计算出列向量M=[m1,m2,…,mn];通过中间表查找出对应的unicode码编码得到字符串;将对应的unicode字符串转化成明文字符串。
下面对本申请实施例提供的一种数据查询系统进行介绍,下文描述的一种数据查询系统与上文描述的一种数据查询方法可以相互参照。
参见图4所示,本申请实施例提供的一种数据查询系统包括:
查询获取模块101,用于获取查询请求中的查询字符串;
字符加密模块102,用于将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
目标匹配模块103,用于利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
字符解密模块104,用于对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
本申请还提供了一种电子设备,参见图5所示,本申请实施例提供的一种电子设备包括:
存储器100,用于存储计算机程序;
处理器200,用于执行所述计算机程序时可以实现上述实施例所提供的步骤。
具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200在一些实施例中可以是一中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,为电子设备提供计算和控制能力,执行所述存储器100中保存的计算机程序时,可以实现前述任一种实施例公开的数据查询方法的步骤。
在上述实施例的基础上,作为优选实施方式,参见图6所示,所述电子设备还包括:
输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元400,与处理器200相连,用于显示处理器200处理的数据以及用于显示可视化的用户界面。该显示单元400可以为LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。
网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
图6仅示出了具有组件100-500的电子设备,本领域技术人员可以理解的是,图6示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一种实施例公开的数据查询方法的步骤。
本申请中,在预先将所有明文数据切割为单个字符后,利用预设加密算法对单个字符进行加密并保存至数据库中,从而在获取到查询请求后,将其中的查询字符串切割并加密,得到加密后用于查询的密文字符串,进而利用密文字符串在数据库中进行模糊查询,匹配出对应的密文,无需将所有密文数据解析后才能进行模糊查询,由此避免了解密与查询请求无关的数据,有效地提高了数据查询效率。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种数据查询方法,其特征在于,包括:
获取查询请求中的查询字符串;
将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
2.根据权利要求1所述的数据查询方法,其特征在于,所述获取查询请求中的查询字符串之后,还包括:
获取所述查询请求携带的标识信息;
利用所述标识信息获取对应的密钥。
3.根据权利要求2所述的数据查询方法,其特征在于,所述将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串,包括:
利用分词算法将所述查询字符串切割为单个字符;
基于预设映射表获取单个字符对应的预设数值;
利用希尔密码算法和所述密钥确定所述预设数值对应的加密数值;
基于所述预设映射表确定每个所述加密数值对应的字符,编码得到密文字符串。
4.根据权利要求3所述的数据查询方法,其特征在于,所述基于预设映射表获取单个字符对应的预设数值,包括:
将所述单个字符转换为对应的Unicode码;
基于所述预设映射表确定所述Unicode码对应的预设数值,得到当前单个字符对应的预设数值。
5.根据权利要求3所述的数据查询方法,其特征在于,所述对所述目标字符串进行解密,得到所述查询请求对应的解密后数据,包括:
利用扩展欧几里得算法确定所述密钥对应的乘法逆元;
利用所述希尔密码算法和所述乘法逆元确定所述加密数值对应的预设数值;
基于所述预设映射表获取所述预设数值对应的字符,编码得到所述查询请求对应的解密后数据。
6.根据权利要求2至5任一项所述的数据查询方法,其特征在于,所述获取所述查询请求携带的标识信息,利用所述标识信息获取对应的密钥,包括:
调用远程密钥管理平台获取所述查询请求携带的标识信息,并获取所述标识信息对应的密钥。
7.根据权利要求6所述的数据查询方法,其特征在于,所述获取所述标识信息对应的密钥,包括:
获取所述标识信息对应的密钥令牌,以及密钥字符串;所述密钥字符串为预先利用所述密钥令牌对密钥进行二次加密后存储至所述远程密钥管理平台的字符串;
利用所述密钥令牌对所述密钥字符串进行解密,得到对应的密钥。
8.一种数据查询系统,其特征在于,包括:
查询获取模块,用于获取查询请求中的查询字符串;
字符加密模块,用于将所述查询字符串切割为单个字符,并利用预设加密算法分别对切割后的单个字符进行加密,得到密文字符串;
目标匹配模块,用于利用所述密文字符串在预设数据库中进行模糊查询,匹配得到对应的目标字符串;其中,所述预设数据库预先保存所有加密后数据,所述加密后数据为将所有明文数据切割为单个字符后利用所述预设加密算法对单个字符进行加密得到的数据;
字符解密模块,用于对所述目标字符串进行解密,得到所述查询请求对应的解密后数据。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述数据查询方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910629065.5A CN110347723A (zh) | 2019-07-12 | 2019-07-12 | 一种数据查询方法、系统及电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910629065.5A CN110347723A (zh) | 2019-07-12 | 2019-07-12 | 一种数据查询方法、系统及电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110347723A true CN110347723A (zh) | 2019-10-18 |
Family
ID=68175982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910629065.5A Pending CN110347723A (zh) | 2019-07-12 | 2019-07-12 | 一种数据查询方法、系统及电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110347723A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143633A (zh) * | 2019-12-24 | 2020-05-12 | 北京明朝万达科技股份有限公司 | 一种数据解密方法、装置、电子设备及存储介质 |
CN111475543A (zh) * | 2020-03-27 | 2020-07-31 | 深圳壹账通智能科技有限公司 | 一种模糊搜索方法、装置、计算机设备及存储介质 |
CN111753316A (zh) * | 2020-05-23 | 2020-10-09 | 苏州浪潮智能科技有限公司 | 一种对象存储元数据加密方法、系统、终端及存储介质 |
CN112269904A (zh) * | 2020-09-28 | 2021-01-26 | 华控清交信息科技(北京)有限公司 | 数据处理方法及装置 |
CN112307491A (zh) * | 2020-08-04 | 2021-02-02 | 神州融安科技(北京)有限公司 | 字符显示方法、设备、电子设备及计算机可读存储介质 |
CN112329758A (zh) * | 2020-11-04 | 2021-02-05 | 深圳市极致科技股份有限公司 | 基于车牌的模糊匹配方法、装置,电子设备及存储介质 |
CN112597480A (zh) * | 2020-12-28 | 2021-04-02 | 北京炼石网络技术有限公司 | 一种可扩展的格式保留加密方法的实现方式 |
CN112765592A (zh) * | 2021-01-15 | 2021-05-07 | 中国工商银行股份有限公司 | 数据库访问控制方法及装置 |
CN112906042A (zh) * | 2021-03-31 | 2021-06-04 | 浙江太美医疗科技股份有限公司 | 处理加密表单的方法、服务器和计算机可读介质 |
CN113139194A (zh) * | 2020-01-20 | 2021-07-20 | 华控清交信息科技(北京)有限公司 | 公安数据查询方法、装置、终端设备和介质 |
CN113987557A (zh) * | 2021-12-24 | 2022-01-28 | 亿次网联(杭州)科技有限公司 | 一种文件加密处理方法、系统、电子设备和存储介质 |
CN114221783A (zh) * | 2021-11-11 | 2022-03-22 | 杭州天宽科技有限公司 | 一种数据选择加密解密系统 |
CN114553581A (zh) * | 2022-03-01 | 2022-05-27 | 珠海金山数字网络科技有限公司 | 一种数据处理方法及装置 |
CN114978560A (zh) * | 2021-02-24 | 2022-08-30 | 中国联合网络通信集团有限公司 | 明文密码加密解密方法、装置、设备、介质及产品 |
CN115563634A (zh) * | 2022-09-29 | 2023-01-03 | 北京海泰方圆科技股份有限公司 | 一种检索方法、装置、设备及介质 |
CN117272333A (zh) * | 2022-10-28 | 2023-12-22 | 北京鸿鹄元数科技有限公司 | 关系型数据库水印嵌入、溯源方法 |
CN117390687A (zh) * | 2023-12-11 | 2024-01-12 | 闪捷信息科技有限公司 | 敏感数据查询方法、装置、存储介质和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588366A (zh) * | 2004-08-02 | 2005-03-02 | 中国科学院计算机网络信息中心 | 密文数据库检索技术 |
CN101938490A (zh) * | 2010-09-17 | 2011-01-05 | 浙江大学 | 一种移动互联网设备上的远程控制验证方法 |
CN103313241A (zh) * | 2012-03-15 | 2013-09-18 | 中国移动通信集团公司 | 一种se密钥管理方法、业务平台、管理平台和系统 |
WO2015130297A1 (en) * | 2014-02-28 | 2015-09-03 | Empire Technology Development Llc | Homomorphic encryption scheme |
EP3190741A1 (en) * | 2016-01-07 | 2017-07-12 | Empire Technology Development LLC | Homomorphic public-key encryption scheme |
CN108471411A (zh) * | 2018-03-19 | 2018-08-31 | 银联商务股份有限公司 | 密钥处理方法及装置 |
-
2019
- 2019-07-12 CN CN201910629065.5A patent/CN110347723A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588366A (zh) * | 2004-08-02 | 2005-03-02 | 中国科学院计算机网络信息中心 | 密文数据库检索技术 |
CN101938490A (zh) * | 2010-09-17 | 2011-01-05 | 浙江大学 | 一种移动互联网设备上的远程控制验证方法 |
CN103313241A (zh) * | 2012-03-15 | 2013-09-18 | 中国移动通信集团公司 | 一种se密钥管理方法、业务平台、管理平台和系统 |
WO2015130297A1 (en) * | 2014-02-28 | 2015-09-03 | Empire Technology Development Llc | Homomorphic encryption scheme |
EP3190741A1 (en) * | 2016-01-07 | 2017-07-12 | Empire Technology Development LLC | Homomorphic public-key encryption scheme |
CN108471411A (zh) * | 2018-03-19 | 2018-08-31 | 银联商务股份有限公司 | 密钥处理方法及装置 |
Non-Patent Citations (3)
Title |
---|
叶清: "《网络安全原理》", 31 May 2014, 武汉大学出版社 * |
张力: "《数字版权保护技术研发工程专利检索与分析 上》", 31 October 2016, 中国书籍出版社 * |
李臻,王敏: "《信息与网络安全试验教程》", 31 August 2018, 华中科技大学出版社 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143633B (zh) * | 2019-12-24 | 2023-09-01 | 北京明朝万达科技股份有限公司 | 一种数据解密方法、装置、电子设备及存储介质 |
CN111143633A (zh) * | 2019-12-24 | 2020-05-12 | 北京明朝万达科技股份有限公司 | 一种数据解密方法、装置、电子设备及存储介质 |
CN113139194A (zh) * | 2020-01-20 | 2021-07-20 | 华控清交信息科技(北京)有限公司 | 公安数据查询方法、装置、终端设备和介质 |
CN111475543A (zh) * | 2020-03-27 | 2020-07-31 | 深圳壹账通智能科技有限公司 | 一种模糊搜索方法、装置、计算机设备及存储介质 |
CN111753316A (zh) * | 2020-05-23 | 2020-10-09 | 苏州浪潮智能科技有限公司 | 一种对象存储元数据加密方法、系统、终端及存储介质 |
CN111753316B (zh) * | 2020-05-23 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种对象存储元数据加密方法、系统、终端及存储介质 |
CN112307491A (zh) * | 2020-08-04 | 2021-02-02 | 神州融安科技(北京)有限公司 | 字符显示方法、设备、电子设备及计算机可读存储介质 |
CN112269904A (zh) * | 2020-09-28 | 2021-01-26 | 华控清交信息科技(北京)有限公司 | 数据处理方法及装置 |
CN112269904B (zh) * | 2020-09-28 | 2023-07-25 | 华控清交信息科技(北京)有限公司 | 数据处理方法及装置 |
CN112329758A (zh) * | 2020-11-04 | 2021-02-05 | 深圳市极致科技股份有限公司 | 基于车牌的模糊匹配方法、装置,电子设备及存储介质 |
CN112597480A (zh) * | 2020-12-28 | 2021-04-02 | 北京炼石网络技术有限公司 | 一种可扩展的格式保留加密方法的实现方式 |
CN112597480B (zh) * | 2020-12-28 | 2022-06-14 | 北京炼石网络技术有限公司 | 一种可扩展的格式保留加密方法的实现方式 |
CN112765592A (zh) * | 2021-01-15 | 2021-05-07 | 中国工商银行股份有限公司 | 数据库访问控制方法及装置 |
CN114978560B (zh) * | 2021-02-24 | 2023-07-18 | 中国联合网络通信集团有限公司 | 明文密码加密解密方法、装置、设备及介质 |
CN114978560A (zh) * | 2021-02-24 | 2022-08-30 | 中国联合网络通信集团有限公司 | 明文密码加密解密方法、装置、设备、介质及产品 |
CN112906042A (zh) * | 2021-03-31 | 2021-06-04 | 浙江太美医疗科技股份有限公司 | 处理加密表单的方法、服务器和计算机可读介质 |
CN114221783B (zh) * | 2021-11-11 | 2023-06-02 | 杭州天宽科技有限公司 | 一种数据选择加密解密系统 |
CN114221783A (zh) * | 2021-11-11 | 2022-03-22 | 杭州天宽科技有限公司 | 一种数据选择加密解密系统 |
CN113987557A (zh) * | 2021-12-24 | 2022-01-28 | 亿次网联(杭州)科技有限公司 | 一种文件加密处理方法、系统、电子设备和存储介质 |
CN114553581A (zh) * | 2022-03-01 | 2022-05-27 | 珠海金山数字网络科技有限公司 | 一种数据处理方法及装置 |
CN115563634A (zh) * | 2022-09-29 | 2023-01-03 | 北京海泰方圆科技股份有限公司 | 一种检索方法、装置、设备及介质 |
CN115563634B (zh) * | 2022-09-29 | 2023-08-15 | 北京海泰方圆科技股份有限公司 | 一种检索方法、装置、设备及介质 |
CN117272333A (zh) * | 2022-10-28 | 2023-12-22 | 北京鸿鹄元数科技有限公司 | 关系型数据库水印嵌入、溯源方法 |
CN117272333B (zh) * | 2022-10-28 | 2024-05-24 | 北京鸿鹄元数科技有限公司 | 关系型数据库水印嵌入、溯源方法 |
CN117390687A (zh) * | 2023-12-11 | 2024-01-12 | 闪捷信息科技有限公司 | 敏感数据查询方法、装置、存储介质和电子设备 |
CN117390687B (zh) * | 2023-12-11 | 2024-04-02 | 闪捷信息科技有限公司 | 敏感数据查询方法、装置、存储介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110347723A (zh) | 一种数据查询方法、系统及电子设备和存储介质 | |
CN107038383B (zh) | 一种数据处理的方法和设备 | |
CN110391906B (zh) | 基于区块链的数据处理方法、电子装置及可读存储介质 | |
US20080247540A1 (en) | Method and apparatus for protecting digital contents stored in usb mass storage device | |
US20140201517A1 (en) | Method and system for distributed off-line logon using one-time passwords | |
CN102855448B (zh) | 一种字段级数据库加密装置 | |
JP2011527804A (ja) | 仮想入力レイアウトを用いた情報伝送 | |
US10461934B2 (en) | Authentication-based message display method and communication terminal thereof | |
US8769302B2 (en) | Encrypting data and characterization data that describes valid contents of a column | |
CN104601325A (zh) | 数据加密方法、数据解密方法、装置、设备及系统 | |
US9641328B1 (en) | Generation of public-private key pairs | |
WO2019127863A1 (zh) | 密钥保存和获取装置、方法及计算机可读存储介质 | |
JP2006345261A (ja) | データ処理装置 | |
WO2019114137A1 (zh) | 密码调用方法、服务器及存储介质 | |
CN109361644A (zh) | 一种支持快速搜索和解密的模糊属性基加密方法 | |
CN110958317A (zh) | 一种数据处理方法以及设备 | |
CN101887713A (zh) | 字库的加密方法及装置 | |
CN104866773B (zh) | 一种指纹搜索方法、装置及终端 | |
CN103577763A (zh) | 具数据保护功能的移动终端设备及数据保护方法 | |
CN107222310A (zh) | 一种基于属性加密的密文策略云加密的并行化处理方法 | |
US11133926B2 (en) | Attribute-based key management system | |
CN110990848A (zh) | 基于hive数据仓库的敏感字加密方法及装置、存储介质 | |
CN116132065A (zh) | 密钥确定方法、装置、计算机设备和存储介质 | |
US9203607B2 (en) | Keyless challenge and response system | |
WO2018043466A1 (ja) | データ抽出システム、データ抽出方法、登録装置及びプログラム |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191018 |