基于FPGA技术的差错控制芯核水印方法与流程

文档序号:17731734发布日期:2019-05-22 02:53阅读:321来源:国知局
基于FPGA技术的差错控制芯核水印方法与流程

本发明涉及水印算法,特别是一种基于fpga技术的差错控制芯核水印算法。



背景技术:

随着集成电路制造技术和电路复杂度的提高,单个硅片上的集成度越来越高。同时,人们对集成系统的需求也不断提高,希望在同一个硅片上实现更多的功能,系统芯片集成(soc)逐渐成为集成电路的主流方向。为了能够更好地解决集成电路设计中的成本、周期、风险等问题,一种广泛应用于企业的知识产权核(ip)复用技术应运而生。ip复用技术指的是在设计高复杂度的集成电路时,直接将已经设计好并通过验证的电路模块引入到电路设计中进行使用。ip核复用技术在给企业带来设计便利的同时,也给ip核安全使用带来了挑战,如非法复制、逆向工程、恶意修改及克隆盗版等。这些侵权行为不仅给ip设计人员造成巨大的经济损失,同时严重威胁集成电路产业的健康发展。

现场可编程门阵列(fpga)凭其可重复编程以及灵活性受到了众多半导体企业的青睐。当前的fpga设计知识产权认证技术主要包括数字标签技术、数字指纹技术、数字水印技术以及硬件加密技术。其中数字标签技术通过向芯片内部放置电子“标签”来识别芯片真伪。目前研究比较火热的新技术puf就是数字标签技术之一。puf利用芯片在制造过程当中产生的不可避免的物理差异以防止芯片克隆。数字指纹技术和数字水印技术通过向fpga设计中添加特定意义的标记达到版权保护的目的。数字指纹技术将用户的信息嵌入到设计中,使不同的用户得到不同的带有用户标识的ip版本以实现版权侵权追踪,在发生版权纠纷时能明确划分责任;而数字水印技术则是将ip拥有者的签名信息嵌入到fpga设计当中,以达到版权保护目的。一旦发生疑似版权侵权行为,ip拥有者可以申请核实可疑的ip设计。如果成功检测到有效的签名信息,版权所有得以证明,而侵权者则受到法律的制裁。

数字水印是一种应用广泛的信息隐藏技术,其应用领域涉及文本、图像、视频以及数据库等多媒体载体。数字水印技术在多媒体信息隐藏和版权保护方面的研究取得了重大的成果。然而数字水印技术在芯核知识产权领域的研究还处于起步阶段。针对芯核数字水印技术的研究,不仅具有重要的工程应用价值,对信息隐藏学理论发展也具有一定的创新意义。近年来,国内外学者在vlsi设计的各个层面对ip保护技术做了大量研究,根据水印嵌入的抽象层次高低,大致可划分为算法级水印、行为级水印、结构级水印和物理级水印。lach等人首次提出了fpga水印概念,首先将版权信息生成水印,然后对水印进行编码分组并随机地嵌入到设计中空闲的lut查找表结构当中,同时引入旁路信号作为含水印lut的输入,并将其输出连接到相邻的逻辑快的无关输入以至于使得含水印lut融合到fpga设计中去。虽然位置的随机选取以及含水印lut融合到fpga设计当中在一定程度上加强了水印攻击的难度,但由于水印嵌入到空闲的lut当中,一旦非法攻击者拥有足够多的信息去除部分水印,然而版权认证将无法实现。nie等人提出了多层级水印,分别将水印和指纹嵌入到fpga的网表层和比特流层。首先在网表层将加密了的ip拥有者版权信息嵌入到功能lut当中,并将含水印的lut配置成移位寄存器以防止其被cad工具优化而清除,然后在比特流级随机选取未使用的lut嵌入ip使用者的指纹信息。使用功能lut进行水印嵌入且将含水印lut配置成移位寄存器在一定程度上加强了水印的抗攻击能力,但背后的代价是资源开销较大,且没有对水印遭受攻击做任何预处理。saha等人将所有者的公开信息嵌入到fpga设计中,然后利用零知识协议对其版权进行认证。零知识认证虽然在验证的时候不暴露敏感信息从而加强了水印的安全性,但是容易遭受嵌入攻击,使得公开验证时无法防止非诚实者抵赖侵权,不利于ip转售的非法追踪过程。

