一种对压缩数据进行水印嵌入的方法及系统与流程

文档序号:41522740发布日期:2025-04-07 22:50阅读:7来源:国知局
一种对压缩数据进行水印嵌入的方法及系统与流程

本发明涉及数字水印,尤其涉及一种对压缩数据进行水印嵌入的方法及系统。


背景技术:

1、在数字信息时代,数据安全面临愈多的挑战,水印技术作为一种重要的保护手段得到了广泛的应用,通常是在数字图像、音频和视频等多媒体数据中添加水印来实现对这类数据的版权保护、防篡改和合法使用鉴别。随着互联网及大数据技术的迅猛发展,结构化和半结构化数据(如json、xml、bson等)在地理信息系统、电子商务、金融服务和大数据分析等领域的应用变得越来越重要,但由于半结构化数据的特点,如何有效地在半结构化数据的压缩数据嵌入水印仍是一个挑战。

2、bson,全称binary json,是一种二进制形式的半结构化数据。它是由mongodb所使用的一种数据序列化格式,用于存储和网络传输数据。为了进一步减小数据的大小,bson数据在存储和传输时会对数据进行压缩,相关技术如gzip被广泛用于bson数据的压缩处理,《mongodb: the definitive guide, 2nd edition》(o’reilly media, 2013)中提供了针对bson数据高效存储和传输的技术详解,但并未涉及水印嵌入和版权保护。由于bson数据通常需要经过压缩,这使得在bson数据中嵌入水印而不影响其完整性和解析能力变得更有挑战性。

3、现有在半结构化数据的压缩数据中嵌入水印的技术主要有:

4、1.在xml格式和json格式的压缩数据中添加基于内容的水印,详见论文《a robustwatermarking scheme for copyright protection of xml docs》,但因其对二进制数据应用的局限性较大,不易直接过渡到bson数据;

5、2.通过对数据压缩算法进行修改从而达到在半结构化数据的压缩过程中嵌入水印,但该做法会增加压缩的复杂性和成本。

6、有鉴于此,特提出本发明。


技术实现思路

1、本发明提出一种对压缩数据进行水印嵌入的方法及系统,能够在半结构化数据的压缩数据中实现水印的嵌入和验证,且在半结构化数据压缩过程中保持高效传输和解析的同时,可确保水印信息的安全性与隐蔽性。

2、第一方面,如图1所示,本发明提出一种对压缩数据进行水印嵌入的方法,包括:

3、s11.预设半结构化数据的压缩数据d,将所述半结构化数据的压缩数据d输入经过训练的深度学习模型m中进行特征提取,得到在所述半结构化数据的压缩数据d中可嵌入水印的位置si及在所述半结构化数据的压缩数据d中可嵌入水印位置si的优先级排序,其中在所述半结构化数据的压缩数据d中可嵌入水印的位置si的优先级排序是si>si-1,i=1,2,……,i;

4、s12.预设水印信息w,将所述水印信息w转换为二进制格式,并将所述水印信息w通过哈希算法生成唯一且不可逆的哈希值h,同时将所述哈希值h记录到区块链上;

5、s13.根据所述半结构化数据的压缩数据d的字段长度、数据类型、嵌套结构深度等信息,设定适当的水印信息块大小参数,将所述水印信息w分割为j块固定大小的二进制水印信息块bj,j=1,2,……,j;

6、s14.将所述水印信息块bj按一定原则分配嵌入到所述半结构化数据的压缩数据d中可嵌入水印的位置si中;

7、s15.对所述半结构化数据的压缩数据d中可嵌入水印的位置si的数据进行解码,评估所述半结构化数据的压缩数据d中可嵌入水印的位置si的数据是否解码正常;

8、s16.若所述半结构化数据的压缩数据d中可嵌入水印的位置si处的数据解码正常,则保持在所述半结构化数据的压缩数据d中可嵌入水印的位置si处进行水印嵌入,若所述半结构化数据的压缩数据d中可嵌入水印的位置si处的数据解码不正常,则放弃在所述半结构化数据的压缩数据d中可嵌入水印的位置si处进行水印嵌入;

