数据库零水印嵌入、提取的方法及电子设备技术

技术编号:33904748 阅读:14 留言:0更新日期:2022-06-25 18:29
本申请实施例公开了一种数据库零水印嵌入、提取的方法及电子设备。该数据库零水印嵌入的方法通过循环移位操作将水印信息嵌入待处理数据库中,无需修改待处理数据库中的元组的属性值,不会造成数据库的失真,其中,水印信息可以是各种有意义的字符;而且,该方法是以集合进行作为操作对象,在数据库中部分元组被删除、增加或更新时,在集合的次序不变时,从该数据库提取到的水印信息不变,可提高水印的鲁棒性。棒性。棒性。

【技术实现步骤摘要】
数据库零水印嵌入、提取的方法及电子设备


[0001]本申请涉及信息安全
,尤其涉及一种数据库零水印嵌入、提取的方法及电子设备。

技术介绍

[0002]随着大数据时代的到来,网络资源的共享、信息交换给人们的生活、工作带来极大的便利。用户在获取数据后,可能存在二次分发和二次售卖的情况,在互联网时代,泄露的数据可能会被迅速传播,这对数据的版权保护、遏制数据非法传播造成了极大地挑战。
[0003]数据水印技术是解决数据泄露追踪问题的重要技术手段之一。数据水印技术一般通过修改数据中的属性值来实现水印的嵌入,但是这样会造成数据的失真。

技术实现思路

[0004]本申请实施例提供了一种数据库零水印嵌入、提取的方法及电子设备,将水印信息转化为对数据库中的多个集合进行循环移位操作,不会造成数据库的失真。
[0005]第一方面,本申请实施例提供了一种数据库零水印嵌入的方法,该方法包括:生成水印信息,所述水印信息包括L个水印位,L为正整数;对所述待处理数据库中的元组进行分类,得到N个集合,一个集合包括至少一个元组,N为正整数;对所述N个集合进行排序,得到初始数据库;根据所述L个水印位和所述初始数据库,进行L次水印嵌入,得到第L次水印嵌入后的数据库;其中,j为正整数,j≤L,第j次水印嵌入包括:在关系表中查找所述L个水印位中的第j个水印位对应的移位位数,所述关系表包括多个水印位以及所述多个水印位分别对应的移位位数,所述移位位数用于指示循环移位操作的移动位数;根据所述第j个水印位对应的移位位数,对第jr/>‑
1数据库中的第j至N个集合进行循环移位操作,得到第j数据库;第0数据库为所述初始数据库,所述第j

1数据库为第j

1次水印嵌入得到的数据库。
[0006]上述方法,通过循环移位操作将水印信息嵌入待处理数据库中,无需修改待处理数据库中的元组的属性值,不会造成数据库的失真。
[0007]而且,该方法是以集合进行作为操作对象,在数据库中部分元组被删除、增加或更新时,在集合的次序不变时,从该数据库提取到的水印信息不变,可提高水印的鲁棒性。
[0008]结合第一方面,在一些实施例中,所述移位位数包括1至M位,M为正整数,所述循环移位操作包括循环左移操作或循环右移操作。
[0009]结合第一方面,在一些实施例中,所述N=L+(M

1),M为所述关系表中的最大移位位数。
[0010]结合第一方面,在一些实施例中,对所述待处理数据库中的元组进行分类,得到N个集合,包括:针对所述待处理数据库中的每一个元组,确定所述每一个元组的主键的哈希值;以所述N为模,对所述每一个元组对应的哈希值进行取模运算,得到所述每一个元组对应的余数;将所述待处理数据库中余数相同的元组分为一个集合。
[0011]结合第一方面,在一些实施例中,所述确定所述每一个元组的主键的哈希值,包
括:接收输入的密钥;将所述密钥和所述每一个元组的主键进行拼接,得到拼接后的信息;确定所述拼接后的信息的哈希值为所述每一个元组的主键的哈希值。
[0012]结合第一方面,在一些实施例中,对所述N个集合进行排序,得到初始数据库,包括:根据余数的大小对所述N个集合进行排序,得到初始数据库。
[0013]结合第一方面,在一些实施例中,所述生成水印信息,包括:获取第一信息,所述第一信息包括用于标识所述待处理数据库的所属者;所述第一信息可以是待处理数据库的所属者的信息、共享者的信息、用户版权信息、用户的身份标识等中的至少一种;对所述第一信息进行编码,得到校验码;将所述第一信息和所述校验码的组合作为所述水印信息。
[0014]第二方面,本申请实施例提供一种数据库零水印提取的方法,该方法包括:获取待识别数据库,所述待识别数据库包括多个元组;对所述待识别数据库中的元组进行分类,得到N个集合,一个集合包括至少一个元组,N为正整数;对所述N个集合进行排序,得到初始数据库;根据所述N个集合分别在所述初始数据库和所述待识别数据库中的位置,进行L次水印提取,得到水印信息,L为正整数;其中,j为正整数,j≤L,第j次水印提取包括:对比所述待识别数据库中的第j个集合的位置与所述第j个集合在第j

1数据库中的位置,确定第j个移位位数,第0数据库为所述初始数据库;所述第j

1数据库为第j

1次水印提取得到的数据库,所述移位位数用于指示循环移位操作的移位位数;在关系表中查找所述第j个移位位数对应的水印位,所述关系表包括多个水印位以及所述多个水印位分别对应的移位位数,所述水印信息包括所述第j个移位位数对应的水印位;根据所述第j个移位位数,对所述第j

1数据库中的第j至N个集合进行循环移位操作,得到第j数据库。
[0015]上述方法,根据对比多个集合分别在待识别数据库中的位置与初始数据库中的位置,依次确定多次的移位位数,从而确定多次移位位数对应的水印位,提取出水印信息。该方法与第一方面提供的数据库零水印嵌入方法对应,具有计算复杂度低、易操作的特点,并且使用该方法能够提高水印提取的效率。而且,在待识别数据库遭受元组删除、元组增加、元组修改等恶意攻击后,由于水印提取是通对比集合分别在待识别数据库与初始数据库的位置,因此不会影响水印提取的过程。
[0016]结合第二方面,在一些实施例中,所述移位位数包括1至M位,M为正整数,所述循环移位操作包括循环左移操作或循环右移操作。
[0017]结合第二方面,在一些实施例中,其特征在于,所述N=L+(M

1),M为所述关系表中的最大移位位数。
[0018]结合第二方面,在一些实施例中,对所述待识别数据库中的元组进行分类,得到N个集合,包括:针对所述待识别数据库中的每一个元组,确定所述每一个元组的主键的哈希值;以所述N为模,对所述每一个元组对应的哈希值进行取模运算,得到所述每一个元组对应的余数;将所述待识别数据库中余数相同的元组分为一个集合。
[0019]结合第二方面,在一些实施例中,所述确定所述每一个元组的主键的哈希值,包括:接收输入的密钥;将所述密钥和所述每一个元组的主键进行拼接,得到拼接后的信息;确定所述拼接后的信息的哈希值为所述每一个元组的主键的哈希值。
[0020]结合第二方面,在一些实施例中,对所述N个集合进行排序,确定所述N个集合的第一位置,得到初始数据库,包括:根据余数的大小对所述N个集合进行排序,得到初始数据库。
[0021]结合第二方面,在一些实施例中,所述方法还包括:确定所述N个集合中的每一个集合在所述待识别数据库中的质心,所述每一个集合的质心为所述每一个集合中的元组的在所述待识别数据库中的位置的平均值;按照质心的大小对所述N个集合进行排序,得到序列;确定所述每一个集合在所述待识别数据库中的位置为所述每一个集合在所述序列中的排序。
[0022]结合第二方面,在一些实施例中,所本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据库零水印嵌入的方法,其特征在于,包括:生成水印信息,所述水印信息包括L个水印位,L为正整数;对所述待处理数据库中的元组进行分类,得到N个集合,一个集合包括至少一个元组,N为正整数;对所述N个集合进行排序,得到初始数据库;根据所述L个水印位和所述初始数据库,进行L次水印嵌入,得到第L次水印嵌入后的数据库;其中,j为正整数,j≤L,第j次水印嵌入包括:在关系表中查找所述L个水印位中的第j个水印位对应的移位位数,所述关系表包括多个水印位以及所述多个水印位分别对应的移位位数,所述移位位数用于指示循环移位操作的移动位数;根据所述第j个水印位对应的移位位数,对第j

1数据库中的第j至N个集合进行循环移位操作,得到第j数据库;第0数据库为所述初始数据库,所述第j

1数据库为第j

1次水印嵌入得到的数据库。2.根据权利要求1所述的方法,其特征在于,所述移位位数包括1至M位,M为正整数,所述循环移位操作包括循环左移操作或循环右移操作。3.根据权利要求1或2所述的方法,其特征在于,所述N=L+(M

1),M为所述关系表中的最大移位位数。4.根据权利要求3所述的方法,其特征在于,对所述待处理数据库中的元组进行分类,得到N个集合,包括:针对所述待处理数据库中的每一个元组,确定所述每一个元组的主键的哈希值;以所述N为模,对所述每一个元组对应的哈希值进行取模运算,得到所述每一个元组对应的余数;将所述待处理数据库中余数相同的元组分为一个集合。5.根据权利要求4所述的方法,其特征在于,所述确定所述每一个元组的主键的哈希值,包括:接收输入的密钥;将所述密钥和所述每一个元组的主键进行拼接,得到拼接后的信息;确定所述拼接后的信息的哈希值为所述每一个元组的主键的哈希值。6.根据权利要求4或5所述的方法,其特征在于,对所述N个集合进行排序,得到初始数据库,包括:根据余数的大小对所述N个集合进行排序,得到初始数据库。7.根据权利要求1

6任一项所述的方法,其特征在于,所述生成水印信息,包括:获取第一信息,所述第一信息包括用于标识所述待处理数据库的所属者;对所述第一信息进行编码,得到校验码;将所述第一信息和所述校验码的组合作为所述水印信息。8.一种数据库零水印提取的方法,其特征在于,包括:获取待识别数据库,所述待识别数据库包括多个元组;对所述待识别数据库中的元组进行分类,得到N个集合,一个集合包括至少一个元组,N
为正整数;对所述N个集合进行排序,得到初始数据库;根据所述N个集合分别在所述初始数据库和所述待识别数据库中的位置,进行L次水印提取,得到水印信息,L为正整数;其中,j为正整数,j≤L,第j次水印提取包括:对比所述待识别数据库中的第j个集合的位置与所述第j个集合在第j

1数据库中的位置,确定第j个移位位数,第0数据库为所述初始数据库;所述第j

1数据库为第j...

【专利技术属性】
技术研发人员:陈小华赵剑辉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1