上述水印安全保护方案虽然在版权保护方面具有一定的效果,但都不具备受损水印认证功能。一旦水印遭受破坏,就不能继续有效恢复,尤其是文字版权信息,即使1bit信息恢复错误也可能导致整个语义扭曲。而保证鲁棒的版权认证效果是芯核水印最重要的指标之一。因此,针对受损水印的鲁棒版权认证的研究具有重大的意义。



技术实现要素:

本发明所要解决的技术问题是,针对现有技术不足,提供一种基于fpga技术的差错控制芯核水印方法,既能证明版权归属又能进行版权侵权跟踪。

为解决上述技术问题,本发明所采用的技术方案是:一种基于fpga技术的差错控制芯核水印方法,包括水印提取与水印认证两个部分;

所述水印提取部分包括以下步骤:

1)将用户签名信息s以ascii码依次连接起来形成一个二进制比特串b;

2)将二进制比特串b进行分组,分成r组,转化为十进制数后,得到矢量y=(y1,y2,...yr),构造一个n×r矩阵α,那么β=(αyt)t=yαtt即为分解得到的子水印序列w(x)=(w1,w2,...,wn);

3)选取长度位16的伪随机序列k作为密钥,将伪随机序列k与子水印wi进行异或运算以达到加密效果,其中wi转二进制不够16位的在左边补0,最终得到加密子水印序列i=1,2,...,n;

4)设二值图像版权信息为p,将二值图像版权信息转换成二进制文件,去除文件格式头,提取出二值图像版权信息二进制流w;

5)对w进行分组,将w中每4位二进制信息作为一组并转换成十进制数,最后一组如果二进制数量不足4位,则以随机数补充,一共得到p个十进制数,即秘密信息序列s={s1s2,...,sp};

6)依次从s中取出m个秘密信息,构造m-1次多项式h(x)=s1+s2x+…+stxm-1,设f(x,r)为双变量单向函数,然后选取一个随机数r,通过双变量单向函数对n个加密子水印计算对应的伪子水印最后计算将信息c={r,y1,y2,...,yn}作为公开参数以认证的方式注册到第三方机构以备认证阶段使用;m为多秘密共享方案的门限;i=1,2,...,n;

7)重复步骤6),直到分发完所有的秘密信息,如果最后一组不够m个,则以随机数补充;

8)从待嵌入水印的fpga芯核中得出所有可能的水印位置信息,假设包含的可能水印位置数目为len,那么所有的位置信息存入数组loc[len],然后以len为约束条件,利用伪随机数生成器生成一组长度为n且不重复的随机数序列作为水印密钥key,用于确定具体的水印位置locw[n];

9)将n个十进制加密子水印写入到对应的水印位置中完成水印的嵌入;

所述水印认证部分包括以下步骤:

1)利用随机算法ra(x)得到所有水印分存位置{p1,p2,...,pn},以{p1,p2,...,pn}作为提取算法ea(x)的输入,然后分存于{p1,p2,...,pn}的配置逻辑数据作为算法的输出,得到加密子水印序列

2)从提取出的n个加密子水印中随机选取出t个加密子水印,从公开参数中依次获取每组信息c={r,y1,y2,...,yn},然后计算出t个加密子水印对应的伪子水印f(r,wj′),得到t个数值对(f(r,w′j),yj),最后根据这t个数值对重构t-1次lagrange插值多项式h(x),于是从h(x)的系数中得到t个秘密信息;j=1,2,...,t;

3)重复步骤2),直至所有的秘密信息重构完成;

4)将所有重构得到的秘密信息转换成二进制信息并依次拼接到一起,得到二进制水印信息序列w′,然后,将二进制水印信息序列w′加上图像格式信息,还原成二值图像p′;

5)将还原得到的二值图像p′同ip拥有者在注册时候二值图像p进行比较,完成版权认证;

6)利用子水印加密阶段使用的密钥k进行加密子水印序列解密,将密钥k序列与加密子水印进行异或,对加密水印解密,解密后得到子水印序列w′(x)=(w1′,w2′,...,wn′);i=1,2,...,n;

7)从提取出的n个子水印中任意取出t个子水印wj′,结合矩阵α组成r元一次方程组,通过解方程组即可重获用户指纹分存前的r组序列信息y′=(y1′,y2′,...,yr′);

8)将序列信息y′转换成二进制并依此拼接起来,获得二进制流b′,根据ascii码将二进制比特流b′转换成对应文字指纹信息s′,通过文字指纹信息s′进行版权侵权跟踪,找到版权侵权的始作俑者。

根据权利要求1所述的基于fpga技术的差错控制芯核水印方法,其特征在于,水印提取部分,利用blakley门限方案对二进制比特串b进行分组。

与现有技术相比,本发明所具有的有益效果为:本发明提供了一种基于fpga技术的差错控制芯核水印算法,即使部分水印遭受破坏仍能有效的进行版权认证,同时使用数字指纹与数字水印进行双重认证,使得发生版权纠纷时,既能证明版权归属又能进行版权侵权跟踪;本发明不仅在嵌入水印开销方面具有良好的性能,而且在鲁棒性方面也达到了很好的效果。

附图说明

图1为本发明一实施例差错控制的芯核水印模型;

图2为本发明一实施例水印原理图;

图3为本发明一实施例实验效果图:

其中图3(a)原始二值图像与重构二值图像之间的归一化相关系数;

图3(b)原始二值图像与重构二值图像之间的峰值信噪比;

图3(c)原始二值图像与重构二值图像之间的误码率。

图4为采用一副150*150的二值图像作为版权信息的仿真实验图。

具体实施方式

本发明涉及的差错控制芯核水印算法主要通过门限秘密共享方案以及利用图像容错性来实现,门限秘密共享将版权信息进行分存,利用部分水印即可重新恢复版权信息。由于人类视觉系统对图像像素变化具有一定的冗余性,即使有一部分数据恢复错误仍能识别出图像中文字信息的真实内容。首先将文字版权信息通过blakley门限方案进行分存,得到n个水印并进行加密,然后利用yang多秘密共享门限方案,结合这n个水印,对二值图像版权信息进行分发,得到多组公开参数,将公开参数发布到可信第三方机构,最后将n个加密水印嵌入到fpga电路设计当中。认证阶段,提取所有的水印,结合公开参数,采用yang多秘密共享门限方案进行秘密重构,从而恢复出二值图像版权信息,即使这n个水印中有部分水印遭受攻击,也只会导致图像部分数据错误,最后只需t个水印即可通过blakley门限方案进行文字版权信息重构。

水印的生成:

首先将文字版权信息s以ascii码依次连接起来形成一个二进制比特串b,然后对二进制比特串进行分存,这里采用(3,9)blakley门限方案,因此这里将二进制比特串分成三组(最后一组不够位数在其后补0即可)并转化为相当于的十进制数,以矢量形势表示为y=(y1,y2,y3),构造一个9×3矩阵α,那么β=(αyt)t=yαt即为分解得到的水印序列w(x)=(w1,w2,...,w9)。接着对水印序列进行加密,选取长度为16的伪随机序列k作为密钥,将伪随机序列k与水印w1,w2,...w9进行异或运算已达到加密效果,其中wk转二进制不够16位的在左边补0即可,最终得到加密子水印序列

二值图像版权信息分发:

首先将二值图像p转换成二进制文件,去除格式头,提取出图像信息的二进制流w,对w进行分组,以每4位二进制作为一组并转换成十进制数,最后一组如果不够4位则以随机数填充,得到秘密信息序列s={s1,s2,...,sp}。接着需要采用yang等提出的门限多秘密共享算法对秘密信息序列进行分发,每次从p个秘密信息中取出3个秘密信息,构造2次多项式h(x)=s1+s2x+s3x2,设f(x,r)为双变量单向函数,然后选取一个随机数r,通过双变量单向函数对9个加密子水印计算对应的伪子水印最后计算生成公开参数ci={r,y1,y2,...,y9}注册到第三方可信机构即可。k=1,2,...,9;

水印的嵌入:

