本发明涉及数字版权技术领域,特别涉及一种基于改进型LSB算法的数据版权保护方法及系统。
背景技术:
利用数字隐藏技术把一段版权信息隐藏到地图数据中,不影响数据的精度和使用,通过肉眼不能觉察到水印信息的存在,但是可以通过专用工具把版权信息提取出来,达到鉴别真伪,鉴别盗版的效果。
隐藏的版权信息具有一定的鲁棒性,当对数据进行整体或者局部的移动,平移,旋转或者对数据进行格式的转换都要保证版权信息能够被正常提取。
矢量数据隐藏技术从大类上分为空域的方法和频域方法:
空域数字水印算法是指在二维矢量图形的空间域中嵌入水印信息的算法,一般是通过修改或增加顶点数据来进行的。通常有如下几种方法:
直接将数字水印信息通过最低有效位算法嵌入至矢量数据的顶点上(leastsignificantbit,LSB);
依据顶点密度自动地将地图划分为不同大小的矩形块,并在不同的矩形块中嵌入水印(MQUAD);
通过在线段上插入点、修改线段的长度、改变线段的方向或线段的属性来嵌入水印信息。
相对于直接对图形的几何属性进行修改的空域数字水印算法而言,频域数字水印算法不是通过直接修改顶点坐标嵌入的,而是从矢量图中选取坐标点的坐标,并按一定的规则进行排序,然后进行频域变换,将水印嵌入到它们的变换系数中。通常如下方法:
1、基于离散余弦变换(Discrete Cosine Transform,DCT)的数字水印算法
2、基于傅里叶变换的数字水印算法
3、基于小波变换的数字水印算法。
MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。MD5就可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”都会发生变化。
技术实现要素:
有鉴于此,本发明基于定比分点的改进型LSB算法的二维矢量图形数字水印算法提出一种基于改进型LSB算法的数据版权保护方法及系统。
一种基于改进型LSB算法的数据版权保护方法,其包括水印嵌入步骤:
S1、生成水印信息序列,将水印信息序列保存为一水印信息序列文件,计算所述水印信息序列文件MD5值;
S2、获取水印序列;
S3、获取定比值和比例序列,所述定比值用于作为标识水印是否存在的标识,针对水印信息生成相应的比例序列;
S4、获取原始序列点:从水印序列中获得用于插入定比值和比例序列点的原始序列点;
S5、计算新增顶点坐标:将符合定比值的新增点,插入原始序列的第一个点与第二个点形成的首段中;后面每段依次添加两个比例序列点的新增点。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S1包括:
将水印信息序列化,将授权者、被授权者、授权时间信息、校验信息组装成一个字节的序列,即所述水印信息序列,所述水印信息序列总长度为24字节,192位;
所述水印信息序列保存为一水印信息序列文件,计算所述水印信息序列文件的MD5值并将MD5值保存。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S2包括:
所述水印信息序列等分为16段,每段12位,取这16个段代表的数字保存下来作为水印序列。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S3包括:
定义一比例值;则定比值为比例值除以除数,除数为2的m方加1,其中m为每段的位数12;
针对水印信息生成的16个数,生成相应的比例序列,其中比例序列为
在本发明所述的基于改进型LSB算法的数据版权保护方法中,定比值加上16个比例序列,因此要在原始序列点上添加17个数据信息点。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S5包括:
标志点到第一个原始序列点的距离与标志点到第二个原始序列点的距离等于比例值λ;
其他比例序列点则以每段中点为界,第一个比例序列点到第二个原始序列点的距离与第一个比例序列点到段的中点的距离比值等于λ1,第二个比例序列点到中点距离与第二个比例序列点到第二个原始序列点距离的比值等于λ2;并依次类推。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,
其包括水印提取步骤:
S6、获取点序列:获取所有点的序列,如果序列的点数小于新增顶点坐标与原始序列点之和,则判断不包括水印信息,否则跳转到步骤S7;
S7、标志点判定水印信息:序列中前三个点计算两段之间的距离比,如果距离比等于水印嵌入时的λ值,则初步判定为存在水印,跳转到步骤S8;
S8、计算比例序列:从所有点的序列中第三个点开始取四个点的坐标V1、V2、V3、V4,计算V1和V4之间的中点V’,计算V2到V1的距离与V2到V’的距离之间的比值得到上面提到的λ1,计算V3到V’的距离与V3到V4之间的距离的比值得到λ2;
然后从后三个点开始依次再取四个点V4、V5、V6、V7,上次计算的最后一点是本次计算的第一点,根据以上的方法继续计算出其他的λn值;
S9、根据公式,反算出各个比例序列对应的数,然后把各数的序列组合起来形成最初的水印信息序列;
S10、校验水印信息序列,校验成功则确定水印信息存在:将S9中的水印信息序列保存为一文件,计算该文件MD5值,并将其与S1中MD5值比较,如果一样,则校验成功。
本发明还提供一种基于改进型LSB算法的数据版权保护系统,其包括水印嵌入单元:
水印序列生成单元,用于生成水印序列;
定比值和比例序列获取单元,用于获取定比值和比例序列,所述定比值用于作为标识水印是否存在的标识,针对水印信息生成相应的比例序列;
原始序列点获取单元,用于从水印序列中获得用于插入定比值和比例序列点的原始序列点;
新增顶点坐标计算单元,用于将符合定比值的新增点(也叫标志点)插入原始序列的第一个点与第二个点形成的首段中;后面每段依次添加两个比例序列点的新增点。
在本发明所述的基于改进型LSB算法的数据版权保护系统中,所述水印序列生成单元包括:
将水印信息序列化,将授权者、被授权者、授权时间信息、校验信息组装成一个字节的序列,总长度为24字节,192位;
将192位的字节等分为16段,每段12位,取这16个段代表的数字保存下来作为水印序列。
在本发明所述的基于改进型LSB算法的数据版权保护系统中,定比值和比例序列获取单元包括:
定义一比例值;则定比值为比例值除以除数,除数为2的m方加1,其中m为每段的位数12;
针对水印信息生成的16个数,生成相应的比例序列,其中比例序列为
在本发明所述的基于改进型LSB算法的数据版权保护系统中,定比值加上16个比例序列,因此要在原始序列点上添加17个数据信息点,因此从16个水印序列中获得用于插入定比值和比例序列点的10个原始序列点:
新增顶点坐标计算单元包括:标志点到第一个原始序列点的距离与标志点到第二个原始序列点的距离等于比例值λ;
其他比例序列点则以每段中点为界,第一个比例序列点到第二个原始序列点的距离与第一个比例序列点到段的中点的距离比值等于λ1,第二个比例序列点到中点距离与第二个比例序列点到第二个原始序列点距离的比值等于λ2;并依次类推。
实施本发明提供的基于改进型LSB算法的数据版权保护方法及系统与现有技术相比具有以下有益效果:采用的是基于定比分点的改进型LSB算法的二维矢量图形数字水印算法。改进的算法不是直接将水印信息转化为用于计算新顶点的定比,而是利用数字水印信息修改事先给定的任意比值,再利用这个比值计算新顶点的横纵坐标数据。在提取阶段只需要利用顶点坐标序列计算比值序列,并从比值序列对应的二进制序列固定的位置提取水印信息。
由于在嵌入过程中水印信息是蕴藏在事先比值序列中,这样算法的鲁棒性得到了很好的保留,同时采用LSB算法嵌入水印信息至原始比值序列中,算法的数据容量大。
附图说明
图1是本发明实施例的原理图;
图2是本发明实施例的基于改进型LSB算法的数据版权保护方法流程图;
图3是本发明实施例的基于改进型LSB算法的数据版权保护系统结构框图;
图4是本发明实施例的原始序列图;
图5是本发明实施例新增数据点后的示意图。
具体实施方式
如图1、2所示,本发明实施例的一种基于改进型LSB算法的数据版权保护方法,其包括水印嵌入步骤:
S1、生成水印信息序列,将水印信息序列保存为一水印信息序列文件,计算所述水印信息序列文件MD5值;
S2、获取水印序列;
S3、获取定比值和比例序列,所述定比值用于作为标识水印是否存在的标识,针对水印信息生成相应的比例序列;
S4、获取原始序列点:从水印序列中获得用于插入定比值和比例序列点的原始序列点;
S5、计算新增顶点坐标:将符合定比值的新增点,插入原始序列的第一个点与第二个点形成的首段中;后面每段依次添加两个比例序列点的新增点。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S1包括:
将水印信息序列化,将授权者、被授权者、授权时间信息、校验信息组装成一个字节的序列,即所述水印信息序列,所述水印信息序列总长度为24字节,192位;
所述水印信息序列保存为一水印信息序列文件,计算所述水印信息序列文件的MD5值并将MD5值保存。MD5值可唯一标识一文件,某一文件只可能有一个唯一MD5值,如果该文件被修改,修改后文件的MD5值将发生改变。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S2包括:
将192位的字节等分为16段,每段12位,取这16个段代表的数字保存下来作为水印序列。
把水印信息序列化,如授权者为”圆周率”,被授权者为”圆周率”,授权时间为:2014-10-10。把这三样信息组装成一个字节的序列,授权者与被授权者仍然以字符串的形式保存,中间用”\”号隔开(全部长度限制在16个字节之内),后面紧跟的是4个字节的授权时间(把字符串的时间转化成整型的时间,可以节约存储空间),最后再加上4个字节的校验和。
这样的总长度为24个字节,192位。这个字节数理论上可以变化,变大会导致嵌入条件变得苛刻,鲁棒性变差;变小会导致信息容量小,不能完整表示信息。但是对于一个系统来说一旦选择就不能轻易再变动。
192位字节等分为16段,每段12位,取这16个段代表的数字保存下来。例如:000000000001=1;100000000000=2048。(这里段数也不是可以选择的,选择的大小与上面选择的影响是一样的)
这样水印信息就变成了16个数。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S3包括:
定义一比例值;则定比值为比例值除以除数,除数为2的m方加1,其中m为每段的位数12;
针对水印信息生成的16个数,生成相应的比例序列,其中比例序列为
定义一个比例值,例如这里选取2222,那么定比值就为2222/(212+1)。其中2的12次方应该与上面的每段位数对应,有多少段就应该有多少次方。
定比值作为标识水印是否存在的标识,通过判断定比值可以快速定位水印信息是否存在。
针对水印信息生成的16个数,生成相应的比例序列。公式为:例如:例如:0000000000000001=1,λ=(1+1)/(2^12+1)。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,定比值加上16个比例序列。
如图4所示,标志比例值加上16个比例序列,那么要在原始数据上添加17个数据信息。例如原始序列如下图所示。由于要添加17个数据,那么至少要求获取10个点的序列才行。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,所述步骤S5包括:
标志点到第一个原始序列点的距离与标志点到第二个原始序列点的距离等于定比值λ;
其他比例序列点则以每段中点为界,第一个比例序列点到第二个原始序列点的距离与第一个比例序列点到段的中点的距离比值等于λ1,第二个比例序列点到中点距离与第二个比例序列点到第二个原始序列点距离的比值等于λ2;并依次类推。
添加顶点的策略为:第一段(V1、V2)添加标志点,后面每段添加两个点。这样17个比例值正好添满。如图5所示,其中(Sx,Sy)为标志点,(N1x,N1y),(N2x,N2y)依次为新增数据点。
计算方法为:
标志点到前点(V1x,V1y)的距离与标志点到后点(V2x,V2y)的距离等于比例值λ。
其他点则以中点为界,第一个点到前点(V2x,V2y)的距离与第一个点到中点的距离比值等于λ1,第二个点到中点距离与第二个点到后点(V3x,V3y)距离的比值等于λ2。
后面依次类推。
在本发明所述的基于改进型LSB算法的数据版权保护方法中,
其包括包括水印提取步骤:水印的提取基本就是水印嵌入的逆过程。
S6、获取点序列:获取所有点的序列,如果序列的点数小于新增顶点坐标与原始序列点之和,则判断不包括水印信息,否则跳转到步骤S7;
S7、标志点判定水印信息:序列中前三个点计算两段之间的距离比,如果距离比等于水印嵌入时的λ值,则初步判定为存在水印,跳转到步骤S8;
S8、计算比例序列:从所有点的序列中第三个点开始取四个点的坐标V1、V2、V3、V4,计算V1和V4之间的中点V’,计算V2到V1的距离与V2到V’的距离之间的比值得到上面提到的λ1,计算V3到V’的距离与V3到V4之间的距离的比值得到λ2;
然后从后三个点开始依次再取四个点V4、V5、V6、V7,上次计算的最后一点是本次计算的第一点,根据以上的方法继续计算出其他的λn值;
S9、根据公式,反算出各个比例序列对应的数,然后把各数的序列组合起来形成最初的水印信息序列;
S10、校验水印信息序列,校验成功则确定水印信息存在:将S9中的水印信息序列保存为一文件,计算该文件MD5值,并将其与S1中MD5值比较,如果一样,则校验成功。
如图3所示,本发明还提供一种基于改进型LSB算法的数据版权保护系统,其包括水印嵌入单元:
水印序列生成单元,用于生成水印序列;
定比值和比例序列获取单元,用于获取定比值和比例序列,所述定比值用于作为标识水印是否存在的标识,针对水印信息生成相应的比例序列;
原始序列点获取单元,用于从水印序列中获得用于插入定比值和比例序列点的原始序列点;
新增顶点坐标计算单元,用于将符合定比值的新增点(也叫标志点)插入原始序列的第一个点与第二个点形成的首段中;后面每段依次添加两个比例序列点的新增点。
在本发明所述的基于改进型LSB算法的数据版权保护系统中,所述水印序列生成单元包括:
将水印信息序列化,将授权者、被授权者、授权时间信息、校验信息组装成一个字节的序列,总长度为24字节,192位;
将192位的字节等分为16段,每段12位,取这16个段代表的数字保存下来作为水印序列。
在本发明所述的基于改进型LSB算法的数据版权保护系统中,定比值和比例序列获取单元包括:
定义一比例值;则定比值为比例值除以除数,除数为2的m方加1,其中m为每段的位数12;
针对水印信息生成的16个数,生成相应的比例序列,其中比例序列为
在本发明所述的基于改进型LSB算法的数据版权保护系统中,定比值加上16个比例序列,因此要在水印序列上添加17个数据信息,因此从16个水印序列中获得用于插入定比值和比例序列点的10个原始序列点:
新增顶点坐标计算单元包括:标志点到第一个原始序列点的距离与标志点到第二个原始序列点的距离等于比例值λ;
其他比例序列点则以每段中点为界,第一个比例序列点到第二个原始序列点的距离与第一个比例序列点到段的中点的距离比值等于λ1,第二个比例序列点到中点距离与第二个比例序列点到第二个原始序列点距离的比值等于λ2;并依次类推。
可以理解的是,对于本领域的普通技术人员来说,可以根据本发明的技术构思做出其它各种相应的改变与变形,而所有这些改变与变形都应属于本发明权利要求的保护范围。