CN109784085A - 虚拟网络应用实现方法及管理系统、计算机可读存储介质 - Google Patents
虚拟网络应用实现方法及管理系统、计算机可读存储介质 Download PDFInfo
- Publication number
- CN109784085A CN109784085A CN201711130888.0A CN201711130888A CN109784085A CN 109784085 A CN109784085 A CN 109784085A CN 201711130888 A CN201711130888 A CN 201711130888A CN 109784085 A CN109784085 A CN 109784085A
- Authority
- CN
- China
- Prior art keywords
- file
- installation file
- virtual network
- safe
- network application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000009434 installation Methods 0.000 claims abstract description 115
- 238000004891 communication Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 12
- 230000008676 import Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 229910002056 binary alloy Inorganic materials 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 235000015170 shellfish Nutrition 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种虚拟网络应用实现方法及管理系统、计算机可读存储介质,用户在购买VNF时,将同时确定运行VNF的单板等硬件设备,然后将硬件设备与安装文件进行绑定,生成VNF的安全安装文件,根据安全安装文件实现VNF,在该过程中,存在安全隐患的是安全安装文件,但是由于安全安装文件仅能在绑定的硬件设备上运行,这样即便安全安装文件发生泄露,在非法硬件设备上也无法运行,解决了现有VNF的安装文件可以在任意硬件设备上运行的问题。
Description
技术领域
本发明涉及虚拟网络应用领域,尤其涉及一种虚拟网络应用实现方法及管理系统、计算机可读存储介质。
背景技术
随着NFV(Network Function Virtualization,网络功能虚拟化)技术的发展,实现特定功能的网络设备正处于一个从硬件到软件实现的演进过程,像防火墙,加速器等,这些设备正逐步的演变成一个部署在虚拟机上的软件功能。这些VNF(Virtual NetworkFunction,虚拟网络应用)在给智能网关提供了强大的虚拟增值业务和丰富的功能扩展能力的同时,也面对着安全问题,当这些VNF的License(许可文件)和镜像文件泄露等安装文件时,非法用户就可以在任何硬件设备上运行镜像文件和License等安装文件以实现VNF,将给VNF的提供商和虚拟化基础硬件造成巨大损失。
发明内容
本发明实施例提供了一种虚拟网络应用实现方法及管理系统、计算机可读存储介质,以解决现有VNF的安装文件可以在任意硬件设备上运行的问题。
为实现上述目的,本发明实施例提供一种虚拟网络应用实现方法,包括:
根据用户购买操作,确定虚拟网络应用对应的安装文件以及硬件设备;安装文件包括许可文件和镜像文件;
根据预设的安全规则,将硬件设备与安装文件进行绑定,生成安装文件对应的安全安装文件;安全安装文件仅可在绑定的硬件设备上运行;
根据用户使用操作,使用安全安装文件,实现虚拟网络应用。
本发明实施例还提供一种虚拟网络应用管理系统,其包括:处理器、存储器及通信总线,其中,
通信总线用于实现处理器和存储器之间的连接通信;
处理器用于执行存储器中存储的一个或者多个程序,以实现本发明实施例提供的虚拟网络应用实现方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现本发明实施例提供的虚拟网络应用实现方法的步骤。
本发明的有益效果是:
根据本发明实施例提供的虚拟网络应用实现方法及管理系统、计算机可读存储介质,用户在购买VNF时,将同时确定运行VNF的单板等硬件设备,然后将硬件设备与安装文件进行绑定,生成VNF的安全安装文件,根据安全安装文件实现VNF,在该过程中,存在安全隐患的是安全安装文件,但是由于安全安装文件仅能在绑定的硬件设备上运行,这样即便安全安装文件发生泄露,在非法硬件设备上也无法运行,解决了现有VNF的安装文件可以在任意硬件设备上运行的问题。
本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。
附图说明
图1为本发明实施例一提供的虚拟网络应用实现方法的流程图;
图2为本发明实施例一提供的虚拟网络应用管理系统的示意图;
图3为本发明实施例二提供的虚拟网络应用实现方法的流程图;
图4为本发明实施例三提供的虚拟网络应用实现方法的流程图;
图5为本发明实施例四提供的虚拟网络应用实现方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一:
为了解决现有VNF的安装文件可以在任意硬件设备上运行的问题,提供本实施例,请参见图1,本实施例提供的虚拟网络应用实现方法包括以下步骤:
S101:根据用户购买操作,确定虚拟网络应用对应的安装文件以及硬件设备。
在本发明中,虚拟网络应用管理系统向用户展示购买界面,用户在购买界面内购买VNF和单板等硬件设备。
虚拟网络应用管理系统根据用户的购买操作,确定用户购买的VNF以及单板等硬件设备,而根据用户购买的VNF可以确定对应的安装文件。
VNF的安装文件包括但不局限于许可文件和镜像文件。
S102:根据预设的安全规则,将硬件设备与安装文件进行绑定,生成安装文件对应的安全安装文件;安全安装文件仅可在绑定的硬件设备上运行。
在本发明中,安全规则可以包括处理对象,也可以同时包括处理对象和处理规则。
例如,当安全规则包括对许可文件进行安全处理时,本步骤S102包括:获取设备参数中的设备标识,设备标识可以为硬件设备的唯一标识,例如单板串号等单板序列号;然后绑定设备标识与许可文件,生成安全安装文件中的安全许可文件。而绑定设备标识与许可文件,生成安全许可文件可以包括:获取提供虚拟网络应用的供应商的供应商标识;获取虚拟网络应用的应用类型;对许可文件进行封装,生成封装文件;将设备标识、供应商标识和应用类型组合,生成封装文件的文件标识;对封装文件进行加密处理,并添加校验码之后,生成安全许可文件。
例如当安全规则包括对镜像文件进行安全处理时,本步骤S102可以包括:获取设备参数中的设备标识;使用设备标识对镜像文件进行加密处理,生成安全安装文件中的安全镜像文件。
在一些实施例中,当安全规则包括对镜像文件进行安全处理时,本步骤S102还可以包括:获取硬件设备的设备标识;对镜像文件进行初始加密,生成加密镜像文件和钥匙文件;使用设备标识对钥匙文件进行加密处理,生成安全钥匙文件;将加密镜像文件和安全钥匙文件,作为安全安装文件中的安全镜像文件。
在一些实施例中,合法的硬件设备设置有用于存储安全密钥的安全芯片,例如当安全规则包括对许可文件进行安全处理时,本步骤S102包括:获取安全芯片中存储的安全密钥;然后使用安全密钥加密许可文件,生成安全安装文件中的安全许可文件。
在一些实施例中,合法的硬件设备设置有用于存储安全密钥的安全芯片,例如当安全规则包括对许可文件进行安全处理时,本步骤S102包括:使用安全密钥加密许可文件,生成安全安装文件中的安全许可文件,将安全密钥写入硬件设备的安全芯片。
当安全规则包括对镜像文件进行安全处理时,本步骤S102可以包括:获取硬件设备的安全芯片中存储的安全密钥;使用安全密钥对镜像文件进行加密处理,生成安全安装文件中的安全镜像文件。
当安全规则包括对镜像文件进行安全处理时,本步骤S102可以包括:使用安全密钥对镜像文件进行加密处理,生成安全安装文件中的安全镜像文件,将安全密钥写入硬件设备的安全芯片。
在一些实施例中,本步骤S102还可以包括:对镜像文件进行初始加密,生成加密镜像文件和钥匙文件;获取硬件设备的安全芯片中存储的安全密钥,将安全密钥作为设备参数;使用安全密钥对钥匙文件进行加密处理,生成安全钥匙文件;将加密镜像文件和安全钥匙文件,作为安全安装文件中的安全镜像文件。
在一些实施例中,本步骤S102还可以包括:对镜像文件进行初始加密,生成加密镜像文件和钥匙文件;使用安全密钥对钥匙文件进行加密处理,生成安全钥匙文件;将加密镜像文件和安全钥匙文件,作为安全安装文件中的安全镜像文件;将安全密钥写入硬件设备的安全芯片。
在一些实施例中,当安全规则包括对许可文件和镜像文件进行分开存储时,本步骤S102可以包括:将安装文件中的许可文件与硬件设备进行绑定,生成安全许可文件;将安装文件中的镜像文件与硬件设备进行绑定,生成安全镜像文件;将安全许可文件存储在第一文件夹;将安全镜像文件存储在第二文件夹。
S103:根据用户使用操作,使用安全安装文件,实现虚拟网络应用。
在本发明中,虚拟网络应用管理系统向用户展示运行界面,用户在运行界面内可以选择在其购买的单板等硬件设备上,运行购买VNF。此时本步骤包括:下载安全安装文件到待工作硬件设备;使用待工作硬件设备的设备参数,对安全安装文件进行逆安全处理,生成安装文件;安装安装文件。
在一些实施例中,使用待工作硬件设备的设备参数,对安全安装文件进行逆安全处理,生成安装文件包括:
读取安全规则的内容;
当安全规则包括对许可文件进行安全处理时,获取安全安装文件内安全许可文件绑定的设备标识,使用设备标识匹配待工作硬件设备,在匹配通过时,生成许可文件;
当安全规则为对镜像文件进行安全处理时,获取安全安装文件内的安全镜像文件,读取待工作硬件设备内安全芯片存储的安全密钥,使用安全密钥对安全镜像文件进行解密,生成镜像文件。
在本实施例中,用户在购买VNF时,将同时确定运行VNF的单板等硬件设备,然后将硬件设备与安装文件进行绑定,生成VNF的安全安装文件,根据安全安装文件实现VNF,在该过程中,存在安全隐患的是安全安装文件,但是由于安全安装文件仅能在绑定的硬件设备上运行,这样即便安全安装文件发生泄露,在非法硬件设备上也无法运行,解决了现有VNF的安装文件可以在任意硬件设备上运行的问题。
为了对本发明进行更充分的描述,如图2所示,本发明实施例提供的虚拟网络应用管理系统包括:处理器21、存储器22及通信总线23,其中:
通信总线23用于实现处理器21和存储器22之间的连接通信;
处理器21用于执行存储器22中存储的一个或者多个程序,以实现本发明所有实施例提供的虚拟网络应用实现方法中的步骤。
现结合具体的运用场景对本发明做进一步的说明。
在现有技术中,为了解决VNF的安装文件的安全隐患,VNF的提供者或VNF商店运营者需要对各个厂商提供的镜像需要进行统一管理,防止License和镜像泄露。在VNF领域中,现有License和镜像的安全管理方案的基本工作原理为:由VNF提供者或VNF商店运营者的License服务器统一生成镜像的License,VNF镜像没有进行加密或者只进行了Libvirt库(实现Linux虚拟化功能的应用程序编程接口)的原生加密,然后在设备或其他硬件环境上面结合License和镜像创建VNF。
这些方式存在这样的问题:License是由网关提供者或虚拟化基础硬件提供商根据License服务进程软件生成的,没有和运行的硬件环境绑定,存在License如果被抓包或者拷贝镜像即运行的风险;在镜像的管理中没有对镜像进行二次加密,如果VNF的硬件运行环境用户名和密码由于各种原因泄露的话,即使进行了Libvirt库的Base64加密,但是由于加密依赖的文件泄露,会造成镜像泄露的风险,没有进行License和镜像的隔离管理,增加了泄露风险。
针对这些问题,本发明提供以下实施例以解决对应的技术问题,在以下实施例中,整个通信系统包括用户终端、虚拟网络应用管理系统(下文及附图中简称为管理系统)以及单板等硬件设备,每个单板都设置有独立的安全芯片。
实施例二:
请参见图3,本实施例提供的虚拟网络应用实现方法包括以下步骤:
S301:用户通过用户终端登陆管理系统,购买单板使用权限以及VNF使用权限。
S302:管理系统记录合同号和单板序列号。
例如用户购买虚拟防火墙VNF功能和单板的使用权限,VNF镜像名称为XXX_SVFW_X_V1.00.qcow2,对应的未加密的License文件为xxxx.dat格式文件。
S303:管理系统生成安全许可文件。
管理系统生成对应VNF的License并进行单板序列号绑定,License中存储有VNF对应镜像的安装和使用的相关权限,绑定序列号后进行加密和增加传输校验码,生成加密好的二进制Lic类型的文件;将加密后的Lic文件入本地库,用户取得使用权限后,可以从这里下载Lic文件到硬件环境。
在一些实施例中,为了便于用户确认,管理系统可以对Lic文件的基本信息进行解密,并将这些基本信息通过用户终端进行展示,供用户对Lic文件的基本信息进行选择。
具体的,本步骤对xxxx.dat格式的License进行封装,采用单板序列号、供应商ID、VNF类型组合成UUID作为该License的唯一标识。本例中单板串号为123456789012,供应商ID为0001 4字节16进制;该封装好的License的uuid为12345678901200002017010100010001,进行和单板串号强绑定,即使拷贝到其他硬件环境是无法运行的;封装好之后进行AES(Advanced Encryption Standard,高级加密标准)加密,并添加校验码后生成二进制的Lic文件。然后将Lic文件导入该系统,进行校验码匹配,如果通过则解密该Lic文件的基本信息并入库:解析的基本信息为uuid、创建时间、上传单板时间、供应商、VNF类型等;用于判断是否为新的License,是否需要替换、以及作为用户取得License权限的判断条件等。最后将加密后的Lic文件入本地库,统一管理,按照硬件序列号分类存储,根据用户使用的硬件序列号进行License的发送和授权处理。
S304:管理系统进行原生镜像的两次加密。
管理系统将原生镜像导入,将镜像进行Libvirt库的base64加密,生成对应UUID(Universally Unique Identifier,通用唯一识别码)的xml和base64加密秘钥等2个钥匙文件,然后使用安全密钥对生成两个文件进行加解密处理。这样通过对Libvirt加密镜像产生的两个XML文件进行二次加密,即使这两个文件被拷贝到其他硬件环境也不能被Libvirt的命令来启动虚机。
具体的,本步骤对原生的VNF镜像进行libvirt库加密,libvirt库内嵌了Base64加密,采用存储卷加密类型,编写xxx-secret.xml:
执行#virsh secret-define xxx-secret.xml,
#virsh secret-set-value xxxxxxxxx等命令,会生成xxx.xml和xxx.base64两个文件,这时候仅拷贝虚机镜像到其他设备上无法运行,由于libvirt库的加密功能依赖xxx.xml和xxx.base64两个文件实现,如果拥有root账号就可以拷贝这两个文件到其他设备,就变相实现了复制个能,所以仅仅进行Libvirt库加密还是不够的,还需要对xxx.xml和xxx.base64两个文件进行二次加密。
在生成xxx.xml和xxx.base64这两个文件后,对它们进行加密;在启动镜像之前要首先对这两个文件进行解密,然后由Libvirt对镜像进行解密成原生镜像;对libvirt加密生成的xxx.xml和xxx.base64两个文件按照设定的安全密钥进行AES加密,防止用户可以拷贝这两个文件,该加密方法为可逆对称加密,可以通过密码由密文计算出明文。即使拷贝镜像和这连个文件但是也不能运行到其他PC或设备上,因为这两个文件是加密过的,Libvirt不能对之进行解析读取。
S305:管理系统将安全密码写入单板的安全芯片。
单板等虚拟化基础硬件集成了TMP(Trusted Platform Module,可信赖平台模块)芯片等安全芯片,可以用于存储安全密钥。管理系统将二次加密所使用的安全密钥通过底层接口存入TMP芯片保存。
由于TPM安全芯片能有效地保护PC、防止非法用户访问可实现数据加密、密码保护等安能输出,而不能输入,这样加密和解密的运算在安全芯片内部完成,而只是将结果输出到上层,避免了密码被破解的机会;通过配套单板上面集成的TPM安全芯片,将安全密钥入芯片保存,将镜像和硬件环境进行强绑定。
S306:用户通过用户终端登陆管理系统,选择运行VNF。
用户通过系统界面取得License和镜像的使用权限后,选择运行VNF。
S307:管理系统下载安装文件到对应单板。
管理系统下载加密后的License文件和加密镜像到单板中,然后发起创建虚机的命令,进行安装文件的解密及安装。
S308:单板解密安装文件,并运行对应的VNF。
管理系统下载Lic文件和镜像到单板环境之后,单板发起创建虚机的命令,#virshdefine/xxx/xxx/xxxx.xml,xxxx.xml为Libvirt起虚机对应的domain xml文件,里面定义了内存、cpu、硬盘设置、光驱以及vnc等信息,然后进入解密流程。
解密流程包括以下步骤:
导入License和下载镜像到硬件环境的指定路径。
Lic匹配硬件号和合同号,将Lic文件解密,解析出硬件串号和合同号,并和硬件环境的串号进行匹配,如果不能匹配上,则不能解密出xxxx.dat类型的License文件。
如果上步骤匹配正确后,将Lic文件进行License文件的解密,并存放到指定路径。
插入TMP解密流程并取出密码,当收到virsh define的命令时插入TMP解密流程,通过底层接口取出TMP芯片中存的安全密钥。
先对加密的XML文件进行AES解密,取出密码后,对两个key文件解密,生成Libvirt库可以识别的用于解密镜像的明文sectets/xxx.xml和xxx.base64两个文件。
Libvirt库在指定路径加载sectets/xxx.xml和xxx.base64文件对解密镜像进行BASE64解密。
解密后的镜像到指定路径读取解密后的xxxx.dat文件进行匹配加载。
镜像根据指定路径加载解密后的License的dat文件完成验证后,启动虚机,根据License中的定义取得相应的安装权限、试用权限以及使用时间长短的权限提供VNF,完成整个VNF实现过程。
本实施例通过将VNF的License和用户取得的硬件串号、合同号进行绑定生成加密后的Lic文件,使得该Licesnse只能用在取得权限的硬件环境上,在别的硬件环境上无法通过检验的效果;通过将VNF的镜像Libvirt库加密后的秘钥进行二次加密,并且加密密码保存到了TMP安全芯片中,达到了即使镜像所在的宿主机用户名密码被泄露,镜像以及Libvirt加密秘钥泄露后仍然可以保证功能不被复制的效果;通过将VNF的License和镜像隔离分开加密,两套密码分别保存到了不同的地方,达到了即使License或镜像的一方泄露也不会造成该功能被拷贝运行的效果。
实施例三:
请参见图4,本实施例提供的虚拟网络应用实现方法包括以下步骤:
S401:用户通过用户终端登陆管理系统,购买单板使用权限以及VNF使用权限。
S402:管理系统记录合同号和单板序列号。
例如用户购买虚拟防火墙VNF功能和单板的使用权限,VNF镜像名称为XXX_SVFW_X_V1.00.qcow2,对应的未加密的License文件为xxxx.dat格式文件。
S403:管理系统生成安全许可文件。
管理系统生成对应VNF的License并进行单板序列号绑定,License中存储有VNF对应镜像的安装和使用的相关权限,绑定序列号后进行加密和增加传输校验码,生成加密好的二进制Lic类型的文件;将加密后的Lic文件入本地库,用户取得使用权限后,可以从这里下载Lic文件到硬件环境。
在一些实施例中,为了便于用户确认,管理系统可以对Lic文件的基本信息进行解密,并将这些基本信息通过用户终端进行展示,供用户对Lic文件的基本信息进行选择。
具体的,本步骤对xxxx.dat格式的License进行封装,采用单板序列号、供应商ID、VNF类型组合成UUID作为该License的唯一标识。本例中单板串号为123456789012,供应商ID为0001 4字节16进制;该封装好的License的uuid为12345678901200002017010100010001,进行和单板串号强绑定,即使拷贝到其他硬件环境是无法运行的;封装好之后进行AES加密,并添加校验码后生成二进制的Lic文件。然后将Lic文件导入该系统,进行校验码匹配,如果通过则解密该Lic文件的基本信息并入库:解析的基本信息为uuid、创建时间、上传单板时间、供应商、VNF类型等;用于判断是否为新的License,是否需要替换、以及作为用户取得License权限的判断条件等。最后将加密后的Lic文件入本地库,统一管理,按照硬件序列号分类存储,根据用户使用的硬件序列号进行License的发送和授权处理。
S404:管理系统进行原生镜像的两次加密。
管理系统将原生镜像导入,将镜像进行Libvirt库的base64加密,生成对应UUID的xml和base64加密秘钥等2个钥匙文件,然后使用单板序列号对生成两个文件进行加解密处理。这样通过对Libvirt加密镜像产生的两个XML文件进行二次加密,即使这两个文件被拷贝到其他硬件环境也不能被Libvirt的命令来启动虚机。
S405:用户通过用户终端登陆管理系统,选择运行VNF。
用户通过系统界面取得License和镜像的使用权限后,选择运行VNF。
S406:管理系统下载安装文件到对应单板并解密。
管理系统下载加密后的License文件和加密镜像到单板中,然后发起创建虚机的命令,进行安装文件的解密及安装。
S407:单板解密安装文件,并运行对应的VNF。
管理系统下载Lic文件和镜像到单板环境之后,单板发起创建虚机的命令,#virshdefine/xxx/xxx/xxxx.xml,xxxx.xml为Libvirt起虚机对应的domain xml文件,里面定义了内存、cpu、硬盘设置、光驱以及vnc等信息,然后进入解密流程。
解密流程包括以下步骤:
导入License和下载镜像到硬件环境的指定路径。
Lic匹配硬件号和合同号,将Lic文件解密,解析出硬件串号和合同号,并和硬件环境的串号进行匹配,如果不能匹配上,则不能解密出xxxx.dat类型的License文件。
如果上步骤匹配正确后,将Lic文件进行License文件的解密,并存放到指定路径。
对加密的XML文件进行AES解密,使用单板序列号对两个key文件解密,生成Libvirt库可以识别的用于解密镜像的明文sectets/xxx.xml和xxx.base64两个文件。
Libvirt库在指定路径加载sectets/xxx.xml和xxx.base64文件对解密镜像进行BASE64解密。
解密后的镜像到指定路径读取解密后的xxxx.dat文件进行匹配加载。
镜像根据指定路径加载解密后的License的dat文件完成验证后,启动虚机,根据License中的定义取得相应的安装权限、试用权限以及使用时间长短的权限提供VNF,完成整个VNF实现过程。
实施例四:
请参见图5,本实施例提供的虚拟网络应用实现方法包括以下步骤:
S501:用户通过用户终端登陆管理系统,购买单板使用权限以及VNF使用权限。
S502:管理系统记录合同号和单板序列号。
例如用户购买虚拟防火墙VNF功能和单板的使用权限,VNF镜像名称为XXX_SVFW_X_V1.00.qcow2,对应的未加密的License文件为xxxx.dat格式文件。
S503:管理系统生成安全许可文件。
管理系统生成对应VNF的License,并使用安全密钥进行加密和增加传输校验码,生成加密好的二进制Lic类型的文件;将加密后的Lic文件入本地库,用户取得使用权限后,可以从这里下载Lic文件到硬件环境。
具体的,本步骤对xxxx.dat格式的License进行封装,采用单板序列号、供应商ID、VNF类型组合成UUID作为该License的唯一标识。本例中单板串号为123456789012,供应商ID为0001 4字节16进制;该封装好的License的uuid为12345678901200002017010100010001,进行和单板串号强绑定,即使拷贝到其他硬件环境是无法运行的;封装好之后进行使用安全密钥进行AES加密,并添加校验码后生成二进制的Lic文件。然后将Lic文件导入该系统,进行校验码匹配,如果通过则解密该Lic文件的基本信息并入库:解析的基本信息为uuid、创建时间、上传单板时间、供应商、VNF类型等;用于判断是否为新的License,是否需要替换、以及作为用户取得License权限的判断条件等。最后将加密后的Lic文件入本地库,统一管理,按照硬件序列号分类存储,根据用户使用的硬件序列号进行License的发送和授权处理。
S504:管理系统进行原生镜像的两次加密。
管理系统将原生镜像导入,将镜像进行Libvirt库的base64加密,生成对应UUID(Universally Unique Identifier,通用唯一识别码)的xml和base64加密秘钥等2个钥匙文件,然后使用安全密钥对生成两个文件进行加解密处理。这样通过对Libvirt加密镜像产生的两个XML文件进行二次加密,即使这两个文件被拷贝到其他硬件环境也不能被Libvirt的命令来启动虚机。
S505:管理系统将安全密码写入单板的安全芯片。
单板等虚拟化基础硬件集成了TMP(Trusted Platform Module,可信赖平台模块)芯片等安全芯片,可以用于存储安全密钥。管理系统将二次加密所使用的安全密钥通过底层接口存入TMP芯片保存。
S506:用户通过用户终端登陆管理系统,选择运行VNF。
用户通过系统界面取得License和镜像的使用权限后,选择运行VNF。
S507:管理系统下载安装文件到对应单板并解密。
管理系统下载加密后的License文件和加密镜像到单板中,然后发起创建虚机的命令,进行安装文件的解密及安装。
S508:单板解密安装文件,并运行对应的VNF。
管理系统下载Lic文件和镜像到单板环境之后,单板发起创建虚机的命令,#virshdefine/xxx/xxx/xxxx.xml,xxxx.xml为Libvirt起虚机对应的domain xml文件,里面定义了内存、cpu、硬盘设置、光驱以及vnc等信息,然后进入解密流程。
解密流程包括以下步骤:
导入License和下载镜像到硬件环境的指定路径。
Lic匹配硬件号和合同号,读取单板内存储的安全密钥将Lic文件解密,解析出硬件串号和合同号,并和硬件环境的串号进行匹配,如果不能匹配上,则不能解密出xxxx.dat类型的License文件。
如果上步骤匹配正确后,将Lic文件进行License文件的解密,并存放到指定路径。
插入TMP解密流程并取出密码,当收到virsh define的命令时插入TMP解密流程,通过底层接口取出TMP芯片中存的安全密钥。
鉴对加密的XML文件进行AES解密,取出密码后,对两个key文件解密,生成Libvirt库可以识别的用于解密镜像的明文sectets/xxx.xml和xxx.base64两个文件。
Libvirt库在指定路径加载sectets/xxx.xml和xxx.base64文件对解密镜像进行BASE64解密。
解密后的镜像到指定路径读取解密后的xxxx.dat文件进行匹配加载。
镜像根据指定路径加载解密后的License的dat文件完成验证后,启动虚机,根据License中的定义取得相应的安装权限、试用权限以及使用时间长短的权限提供VNF,完成整个VNF实现过程。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序被执行,以实现本发明所有实施例所提供的方法的步骤。
综上可知,通过本发明实施例的实施,至少存在以下有益效果:
根据本发明实施例提供的虚拟网络应用实现方法及管理系统、计算机可读存储介质,用户在购买VNF时,将同时确定运行VNF的单板等硬件设备,然后将硬件设备与安装文件进行绑定,生成VNF的安全安装文件,根据安全安装文件实现VNF,在该过程中,存在安全隐患的是安全安装文件,但是由于安全安装文件仅能在绑定的硬件设备上运行,这样即便安全安装文件发生泄露,在非法硬件设备上也无法运行,解决了现有VNF的安装文件可以在任意硬件设备上运行的问题。
显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(ROM/RAM、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种虚拟网络应用实现方法,其特征在于,包括:
根据用户购买操作,确定虚拟网络应用对应的安装文件以及硬件设备;所述安装文件包括许可文件和镜像文件;
根据预设的安全规则,将所述硬件设备与所述安装文件进行绑定,生成所述安装文件对应的安全安装文件;所述安全安装文件仅可在绑定的硬件设备上运行;
根据用户使用操作,使用所述安全安装文件,实现所述虚拟网络应用。
2.如权利要求1所述的虚拟网络应用实现方法,其特征在于,当所述安全规则包括对所述许可文件进行安全处理时,将所述硬件设备与所述安装文件进行绑定,生成所述安装文件对应的安全安装文件包括:
获取所述硬件设备的设备标识;
绑定所述设备标识与所述许可文件,生成所述安全安装文件中的安全许可文件。
3.如权利要求2所述的虚拟网络应用实现方法,其特征在于,所述绑定所述设备标识与所述许可文件,生成所述安全许可文件包括:
获取提供所述虚拟网络应用的供应商的供应商标识;
获取所述虚拟网络应用的应用类型;
对所述许可文件进行封装,生成封装文件;
将所述设备标识、供应商标识和应用类型组合,生成所述封装文件的文件标识;
对所述封装文件进行加密处理,并添加校验码之后,生成所述安全许可文件。
4.如权利要求1所述的虚拟网络应用实现方法,其特征在于,所述硬件设备设置有用于存储安全密钥的安全芯片,当所述安全规则包括对所述镜像文件进行安全处理时,将所述硬件设备与所述安装文件进行绑定,生成所述安装文件对应的安全安装文件包括:
使用安全密钥对镜像文件进行加密处理,生成所述安全安装文件中的安全镜像文件;
将所述安全密钥写入所述硬件设备的安全芯片。
5.如权利要求1所述的虚拟网络应用实现方法,其特征在于,所述硬件设备设置有用于存储安全密钥的安全芯片,当所述安全规则包括对所述镜像文件进行安全处理时,将所述硬件设备与所述安装文件进行绑定,生成所述安装文件对应的安全安装文件包括:
对所述镜像文件进行初始加密,生成加密镜像文件和钥匙文件;
使用安全密钥对钥匙文件进行加密处理,生成安全钥匙文件;
将所述加密镜像文件和安全钥匙文件,作为所述安全安装文件中的安全镜像文件;
将所述安全密钥写入所述硬件设备的安全芯片。
6.如权利要求1所述的虚拟网络应用实现方法,其特征在于,当所述安全规则包括对所述许可文件和所述镜像文件进行分开存储时,将所述硬件设备与所述安装文件进行绑定,生成所述安装文件对应的安全安装文件包括:
将所述安装文件中的许可文件与所述硬件设备进行绑定,生成安全许可文件;
将所述安装文件中的镜像文件与所述硬件设备进行绑定,生成安全镜像文件;
将所述安全许可文件存储在第一文件夹;将所述安全镜像文件存储在第二文件夹。
7.如权利要求1至6任一项所述的虚拟网络应用实现方法,其特征在于,所述使用所述安全安装文件实现所述虚拟网络应用包括:
下载所述安全安装文件到待工作硬件设备;
使用所述待工作硬件设备的设备参数,对所述安全安装文件进行逆安全处理,生成安装文件;
安装所述安装文件。
8.如权利要求7所述的虚拟网络应用实现方法,其特征在于,所述使用所述待工作硬件设备的设备参数,对所述安全安装文件进行逆安全处理,生成安装文件包括:
读取所述安全规则的内容;
当所述安全规则包括对所述许可文件进行安全处理时,获取所述安全安装文件内安全许可文件绑定的设备标识,使用所述设备标识匹配所述待工作硬件设备,在匹配通过时,生成许可文件;
当所述安全规则为对所述镜像文件进行安全处理时,获取所述安全安装文件内的安全镜像文件,读取所述待工作硬件设备内安全芯片存储的安全密钥,使用所述安全密钥对所述安全镜像文件进行解密,生成镜像文件。
9.一种虚拟网络应用管理系统,其特征在于,包括:处理器、存储器及通信总线,其中,
所述通信总线用于实现所述处理器和所述存储器之间的连接通信;
所述处理器用于执行所述存储器中存储的一个或者多个程序,以实现如权利要求1至8任一项所述的虚拟网络应用实现方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至8任一项所述的虚拟网络应用实现方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711130888.0A CN109784085B (zh) | 2017-11-15 | 2017-11-15 | 虚拟网络应用实现方法及管理系统、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711130888.0A CN109784085B (zh) | 2017-11-15 | 2017-11-15 | 虚拟网络应用实现方法及管理系统、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109784085A true CN109784085A (zh) | 2019-05-21 |
CN109784085B CN109784085B (zh) | 2023-10-27 |
Family
ID=66495142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711130888.0A Active CN109784085B (zh) | 2017-11-15 | 2017-11-15 | 虚拟网络应用实现方法及管理系统、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109784085B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149775A (zh) * | 2006-09-20 | 2008-03-26 | 展讯通信(上海)有限公司 | 实现硬件和软件绑定的加密和解密方法 |
CN101441692A (zh) * | 2008-11-21 | 2009-05-27 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
CN102999711A (zh) * | 2011-09-19 | 2013-03-27 | 中国电信股份有限公司 | 应用版权保护方法、网络平台及系统 |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
CN104134122A (zh) * | 2014-07-30 | 2014-11-05 | 华为技术有限公司 | 一种许可证申请方法及装置 |
CN104253866A (zh) * | 2014-09-20 | 2014-12-31 | 华为技术有限公司 | 虚拟网络功能网元的软件部署方法、系统及相关设备 |
WO2016015207A1 (zh) * | 2014-07-28 | 2016-02-04 | 华为技术有限公司 | 一种信息安全验证方法及设备 |
CN105450601A (zh) * | 2014-08-19 | 2016-03-30 | 华为技术有限公司 | 共享许可证的方法和装置 |
CN105577381A (zh) * | 2014-10-24 | 2016-05-11 | 中兴通讯股份有限公司 | 虚拟化下的证书管理方法和装置 |
CN105634778A (zh) * | 2014-11-04 | 2016-06-01 | 中兴通讯股份有限公司 | 实现vnf实例化的方法、系统及nfvo和vnfm |
US20160226663A1 (en) * | 2015-01-30 | 2016-08-04 | Ciena Corporation | Dynamic licensing for applications and plugin framework for virtual network systems |
CN106170763A (zh) * | 2015-01-07 | 2016-11-30 | 华为技术有限公司 | 一种软件校验方法和装置 |
US20170104609A1 (en) * | 2015-10-09 | 2017-04-13 | Openet Telecom Ltd. | System and Method for Enabling Service Lifecycle Based Policy, Licensing, and Charging in a Network Function Virtualization Ecosystem |
CN107251514A (zh) * | 2015-02-04 | 2017-10-13 | 英特尔公司 | 用于虚拟化网络的可扩缩安全架构的技术 |
CN109284586A (zh) * | 2018-08-27 | 2019-01-29 | 武汉达梦数据库有限公司 | 一种软件授权许可实现方法和装置 |
-
2017
- 2017-11-15 CN CN201711130888.0A patent/CN109784085B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149775A (zh) * | 2006-09-20 | 2008-03-26 | 展讯通信(上海)有限公司 | 实现硬件和软件绑定的加密和解密方法 |
CN101441692A (zh) * | 2008-11-21 | 2009-05-27 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
CN102999711A (zh) * | 2011-09-19 | 2013-03-27 | 中国电信股份有限公司 | 应用版权保护方法、网络平台及系统 |
CN103258151A (zh) * | 2012-10-30 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 一种实时授权的软件License控制方法 |
WO2016015207A1 (zh) * | 2014-07-28 | 2016-02-04 | 华为技术有限公司 | 一种信息安全验证方法及设备 |
CN104134122A (zh) * | 2014-07-30 | 2014-11-05 | 华为技术有限公司 | 一种许可证申请方法及装置 |
WO2016015558A1 (zh) * | 2014-07-30 | 2016-02-04 | 华为技术有限公司 | 一种许可证申请方法及装置 |
CN105450601A (zh) * | 2014-08-19 | 2016-03-30 | 华为技术有限公司 | 共享许可证的方法和装置 |
US20170161470A1 (en) * | 2014-08-19 | 2017-06-08 | Huawei Technologies Co., Ltd. | License Sharing Method and Apparatus |
CN104253866A (zh) * | 2014-09-20 | 2014-12-31 | 华为技术有限公司 | 虚拟网络功能网元的软件部署方法、系统及相关设备 |
CN105577381A (zh) * | 2014-10-24 | 2016-05-11 | 中兴通讯股份有限公司 | 虚拟化下的证书管理方法和装置 |
CN105634778A (zh) * | 2014-11-04 | 2016-06-01 | 中兴通讯股份有限公司 | 实现vnf实例化的方法、系统及nfvo和vnfm |
CN106170763A (zh) * | 2015-01-07 | 2016-11-30 | 华为技术有限公司 | 一种软件校验方法和装置 |
US20160226663A1 (en) * | 2015-01-30 | 2016-08-04 | Ciena Corporation | Dynamic licensing for applications and plugin framework for virtual network systems |
CN107251514A (zh) * | 2015-02-04 | 2017-10-13 | 英特尔公司 | 用于虚拟化网络的可扩缩安全架构的技术 |
US20170104609A1 (en) * | 2015-10-09 | 2017-04-13 | Openet Telecom Ltd. | System and Method for Enabling Service Lifecycle Based Policy, Licensing, and Charging in a Network Function Virtualization Ecosystem |
CN109284586A (zh) * | 2018-08-27 | 2019-01-29 | 武汉达梦数据库有限公司 | 一种软件授权许可实现方法和装置 |
Non-Patent Citations (2)
Title |
---|
苏坚;肖子玉;: "NFV中虚拟化网络功能生命周期安全管理措施", 电信科学, no. 11, pages 127 - 133 * |
郭志斌;陈扬帆;刘露;: "NFV安全需术及应对策略", 电信科学, no. 03, pages 39 - 42 * |
Also Published As
Publication number | Publication date |
---|---|
CN109784085B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2267628B1 (en) | Token passing technique for media playback devices | |
US8924727B2 (en) | Technologies labeling diverse content | |
JP4366037B2 (ja) | 暗号化された媒体へのアクセス権を制御・行使するシステム及び方法 | |
US11316839B2 (en) | Proof-of-work key wrapping for temporally restricting data access | |
US11411938B2 (en) | Proof-of-work key wrapping with integrated key fragments | |
EP2095288B1 (en) | Method for the secure storing of program state data in an electronic device | |
US20100257370A1 (en) | Apparatus And Method for Supporting Content Exchange Between Different DRM Domains | |
US11303437B2 (en) | Proof-of-work key wrapping with key thresholding | |
US11424920B2 (en) | Proof-of-work key wrapping for cryptographically controlling data access | |
US11271734B2 (en) | Proof-of-work key wrapping for verifying device capabilities | |
WO2014196966A1 (en) | Technologies for hardening the security of digital information on client platforms | |
EP1580663A1 (en) | A method for realizing security data storage and algorithm storage by means of semiconductor memory device | |
WO2006043784A1 (en) | Apparatus and method for supporting content exchange between different drm domains | |
US11436352B2 (en) | Proof-of-work key wrapping for restricting data execution based on device capabilities | |
CN108416224B (zh) | 一种数据加解密方法及装置 | |
WO2017137481A1 (en) | A removable security device and a method to prevent unauthorized exploitation and control access to files | |
CN100550735C (zh) | 多功能智能密钥设备及其安全控制的方法 | |
CN111698087B (zh) | 一种微型密码机及信息处理方法 | |
CN109784085A (zh) | 虚拟网络应用实现方法及管理系统、计算机可读存储介质 | |
CN116781292A (zh) | 一种数据处理方法、装置、设备以及可读存储介质 | |
EP4238083A1 (en) | Secure key exchange using key-associated attributes | |
Bakker | Mutual authentication with smart cards | |
US11411728B2 (en) | Proof-of-work key wrapping with individual key fragments | |
KR20180043679A (ko) | 게이트웨이 서버와 연동된 클라우드 저장소 서버에서 drm 기능을 제공하는 방법 | |
TW202411866A (zh) | 檔案加密方法與裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |