CN110750326A - 一种虚拟机的磁盘加解密方法以及系统 - Google Patents

一种虚拟机的磁盘加解密方法以及系统 Download PDF

Info

Publication number
CN110750326A
CN110750326A CN201910824236.XA CN201910824236A CN110750326A CN 110750326 A CN110750326 A CN 110750326A CN 201910824236 A CN201910824236 A CN 201910824236A CN 110750326 A CN110750326 A CN 110750326A
Authority
CN
China
Prior art keywords
virtual machine
key
encryption
public key
generating
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
Application number
CN201910824236.XA
Other languages
English (en)
Other versions
CN110750326B (zh
Inventor
张辉
卢志荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Centerm Information Co Ltd
Original Assignee
Fujian Centerm Information Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujian Centerm Information Co Ltd filed Critical Fujian Centerm Information Co Ltd
Priority to CN201910824236.XA priority Critical patent/CN110750326B/zh
Publication of CN110750326A publication Critical patent/CN110750326A/zh
Application granted granted Critical
Publication of CN110750326B publication Critical patent/CN110750326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种虚拟机的磁盘加解密方法,通过密码卡产生一对公钥和私钥,上传所述公钥;将公钥存储至数据库中,之后生成公钥ID;创建虚拟机,生成虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密;本发明还提供一种虚拟机的磁盘加解密系统;不影响原有的虚拟化架构,既能够对虚拟机进行加密保护,同时又能够保证一机一密钥。

Description

一种虚拟机的磁盘加解密方法以及系统
技术领域
本发明涉及一种虚拟机的磁盘加解密方法以及系统。
背景技术
虚拟化技术就其本质而言属于一种资源管理技术,它将硬件、软件、网络、存储等硬件设备隔离开来,使用户能更合理更充分的控制与管理各种资源。虚拟机:由于虚拟化平台创建虚拟机,都会生成相应的磁盘,并且磁盘都是未进行加密的,从而会导致如果磁盘文件被泄露或者被攻击后,磁盘中存储的用户数据会以明文的形式展示,特别是对于用户来说其中重要的数据也会遭到泄露。因而现有的虚拟化技术方案上无法满足对虚拟机磁盘进行安全保护的效果。
为了解决上述问题,本发明实现了一个能够对用户透明的,不影响原有的虚拟化架构,既能够对虚拟机进行加密保护,同时又能够保证一机一密钥的方法。
发明内容
本发明要解决的技术问题,在于提供一种虚拟机的磁盘加解密方法以及系统,不影响原有的虚拟化架构,既能够对虚拟机进行加密保护,同时又能够保证一机一密钥。
本发明之一是这样实现的:一种虚拟机的磁盘加解密方法,包括:
步骤1、通过密码卡产生一对公钥和私钥,上传所述公钥;
步骤2、将公钥存储至数据库中,之后生成公钥ID;
步骤3、创建虚拟机,生成虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
步骤4、通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
步骤5、将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
进一步地,所述步骤3进一步具体为:创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID。
本发明之二是这样实现的:一种虚拟机的磁盘加解密系统,包括:
密钥对生成模块,通过密码卡产生一对公钥和私钥;
公钥存储模块,将公钥存储至数据库中,之后生成公钥ID;
虚机密钥生成模块,创建虚拟机,生成虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
虚机密钥加密模块,通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
加解密模块,将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
进一步地,所述虚机密钥生成模块进一步具体为:创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID。
本发明具有如下优点:本发明可以透明的实现对虚拟机磁盘的加解密,同时保证了一机一密钥的加密方式。比如当虚拟机磁盘被泄露或者被恶意攻击后,磁盘都是加密的,磁盘中的重要数据不会外泄,提升安全性。同时通过加密的方式,又能够避免手动更改磁盘文件内容,导致恶意文件上传引入脏数据。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明虚拟机加解密时序图。
具体实施方式
本发明虚拟机的磁盘加解密方法,包括:
步骤1、通过密码卡产生一对公钥和私钥,上传所述公钥;
步骤2、将公钥存储至数据库中,之后生成公钥ID;
步骤3、创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
步骤4、通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
步骤5、将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
本发明虚拟机的磁盘加解密系统,包括:
密钥对生成模块,通过密码卡产生一对公钥和私钥;
公钥存储模块,将公钥存储至数据库中,之后生成公钥ID;
虚机密钥生成模块,创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
虚机密钥加密模块,通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
加解密模块,将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
本发明一种具体实施方式:
本发明由以下部分组成:“密管配置模块”、“虚机密钥分发”、“公钥加密密钥分发”。
密管配置模块,用于对密管系统和密码卡进行初始化、以及获取密码卡ID、产生公钥私钥对。
虚机密钥分发,虚机密钥是用于对虚拟机的磁盘进行加解密。进行磁盘写操作时使用虚机密钥进行磁盘加密;进行磁盘读操作时使用虚机密钥进行磁盘解密。每个虚拟机都有一个唯一的虚机密钥。
公钥加密密钥分发,公钥加密密钥是将虚机密钥用公钥进行加密,然后分发给管理中心,保证虚机密钥传输过程中的安全性。
如图1所示,总体流程:本发明是利用密管系统提供的SM2、SM4加密算法的功能对虚拟机进行加解密。在初始化时会在密码卡生成公钥私钥对(SM2),并且将公钥ID分发给管理中心。管理中心创建虚拟机时密管系统通过虚机标识生成唯一虚机密钥并且将虚机密钥ID分发给管理中心。管理中心再使用公钥ID和虚机密钥ID在密管系统中获得加密密钥。管理中心将加密密钥分发给密码卡,由密码卡对虚拟机的磁盘进行加解密(SM4)。
步骤1.在使用了密管的虚拟化管理中心系统中,先进行密管系统的初始化、密码卡产生公钥私钥对。(公钥用来对虚机密钥进行加密,对外仅提供公钥ID;私钥用于对公钥加密信息进行解密,不对外提供任何ID标识)。管理中心调用接口将密码卡公钥上报给密管系统,密管系统返回公钥ID。该步骤仅在初始化时使用。
步骤2.管理中心创建虚拟机时通过传递虚拟机的唯一标识在密管系统生成虚机对应的唯一密钥并且将虚机密钥ID(虚机密钥ID是与密管系统的虚机密钥一一对应的标识,由于传递给密管系统的是每台虚拟机的唯一标识,因此每个虚机密钥都是唯一的,实现了一机一密钥的安全性保证)回传给管理中心。执行步骤3。
步骤3.管理中心使用公钥ID和虚机密钥ID调用密管系统的接口,密管系统中会使用公钥来加密虚机密钥并将加密后的密钥回传给管理中心。执行步骤4。
步骤4.管理中心得到加密密钥并分发给密码卡,密码卡使用私钥对加密密钥进行解密获取到虚机密钥明文,然后使用虚机密钥明文对虚拟机的磁盘进行加解密。
利用以上的步骤,可以用密码卡的公私钥和密管系统的虚机密钥对虚拟机磁盘进行加解密,并且每台虚拟机的虚机密钥都是唯一的,保证一机一密钥的安全性。
同时对于虚拟机磁盘的加解密,对用户不可见。使整个加解密过程是一个用户无感知的透明的动作。提升用户体验。
本发明的关键步骤:主要是在1)步骤2生成一机一密钥的虚机密钥并且返回虚机密钥ID,2)步骤3对虚机密钥使用公钥进行加密保证安全性,3)所有的公私钥和虚机密钥都保存在密管系统和密码卡中,对于外部系统是不可见的,对外仅暴露了对应的公钥ID,虚机密钥ID等标识。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

