一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种支持数据库统计函数的数值脱敏方法及装置与流程

2023-02-02 02:52:31 来源:中国专利 TAG:


1.本发明涉及数据安全技术领域,尤其涉及一种支持数据库统计函数的数值脱敏方法及装置。


背景技术:

2.目前常用的数值脱敏方法有同态加密(homomorphic encryption,he)方法。同态加密是指指满足密文同态运算性质的加密算法,即数据经过同态加密之后,对密文进行某些特定的计算,得到的密文计算结果在进行对应的同态解密后的明文等同于对明文数据直接进行相同的计算。同态加密分为完全同态加密和半同态加密。完全同态加密(fhe)由于其计算开销极大,暂时还未在实际中使用,半同态加密(swhe,支持一些特定的函数)已经落地使用,然而有秘钥生成、明文加密、密文解密等流程,更适合云化数据共享计算之类场景。


技术实现要素:

3.针对现有的基于同态加密的数值脱敏方法不太适用于数据库的问题,本发明提供一种支持数据库统计函数的数值脱敏方法及装置。
4.一方面,本发明提供一种支持数据库统计函数的数值脱敏方法,应用于整数类型数据,包括:
5.当检测到存在sql操作语句,则解析所述sql操作语句中的相关数据是否被配置为敏感数据;
6.若是,则调用数值脱敏接口,对敏感数据进行数值脱敏处理得到对应的映射值,然后结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果;其中,所述数值脱敏接口的数值脱敏过程具体包括:对敏感数据进行按位取反得到敏感数据的映射值。
7.进一步地,所述的结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果,具体包括:
8.若sql操作语句为插入操作或update操作,对敏感数据进行数值脱敏处理后,则将数值脱敏处理后的数据替换掉原始sql操作语句中的数据插入数据库。
9.进一步地,所述的结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果,具体包括:
10.若sql操作语句存在条件查询,对敏感数据进行数值脱敏处理后,则将数值脱敏处理后的数据替换掉sql操作语句中的条件数据后再将该sql操作语句提交至数据库执行查询操作。
11.进一步地,还包括:若sql操作语句为select操作,则解析所述select操作的相关数据是否有解密配置,若有,则拦截数据库返回的结果集,然后调用数据脱敏接口,将所述结果集中的数据进行映射得到真实数据,将真实数据替换掉结果集中原数据并返回。
12.进一步地,还包括:若sql操作语句存在求和操作,则解析求和操作的求和列是否被配置为敏感数据,若是,则查询此次返回的行数,并查询得到数据总和,然后调用数据脱
敏接口,将所述数据总和按照公式(1)进行映射得到真实值总和并返回;
13.(x1 x2

xn)=n*a-(y1 y2

yn)
ꢀꢀ
(1)
14.其中,a是数值类型数据边界最大值,xi为原始值,yi为映射值,n为查询到的行数,sum(y)=(y1 y2

yn)为数据库查询得到的数据总和,sum(x)= (x1 x2

xn)为真实值总和。
15.另一方面,本发明一种支持数据库统计函数的数值脱敏装置,应用于整数类型数据,包括:
16.解析模块,用于当检测到存在sql操作语句,则解析所述sql操作语句中的相关数据是否被配置为敏感数据;
17.数据脱敏接口模块,用于调用数值脱敏接口,对敏感数据进行数值脱敏处理得到对应的映射值,然后结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果;其中,所述数值脱敏接口的数值脱敏过程具体包括:对敏感数据进行按位取反得到敏感数据的映射值。
18.本发明的有益效果:
19.1、本发明方法及装置可以对数值数据脱敏的同时,保留数据形态不变;
20.2、本发明方法及装置可以不用改造已用的应用,即可实现数值脱敏数据搜索查询;
21.3、本发明方法及装置可以复原数值脱敏数据对应的原始信息;
22.4、本发明方法及装置可以支持数值脱敏数据的求和计算。
附图说明
23.图1为本发明实施例提供的整数值类型的边界图;
24.图2为本发明实施例提供的一种支持数据库统计函数的数值脱敏方法的流程示意图之一;
25.图3为本发明实施例提供的一种支持数据库统计函数的数值脱敏方法的流程示意图之二;
26.图4为本发明实施例提供的一种支持数据库统计函数的数值脱敏方法的流程示意图之三。
具体实施方式
27.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
28.在介绍本发明的技术方案之前,先对本发明构思所采用的数据脱敏原理进行简要介绍。具体硬件或软件对数值类型数据表示存在边界,如整数值(int)使用4 字节表示(2^31)可形成如图1所示的边界图,long同理,此处不再赘述。
29.线性的边界范围可以两头连接起来形成双环,在对双环横切时就会有一对数值出现,两者之和即为固定的边界值,如此可以确定一个数值的对应值,也即映射值。
30.在上述内容的基础上,如图2所示,本发明实施例提供一种支持数据库统计函数的数值脱敏方法,可以应用于整数类型数据,包括:
31.s101:当检测到存在sql操作语句,则解析所述sql操作语句中的相关数据是否被配置为敏感数据;
32.s102:若是,则调用数值脱敏接口,对敏感数据进行数值脱敏处理得到对应的映射值,然后结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果;其中,所述数值脱敏接口的数值脱敏过程具体包括:对敏感数据进行按位取反得到敏感数据的映射值。
33.具体地,若sql操作语句为插入操作或update操作,对敏感数据进行数值脱敏处理后,则将数值脱敏处理后的数据替换掉原始sql操作语句中的数据插入数据库。
34.若sql操作语句存在条件查询,对敏感数据进行数值脱敏处理后,则将数值脱敏处理后的数据替换掉sql操作语句中的条件数据后再将该sql操作语句提交至数据库执行查询操作。
35.实施例2
36.在上述各实施例的基础上,在如图3所示,本发明实施例还提供一种支持数据库统计函数的数值脱敏方法,包括以下步骤:
37.s201:当检测到存在sql操作语句,若sql操作语句为select操作,则解析所述select操作的相关数据是否有解密配置;
38.s202:若有,则拦截数据库返回的结果集,然后调用数据脱敏接口,将所述结果集中的数据进行映射得到真实数据,将真实数据替换掉结果集中原数据并返回。
39.实施例3
40.在上述各实施例的基础上,如图4所示,本发明实施例还提供一种支持数据库统计函数的数值脱敏方法,包括以下步骤:
41.s301:当检测到存在sql操作语句,若sql操作语句存在求和操作,则解析求和操作的求和列是否被配置为敏感数据;
42.s302:若是,则查询此次返回的行数,并查询得到数据总和,然后调用数据脱敏接口,将所述数据总和按照公式(1)进行映射得到真实值总和并返回;
43.(x1 x2

xn)=n*a-(y1 y2

yn)
ꢀꢀ
(1)
44.其中,a是数值类型数据边界最大值,xi为原始值,yi为映射值,n为查询到的行数,sum(y)=(y1 y2

yn)为数据库查询得到的数据总和,sum(x)= (x1 x2

xn)为真实值总和。
45.具体地,上述公式(1)的推导过程如下:
46.由图1可知,存在xi yi=a;其中a是常量,xi为原始值,yi为图中的映射值;则对“xi yi=a”进行展开存在下述公式:
47.x1 y1=a