整个水印的嵌入工作是在fpga设计过程中进行的,首先利用搜索算法对待嵌入的fpga电路设计未使用的lut坐标信息进行统计,得出所有可能的水印位置信息,假设包含的可能水印位置数目为len,那么所有的位置信息将存入数组loc[len]。然后以len为约束条件,利用伪随机数生成器生成一组长度为n且不重复的随机数序列作为水印密钥key,用于确定具体的水印位置locw[n]。最后将n个水印嵌入到这n个lut中即可。

水印的提取:

当ip版权所有者怀疑其ip可能被盗用时,便可以申请由第三方组织以以下步骤从fpga中提取出水印,从而进一步恢复版权信息,证明版权归属。利用随机算法ra(x)得到所有水印分存位置{p1,p2,...,p9}。以{p1,p2,...,p9}作为提取算法ea(x)的输入,然后分存于{p1,p2,...,p9}的配置逻辑数据作为算法的输出,得到加密子水印序列

二值图像版权信息重构:

每次从以上得到的9个加密子水印序列中随机选取3个子水印参与秘密信息重构,从公开参数中依次获取每组息ci={r,y1,y2,...,y9},通过随机数与子水印即可计算得到对应3个伪子水印f(r,w1′),f(r,w′2),f(r,w3′)从而获得3个数值对(f(r,w′1),y1)、(f(r,w′2),y2)、(f(r,w3′),y3)。于是可以采购2次lagrange插值多项式h(x),从系数中可以得到3个秘密信息,重复以上操作重构所有秘密信息。将所有秘密信息转换为二进制流,加上格式头重构二值图像。

文字版权信息重构:

通过重构的二值图像与原始二值图像继续相似度对比,如果确定存在版权侵权情况,即可通过文字版权信息(用户签名信息)进行版权侵权跟踪。首先对加密子水印序列进行解密,利用水印加密阶段使用的密钥k进行解密,只需要将密钥k序列与加密子水印w1,w2,...w9进行异或即可对其解密,解密后得到子水印序列w′(x)=(w1′,w2′,...,w9′)。采用的blakley门限方案为(3,9)门限方案,因此只需要其中3个子水印即可完成秘密重构。从9个子水印中任意提取出3个子水印w1′,w′2,w3′结合用户指纹分存阶段用到的α矩阵组成3元一次方程组,通过解方程组即可重获3组序列信息y′=(y1′,y2′,y3′)。将y′转换成二进制流,根据ascii码将二进制比特流b′转换成对应文字指纹信息s′,通过文字指纹信息s′进行版权侵权跟踪。

以下通过实验分析本发明方法的性能

实验的测试电路来源于iwls2005的基准测试电路集[33],主要包括iscas89’,iscas85’,itc99以及ipcoresfromopencores.org。实验根据不同的benchmark选择了适合的xilinxfpga器件用于验证本文提出的算法的性能。实验环境为win7操作系统,主频为3.4ghz,内存为4g的pc机器。首先选取复杂程度不同的一些测试电路并生成目标的芯核电路形式,然后将子水印按嵌入算法嵌入到选取的测试电路,最后对水印嵌入带来的性能开销、水印抗攻击能力及版权认证可靠性进行测试。

1.性能开销

性能开销是评价芯核水印算法性能的重要因素之一,本实验性能开销主要包括资源,延时以及功耗等。表1给出了一些原始benchmark的相关性能数据。实验中,根据不同benchmark的规模大小选了适当的xilinxfpga作为测试平台,#lut表示电路占用的lut的数目,#alut表示设计中可能用于嵌入水印信息的所有lut数目,依据算法的嵌入规则,单个alut最多可用于表示16比特的信息,因此,用#maw表示设计中可嵌入的水印信息的理论最大值。

表1测试benchmark的性能数据

在进行性能开销实验过程中,我们选择了不同规模benchmarks并为其分配适当的fpga器件。然后,利用ise设计工具对测试的benchmark进行综合及实现,从最终的报告中得到资源占用的信息。从表1可知,芯核设计经过布局布线后占用的slice中仍然有大量的可用lut资源,足以保证嵌入足够的版权信息。按照本文采用的冗余水印嵌入方式计算得到的可嵌水印的数量#maw较大。