9、s17.重复上述步骤s14-s16,评估所述半结构化数据的压缩数据d中i个可嵌入水印的位置si,从而完成对所述半结构化数据的压缩数据d的水印嵌入。

10、进一步地,如图2所示,s11中所述经过训练的深度学习模型m包括:由卷积神经网络构成的encoder网络、由卷积神经网络构成的decoder网络、变分自动编码器(vae)模块和及概率分布生成模块,其中所述变分自动编码器(vae)模块和及概率分布生成模块位于encoder卷积神经网络层和decode卷积神经网络层之间。

11、进一步地,s11中将所述半结构化数据的压缩数据d输入经过训练的深度学习模型m中进行特征提取,得到在所述半结构化数据的压缩数据d中可嵌入水印的位置si及在所述半结构化数据的压缩数据d中可嵌入水印位置si的优先级排序,包括:

12、s111.将所述半结构化数据的压缩数据d输入到由卷积神经网络构成的encoder网络,得到所述半结构化数据的压缩数据d的初始特征表示z1;

13、s112.将所述半结构化数据的压缩数据d的初始特征表示z1输入到变分自动编码器(vae)模块,得到所述半结构化数据的压缩数据d的潜在变量分布参数z2;

14、s113.将所述半结构化数据的压缩数据d的潜在变量分布参数z2输入到概率分布生成模块,得到在所述半结构化数据的压缩数据d中可嵌入水印的位置si的概率分布;

15、s114.将所述半结构化数据的压缩数据d中可嵌入水印的位置si的概率分布输入到所述由卷积神经网络构成的decoder网络,得到所述半结构化数据的压缩数据d中可嵌入水印位置si的优先级排序。

16、进一步地,s11中所述半结构化数据的压缩数据d中的半结构化数据为json、bson、xml、yaml、avro、orc中任一种。

17、进一步地,s11中所述概率生成模块是任一种注意力模型。

18、进一步地,s14中将所述水印信息块bj嵌入到所述半结构化数据的压缩数据d中可嵌入水印的位置si中的分配原则是:

19、所述半结构化数据的压缩数据d中可嵌入水印的位置si中嵌入的水印信息块数量比所述半结构化数据的压缩数据d中可嵌入水印的位置si-1中嵌入的水印信息块数量多,且所述水印信息块bj均匀分布于所述半结构化数据的压缩数据d中可嵌入水印的位置si中不同的层次。

20、进一步地,所述s15中评估所述半结构化数据的压缩数据d中可嵌入水印的位置si的数据是否解码正常的参数指标是数据的完整性≥90%、嵌入后的数据解码准确性≥100%、解压效率≥50%三个指标同时满足。

21、第二方面,如图3所示,本发明提出一种对含水印信息的压缩数据进行验证的方法,采用如第一方面所述的对压缩数据进行水印嵌入的方法,包括:

22、s21.预设一含水印信息w的半结构化数据的压缩数据d,所述水印信息w由所述半结构化数据的压缩数据d的创建日期、修改日期及制作者拼接而成,计算所述水印信息w的哈希值h并将所述水印信息w的哈希值h记录在区块链上;

23、s22.提取所述半结构化数据的压缩数据d中的水印信息w,并计算所述水印信息w的哈希值h1;

24、s23.将所述水印信息w哈希值h1与存储在区块链上的所述水印信息w的哈希值h进行比对,评估所半结构化数据的压缩数据d否被篡改,具体包括:

25、当所述水印信息w哈希值h1等于所述存储在区块链上的所述水印信息w的哈希值h时,说明所述半结构化数据的压缩数据d的创建日期、修改日期及制作者未被修改,评估所半结构化数据的压缩数据d未被篡改;

26、当所述水印信息w哈希值h1不等于所述存储在区块链上的所述水印信息w的哈希值h时,说明所述半结构化数据的压缩数据d的创建日期、修改日期及制作者三个数据中某一数据信息被修改,评估所半结构化数据的压缩数据d被篡改。

27、第三方面,如图4所示,本发明提出一种对压缩数据进行水印嵌入的系统,采用如第一方面所述的对压缩数据进行水印嵌入的方法,包括:

28、水印嵌入位置优先级排序模块d31:预设半结构化数据的压缩数据d,将所述半结构化数据的压缩数据d输入经过训练的深度学习模型m中进行特征提取,得到在所述半结构化数据的压缩数据d中可嵌入水印的位置si及在所述半结构化数据的压缩数据d中可嵌入水印位置si的优先级排序,其中在所述半结构化数据的压缩数据d中可嵌入水印的位置si的优先级排序是si>si-1,i=1,2,……,i;

29、水印信息计算模块d32:预设水印信息w,将所述水印信息w转换为二进制格式,并将所述水印信息w通过哈希算法生成唯一且不可逆的哈希值h,同时将所述哈希值h记录到区块链上;

30、水印信息块分割模块d33:根据所述半结构化数据的压缩数据d的字段长度、数据类型、嵌套结构深度等信息,设定适当的水印信息块大小参数,将所述水印信息w分割为j块固定大小的二进制水印信息块bj,j=1,2,……,j;

31、水印信息块嵌入模块d34:将所述水印信息块bj按一定原则分配嵌入到所述半结构化数据的压缩数据d中可嵌入水印的位置si中;

32、水印嵌入位置数据解码评估模块d35:对所述半结构化数据的压缩数据d中可嵌入水印的位置si的数据进行解码,评估所述半结构化数据的压缩数据d中可嵌入水印的位置si的数据是否解码正常,若所述半结构化数据的压缩数据d中可嵌入水印的位置si处的数据解码正常,则保持在所述半结构化数据的压缩数据d中可嵌入水印的位置si处进行水印嵌入,若所述半结构化数据的压缩数据d中可嵌入水印的位置si处的数据解码不正常,则放弃在所述半结构化数据的压缩数据d中可嵌入水印的位置si处进行水印嵌入;

33、嵌入水印模块d36:评估所述半结构化数据的压缩数据d中i个可嵌入水印的位置si,从而完成对所述半结构化数据的压缩数据d的水印嵌入。

34、第四方面,如图5所示,本发明提出一种对含水印信息的压缩数据进行验证的系统,采用如第二方面所述的对含水印信息的压缩数据进行验证的方法,包括:

35、水印信息记录模块d41:预设一含水印信息w的半结构化数据的压缩数据d,所述水印信息w由所述半结构化数据的压缩数据d的创建日期、修改日期及制作者拼接而成,计算所述水印信息w的哈希值h并将所述水印信息w的哈希值h记录在区块链上;

36、水印信息计算模块d42:提取所述半结构化数据的压缩数据d中的水印信息w,并计算所述水印信息w的哈希值h1;

37、水印信息验证模块d43:将所述水印信息w哈希值h1与存储在区块链上的所述水印信息w的哈希值h进行比对,评估所半结构化数据的压缩数据d否被篡改。

38、第五方面,本发明提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的对压缩数据进行水印嵌入的方法。

39、第六方面,本发明提出一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述的对压缩数据进行水印嵌入的方法。

40、相比于现有技术,本发明的有益效果是: 本发明通过结合卷积神经网络等深度学习模型,可实现对半结构化数据的压缩数据深入理解和特征提取,从而确定最佳水印嵌入的位置。

41、本发明通过多层次的水印嵌入策略和信息冗余编码可提升水印的鲁棒性,即使水印信息不完整,亦可通过冗余信息恢复水印信息。

42、本发明提出的动态优化机制嵌入水印,能够实时监测每个位置的嵌入效果,确保嵌入水印后的半结构化数据的压缩数据在压缩效率、解码准确性和结构完整性方面未受损。

43、本发明提出的区块链验证技术增强了水印的安全性和可追溯性,保证了数据的防篡改性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1