x1=a-y1
48.x2 y2=a

x2=a-y2
49.…
50.xn yn=a

xn=a-yn
51.↓
52.(x1 x2

xn)=n*a-(y1 y2

yn)
53.由此可以得到上述的公式(1)。
54.因此,本发明提供的数值脱敏方法,在应用的请求过程中对数据做处理,即入库时插入映射值,求和或者统计时调用公式计算,对数据库和应用无感,对数据库中的数值数据有一定的脱敏混淆,又不用改造已有的应用,同时支持sql语句中的求和运算。
55.实施例4
56.对应上述的方法,本发明实施例还提供一种支持数据库统计函数的数值脱敏装置,应用于整数类型数据,包括解析模块和数据脱敏接口模块;
57.解析模块用于当检测到存在sql操作语句,则解析所述sql操作语句中的相关数据是否被配置为敏感数据;
58.数据脱敏接口模块用于调用数值脱敏接口,对敏感数据进行数值脱敏处理得到对应的映射值,然后结合sql操作语句的sql操作类型对映射值执行相应操作后并返回结果;其中,所述数值脱敏接口的数值脱敏过程具体包括:对敏感数据进行按位取反得到敏感数据的映射值。
59.需要说明的是,本发明实施例提供的支持数据库统计函数的数值脱敏装置,是为了实现上述方法实施例的,其功能具体可参考上述方法实施例,此处不再赘述。
60.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献