Claims (4)

1.一种虚拟机的磁盘加解密方法,其特征在于:包括:
步骤1、通过密码卡产生一对公钥和私钥,上传所述公钥;
步骤2、将公钥存储至数据库中,之后生成公钥ID;
步骤3、创建虚拟机,生成虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
步骤4、通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
步骤5、将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
2.根据权利要求1所述的一种虚拟机加密方法,其特征在于:所述步骤3进一步具体为:创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID。
3.一种虚拟机的磁盘加解密系统,其特征在于:包括:
密钥对生成模块,通过密码卡产生一对公钥和私钥;
公钥存储模块,将公钥存储至数据库中,之后生成公钥ID;
虚机密钥生成模块,创建虚拟机,生成虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID;
虚机密钥加密模块,通过生成的公钥ID以及虚机密钥ID从数据库中提取公钥以及虚机密钥,采用公钥对虚机密钥进行加密,得到加密密钥;
加解密模块,将加密密钥发送至密码卡,密码卡通过私钥进行解密得到虚机密钥,对虚拟机的磁盘进行加解密。
4.根据权利要求3所述的一种虚拟机加密系统,其特征在于:所述虚机密钥生成模块进一步具体为:创建虚拟机,根据虚拟机的唯一标识生成该虚拟机对应的虚机密钥,存储至数据库中,并生成虚机密钥ID。
CN201910824236.XA 2019-09-02 2019-09-02 一种虚拟机的磁盘加解密方法以及系统 Active CN110750326B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910824236.XA CN110750326B (zh) 2019-09-02 2019-09-02 一种虚拟机的磁盘加解密方法以及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910824236.XA CN110750326B (zh) 2019-09-02 2019-09-02 一种虚拟机的磁盘加解密方法以及系统

