[发明专利]一种基于FPGA技术的可恢复双重芯核水印认证方法有效
申请号: | 201310193749.8 | 申请日: | 2013-05-23 |
公开(公告)号: | CN103226674A | 公开(公告)日: | 2013-07-31 |
发明(设计)人: | 张大方;梁伟;尤志强;呼彦吉;黎文伟 | 申请(专利权)人: | 湖南大学 |
主分类号: | G06F21/16 | 分类号: | G06F21/16;G06T1/00 |
代理公司: | 长沙正奇专利事务所有限责任公司 43113 | 代理人: | 马强 |
地址: | 410082 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于FPGA技术的可恢复双重芯核水印认证方法,首先采用一种门限秘密共享方案将待恢复的水印信息作为恢复因子;然后,通过构造特殊表达式组合的形式来压缩水印的预处理信息,并建立恢复因子与待恢复水印信息之间的映射关系;其次,在FPGA设计的bitfile自约束文件中通过插入未用LUT的冗余属性标识符来嵌入自恢复水印信息。通过实验测试与结果表明:本发明的方法可在水印受到一定程度的移除攻击后仍能有效地恢复出原始水印信息。同时,该方法也具有资源开销小、水印嵌入信息容量大以及鲁棒性强等优点。 | ||
搜索关键词: | 一种 基于 fpga 技术 可恢复 双重 水印 认证 方法 | ||
【主权项】:
1.一种基于FPGA技术的可恢复双重芯核水印认证方法,其特征在于,该方法依次包括水印嵌入、水印提取、水印恢复三个部分:所述水印嵌入步骤如下:1)利用广度搜索算法对CLB进行查找,对CLB中的slice通过深度搜索算法进行查找,通过判别slice中F和G的值来判别LUT查找表是否已用,F或G的值为0表示F或G对应的LUT查找表未使用,否则说明该LUT查找表已被使用,并对FPGA中未使用的LUT查找表的坐标信息进行统计;2)将统计后的未用LUT查找表坐标信息和待嵌入水印信息S=S0S1S2Si、S′=S′0S′1S′2…S′n以S或S′的16位二进制信息对应一个LUT查找表坐标,依照这样的规则建立一个可相互映射的索引表δ;其中S为第一重水印,S′为第二重水印;3)根据S=S0S1S2…Sn,选择数对(k,m)且满足k≤m,构造一个k-1次多项式f1(x)=a0+a1x+...+ak-1xk-1,x的值为0,1,…,m,2≤k≤m,a1,a2,…,ak-1是随机选取的系数,其中a0=S,Hk=f1(ik),ik依次取[0,m]之间的整数,计算得到第一重水印的恢复信息H={Hk|k=1,2,...,m},根据已选定的数对(k,m)和S′=S′0S′1S′2…S′n再构造一个k-1次多项式f2(x)=b0+b1x+...+bk-1xk-1,b1,b2,…,bk-1是随机选取的系数,计算得到第二重水印的恢复信息H′={H′k|k=1,2,...,m},H′k由H′k=f2(ik)计算得到,此时b0=S′,保存H和H′,作为水印恢复时的参数;4)从第一重水印S=S0S1S2…Sn中读取4位16进制的组合逻辑信息,利用组合逻辑匹配的方法,根据位置参数值μ和第二重水印的恢复信息H′={H′k|k=1,2,...,m}的值,对待嵌入的第一重水印信息和第二重水印的恢复信息H′进行线性转换,达到压缩的效果,其中线性转换模型为A×B+C,(A,B)表示水印嵌入位置的坐标,即位置参数表示的信息,C表示在(A,B)坐标位置处嵌入的相应比特信息,将线性转换后的bit信息以16位为一组嵌入到(A,B)对应的CLB中的LUT查找表中,即改变bitfile自约束文件中对应位置的值,此值也就是索引表δ的冗余信息,为了保证水印的安全,对嵌入的bit信息进行加密,加密的私钥为key,私钥key对应的自恢复阀值为H′k;从第二重水印S′=S′0S′1S′2…S′n中读取4位16进制的组合逻辑信息,利用组合逻辑匹配的方法,根据位置参数值μ和第一重水印的恢复信息H={Hk|k=1,2,...,m}的值,将线性转换后的bit信息以16位为一组嵌入到(A,B)对应的CLB中的LUT查找表中,即改变bitfile自约束文件中对应位置的值,此值也就是索引表δ的冗余信息,为了保证水印的安全,对嵌入的bit信息进行加密,加密的私钥为key′,私钥key′对应的自恢复阀值为Hk;其中μ为索引表δ中冗余属性标识符位置参数值;5)根据每一个LUT查找表实现任意4位16进制的组合逻辑信息,依此类推,直至bit信息全部嵌入到冗余属性标识符中;所述水印提取步骤如下:1)提取冗余属性标志信息:若水印未被破坏,利用私钥key和key′,根据IP水印嵌入时版权所有者保留的水印位置信息找出未用bitfile自约束文件中所有新插入的冗余属性标识符信息;2)重构索引表δ和冗余组合表达式的映射关系:根据水印嵌入未用LUT查找表后的冗余属性标识符位置参数值μ计算出索引表δ和冗余组合表达式,即水印嵌入时的线性转换模型A×B+C的映射关系,从而求出在索引表δ中A×B+C中C的值对应的LUT查找表位置;3)提取水印:根据映射关系与冗余组合表达式中C的值将储存在相应的LUT查找表中的规则,得到含有实现数字IP水印信息的冗余属性标识符位置信息,从而提取出水印信息;所述水印恢复的步骤如下:1)从SS1或SS2中提取出关联水印信息P1或P2,而SS1或SS2包含部分未被破坏的水印信息和可能受损的水印恢复信息H′或H;其中SS1表示水印嵌入步骤4)、5)中最终嵌入的第一重水印信息,SS2表示水印嵌入步骤4)、5)中最终嵌入的第二重水印信息;P1用于恢复第二重水印的受损因子H′,P2用于恢复第一重水印的受损因子H;2)对关联水印信息P1或P2重新编码,P1编码后的关联水印信息P′1={H′k|k=1,2,…},其中H′k是通过提取水印得到的水印恢复信息;P2编码后的关联水印信息P′2={Hk|i=1,2,…},其中Hk也是通过提取水印方法得到的水印恢复信息;3)利用重新编码得到的关联水印信息P′1、P′2和嵌入时选取的数对(k,m),对受损水印信息进行重构处理,将重新编码后产生的关联水印信息P′1、P′2当成秘密信息重构的子密钥,构造多项式
hj即水印恢复信息H′j(或Hj)的值,ij是H′j(或Hj)对应的f1(ij)或f2(ij)中ij的值,il同ij的值一样是对应的f1(il)(或f2(il))中的值。计算得出水印的实体信息a0=f1(0)或b0=f2(0),根据水印嵌入时a0=S、b0=S′,恢复出第一重水印信息和第二重水印信息。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310193749.8/,转载请声明来源钻瓜专利网。