一种基于MapReduce可公开验证数据来源水印算法.docVIP

一种基于MapReduce可公开验证数据来源水印算法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于MapReduce可公开验证数据来源水印算法

一种基于MapReduce可公开验证数据来源的水印算法   摘 要 本文基于公开验证数据来源的水印算法,采用MapReduce并行编程框架进行设计,并通过实验证明了该算法的正确性和有效性。   【关键词】地理数据 公有水印 水印完整性 MapReduce   1 问题提出   地理数据库是地理信息系统的基础,由于地理数据的加工涉及大量人力、物力和财力,人们提出各种地理数据水印算法对数据的拥有者进行保护。大多数水印算法都需要进行大量的空间计算以及空间变换,特别是当目标地理数据中地物数较多或者地物形状较复杂时,进行水印信息的嵌入和检测都会消耗大量时间。各类水印算法往往关注数据的保真性和鲁棒性,而对水印算法的高效率执行却很少涉及。随着全球空间数据集的急剧增长,如何既快又好的进行水印的嵌入与检测成为许多研究人员关注的问题。文献提出一种可公开验证数据来源的水印算法,但时间复杂度较高,本文针对水印算法的效率问题,尝试应用MapReduce架构来解决水印信息的嵌入和检测的时间效率问题。   2 研究基础   2.1 预备知识   定义1 地物(Polygon):一个具有m个顶点的多边形地物Pi可以描述为Pi={pi1, pi2,… pij, pi(j+1)=pim},(j=1,2,…m),其中pij对应地物Pi中第j个顶点的二维坐标(pijx,pijy)。对于任意一个地物Pi来说,包含的顶点个数是可变的,我们用变量li来度量。   定义2地理数据集(Dataset):一个包含n个地物的地理数据集D可描述为D={R,P=},其中R为参考坐标系,P=表示数据库中的n个地物。   定义3 签名信息(Signature):一个长度为k的用户签名信息可描述为S={s1,s2, …, si, si+1=sk},(i=1,2,…k),其中si表示一个比特位,即si={0|1}。   公式1计算地物中心点:对于任意地物Pi,中心点Pi的x,y坐标由如下公式得出   Oix= pijx,Oiy= pijy (1)   公式2计算地物标识符:对于任意地物Pi,其标示符FIDi由如下方式确定:   FIDi=msb(Oi,h)=msb(Oix,h)||msb(Oiy,h)(2)   其中msb(Oix,h),msb(Oiy,h)和分别表示选取点Oi的横坐标Oix和纵坐标Oiy的高位h,||表示字符连接操作。   2.2 可公开验证数据来源的水印算法思想   根据D中的n个地物信息{P1,P2,…,Pn }和长度为k的签名信息{s1,s2, …, sk},通过对地物中的数据进行水印信息嵌入,生成一个包含n个二进制向量的集合V(v1,v2,…vn),其中vi(1=i=n)为一个二进制向量,与原数据集D中的一个地物Pi相对应。每一向量由向量标识和若干个比特位两部分组成,Vi中比特位长度和Pi的维数相同,其长度等于对应地物Pi中包含的顶点个数li。对于待验证的数据集D,应用水印检测算法生成二进制向量集合V,通过比较验证签名算法依次比较V和V,如果相同则认为D来源合法,否则不合法。   3 算法介绍   MapReduce是由Google提出的一种分布式并行编程框架,是云计算平台主流的数据处理模型。MapReduce的编程原理是基于“分而治之”的思想,MapReduce将复杂的并行计算过程抽象为两个函数:Mapper(映射)和Reducer(规约),其中Map阶段由多个Mapper实现并行的映射,Reduce阶段由多个Reducer实现并行的规约,输出文件数量与Reducer的数量相同。基于MapReduce的地理数据水印算法流程如图1所示。   3.1 基于MapReduce的水印嵌入算法   水印嵌入算法主要有2部分组成。通过对数据集D进行数据分片后,交由Map阶段完成的主要任务是:完成每一地物的标识fid的计算,同时生成二进制字符串H,等待Reduce阶段进行水印嵌入使用。Mapper算法框架如下:   Procedure Embed.Mapper( )   Input:Dataset P={P1,P2,…,Pn},Parameter h   Output:Binary Vector Set H(h1,h2,…hn )   for all Pi in P do   Oi←comput_Central_Point(Pi )//计算每一地物Pi的中心点Oi;   Pi.fid←msb(Oi,h); // 生成地物Pi的标识   Pi.vNum←comput_Vertex_Num(Pi)//计算Pi的顶点数Pi.vNum   H←Hash(Pi_fid,Pi.vNum)//生成长度为Pi.vNum的二进制串   

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档