Publications (2)

Publication Number Publication Date
CN110750326A true CN110750326A (zh) 2020-02-04
CN110750326B CN110750326B (zh) 2022-10-14

Family

ID=69276024

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910824236.XA Active CN110750326B (zh) 2019-09-02 2019-09-02 一种虚拟机的磁盘加解密方法以及系统

Country Status (1)

Country Link
CN (1) CN110750326B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112003881A (zh) * 2020-10-28 2020-11-27 湖南天琛信息科技有限公司 一种基于私有云的安全云手机系统
CN116383858A (zh) * 2023-06-05 2023-07-04 中电科网络安全科技股份有限公司 一种磁盘数据处理方法、装置、设备及介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101950347A (zh) * 2010-09-21 2011-01-19 烟台海颐软件股份有限公司 一种对数据进行加密的方法和系统
CN102726027A (zh) * 2011-12-28 2012-10-10 华为技术有限公司 虚拟机全盘加密下预启动时的密钥传输方法和设备
CN102932459A (zh) * 2012-11-05 2013-02-13 广州杰赛科技股份有限公司 一种虚拟机的安全控制方法
CN103023920A (zh) * 2012-12-27 2013-04-03 华为技术有限公司 虚拟机安全保护方法及装置
US20130227296A1 (en) * 2012-02-23 2013-08-29 Hon Hai Precision Industry Co., Ltd. Virtual machine operation security system and method
CN104104692A (zh) * 2014-08-05 2014-10-15 山东中孚信息产业股份有限公司 一种虚拟机加密方法、解密方法及加解密控制系统
CN106789969A (zh) * 2016-12-06 2017-05-31 福建升腾资讯有限公司 一种使用虚拟现实设备实现保密数据输入的方法及系统
CN106936797A (zh) * 2015-12-31 2017-07-07 北京网御星云信息技术有限公司 一种云中虚拟机磁盘及文件加密密钥的管理方法和系统
CN107357631A (zh) * 2017-07-17 2017-11-17 郑州云海信息技术有限公司 一种管理虚拟机密钥的方法和装置及计算机可读存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101950347A (zh) * 2010-09-21 2011-01-19 烟台海颐软件股份有限公司 一种对数据进行加密的方法和系统
CN102726027A (zh) * 2011-12-28 2012-10-10 华为技术有限公司 虚拟机全盘加密下预启动时的密钥传输方法和设备
US20130227296A1 (en) * 2012-02-23 2013-08-29 Hon Hai Precision Industry Co., Ltd. Virtual machine operation security system and method
CN102932459A (zh) * 2012-11-05 2013-02-13 广州杰赛科技股份有限公司 一种虚拟机的安全控制方法
CN103023920A (zh) * 2012-12-27 2013-04-03 华为技术有限公司 虚拟机安全保护方法及装置
CN104104692A (zh) * 2014-08-05 2014-10-15 山东中孚信息产业股份有限公司 一种虚拟机加密方法、解密方法及加解密控制系统
CN106936797A (zh) * 2015-12-31 2017-07-07 北京网御星云信息技术有限公司 一种云中虚拟机磁盘及文件加密密钥的管理方法和系统
CN106789969A (zh) * 2016-12-06 2017-05-31 福建升腾资讯有限公司 一种使用虚拟现实设备实现保密数据输入的方法及系统
CN107357631A (zh) * 2017-07-17 2017-11-17 郑州云海信息技术有限公司 一种管理虚拟机密钥的方法和装置及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZVIKA BRAKERSKI 等: "Function-Private Functional Encryption in the Private-Key Setting", 《JOURNAL OF CRYPTOLOGY VOLUME》 *
樊文生 等: "基于分片的云虚拟机安全保护技术", 《通信技术》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112003881A (zh) * 2020-10-28 2020-11-27 湖南天琛信息科技有限公司 一种基于私有云的安全云手机系统
CN116383858A (zh) * 2023-06-05 2023-07-04 中电科网络安全科技股份有限公司 一种磁盘数据处理方法、装置、设备及介质
CN116383858B (zh) * 2023-06-05 2023-10-20 中电科网络安全科技股份有限公司 一种磁盘数据处理方法、装置、设备及介质

