一种基于数字水印的虚拟机镜像版权保护方法与流程

文档序号:18886377发布日期:2019-10-15 20:59阅读:507来源:国知局
一种基于数字水印的虚拟机镜像版权保护方法与流程

本发明涉及计算机安全技术,尤其涉及一种基于数字水印的虚拟机镜像版权保护方法。



背景技术:

在借鉴美国“全舰计算环境”设计理念、结合计算机业界成熟的云计算技术后,舰载信息系统集成逐步由“分系统互联互通”集成向“信息基础设施+功能应用软件+专有硬件”的新的集成模式转变。“分系统互联互通”集成以硬件为中心,系统(设备)单位按照顶层设计要求研制设备,以研制完成的硬件设备交付总体单位,总体单位再对硬件设备进行测试、连接,完成集成;而新的集成模式以软件为中心,系统(设备)单位按照顶层设计,尤其是软件集成技术要求进行功能应用软件研制,软件交付后在信息基础设施上进行统一集成。新集成模式通过软硬件分离实现了计算资源的共用,使得舰载信息系统软件和硬件可以分别独立升级,确保了舰载信息系统计算能力不会因服役期长而落后于同时代先进水平,降低了全寿期维护费用。

为了支撑功能应用软件(包括计算处理软件和显控软件)在信息基础设施之上的集成,新集成模式提供了三类集成服务,分别是计算集成服务、显控集成服务和数据集成服务。由于计算集成服务、显控集成服务和数据集成服务的实体软件配置复杂,为了实现软件开发环境的标准化,保证软件开发环境和最终集成运行环境的一致性,在实际操作中通常以虚拟机镜像形式下发软件目标运行环境。虚拟机镜像下发后,总体单位便无法证明其中包含的集成服务的版权归属,也无法有效应对后续可能发生的侵权纠纷。



技术实现要素:

本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种基于数字水印的虚拟机镜像版权保护方法。

本发明解决其技术问题所采用的技术方案是:一种基于数字水印的虚拟机镜像版权保护方法,包括以下步骤:

1)对水印明文信息进行加密得到水印密文信息,所述水印明文信息用于表明虚拟机版权归属;

2)将水印密文嵌入到虚拟机文件系统中,具体如下:

在计算集成服务、显控集成服务和数据集成服务的文件簇下各随机挑选若干配置文件和动态链接库文件,以注释内容的形式在文件的随机部位嵌入包含版权信息的水印内容;

3)下发包含软件目标运行环境的虚拟机镜像;

4)在虚拟机文件系统中找到任意一处水印密文,对水印密文进行解密,还原出水印明文,根据水印明文的内容判定虚拟机版权归属。

水印密文位置可由版权拥有方在下发前单独记录,版权拥有方事后可根据事先的记录文件快速定位水印。

按上述方案,所述步骤1)中虚拟机镜像数字水印采用rsa非对称加密算法对水印明文信息进行加密,具体方法如下:

1.1)随机选取一个相异的素数对(p,q);

1.2)计算公共模数m=p×q,m的二进制长度即为密钥长度;

1.3)计算欧拉数根据欧拉函数的积性函数特性,故对于素数p、q而言,满足因此

1.4)随机选择一个整数e,满足且e与互质;

1.5)计算e对于的模反元素d,满足求解方程:

至此,(m,e)即为公钥,(m,d)即为私钥,取水印明文的ascii值,记为k,加密过程为:ke=c(modm),求解c即为加密后的水印密文。

本发明产生的有益效果是:与现有集成过程相比,本发明的有益效果是有效保护了集成总体单位的知识产权。以虚拟机形式下发的软件目标运行环境可以驻留系统(设备)单位,用以保障软件的高效开发,若出现某系统(设备)单位利用该虚拟机从事许可范围之外的业务,威胁总体单位利益时,总体单位可以通过水印鉴权证明虚拟机的版权归属,从而保护自身合法权益。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是舰载应用软件集成示意图;

图2是舰载应用软件开发流程示意图;

图3是数字水印加密解密过程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

如图1所示,舰载信息系统“信息基础设施+功能应用软件+专有硬件”集成模式中的软件集成过程示意如下:

为了支撑功能应用软件(包括计算处理软件和显控软件)在信息基础设施之上的集成,新集成模式提供了三类集成服务,分别是计算集成服务、显控集成服务和数据集成服务。计算集成服务向计算处理软件提供一套标准编程接口,并规定了一套软件打包和软件入库的规范,实现对计算处理软件的统一部署和运维管理;显控集成服务向显控软件提供了一套集成框架软件,支撑显控软件的插件化开发,并制订了显控插件的各类接口要求,实现显控插件在集成框架软件上的按需组合,共同构成显控软件;数据集成服务基于dds发布订阅机制向计算处理软件和显控软件提供统一的数据交互接口,实现数据的按需订阅。计算集成服务、显控集成服务和数据集成服务均具有知识产权密集的特点。

以系统(设备)责任单位的角度来看软件集成,可以简化为三个步骤,分别是顶层设计、软件开发、集中集成,如图2所示:

总体单位通过以虚拟机镜像形式下发软件目标运行环境实现了软件开发环境的标准化,保证了软件开发环境和最终集成运行环境的一致性。在下发的虚拟机镜像中已经完成三类集成服务的软件实体安装和配置,同时,该镜像在软件开发完成后,仍会留存于系统(设备)单位。因此,存在系统(设备)单位利用该虚拟机环境从事总体单位许可范围之外的业务,损害总体单位利益的可能性。

虚拟机镜像数字水印的嵌入过程主要分为两步。

第一步,对水印明文信息进行加密,水印明文须直接表明虚拟机版权归属,例如,“本虚拟机及内置全部软件、中间件的版权归中船重工七〇一所所有”。利用高级编程语言实现rsa工具类,算法伪代码如下:

利用rsa工具类生成一对公钥和私钥,利用公钥对水印明文信息进行加密,得到水印密文。

指嵌入水印信息应具有保密性和较低的误检测率。虚拟机镜像数字水印采用rsa非对称加密算法对水印明文信息进行加密。方法如下:

1)随机选取一个相异的素数对(p,q);

2)计算公共模数m=p×q,m的二级制长度即为密钥长度;

3)计算欧拉数由于欧拉函数的积性函数特性,故对于素数p、q而言,满足因此

4)随机选择一个整数e,满足且e与互质;

5)计算e对于的模反元素d,满足求解方程:

至此,(m,e)即为公钥,(m,d)即为私钥。取水印明文的ascii值,记为k,加密过程为:ke=c(modm),求解c即为加密后的水印密文。

由于私钥保存于水印生产者也即虚拟机版权所有方,因此只要私钥没有泄露,理论上水印信息没有被破解的可能;对于一对公钥和私钥而言,使用公钥加密的信息可以利用私钥进行解密,还原出水印信息原文,由于rsa算法的可靠性,因此虚拟机镜像的数字水印不存在误检测的可能。

第二步,将水印密文嵌入到虚拟机文件系统中。根据隐蔽性和鲁棒性的要求,水印密文以注释的方式嵌入集成服务文件簇中的若干配置文件和动态链接库文件中,以显控集成服务为例,在widgets/debug路径下有大量公共显控插件,均以动态链接库形式存在,内容为人无法理解的机器码,例如挑选其中的libtimecode.so,利用文本编辑器在机器码中间插入一段注释,注释内容即为上一步生成的水印密文;对于配置文件的操作也与此类似,在根目录下的config.xml文件中,可以以无用标签的形式,插入水印密文,不影响该xml文件的正常解析。

接下来便可以下发包含软件目标运行环境的虚拟机镜像,若后续产生版权纠纷,可以通过水印鉴权的方式解决。首先在虚拟机文件系统中找到任意一处水印密文,然后利用加密水印明文时使用的公钥所对应的私钥对水印密文进行解密,便可还原出水印明文,根据水印明文的内容便可清晰地判定虚拟机版权归属,数字水印的加密解密过程示意如图3。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1