一种基于kml文件的版权保护方法

文档序号:6332260阅读:267来源:国知局
专利名称:一种基于kml文件的版权保护方法
技术领域
本发明涉及信息安全技术领域,更具体地,涉及一种基于KML文件的版权保护方法。
背景技术
Google Earth是一个流行的软件,它将地球表面的卫星图像和航拍图片结合在一起,形成全景三维的世界地图。Google Earth的出现造成了传统地理信息系统(GK)界的极大震撼,这种平民化的GIS满足了绝大多数人希望探索地球的渴望,现在它已经广泛应用于许多领域,应用各种情况。Google Earth的出现集结了一大批兴趣爱好者,他们广泛交流基于该软件的内容。例如旅游爱好者可以利用该软件交流旅行路线,了解本地的地貌环境;摄影爱好者更是可以将自己所拍摄的照片,通过网络上传到Google Earth上,其他人通过网络都能看到该照片。但对于Google Earth的二次开发,目前并没有足够多的工具或接口。其中利用标记语言(KML)来进行二次开发是仅有的几个方式之一,因此KML对于 Google Earth非常重要。由于KML文件的网络传递有着简易方便的特点,所以任何人可以随意地对KML进行篡改与复制,且无法对KML文件进行标记以保护KML的版权。

发明内容
本发明实施例提出一种基于KML文件的版权保护方法,可以有效保护KML文件的版权。本发明实施例还提出一种基于KML文件的版权保护方法,可以有效保护KML文件的版权。本发明实施例的技术方案如下—种基于标记语言KML文件的版权保护方法,该方法包括对KML文件中的坐标进行第一次分组,得到成功分组,将版权保护信息的头信息嵌入成功分组的坐标中,所述头信息包括标记有版权保护信息和版权保护信息的主信息的长度;对KML文件中的坐标进行第二次分组,得到成功隐藏分组,将所述主信息嵌入成功隐藏分组的坐标中。所述对KML文件中的坐标进行第一次分组,得到成功分组包括,每个所述坐标包括经度坐标和纬度坐标,利用sum = XlX 1000+x2X 100+yiX10+y2 计算得到总数sum,X1是所述坐标的经度坐标小数点后第5位,X2是所述坐标的经度坐标小数点后第6位,Y1是所述坐标的纬度坐标的小数点后第5位,y2是所述坐标的纬度坐标的小数点后第6位;sum对Ii1取余得到所述坐标所属分组,H1 ^ 16 ;所述成功分组中的坐标数目大于等于k,k为预设的经验值。若所述坐标所属分组的坐标数目小于k,则将所述分组中所有所述坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位均替换为9。所述主信息的长度m是6的倍数,且m < totalbits, totalbits = 6*K,K是所述成功分组的数目。所述主信息的长度m不是6的倍数,在所述主信息后填补0得到m ‘, m' ^ totalbits,且m'是6的倍数,totalbits = 6*K,K是所述成功分组的数目。所述将版权保护信息的头信息嵌入成功分组的所述坐标中包括,将所述头信息由高到低的每一个比特,分别嵌入各成功分组的所述坐标中,每个成功分组的所述坐标中嵌入的所述头信息的比特是相同的。所述分别嵌入各成功分组的所述坐标中包括,若嵌入1,则将所述成功分组内所述坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位均标记为奇数;若嵌入0,则将所述成功分组内所述坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位均标记为偶数。所述对KML文件中的坐标进行第二次分组,得到成功隐藏分组包括,sum对m取余得到所述坐标所属隐藏分组,所述成功隐藏分组内的所述坐标数目大于q,q为预设的经验值。所述对KML文件中的坐标进行第二次分组,得到成功隐藏分组包括,sum对M取余得到所述坐标所属隐藏分组,M等于m/6取整后加1,所述成功隐藏分组内的所述坐标数目大于q。所述将所述主信息嵌入成功隐藏分组的所述坐标中包括,将所述主信息每6个字符依次分为多个信息组,将每个信息组顺序分为两个包括3个字符的信息分组,将所述信息分组转换为十进制后分别嵌入成功隐藏分组的所述坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位中,每个成功隐藏分组的所述坐标中嵌入的信息分组是相同的。一种基于KML文件的版权保护方法,该方法包括对KML文件中的坐标进行第一次分组,得到成功分组,依次从成功分组中坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位得到版本保护信息的头信息的比特;对KML文件中的坐标依据所述头信息所标记的版权保护信息的长度进行第二次分组,得到成功隐藏分组,依次从成功隐藏分组中坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位得到版本保护信息的主信息。所述依次从成功分组中坐标的经度坐标小数点后第7位和纬度坐标小数点后第7 位得到版本保护信息的头信息的比特包括,检查所述坐标的经度坐标小数点后第7位和纬度坐标的小数点后第7位,若所述经度坐标的小数点后第7位和所述纬度坐标的小数点后第7位均是奇数则提取1 ;否则,提取0,得到所述头信息的比特。从上述技术方案中可以看出,在本发明实施例中,首先对KML文件中的坐标进行第一次分组,得到成功分组,将版权保护信息的头信息嵌入成功分组的坐标中,头信息用于标记版权保护信息的主信息的长度;对KML文件中的坐标进行第二次分组,得到成功隐藏分组,将主信息嵌入成功隐藏分组的坐标中。进而在KML文件中的坐标中隐藏版权保护信息,用以标记KML文件的版权,KML文件的版权得到有效保护。