表2水印前后设计的性能开销变化

表2给出了benchmarks的原始资源占用数据、时序数据以及功耗开销数据以及嵌入不同强度的水印后性能开销的变化率。这里,水印的资源开销是嵌入水印后产生的slice资源的增加。时序数据是通过设置时序约束得到的最小周期。功耗开销是通过xilinxise的xpower工具进行分析的,通过设置fpga芯片的电池参数,电池容量以及各个信号的工作频率,然后xpower将依据预设配置文件对功耗进行评估。从表2的数据来看,嵌入水印数据后设计中的lut占用数目随着嵌入水印的增加而有所增加,而最小周期和功耗的增长为0。这说明本文的算法嵌入的水印对周期和功耗的开销没有影响,这是由于水印嵌入产生的路径延时是对与其相关的路径而言,只要满足水印约束,它不会导致设计的最小周期发生变化。水印以冗余的方式嵌入设计,在设计运行时,冗余的非功能部分不会实际运行,因而没有产生额外的功耗开销。

2.水印鲁棒性评估

鲁棒性是用来衡量水印算法在抗非法攻击能力方面的一项非常重要的指标,一种鲁棒性强的水印算法才能使得水印遭受非法攻击之后仍能完成版权认证。本文采取二值图像作为ip拥有者的版权信息,当从水印载体中提取出水印并重构二值图像p′后,将p′同原始二值图像p进行比较,观察水印图像是否有比较大的失真。一般来说,水印载体中的水印信息遭到移除或篡改,通过遭受攻击的水印来无失真提取或恢复二值图像是非常困难的,所以本节中,引入了以下三个指标来评估本文水印算法的鲁棒性,分别是峰值信噪比、归一化系数以及误码率。

1.峰值信噪比psnr

psnr值越大,表示图像的质量越好,计算公式如下:

其中d为信号峰值,在二值图像中d为1,m×n表示二值图像的大小,p(i,j)和p′(i,j)表示原始二值图像和重构后的二值图像的像素值.

2.归一化相关系数nc

归一化相关系数用于描述两幅图像之间的相似度,将原始二值图像和重构后的二值图像进行相关计算,得到两者之间的归一化相关系数nc,若nc越接近1,代表两幅图越相似,提取的效果越好,版权认证更有力度,其计算公式如下:

3.误码率pe

误码率是指二进制码元在数传输系统中被传错的概率,将误码率引入到这里用来计算二值图像中像素恢复错误的概率,误码率越小说明恢复的准确率越高,图像恢复的效果越好,其计算公式定义如下:

式中表示当两者值相同的时候计算结果为0,当两者值不相同的时候计算结果为1,因为二值图像的像素值要么为0要么为255,通过以上式分子可以统计出原始二值图像与重构后二值图像中像素值不同像素点的个数,m×n表示二值图像中像素点的总和。

仿真实验采用一副150*150的二值图像作为版权信息,如图4所示。

由于二值图像水印分发过程中使用了文字水印分发过程中子水印来实现的,所以本文blakely门限方案与yang多秘密共享门限方案都采用(3,9),也就是n=9,t=3,其中t表示门限,只有提取出出至少t个正确的子水印才能完成水印的恢复。

本实验是在xc2vp20-6ff896fpga设备上进行的,芯核载体采用predes电路。为了检测水印算法的抗攻击能力,仿真实验将子水印嵌入到ip芯核中去以后,模拟了一千次的篡改攻击破坏水印,分别对9个子水印中的1个,2个到6个进行篡改攻击(由于本文采取的门限方案门限为3,也就是子水印中至少需要保证3个子水印正确,否则将得不到任何有用信息),然后利用提取出的所有子水印进行二值图像重构,最后根据重构出来的二值图像与原始二值图像进行比较,评估签名的恢复性能。

经过实验,可以分别绘出子水印遭受篡改攻击对归一化相关系数nc,峰值信噪比psnr以及误码率pe的影响趋势图,入图3(a)(b)(c)所示:

