[发明专利]一种在计算机程序中嵌入和提取水印的方法有效
| 申请号: | 200810119358.0 | 申请日: | 2008-09-05 |
| 公开(公告)号: | CN101350055A | 公开(公告)日: | 2009-01-21 |
| 发明(设计)人: | 王建民;张长江;王朝坤;李德毅 | 申请(专利权)人: | 清华大学 |
| 主分类号: | G06F21/22 | 分类号: | G06F21/22 |
| 代理公司: | 北京清亦华知识产权代理事务所 | 代理人: | 罗文群 |
| 地址: | 1000*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 计算机 程序 嵌入 提取 水印 方法 | ||
技术领域
本发明涉及一种在计算机程序中嵌入和提取水印的方法,尤其涉及一种在Java二进制代码程序中嵌入和提取水印的方法,属于软件版权保护技术领域。
背景技术
随着计算机网络、分布式系统以及网络化的嵌入式设备的发展,对软件的平台无关性和可移植性有了比以往更高、更迫切的要求,但也带来了安全方面的问题,其中,软件知识产权保护问题一直是个热点问题。研究软件版权保护技术,对于保护计算机软件著作权人的权益、鼓励计算机软件的开发与应用、促进软件产业和国民经济信息化的发展都有着非常重要的意义。
软件水印是指不被感知地嵌入在软件中的一段具有标识意义的信息,可用于证明软件的知识产权归属。在一些特定情形下,软件水印也能用于跟踪非法盗用。软件水印技术属于一种典型的软件版权保护技术。
发明内容
本发明的目的是提出一种在计算机程序中嵌入和提取水印的方法,该方法基于计算机程序控制流图的特征点——割点以及程序的语义。不同于以往的水印方法,在本方法中,通过在水印和密钥之间建立设定个数的映射关系,并将这些映射关系以代码的形式嵌入在与程序控制流图割点相对应的基本块处。
本发明提出的在计算机程序中嵌入和提取水印的方法,包括以下步骤:
嵌入水印的过程为:
(1)将计算机程序版权人的版权信息和密钥信息分别转化为一个整型数字字符串,分别记为w和k,w和k是大整数;
(2)将上述w和k分别转换成具有n个元素的单调非递减的整数数组W[]和K[],n是水印嵌入者设定的整数,1≤i≤n-1,具体的转换过程为:
(2-1)任意设定一个大于1的整数q,求出满足不等式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810119358.0/2.html,转载请声明来源钻瓜专利网。