图1为本发明实施例基于KML文件的版权保护方法流程示意图。
具体实施例方式为使本发明的目的、技术方案和优点表达得更加清楚明白,下面结合附图及具体实施例对本发明再作进一步详细的说明。本发明中,首先对KML文件中的坐标进行第一次分组,得到成功分组,将版权保护信息的头信息嵌入成功分组的坐标中,头信息用于标记版权保护信息的主信息的长度;然后再对KML文件中的坐标进行第二次分组,得到成功隐藏分组,将主信息嵌入成功隐藏分组的坐标中。进而,接收端可以在KML文件的坐标中得到所嵌入的版权保护信息,在该KML 文件被其它用户使用时可以在不影响使用的前提下标记KML文件的版权,有效地保护KML 文件的版权。KML文件中的坐标都是由一系列数字组成的,因此本发明中通过修改KML文件中坐标来嵌入版权保护信息。在KML文件中,坐标分布于<north>、<south>、<east>、<west>、 <longitude>><latitude> UR <coordinates> ψ,{0 ^^^ ^^ <coordinates> ψ。 因此本发明主要是通过更改〈coordinates〉下的坐标隐藏版权保护信息。一般情况下,〈coordinates〉中的坐标包括经度坐标和纬度坐标。经度坐标和纬度坐标在小数点后10位以后依然有值,当改变经度坐标第7位以及之后的数位和纬度坐标后的第7位以及之后的数位都不会引起任何视觉上的改变,因此包括第7位之后的数位都可以用来隐藏信息。参见图1是基于KML文件的版权保护方法流程示意图,具体包括以下步骤步骤101、第一次分组得到成功分组,第二次分组得到成功隐藏分组。版权保护信息由两部分组成,一部分是头信息,另一部分是主信息。将版权保护信息的头信息嵌入第一次分组得到的成功分组的坐标中;将版权保护信息的主信息嵌入至第二次分组得到的成功隐藏分组中的坐标中。对KML文件中的坐标进行第一次分组。首先从坐标小数点后的第五位开始取值, 依次取四位。坐标中的经度坐标第五位至第八位分别为Xl,X2, X3, X4,以及与经度坐标相对应的第五位至第八位的纬度坐标分别为y2, y3,y4。利用sum = X1X 1000+x2 X IOCHy1 X 10+y2计算出总数sum。每个坐标对应一个sum。 由sum对Ii1取余的方式来对该坐标进行第一次分组,Ii1表示的是分组数,Ii1 ^ 16。Ii1是根据用户的需求来确定的,即由鲁棒性和嵌入量的均衡来得到Ii1的确定值。具体如何由鲁棒性和嵌入量的均衡得到Ii1的取值可借鉴现有技术,本发明不再赘述。共有Ii1个分组,计算出每个分组中的坐标数目,分别由数组IsiIi = 1,......,nj
来表示。当Si彡k时,则第i个分组的坐标可以用来嵌入信息,第i个分组称为成功分组; 反之,不符合上述条件的分组不能用来嵌入信息,标记为非法组,对于非法组中的 ,74均替换为9。k值的确定同样是由鲁棒性和嵌入量的均衡得到的,具体取值步骤是现有技术, 本发明不再赘述。统计成功分组的数目K,K乘以6等于totalbitsjotalbits代表在成功分组中的多个坐标下可以隐藏的版权保护信息的最大长度。在KML文件中嵌入版权保护信息的主信息是利用sum = X1X 1000+ X KKHy1X 10+72得sum。版权保护信息的主信息的长度m不能超出totalbits,因此有m ( totalbits。当m是6的倍数,可以直接按照下述技术方案在成功隐藏分组的坐标中嵌入版权保护信息的主信息。当m不是6的倍数,则在版权保护信息的主信息后填补 0来得到m',令m'成为6的倍数,且在m' < totalbits时,才能按照下述技术方案在成功隐藏分组的可用坐标中嵌入版权保护信息的主信息。当m是6的倍数,利用sum对m取余的方式来对坐标进行第二次分组以便隐藏版本保护信息的主信息。坐标的sum对m的余数即该坐标对应的隐藏分组。当m不是6的倍数,sum对M取余即得到该可用坐标所属隐藏分组,M等于m/6取整后加1。计算出每个隐藏分组中的坐标数目,由数组Hi I i = 1......n2}来表示。当、彡q
表示该隐藏分组的坐标数目过少,那么该隐藏分组中的坐标就不能嵌入主信息。q值是由鲁棒性和嵌入量的均衡得到的。反之,若、> q,则该隐藏分组中的坐标能够嵌入主信息,那么该隐藏分组为成功隐藏分组。步骤102、隐藏信息。 由于在KML文件中,改变经度坐标后的第7位以及之后的数位和纬度坐标后的第7 位以及之后的数位都不会引起任何视觉上的改变,因此可以将头信息嵌入到成功分组的坐标中,将主信息嵌入成功隐藏分组的坐标中。下面以将头信息嵌入到成功分组坐标的经度坐标的第7位和纬度坐标的第7位, 将主信息嵌入到成功隐藏分组坐标中经度坐标的第8位和纬度坐标的第8位,为例进行详细说明。头信息的长度是16bit,依次嵌入到成功分组的坐标的x3,y3中。16bit中前4bit 表示标识符,使用户端能够及时了解KML文件中是否有版权保护信息。例如可以将前4bit 设置为0000表示该坐标中有版权保护信息。余下12bit代表版权保护信息主信息的长度。将头信息由高到低的每一个比特,分别嵌入各成功分组的坐标中,每个成功分组的坐标中嵌入的所述头信息的比特是相同的。当要嵌入的头信息比特为1,那么将经度坐标中的&和纬度坐标中的y3标记为奇数。倘若原来x3,y3就是奇数那么x3,y3不变;如果原来知,73是偶数,那么令χ' 3 = χ3+1 ' 3 = y3+i。当要嵌入的头信息比特为0,那么将经度坐标中的&和纬度坐标中的y3标记为偶数,倘若x3,y3原来就是偶数那么不变;如果原来 χ3,y3 是奇数,那么 χ' 3 = X3-I' y' 3 = y3_i。计算出每个隐藏分组中的坐标数目,由数组Hi I i = 1......n2}来表示。当、彡q
表示该隐藏分组的坐标数目过少,那么该隐藏分组中的坐标就不能嵌入主信息。q值是由鲁棒性和嵌入量的均衡得到的。反之,若、> q,则该隐藏分组中的坐标能够嵌入主信息,那么该隐藏分组为成功隐藏分组。然后对主信息进行分组。每六个比特为一个信息组,第一个信息组的前三个比特为一个信息分组,该信息分组转换为十进制组成一个小于8的整数替换到余数为0的成功隐藏分组中各坐标的&中,第一个信息组后三个比特为一个信息分组,该信息分组转换为十进制组成另外一个小于8的整数替换到模为0的成功隐藏分组中各坐标的y4中。相应的,第二个信息组的六个比特数据分为两个信息分组,转换为十进制替换到余数为1的成功隐藏分组各坐标中的x4和y4。依次类推将主信息以信息组为单位分为两个信息分组隐藏到坐标的经度坐标和纬度坐标中。步骤103、提取信息。
对KML文件中的坐标进行第一次分组,得到成功分组,依次从成功分组中坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位得到版本保护信息的头信息的比特; 对KML文件中的坐标依据头信息进行第二次分组,依次从成功隐藏分组中坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位得到版本保护信息的主信息。下面依然以接收到KML文件中,将头信息嵌入到坐标中经度坐标的第7位和纬度坐标的第7位,将主信息嵌入到坐标中经度坐标的第8位和纬度坐标的第8位,为例进行详细说明。首先提取出头信息。由坐标中的Xl、x2> Y1和y2,禾U用sum = X1X 1000+x2X KKHy1X 10+72计算出该坐标的sum。再由sum对Ii1取余的方式来对该坐标进行分组。共有Ii1个成功分组,计算出每个成功分组中的坐标数目。若该成功分组的坐标数目少于q/2,则说明失真严重,那么放弃提取版权保护信息的主信息;否则,依照Ii1个成功分组的从小到大的顺序依次提取出数据比特流。在一个成功分组的坐标中90%以上的&,y3是奇数,则提取比特1 ;若在一个成功分组的坐标中90%以上的x3,y3是偶数,则提取比特0。由多个成功分组可以得到版权保护信息的头信息的比特流,将该比特流转换为2进制,得到版权保护信息的长度m或M。通过m或M就可以知道需要提取的主信息的长度。再利用sum = X1X 1000+ X 100+yi X 10+y2计算出sum,利用sum对m或M取余的方式再次对坐标进行分组。然后统计每一个成功隐藏分组中x4,y4值的数目,若& = k{k| 1...8}占了全部分组中 X4的百分之八十以下,那么提取的信息值就是k ;若百分之八十以上是9那么代表该隐藏分组是一个不合理的分组,不提取信息。依次提取出m或M个隐藏分组,然后依照从小到大的顺序,提取出:3bit的信息分组,然后转换为二进制数据。按照m或M,从左到右提取转换为 2进制数据的主信息得到版权保护信息的主信息。下面以在KML文件中取34个坐标结合图1为例,说明本发明的技术方案。步骤201、第一次分组得到成功分组,第二次分组得到成功隐藏分组。取34个坐标,并计算每个坐标其对应的sum值,分别为3260、6514、1060、3270、 1076、6530、1600、1616、1601、1617、1603、1619、1605、1621、1606、1622、1607、1608、1623、 1624、1609、1610、1611、1627、1626、1625、1614、1613、1630、1629、1615、1647、3202、3208。Ii1 = 16,由sum对Ii1取余的方式来对坐标进行分组。上述坐标的分组分别为12、 2、4、12、4、2、0、0、1、1、3、3、5、5、6、6、7、8、7、8、9、10、11、11、10、9、14、13、14、13、15、15、2、8。 余数为0的组包含2个坐标,余数为1的组包含2个坐标,余数为2的组包含3个坐标,余数为3的组包含2个坐标,余数为4的组包含2个坐标,余数为5的组包含2个坐标,余数为6的组包含2个坐标,余数为7的组包含2个坐标,余数为8的组包含3个坐标,余数为9 的组包含2个坐标,余数为10的组包含2个坐标,余数为11的组包含2个坐标,余数为12 的组包含2个坐标,余数为13的组包含2个坐标,余数为14的组包含2个坐标,余数为15 的组包含2个坐标。设k = 2,则余数为0、1、2、3、4、5、6、7、8、9、10、11、12、13、14和15的组均是成功分组,都可以用来隐藏信息。totalbits为6*16 = 96bit。对坐标第二次分组,m = 10,利用sum对m取余的方式来进行再次分组,得到隐藏分组。坐标的余数分别为 0、4、0、0、6、0、0、6、1、7、3、9、5、1、6、2、7、8、3、4、9、0、1、7、6、5、4、3、 0、9、5、7、2、8。余数为0的隐藏分组包含7个坐标,余数为1的隐藏分组包含3个坐标,余数为2的隐藏分组包含2个坐标,余数为3的隐藏分组包含3个坐标,余数为4的隐藏分组包含3个坐标,余数为5的隐藏分组包含3个坐标,余数为6的隐藏分组包含4个坐标,余数为7的隐藏分组包含4个坐标,余数为8的隐藏分组包含2个坐标,余数为9的隐藏分组包含2个坐标。q = 2,则余数为0、1、2、3、4、5、6、7、8、9和10的隐藏分组均为成功隐藏分组,都可以用来隐藏头信息。步骤202、隐藏信息。需要隐藏的版权保护信息的主信息为(0011000100),长度m为10,由于m的位数不为6的整倍数,因此在主信息的尾数后添加2个0,则主信息改为(001100010000)。首先,嵌入头信息即版权保护信息的长度10,将10转换为2进制 (0000000000001010)。余数为 0、1、2、3、4、5、6、7、8、9、10、11、13、15 的成功分组中,坐标的经度坐标、纬度坐标中的&,^变为偶数(若&,^原来就是偶数那么不变;原来x3,y3是奇数,那么所有奇数都加1)。余数为12、14的成功分组中,经度坐标和纬度坐标中的知,73变为奇数(倘若原来x3,y3就是奇数那么不变;原来x3,Y3是偶数,那么所有偶数都加1)。然后,嵌入版权保护信息的主信息(001100010000)。001100010000每六个比特为一个隐藏组,分为001100和010000两个信息组。将 (001100)分为二个信息分组,换算为二进制位得到1和4,将余数为0的成功隐藏分组中各个坐标的A替换为l,y4替换为4;将(010000)分为两个信息分组,换算为二进制位得到2 和0,将余数为1的成功隐藏分组中各个坐标的&替换为2,y4替换为0。版权保护信息的主信息嵌入完毕。步骤203、提取信息。在客户端将嵌入版权保护信息的坐标按照Ii1 = 16分组。检查余数为0、1、2、3、4、 5、6、7、8、9、10、11、12、13、14和15的成功分组中的x3,y3,依照x3,y3的奇偶性提取出版权保护信息的头信息为(0000000000001010),得到版权保护信息的主信息长度为10位。然后将嵌入主信息的坐标按照m= 10分组,依次检查各个坐标的x4,y4,得到(14)、(20),换算成二进制得(001100010000),取前10位得到隐藏的版权保护信息(0011000100)。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种基于标记语言KML文件的版权保护方法,其特征在于,该方法包括对KML文件中的坐标进行第一次分组,得到成功分组,将版权保护信息的头信息嵌入成功分组的坐标中,所述头信息包括标记有版权保护信息和版权保护信息的主信息的长度;对KML文件中的坐标进行第二次分组,得到成功隐藏分组,将所述主信息嵌入成功隐藏分组的坐标中。
2.根据权利要求1所述基于KML文件的版权保护方法,其特征在于,所述对KML文件中的坐标进行第一次分组,得到成功分组包括,每个所述坐标包括经度坐标和纬度坐标,利用sum = X1X 1000+ X IOCHy1 X 10+y2计算得到总数sum,X1是所述坐标的经度坐标小数点后第5位,X2是所述坐标的经度坐标小数点后第6位,Y1是所述坐标的纬度坐标的小数点后第5位,y2是所述坐标的纬度坐标的小数点后第6位;sum对Ii1取余得到所述坐标所属分组,H1 ^ 16 ;所述成功分组中的坐标数目大于等于k,k为预设的经验值。
3.根据权利要求2所述基于KML文件的版权保护方法,其特征在于,若所述坐标所属分组的坐标数目小于k,则将所述分组中所有所述坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位均替换为9。
4.根据权利要求2所述基于KML文件的版权保护方法,其特征在于,所述主信息的长度 m是6的倍数,且m < totalbits, totalbits = 6*K,K是所述成功分组的数目。
5.根据权利要求2所述基于KML文件的版权保护方法,其特征在于,所述主信息的长度m不是6的倍数,在所述主信息后填补0得到m',m' < totalbits,且m'是6的倍数, totalbits = 6*K,K是所述成功分组的数目。
6.根据权利要求1所述基于KML文件的版权保护方法,其特征在于,所述将版权保护信息的头信息嵌入成功分组的所述坐标中包括,将所述头信息由高到低的每一个比特,分别嵌入各成功分组的所述坐标中,每个成功分组的所述坐标中嵌入的所述头信息的比特是相同的。
7.根据权利要求6所述基于KML文件的版权保护方法,其特征在于,所述分别嵌入各成功分组的所述坐标中包括,若嵌入1,则将所述成功分组内所述坐标的经度坐标小数点后第 7位和纬度坐标小数点后第7位均标记为奇数;若嵌入0,则将所述成功分组内所述坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位均标记为偶数。
8.根据权利要求4所述基于KML文件的版权保护方法,其特征在于,所述对KML文件中的坐标进行第二次分组,得到成功隐藏分组包括,sum对m取余得到所述坐标所属隐藏分组,所述成功隐藏分组内的所述坐标数目大于q,q为预设的经验值。
9.根据权利要求5所述基于KML文件的版权保护方法,其特征在于,所述对KML文件中的坐标进行第二次分组,得到成功隐藏分组包括,sum对M取余得到所述坐标所属隐藏分组,M等于m/6取整后加1,所述成功隐藏分组内的所述坐标数目大于q。
10.根据权利要求1所述基于KML文件的版权保护方法,其特征在于,所述将所述主信息嵌入成功隐藏分组的所述坐标中包括,将所述主信息每6个字符依次分为多个信息组, 将每个信息组顺序分为两个包括3个字符的信息分组,将所述信息分组转换为十进制后分别嵌入成功隐藏分组的所述坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位中,每个成功隐藏分组的所述坐标中嵌入的信息分组是相同的。
11.一种基于KML文件的版权保护方法,其特征在于,该方法包括对KML文件中的坐标进行第一次分组,得到成功分组,依次从成功分组中坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位得到版本保护信息的头信息的比特;对KML文件中的坐标依据所述头信息所标记的版权保护信息的长度进行第二次分组, 得到成功隐藏分组,依次从成功隐藏分组中坐标的经度坐标小数点后第8位和纬度坐标小数点后第8位得到版本保护信息的主信息。
12.根据权利要求11所述基于KML文件的版权保护方法,其特征在于,所述依次从成功分组中坐标的经度坐标小数点后第7位和纬度坐标小数点后第7位得到版本保护信息的头信息的比特包括,检查所述坐标的经度坐标小数点后第7位和纬度坐标的小数点后第7位, 若所述经度坐标的小数点后第7位和所述纬度坐标的小数点后第7位均是奇数则提取1 ; 否则,提取0,得到所述头信息的比特。
全文摘要
一种基于KML文件的版权保护方法,该方法包括对KML文件中的坐标进行第一次分组,得到成功分组,将版权保护信息的头信息嵌入成功分组的所述坐标中,所述头信息包括标记有版权保护信息和版权保护信息的主信息的长度;对KML文件中的坐标进行第二次分组,得到成功隐藏分组,将所述主信息嵌入成功隐藏分组的所述坐标中。应用本发明实施例以后,可以有效保护KML文件的版权。
文档编号G06F21/24GK102402669SQ201010285700
公开日2012年4月4日 申请日期2010年9月16日 优先权日2010年9月16日
发明者袁琦, 闵栋, 陈钢 申请人:工业和信息化部电信传输研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1