[发明专利]一种基于顶点插入的矢量地图完整性认证方法在审
| 申请号: | 201410120970.5 | 申请日: | 2014-03-28 |
| 公开(公告)号: | CN103903217A | 公开(公告)日: | 2014-07-02 |
| 发明(设计)人: | 门朝光;王娜娜;田泽宇;门宇博;王思佳 | 申请(专利权)人: | 哈尔滨工程大学 |
| 主分类号: | G06T1/00 | 分类号: | G06T1/00 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明属于地理信息科学、信息隐藏领域,具体涉及一种基于顶点插入的矢量地图完整性认证方法。本发明包括:划分矢量地图区域;矢量地图块分类;记录矢量地图块类型;生成认证水印;嵌入认证水印;嵌入认证水印;水印认证及原始数据恢复。本发明将矢量地图划分为若干区域,利用顶点插入的方法在每个区域中嵌入相应的认证信息,在认证阶段,不仅能够实现完整性认证,而且能够精确定位篡改区域,有效减少因无法准确检测篡改数据而导致的数据重传次数;本发明的误警率为零,漏警率为(1/2)L,能够有效检测篡改。 | ||
| 搜索关键词: | 一种 基于 顶点 插入 矢量 地图 完整性 认证 方法 | ||
【主权项】:
1.一种基于顶点插入的矢量地图完整性认证方法,其特征在于:(1)划分矢量地图区域;将矢量地图图元划分为互不重叠的块,将矢量地图划分的块的行数和列数记为NR和NW,块的总数记为NB,NB=NR×NW,第i,i=1,2,…,NB个矢量地图块记为Bi,包含块Bi的区域范围的矩形的左上顶点和右下顶点分别记为
和
和
分别表示
的x坐标和y坐标,
和
分别表示
的x坐标和y坐标;(2)矢量地图块分类;将所有的块划分为两类,normal块和empty块,将块Bi的顶点数目记为
如果
则块Bi为normal块;否则,块Bi为empty块;(3)记录矢量地图块类型;生成包含NB个元素的序列F,记录步骤(2)中每个块的类型,F={fi|fi∈{0,1},i=1,...,NB}其中,fi=0表示第i块为一个normal块,fi=1表示第i块为一个empty块;(4)生成认证水印;生成步骤(2)中每个normal块的认证水印,将块Bi的水印信息记为Hi,Hi={hi,j∈{0,1},j∈[0,L-1]}其中,L表示Hi中比特的数目,hi,j(0≤j≤L–1)表示Hi中第j个比特;(5)嵌入认证水印;将步骤(4)中生成的认证水印嵌入到normal块中,在normal块中嵌入水印(5.1)依据矢量地图块Bi的边界,计算Bi的中心
和
分别表示中心Bc,i的x坐标和y坐标;(5.2)生成一个以Bc,i为中心,r为半径的圆CBi(Bc,i,r),将在圆CBi(Bc,i,r)的圆周上插入含水印顶点以隐藏认证水印,半径r的取值为:( B i , max x - B i , min x , B i , max y - B i , min y ) ]]> (5.3)将认证水印Hi转换成要嵌入的水印序列Wi={Wi,j|j∈[0,NA–1]},Wi,j表示序列Wi中第j个元素,NA表示序列Wi中元素数目;(5.4)根据密钥Kd,生成双精度浮点数序列Ai={Ai,j|j∈[0,NA–1],(0≤Ai,j<180)},Ai,j表示序列Ai的第j个元素,序列Ai即用来嵌入水印序列Wi的角度序列;(5.5)对于序列Wi的每个元素Wi,j(j∈[0,NA–1]),嵌入到序列Ai中的第j个角度Ai,j的尾数部分,将得到的含水印角度记为Ai,j';(5.6)依据含水印角度Ai,j',计算在圆CBi的圆周上的含水印顶点
的位置,r j a = A i , j ′ × ( π / 180 ) v i , j x = B c , j x + r × cos ( r j a ) v i , j y = B c , i y + r × sin ( r j a ) ]]> 其中,
和
分别表示vi,j的x坐标和y坐标,将计算得到的含水印顶点集合记为Vi={vi,j|j∈[0,NA–1]};(5.7)将Vi中的含水印顶点插入到矢量地图中,得到含水印矢量地图;(6)水印认证及原始数据恢复;将含水印矢量地图的图元划分为互不重叠的块;根据步骤(3)中序列F识别每个块的类型;对于empty块,块中含有顶点,则视其遭到了篡改;否则,认为该块通过认证,对于normal块:(6.1)根据步骤(5)中计算块Bi'的中心
并生成以Bc,i'为中心,r'为半径的圆
和
分别表示中心Bc,i'的x坐标和y坐标;(6.2)搜索CBi'圆周上所有的顶点,将CBi'圆周上所有顶点的集合记为V i c = ]]>{ v i , j c ( v i , j c , x , v i , j c , y ) | j ∈ [ 0 , N c - 1 ] ) } , v i , j c ]]> 表CBi'圆周上第j个顶点,v i , j c , x ]]> 和v i , j c , y ]]> 分别表示顶点v i , j c ]]> 的x坐标和y坐标,Nc表示Vic包含的顶点数目;(6.3)获得所有可能的含水印顶点集合,将含水印顶点集合的序列记为V i p = { V i , j p | j ∈ [ 0 , ]]>N p - 1 ] } , V i , j p = { v i , j , k p ( v i , j , k p , x , v i , j , k p , y ) | k ∈ [ 0 , N A - 1 ] } ]]> 表示一个可能的含水印顶点集合,通过从V i c ]]> 中选取NA个不同的顶点获得,
表示可能含水印顶点集合
中第k个顶点,
和
分别表示顶点
的x坐标和y坐标,
表示可能含水印顶点集合的数目;(6.4)对于
中每个可能含水印顶点集合
(6.4.1)利用步骤(4)中描述的水印生成方法生成Bi''的水印信息Hi'={hi,j'|hi,j'∈{0,1},j∈[0,L–1]},Bi''表示不包含
中顶点的块Bi';(6.4.2)生成一个含水印顶点集合V i , j ′ = { v i , j , k ′ ( v i , j , k x ′ , v i , j , k y ′ ) | k ∈ [ 0 , N A - 1 ] } , v i , j , k ′ ]]> 表示Vi,j'的第k个顶点,
和
分别表示顶点vi,j,k'的x坐标和y坐标;(6.4.3)如果
块Bi'包含其相应的含水印顶点,块Bi'通过完整性认证,删除
中的顶点以恢复原始数据,块Bi'的认证过程到此结束;否则,重复步骤(6.4)直至
所有的集合都测试完毕;(6.5)如果
中没有一个可能含水印顶点集合是块Bi'的含水印顶点集合,则认为块Bi'遭到了篡改。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410120970.5/,转载请声明来源钻瓜专利网。
- 上一篇:粉笔灰电控清理结构
- 下一篇:一种英语教学中使用的黑板装置