从图3可以得出,随着被篡改子水印的增加,重构图像与原始图像的归一化相关系数和峰值信噪比呈下降趋势,nc由0.9587到0.5540而psnr由20.4899到7.7619,而误码率呈上升趋势,由0.8933%到16.7422%,即使子水印被篡改的个数达到了6个,从实验结果图依然可以看到模糊的“湖南大学”四个字,版权得以证明,被篡改的子水印个数越少,重构二值图像与原图像相似度越高,版权认证可信度更高。与[7]相比,当子水印中即使出现一个子水印被篡改或移除,恢复出的水印信息中必然出现错误的比特位,在文字水印中即使一位比特的出错也可能导致整个语义发生改变,版权认证失败。

本发明所用到的参考文献:

[1]niet,liy,zhoul,etal.amultilevelfingerprintingmethodforfpgaipprotection[c]//ieeeinternationalsymposiumoncircuitsandsystems.ieee,2013:1789-1792.

[2]zhangj,liny,lyuy,etal.apuf-fsmbindingschemeforfpgaipprotectionandpay-per-devicelicensing[j].ieeetransactionsoninformationforensics&security,2017,10(6):1137-1150.

[3]zhengjx,potkonjakm.adigitalpuf-basedipprotectionarchitecturefornetworkembeddedsystems[c]//tenthacm/ieeesymposiumonarchitecturesfornetworkingandcommunicationssystems.acm,2014:255-256.

[4]niet,liuh,zhoul.atime-constrainedwatermarkingtechniqueonfpga[c]//internationalconferenceonindustrialcontrolandelectronicsengineering.ieee,2012:795-798.

[5]j.lach,w.h.mangione-smith,m.potkonjak.signaturehidingtechniquesforfpgaintellectualpropertyprotection[c].ieee/acminternationalconferenceoncomputer-aideddesign.newyork:acmpress,1998:186-189.

[6]j.lach,w.h.mangione-smith,m.potkonjak.fingerprintingtechniquesforfield-programmablegatearrayintellectualpropertyprotection[j].ieeetransactionsoncomputer-aideddesignofintegratedcircuitsandsystems,2001,20(10):1253-1261.

[7]niety,liuht,zhoulj,etal.lutreplacementbasedfpgawatermarkprotectingtechnique[j].microelectronics&computer,2013,30(1):21-23.

[8]d.saha,s.sur-kolay.securepublicverificationofipmarksinfpgadesignthroughazero-knowledgeprotocol.ieeetransactiononverylargescaleintegration(vlsi)system.2012,20(10):1749-1757.

[9]zhangj,liul.publiclyverifiablewatermarkingforintellectualpropertyprotectioninfpgadesign[j].ieeetransactionsonverylargescaleintegrationsystems,2017,25(4):1520-1527.

[10]xuj,shengy,liangw,etal.ahighpolymericmutualmappingipwatermarkingalgorithmforfpgadesign[j].journalofcomputationalandtheoreticalnanoscience,vol.13,issue1,pp.186-193,2016,13(1):186-193.

[11]liangwei,zhangda-fang,longjing,etal.arecoverabledualwatermarkingschemeforverylargescaleintegrationbasedintellectualpropertyprotection[j].journalofchinesecomputersystems,2014,35(10):2336-2340.

[12]longj,zhangd,liangw,etal.afault-tolerantwatermarkingalgorithmforfpgaipprotection[c]//ieeetrustcom/bigdatase/ispa.ieeecomputersociety,2015:230-237.

[13]jinglong,dafangzhang,weiliang,etal.signaturerestorationforenhancingrobustnessoffpgaipdesigns.internationaljournalofinformationsecurityandprivacy,2015,9(3):41-56.longj

[14]jinglong,dafangzhang,weiliang,etal.arobustlow-overheadwatermarkingforfieldauthenticationofintellectualpropertycores.comsis,2016,13(2):609-622.

[15]g.r.blakley,safeguardingcryptographickeys.proceedingsofthenationalcomputerconference,americanfederationofinformationprocessingsocieties,vol.48,pp.313-317,1979.

[16]yangcc,changty,hwangms.a(t,n)multi-secretsharingscheme.appliedmathematicsandcomputation.2004,151(2):483-490.

a.shamir,howtoshareasecret.communicationsoftheacm,vol.24,no.11,pp.612-613,1979.

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