Also Published As

Publication number Publication date
CN110750326B (zh) 2022-10-14

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
US9760721B2 (en) Secure transaction method from a non-secure terminal
EP3574622B1 (en) Addressing a trusted execution environment
CN112929172B (zh) 基于密钥库动态加密数据的系统、方法及装置
CN111448779B (zh) 用于混合秘密共享的系统、设备和方法
CN107465689B (zh) 云环境下的虚拟可信平台模块的密钥管理系统及方法
CN110650010B (zh) 一种非对称密钥中的私钥生成和使用方法、装置和设备
CN103069428B (zh) 不可信云基础设施中的安全虚拟机引导
CN108418817B (zh) 一种加密方法及装置
CN107453880B (zh) 一种云数据安全存储方法和系统
CN104253694A (zh) 一种用于网络数据传输的保密方法
CN108199847B (zh) 数字安全处理方法、计算机设备及存储介质
CN110235134B (zh) 使用洁净室供应来寻址可信执行环境
CN103378971A (zh) 一种数据加密系统及方法
CN104270242A (zh) 一种用于网络数据加密传输的加解密装置
CN108810022A (zh) 一种加密方法、解密方法及装置
CA3056814A1 (en) Symmetric cryptographic method and system and applications thereof
US11783091B2 (en) Executing entity-specific cryptographic code in a cryptographic coprocessor
CN110750326B (zh) 一种虚拟机的磁盘加解密方法以及系统
JP2000347566A (ja) コンテンツ管理装置、コンテンツ利用者端末及びプログラムを記録したコンピュータ読み取り可能な記録媒体
CN115422570A (zh) 一种分布式存储的数据处理方法及系统
EP3010173B1 (en) Key storage device, key storage method, and program therefor
US20210111901A1 (en) Executing entity-specific cryptographic code in a trusted execution environment
KR100769439B1 (ko) 공개 키 기반 구조 기술 기반의 키 프로파일 기법을 이용한 데이터베이스 보안 시스템
JP2001125481A (ja) 暗号通信端末、暗号通信センター装置及び暗号通信システム並びに記録媒体

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