System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据安全,尤其涉及一种水印插入方法、提取方法、装置、第一设备、第二设备、存储介质及计算机程序产品。
技术介绍
1、数据库水印是进行数据版权保护和数据泄露溯源的一种技术手段,相关技术中添加水印信息最多只能添加一次水印信息,导致无法实现数据的多级溯源。
技术实现思路
1、有鉴于此,本申请实施例期望提供一种水印插入方法、提取方法、装置、第一设备、第二设备、存储介质及计算机程序产品,能够实现对数据的多级溯源。
2、本申请实施例的技术方案是这样实现的:
3、第一方面,本申请实施例提供一种水印插入方法,应用于第一设备,所述方法包括:
4、将水印信息分割成n个水印分片,n为大于或等于1的整数;
5、基于密钥,确定数据表中每条数据记录的第一主键值对应的认证码;其中,密钥与发送数据表的数据发送方对应;
6、基于第一主键值对应的认证码和水印分片的数量n,对数据表中包含的所有数据记录进行分组,得到多个分组;
7、针对每个分组,构造伪数据,按照分割水印分片的顺序在多个分组分别对应的伪数据中依次插入n个水印分片;其中,一个伪数据插入一个水印分片。
8、第二方面,本申请实施例提供一种水印提取方法,所述水印包含一级或多级水印,应用于第二设备,所述方法包括:
9、针对每一级水印,基于密钥,确定接收的数据表中每条数据记录的第三主键值对应的认证码;其中,密钥与接收数据表的数据接收方对应;
10、基于第
11、从每个分组中,确定与每个分组对应的伪数据;
12、从每个分组对应的伪数据中提取出n个水印分片,并对多个水印分片进行组合,得到水印信息。
13、第三方面,本申请实施例提供一种水印插入装置,所述水印插入装置包括:
14、分割单元,用于将水印信息分割成n个水印分片,n为大于或等于1的整数;
15、第一确定单元,用于基于密钥,确定数据表中每一条数据记录的第一主键值对应的认证码;其中,密钥与发送数据表的数据发送方对应;
16、第一分组单元,用于基于第一主键值对应的认证码和水印分片的数量n,对数据表中包含的所有数据记录进行分组,得到多个分组;
17、插入单元,用于针对每个分组,构造伪数据,按照分割水印分片的顺序在多个分组分别对应的伪数据中依次插入n个水印分片;其中,一个伪数据插入一个水印分片。
18、第四方面,本申请实施例提供一种水印提取装置,水印包含一级或多级水印,所述水印提取装置包括:
19、第二确定单元,用于针对每一级水印,基于密钥,确定接收的数据表中每条数据记录的第三主键值对应的认证码;其中,密钥与接收数据表的数据接收方对应;
20、第二分组单元,用于基于第三主键值对应的认证码和水印分片的数量n,对数据表中包含的所有数据记录进行分组,得到多个分组,n为大于或等于1的整数;
21、第二确定单元,还用于从每个分组中,确定与每个分组对应的伪数据;
22、组合单元,用于从每个分组对应的伪数据中提取出n个水印分片,并对多个水印分片进行组合,得到水印信息。
23、第五方面,本申请实施例提供一种第一设备,所述第一设备包括:第一处理器和第一存储器;所述第一处理器执行所述第一存储器存储的运行程序时实现上述水印插入方法。
24、第六方面,本申请实施例提供一种第二设备,所述第二设备包括:第二处理器和第二存储器;所述第二处理器执行所述第二存储器存储的运行程序时实现上述水印提取方法。
25、第七方面,本申请实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述水印插入方法,或者,该计算机程序被处理器执行时实现上述水印提取方法。
26、第八方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述水印提取方法,或者,该计算机程序被处理器执行时实现上述水印提取方法。
27、本申请实施例提供一种水印插入方法、提取方法、装置、第一设备、第二设备、存储介质及计算机程序产品,该方法包括:第一设备将水印信息分割成n个水印分片,n为大于或等于1的整数;基于密钥,确定数据表中每条数据记录的第一主键值对应的认证码;其中,密钥与发送数据表的数据发送方对应;基于第一主键值对应的认证码和水印分片的数量n,对数据表中包含的所有数据记录进行分组,得到多个分组;针对每个分组,构造伪数据,按照分割水印分片的顺序在多个分组分别对应的伪数据中依次插入n个水印分片;其中,一个伪数据插入一个水印分片;而第二设备针对每一级水印,基于密钥,确定接收的数据表中每条数据记录的第三主键值对应的认证码;其中,密钥与接收数据表的数据接收方对应;基于第三主键值对应的认证码和水印分片的数量n,对数据表中包含的所有数据记录进行分组,得到多个分组,n为大于或等于1的整数;从每个分组中,确定与每个分组对应的伪数据;从每个分组对应的伪数据中提取出n个水印分片,并对n个水印分片进行组合,得到水印信息。采用上述实现方案,因每个数据发送方对应不同的密钥,因而根据密钥确定的第一主键的认证码不同,不同的数据发送方利用对应的认证码对数据表中所有的数据记录进行分组时,所得到的分组不同,因而针对每个分组分别构造伪数据并插入对应的水印分片时,水印分片的插入位置不同,从而在数据表被转发时每次插入的水印信息并不会影响上一次所插入的水印信息,能够实现插入多级水印信息,故而在进行数据溯源时,从不同分组对应的伪数据中能够提取出与数据接收方对应插入的水印分片,故而在数据表被接收到时,每次提取的水印信息与数据接收方对应,能够逐级进行数据的多级溯源。
本文档来自技高网...【技术保护点】
1.一种水印插入方法,其特征在于,应用于第一设备,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述伪数据包含S个数值型属性,S为大于或等于1的整数;所述按照分割所述水印分片的顺序在所述多个分组分别对应的伪数据中依次插入所述N个水印分片,包括:
3.根据权利要求2所述的方法,其特征在于,所述伪数据还包括主键,所述主键包含多个数据位,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述第一主键值对应的认证码和水印分片的数量N,对所述数据表中包含的所有数据记录进行分组,得到多个分组,包括:
5.一种水印提取方法,其特征在于,所述水印包含一级或多级水印,应用于第二设备,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述伪数据包括主键和S个数值型属性,S为大于或等于1的整数,所述主键包含多个数据位,所述从每个分组中,确定与所述每个分组对应的伪数据,包括:
7.根据权利要求5所述的方法,其特征在于,所述伪数据包含S个数值型属性,S为大于或等于1的整数,所述从所述每个分组对应的
8.根据权利要求5所述的方法,其特征在于,所述基于所述第三主键值对应的认证码和水印分片的数量N,对所述数据表中包含的所有数据记录进行分组,得到多个分组,包括:
9.一种水印插入装置,其特征在于,所述水印插入装置包括:
10.一种水印提取装置,其特征在于,所述水印包含一级或多级水印,所述水印提取装置包括:
11.一种第一设备,其特征在于,所述第一设备包括:第一处理器和第一存储器;所述第一处理器执行所述第一存储器存储的运行程序时实现如权利要求1至4任一项所述的方法。
12.一种第二设备,其特征在于,所述第二设备包括:第二处理器和第二存储器;所述第二处理器执行所述第二存储器存储的运行程序时实现如权利要求5至8任一项所述的方法。
13.一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一项所述的方法,或者,该计算机程序被处理器执行时实现如权利要求5至8任一项所述的方法。
14.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序在被处理器执行时实现如权利要求1至4任一项所述的方法,或者,该计算机程序被处理器执行时实现如权利要求5至8任一项所述的方法。
...【技术特征摘要】
1.一种水印插入方法,其特征在于,应用于第一设备,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述伪数据包含s个数值型属性,s为大于或等于1的整数;所述按照分割所述水印分片的顺序在所述多个分组分别对应的伪数据中依次插入所述n个水印分片,包括:
3.根据权利要求2所述的方法,其特征在于,所述伪数据还包括主键,所述主键包含多个数据位,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述第一主键值对应的认证码和水印分片的数量n,对所述数据表中包含的所有数据记录进行分组,得到多个分组,包括:
5.一种水印提取方法,其特征在于,所述水印包含一级或多级水印,应用于第二设备,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述伪数据包括主键和s个数值型属性,s为大于或等于1的整数,所述主键包含多个数据位,所述从每个分组中,确定与所述每个分组对应的伪数据,包括:
7.根据权利要求5所述的方法,其特征在于,所述伪数据包含s个数值型属性,s为大于或等于1的整数,所述从所述每个分组对应的伪数据中提取出n个水印分片,包括:
8.根据权利要求5所述...
【专利技术属性】
技术研发人员:耿慧拯,刘颖卿,粟栗,常嘉岳,
申请(专利权)人:中国移动通信有限公司研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。