CN104780048B - 一种轻量级的镜像文件加密系统和方法 - Google Patents

一种轻量级的镜像文件加密系统和方法 Download PDF

Info

Publication number
CN104780048B
CN104780048B CN201510173735.9A CN201510173735A CN104780048B CN 104780048 B CN104780048 B CN 104780048B CN 201510173735 A CN201510173735 A CN 201510173735A CN 104780048 B CN104780048 B CN 104780048B
Authority
CN
China
Prior art keywords
piecemeal
image file
key
encryption
mapping table
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.)
Active
Application number
CN201510173735.9A
Other languages
English (en)
Other versions
CN104780048A (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.)
CETC 28 Research Institute
Original Assignee
CETC 28 Research Institute
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 CETC 28 Research Institute filed Critical CETC 28 Research Institute
Priority to CN201510173735.9A priority Critical patent/CN104780048B/zh
Publication of CN104780048A publication Critical patent/CN104780048A/zh
Application granted granted Critical
Publication of CN104780048B publication Critical patent/CN104780048B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种轻量级的镜像文件加密系统和方法,属于计算机云计算技术领域,对云计算系统中的镜像文件进行加密存储以及管理。加密系统包括密钥管理模块、镜像文件分块管理模块、加解密模块、伪分块管理模块、数据库以及后台存储系统。加密方法包括密钥获取阶段、镜像文件分块阶段、镜像文件存放阶段、镜像文件读取阶段、伪分块维护阶段。镜像文件分块管理模块对所有镜像文件进行等量切分,然后通过加密分块映射表保护镜像文件。在保证镜像文件安全性的同时,具有较低的加解密时间开销。同时,通过在空闲存储空间中创建和管理伪分块,进一步降低了暴力破解的可能性,提高了安全性。适用于任何涉及到镜像文件管理的云计算系统。

Description

一种轻量级的镜像文件加密系统和方法
技术领域
本发明属于计算机云计算领域,具体涉及一种轻量级的镜像文件加密系统和方法。
背景技术
因为易部署、高扩展性等方面优点,使得云计算在企业中的应用越来越广泛,正逐步替换传统的IT基础设施。和传统的IT基础设施相比,云计算在诸多方面都具有无可比拟的优势:1)不需要维护固定的IT基础设施,而是根据实际的业务量按需租赁云端资源,这不仅具有较高的灵活性,而且和固定的IT基础设施相比投入更低。2)因为不需要维护固定的IT基础设施,所以也就没有传统的IT维护成本,甚至可以共享一些软件而降低软件费用。因此,和传统的IT基础设施相比,云计算的维护成本也有较大程度的降低。3)支撑云计算的基础设施一般由技术实力较强的大型公司负责维护,比如亚马逊、阿里巴巴等公司,相对而言具有更高的可靠性。
但是云计算的普及也带来了一些新的问题,比如数据的安全性问题。在传统的IT基础设施中,用户对于数据的具体物理存放位置、访问控制、数据是否彻底删除等安全性问题具有完整的控制。但是在云计算环境中,包括操作系统在内所有的用户数据均存放在云端资源中,用户对这些云端的数据不再具有可控性,因此也无法保证数据的机密性、完整性、可用性。特别是云计算中的虚拟机镜像文件,更是显得尤其重要,因为虚拟机从镜像文件中启动,镜像文件的完整性直接决定了包括安全状态在内的虚拟机的所有初始状态。如果镜像文件被非法篡改,那么虚拟机的一系列操作均无法得到有效的安全性保障。另一方面,虚拟机的镜像文件一般包含用户的隐私数据,比如密码、证书、密钥等等。在云计算环境中,虚拟机的镜像文件是以镜像库的形式存在,可以被用户共享使用,因此这些数据往往面临着被非法窃取的可能性。
用户通过访问镜像文件在云计算中建立他们的虚拟机,因此他们关注镜像的数据安全性问题,比如镜像是否被污染,或者是否存在隐私数据被窃取的可能。因此,在云计算中对镜像文件提供加密和完整性校验显得非常重要。比较常见的方法是使用加密计算,以密文的形式保存镜像文件,防止镜像文件的数据发生泄漏。同时,对镜像文件进行签名,在镜像文件解密前后进行完整性校验,防止镜像文件被非法篡改。但是和一般文件相比,镜像文件都比较大,因此对整个镜像文件的加解密操作会给存取操作带来非常大的额外时间开销,对系统整体性能影响较大。特别是镜像文件保存操作系统在内的关键性软件,而这些软件对应虚拟机运行时必须的,镜像文件存取操作的时间开销会对虚拟机的性产生较大的影响。因此,当前的云计算亟需一种较低时间开销的镜像文件加密方法。
发明内容
发明目的:本发明提出一种轻量级的镜像文件加密系统和方法,目的是在保证镜像文件安全性的同时,降低镜像文件加解密过程中的时间开销,从而提高系统性能。
发明内容:本发明提出一种轻量级的镜像文件加密系统和方法,所述一种轻量级的镜像文件加密系统包括下列模块:
密钥管理模块,用于生成、存放和管理密钥。本发明采用对称加密算法生成密钥。密钥管理模块响应加解密模块的密钥获取请求,并且用安全套接字协议传输密钥;
分块管理模块,用于对镜像文件执行切分操作,采用等量切分的方法,即所有分块大小是固定的。并且每个分块的名字随机生成,这样可以防止通过人为拼凑复原镜像文件。同时,镜像文件分块模块响应加解密模块的分块映射表获取请求,两个模块之间用安全套接字协议传输分块映射表;
加解密模块,用于对分块映射表执行加解密操作,包括:
加密操作:加解密模块从密钥管理模块中获取密钥,从镜像文件分块管理模块中获取分块映射表,然后用获取的密钥对分块映射表进行加密;
解密操作:加解密模块从密钥管理模块中获取密钥并用获取的密钥对分块映射表进行解密,然后根据分块映射表读取镜像文件的分块,并根据镜像文件的分块在分块映射表中的顺序进行排列,最后恢复完整的镜像文件;
数据库,用于存储现有密钥、密钥管理模块生成的密钥以及分块映射表;
后台存储系统,用于存储分块管理模块切分并加密后的分块,以及伪分块管理模块创建的伪分块;
伪分块管理模块,用于在空闲存储空间创建、删除和管理伪分块,伪分块是指和镜像分块相同大小的随机文件,并且命名方式和存储位置都和镜像文件分块一样。通过在存储系统中加入伪分块数的量,可以进一步降低暴力破解的可能性,从而进一步提高镜像文件的安全性。并且根据空闲存储空间的大小,动态调整伪分块数量,使得伪分块的总数维持在设定的合理范围之内,不会对系统的整体性能造成影响。
所述一种轻量级的镜像文件加密方法,包括密钥获取阶段、镜像文件分块阶段、镜像文件存放阶段、镜像文件读取阶段、伪分块维护阶段。
密钥获取阶段,包括如下步骤:
步骤1-1,密钥管理模块接收来自于加解密模块的密钥获取请求,在数据库中检索是否存在与请求的镜像文件的通用唯一识别码UUID对应的密钥,如果存在,从数据库中直接读取该镜像文件的密钥,执行步骤1-3,如果不存在,执行步骤1-2;
步骤1-2,密钥管理模块生成密钥Key,用<UUID,Key>的二元组为密钥和镜像文件的通用唯一识别码UUID建立联系,并将密钥Key保存到数据库中;
步骤1-3,密钥管理模块用安全套接字协议SSL将密钥传输给加解密模块。
镜像文件分块阶段,包括如下步骤:
步骤2-1,分块管理模块接收来自于加解密模块的分块映射表获取请求,在数据库中检索是否存在该镜像文件的分块映射表,如果存在,从数据库中读取该镜像文件的通用唯一识别码UUID的分块映射表,执行步骤2-4,如果不存在,执行步骤2-2;
步骤2-2,分块管理模块按设定好的固定大小将镜像文件进行等量切分,如果最后一个分块小于固定大小,在该分块的末尾填充0,直到达到分块的固定大小为止。在本发明中,分块的固定大小为1MB,亦可根据实际情况进行调整;
步骤2-3,分块管理模块新建一个空的分块映射表,为每个分块生成一个无规律、不重复的序列号,以该序列号命名分块并保存到后台存储系统中,然后根据每个分块在镜像文件中的位置,按从前到后的顺序将这些分块对应的序列号写入新建的分块映射表;
步骤2-4,分块管理模块用安全套接字协议SSL将镜像文件的分块映射表传输给加解密模块。
镜像文件存放阶段,包括如下步骤:
步骤3-1,加解密模块用MD5算法(Message Digest AlgorithmMD5,中文名为消息摘要算法第五版)对镜像文件进行签名,并将最后的计算结果作为镜像文件的通用唯一识别码UUID;
步骤3-2,加解密模块向密钥管理模块请求密钥Key;
步骤3-3,加解密模块向分块管理模块请求镜像文件的分块映射表;
步骤3-4,加解密模块用获取到的密钥Key对镜像文件的分块映射表进行加密,加密后的镜像文件分块映射表用镜像文件名命名并保存。
镜像文件读取阶段,包括如下步骤:
步骤4-1,加解密模块根据镜像文件名从后台存储系统中读取加密的分块映射表,以及对应的镜像文件的通用唯一识别码UUID;
步骤4-2,加解密模块向密钥管理模块请求密钥Key;
步骤4-3,加解密模块用获取的密钥Key对镜像文件的分块映射表执行解密操作;
步骤4-4,加解密模块根据解密后的分块映射表,读取该镜像文件的所有分块,并根据其在分块映射表中的顺序进行排列并恢复镜像文件,然后计算最后一个分块是否有填充数据,如果有,那么需要删除多余的填充数据。计算方法如下:用S表示文件大小,用K表示分块大小,该文件的分块数量为n,那么最后一个分块的填充位数等于(n×K-S),如果计算得到的填充位数大于0,那么表示最后一个分块有填充数据,从分块的末尾开始删除,直到删除的位数等于计算得到的填充位数为止。
伪分块维护阶段包括:伪分块管理模块周期性读取后台存储系统中的空闲存储空间大小,计算空闲存储空间占后台存储系统总空间大小的比例,并判断该比例是否超过设定的阈值,如果该比例小于阈值,执行伪分块创建操作,随机生成伪分块文件,如果该比例大于或者等于阈值,执行伪分块删除操作,随机选择并删除后台存储系统中的伪分块文件,直到该比例小于阈值或者后台存储系统中不存在伪分块文件。
有益效果:本发明通过对镜像文件进行文件分块操作,只需要对镜像文件的分块映射表进行加密就可以防止未授权用户对镜像文件数据的非法窃取。同时,以镜像文件的签名作为分块映射表的标识符,从而能够在镜像文件解密之后进行完整性校验,防止镜像文件被非法篡改。在本发明中,镜像文件的分块文件名随机生成,不具有任何规律性,使得非法用户无法通过绕过分块映射表而直接访问分块文件的方法恢复整个镜像文件。此外,本发明还利用存储系统的空闲空间生成并保存相同大小的伪分块文件,进一步降低了非法用户暴力破解的可能性。因此,本发明能够以较低的时间开销实现一种能够保证虚拟机镜像文件安全性的加密方法,适用于任何涉及到镜像文件管理的云计算系统。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明的示意图。
图2为密钥获取阶段示意图。
图3为镜像文件分块阶段示意图。
图4为镜像文件存放阶段示意图。
图5为镜像文件读取阶段示意图。
图6为伪分块维护阶段示意图。
具体实施方式
本发明公开了一种轻量级的镜像文件加密系统,包括:
密钥管理模块,用于生成和管理密钥,密钥管理模块响应加解密模块的密钥获取请求,并采用安全套接字协议传输密钥;
分块管理模块,用于对镜像文件执行切分操作,并得到分块映射表,并且镜像文件的每个分块的名字随机生成,镜像文件分块管理模块响应加解密模块的分块映射表获取请求,镜像文件分块管理模块和加解密模块之间采用安全套接字协议传输分块映射表;
加解密模块,用于对分块映射表执行加解密操作;
数据库,用于存储现有密钥、密钥管理模块生成的密钥以及分块映射表;
后台存储系统,用于存储分块管理模块切分并加密后的分块,以及伪分块管理模块创建的伪分块;
伪分块管理模块,用于在空闲存储空间创建、删除和管理伪分块,并将伪分块存储在后台存储系统中。
所述加解密模块对分块映射表执行加解密操作包括:
加密操作:加解密模块从密钥管理模块中获取密钥,从镜像文件分块管理模块中获取分块映射表,然后用获取的密钥对分块映射表进行加密;
解密操作:加解密模块从密钥管理模块中获取密钥并用获取的密钥对分块映射表进行解密,然后根据分块映射表读取镜像文件的分块,并根据镜像文件的分块在分块映射表中的顺序进行排列,最后恢复完整的镜像文件。
所述伪分块管理模块根据空闲存储空间的大小,动态调整伪分块数量。
本发明公开了一种轻量级的镜像文件加密方法,包括以下部分:密钥获取阶段、镜像文件分块阶段、镜像文件存放阶段、镜像文件读取阶段、伪分块维护阶段。
所述密钥获取阶段,包括如下步骤:
步骤1-1,密钥管理模块接收来自于加解密模块的密钥获取请求,在数据库中检索是否存在与请求的镜像文件的通用唯一识别码UUID对应的密钥,如果存在,从数据库中直接读取该镜像文件的密钥,执行步骤1-3,如果不存在,执行步骤1-2;
步骤1-2,密钥管理模块生成密钥Key,用<UUID,Key>的二元组为密钥和镜像文件的通用唯一识别码UUID建立联系,并将密钥Key保存到数据库中;
步骤1-3,密钥管理模块用安全套接字协议SSL将密钥传输给加解密模块。
所述镜像文件分块阶段,包括如下步骤:
步骤2-1,分块管理模块接收来自于加解密模块的分块映射表获取请求,在数据库中检索是否存在该镜像文件的分块映射表,如果存在,从数据库中读取该镜像文件的通用唯一识别码UUID的分块映射表,执行步骤2-4,如果不存在,执行步骤2-2;
步骤2-2,分块管理模块按设定好的固定大小将镜像文件进行等量切分,如果最后一个分块小于固定大小,在该分块的末尾填充0,直到达到分块的固定大小为止;
步骤2-3,分块管理模块新建一个空的分块映射表,为每个分块生成一个无规律、不重复的序列号,以该序列号命名分块并保存到后台存储系统中,然后根据每个分块在镜像文件中的位置,按从前到后的顺序将这些分块对应的序列号写入新建的分块映射表;
步骤2-4,分块管理模块用安全套接字协议SSL将镜像文件的分块映射表传输给加解密模块。
所述镜像文件存放阶段,包括如下步骤:
步骤3-1,加解密模块用MD5算法对镜像文件进行签名,并将最后的计算结果作为镜像文件的通用唯一识别码UUID;
步骤3-2,加解密模块向密钥管理模块请求密钥Key;
步骤3-3,加解密模块向分块管理模块请求镜像文件的分块映射表;
步骤3-4,加解密模块用获取到的密钥Key对镜像文件的分块映射表进行加密,加密后的镜像文件分块映射表用镜像文件名命名并保存。
所述镜像文件读取阶段,包括如下步骤:
步骤4-1,加解密模块根据镜像文件名从后台存储系统中读取加密的分块映射表,以及对应的镜像文件的通用唯一识别码UUID;
步骤4-2,加解密模块向密钥管理模块请求密钥Key;
步骤4-3,加解密模块用获取的密钥Key对镜像文件的分块映射表执行解密操作;
步骤4-4,加解密模块根据解密后的分块映射表,读取该镜像文件的所有分块,并根据其在分块映射表中的顺序进行排列并恢复镜像文件,接着计算最后一个分块是否有填充数据,如果有,删除多余的填充数据。
步骤4-4中计算最后一个分块是否有填充数据的方法如下:用S表示文件大小,用K表示分块大小,该文件的分块数量为n,那么最后一个分块的填充位数等于n×K-S,如果计算得到的填充位数大于0,那么表示最后一个分块有填充数据,从分块的末尾开始删除,直到删除的位数等于计算得到的填充位数为止。
所述伪分块维护阶段包括:伪分块管理模块周期性读取后台存储系统中的空闲存储空间大小,计算空闲存储空间占后台存储系统总空间大小的比例,并判断该比例是否超过设定的阈值,如果该比例小于阈值,执行伪分块创建操作,随机生成伪分块文件,如果该比例大于或者等于阈值,执行伪分块删除操作,随机选择并删除后台存储系统中的伪分块文件,直到该比例小于阈值或者后台存储系统中不存在伪分块文件。
实施例
如图1所示,本实施例公开了一种轻量级的镜像文件加密系统,包括:
密钥管理模块,用于生成和管理密钥,密钥管理模块响应加解密模块的密钥获取请求,并采用安全套接字协议传输密钥;
分块管理模块,用于对镜像文件执行切分操作,并得到分块映射表,并且镜像文件的每个分块的名字随机生成,镜像文件分块管理模块响应加解密模块的分块映射表获取请求,镜像文件分块管理模块和加解密模块之间采用安全套接字协议传输分块映射表;
加解密模块,用于对分块映射表执行加解密操作;
数据库,用于存储现有密钥、密钥管理模块生成的密钥以及分块映射表;
后台存储系统,用于存储分块管理模块切分并加密后的分块,以及伪分块管理模块创建的伪分块;
伪分块管理模块,用于在空闲存储空间创建、删除和管理伪分块,并将伪分块存储在后台存储系统中。
本实施例提出一种轻量级的镜像文件加密系统和方法,所述一种轻量级的镜像文件加密方法,包括密钥获取阶段、镜像文件分块阶段、镜像文件存放阶段、镜像文件读取阶段、伪分块维护阶段。
图2为密钥获取阶段示意图:
(1)接收来自于加解密模块的密钥获取请求。在数据库中检索是否存在与请求的镜像UUID1对应的密钥。如果存在,那么从数据库中直接读取该镜像的密钥,然后跳转到步骤(3)。如果不存在,执行步骤(2);
(2)生成密钥Key1,并生成二元组<UUID1,Key1>,然后保存到数据库中;
(3)用安全套接字协议(SSL)将密钥Key1传输给加解密模块;
(4)结束;
图3为镜像文件分块阶段示意图:
(1)接收来自于加解密模块的分块映射表获取请求。在数据库中检索是否存在该镜像文件的分块映射表。如果存在,那么从数据库中直接读取该镜像UUID1的分块映射表,然后跳转到步骤(4)。如果不存在,执行步骤(2);
(2)按设定好的固定大小BS将镜像文件File1进行等量切分。如果最后一个分块的大小小于固定大小BS,那么在该分块的末尾填充0,直到达到分块的固定大小为止;
(3)新建一个空的分块映射表Table1。接着为每个分块生成一个无规律、不重复的序列号,并以该序列号命名分块并保存到后台存储系统中。然后根据每个分块在镜像文件中的位置,以从前到后的顺序将这些分块对应的序列号写入新建的分块映射表;
(4)用安全套接字协议(SSL)将镜像文件的分块映射表Table1传输给加解密模块;
(5)结束;
图4为镜像文件存放阶段示意图:
(1)用MD5算法对镜像文件进行签名,并将最后的计算结果作为镜像文件的UUID1;
(2)向密钥管理模块请求密钥Key1;
(3)向分块管理模块请求镜像文件的分块映射表Table1;
(4)用获取到的密钥Key1对镜像文件的分块映射表Table1进行加密,加密后的镜像文件分块映射表用镜像文件名命名并保存;
(5)结束;
图5为镜像文件读取阶段示意图:
(1)当需要读取镜像文件时,先根据镜像文件名从存储系统中读取加密了的分块映射表,以及对应的UUID1;
(2)向密钥管理模块请求密钥Key1;
(3)用获取的密钥Key对镜像文件的分块映射表执行解密操作;
(4)根据解密后的分块映射表Table1,读取该镜像文件的所有分块。去掉最后一个分块的多余填充数据,去除位数为BS*n–FS,其中n是镜像文件的分块数量,FS是镜像文件的大小。然后根据分块在分块映射表中的顺序进行排列并恢复镜像文件;
(5)结束;
图6为伪分块维护阶段示意图:
周期性读取存储系统中的空闲存储空间大小,并计算空闲存储空间占存储系统总空间大小的比例。然后判断该比例是否超过设定的阈值,一般阈值大小设定为80%。如果小于阈值,那么需要执行伪分块创建操作,随机生成伪分块文件,伪分块文件的大小和命名方式都和镜像文件的分块一样。如果大于或者等于阈值,那么需要执行伪分块删除操作,随机选择并删除存储系统中的伪分块文件,直到空闲存储空间大小小于阈值或者存储系统中不存在伪分块文件。
本发明提供了一种轻量级的镜像文件加密系统和方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (1)

1.一种轻量级的镜像文件加密系统,其特征在于,包括:
密钥管理模块,用于生成和管理密钥,密钥管理模块响应加解密模块的密钥获取请求,并采用安全套接字协议传输密钥;
分块管理模块,用于对镜像文件执行切分操作,并得到分块映射表,并且镜像文件的每个分块的名字随机生成,镜像文件分块管理模块响应加解密模块的分块映射表获取请求,镜像文件分块管理模块和加解密模块之间采用安全套接字协议传输分块映射表;
加解密模块,用于对分块映射表执行加解密操作;
数据库,用于存储现有密钥、密钥管理模块生成的密钥以及分块映射表;
后台存储系统,用于存储分块管理模块切分并加密后的分块,以及伪分块管理模块创建的伪分块;
伪分块管理模块,用于在空闲存储空间创建、删除和管理伪分块,并将伪分块存储在后台存储系统中;
所述加解密模块对分块映射表执行加解密操作包括:
加密操作:加解密模块从密钥管理模块中获取密钥,从镜像文件分块管理模块中获取分块映射表,然后用获取的密钥对分块映射表进行加密;
解密操作:加解密模块从密钥管理模块中获取密钥并用获取的密钥对分块映射表进行解密,然后根据分块映射表读取镜像文件的分块,并根据镜像文件的分块在分块映射表中的顺序进行排列,最后恢复完整的镜像文件;
所述伪分块管理模块根据空闲存储空间的大小,动态调整伪分块数量;
所述系统进行加密时包括以下部分:密钥获取阶段、镜像文件分块阶段、镜像文件存放阶段、镜像文件读取阶段、伪分块维护阶段;
所述密钥获取阶段,包括如下步骤:
步骤1-1,密钥管理模块接收来自于加解密模块的密钥获取请求,在数据库中检索是否存在与请求的镜像文件的通用唯一识别码UUID对应的密钥,如果存在,从数据库中直接读取该镜像文件的密钥,执行步骤1-3,如果不存在,执行步骤1-2;
步骤1-2,密钥管理模块生成密钥Key,用<UUID,Key>的二元组为密钥和镜像文件的通用唯一识别码UUID建立联系,并将密钥Key保存到数据库中;
步骤1-3,密钥管理模块用安全套接字协议SSL将密钥传输给加解密模块;
所述镜像文件分块阶段,包括如下步骤:
步骤2-1,分块管理模块接收来自于加解密模块的分块映射表获取请求,在数据库中检索是否存在该镜像文件的分块映射表,如果存在,从数据库中读取该镜像文件的通用唯一识别码UUID的分块映射表,执行步骤2-4,如果不存在,执行步骤2-2;
步骤2-2,分块管理模块按设定好的固定大小将镜像文件进行等量切分,如果最后一个分块小于固定大小,在该分块的末尾填充0,直到达到分块的固定大小为止;
步骤2-3,分块管理模块新建一个空的分块映射表,为每个分块生成一个无规律、不重复的序列号,以该序列号命名分块并保存到后台存储系统中,然后根据每个分块在镜像文件中的位置,按从前到后的顺序将这些分块对应的序列号写入新建的分块映射表;
步骤2-4,分块管理模块用安全套接字协议SSL将镜像文件的分块映射表传输给加解密模块;
所述镜像文件存放阶段,包括如下步骤:
步骤3-1,加解密模块用MD5算法对镜像文件进行签名,并将最后的计算结果作为镜像文件的通用唯一识别码UUID;
步骤3-2,加解密模块向密钥管理模块请求密钥Key;
步骤3-3,加解密模块向分块管理模块请求镜像文件的分块映射表;
步骤3-4,加解密模块用获取到的密钥Key对镜像文件的分块映射表进行加密,加密后的镜像文件分块映射表用镜像文件名命名并保存;
所述镜像文件读取阶段,包括如下步骤:
步骤4-1,加解密模块根据镜像文件名从后台存储系统中读取加密的分块映射表,以及对应的镜像文件的通用唯一识别码UUID;
步骤4-2,加解密模块向密钥管理模块请求密钥Key;
步骤4-3,加解密模块用获取的密钥Key对镜像文件的分块映射表执行解密操作;
步骤4-4,加解密模块根据解密后的分块映射表,读取该镜像文件的所有分块,并根据其在分块映射表中的顺序进行排列并恢复镜像文件,接着计算最后一个分块是否有填充数据,如果有,删除多余的填充数据;
步骤4-4中计算最后一个分块是否有填充数据的方法如下:用S表示文件大小,用K表示分块大小,该文件的分块数量为n,那么最后一个分块的填充位数等于n×K-S,如果计算得到的填充位数大于0,那么表示最后一个分块有填充数据,从分块的末尾开始删除,直到删除的位数等于计算得到的填充位数为止;
所述伪分块维护阶段包括:伪分块管理模块周期性读取后台存储系统中的空闲存储空间大小,计算空闲存储空间占后台存储系统总空间大小的比例,并判断该比例是否超过设定的阈值,如果该比例小于阈值,执行伪分块创建操作,随机生成伪分块文件,如果该比例大于或者等于阈值,执行伪分块删除操作,随机选择并删除后台存储系统中的伪分块文件,直到该比例小于阈值或者后台存储系统中不存在伪分块文件。
CN201510173735.9A 2015-04-13 2015-04-13 一种轻量级的镜像文件加密系统和方法 Active CN104780048B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510173735.9A CN104780048B (zh) 2015-04-13 2015-04-13 一种轻量级的镜像文件加密系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510173735.9A CN104780048B (zh) 2015-04-13 2015-04-13 一种轻量级的镜像文件加密系统和方法

Publications (2)

Publication Number Publication Date
CN104780048A CN104780048A (zh) 2015-07-15
CN104780048B true CN104780048B (zh) 2018-04-10

Family

ID=53621307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510173735.9A Active CN104780048B (zh) 2015-04-13 2015-04-13 一种轻量级的镜像文件加密系统和方法

Country Status (1)

Country Link
CN (1) CN104780048B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111546A (zh) * 2018-03-02 2018-06-01 瓦戈科技(上海)有限公司 一种文件传输方法及系统
CN109376119B (zh) * 2018-10-30 2021-10-26 郑州云海信息技术有限公司 一种创建磁盘镜像文件加密快照、使用的方法及存储介质
CN109257381A (zh) * 2018-11-08 2019-01-22 江苏恒宝智能系统技术有限公司 一种密钥管理方法、系统及电子设备
CN110704852B (zh) * 2019-09-26 2021-06-08 江苏方天电力技术有限公司 一种rtos系统程序镜像文件的加密系统
CN113821820B (zh) * 2021-11-22 2022-02-22 北京优锘科技有限公司 资源以切分方式进行加解密的方法、装置、介质和设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102214282A (zh) * 2011-05-27 2011-10-12 苏州海客科技有限公司 一种适合于便携式系统中多媒体数据文件的保护方法
CN103020543A (zh) * 2012-12-31 2013-04-03 北京启明星辰信息技术股份有限公司 一种虚拟磁盘映像加密管理系统及方法
CN103780622A (zh) * 2014-01-24 2014-05-07 华中科技大学 一种面向云存储的数据分类加密方法
CN103873522A (zh) * 2012-12-14 2014-06-18 联想(北京)有限公司 一种电子设备及应用于电子设备的文件分块方法
CN104239575A (zh) * 2014-10-08 2014-12-24 清华大学 一种虚拟机镜像文件存储、分发方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060066628A (ko) * 2004-12-13 2006-06-16 엘지전자 주식회사 기록매체에 수록된 콘텐트를 보호하는 방법 및 그보호방법이 적용된 콘텐트를 수록하고 있는 기록매체
US7688977B2 (en) * 2006-03-31 2010-03-30 Brandenburgische Technische Universitaet Cottbus Method for encrypting video data
GB2499963B (en) * 2010-12-09 2014-03-26 Ibm Computer-readable storage mediums for encrypting and decrypting a virtual disc

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102214282A (zh) * 2011-05-27 2011-10-12 苏州海客科技有限公司 一种适合于便携式系统中多媒体数据文件的保护方法
CN103873522A (zh) * 2012-12-14 2014-06-18 联想(北京)有限公司 一种电子设备及应用于电子设备的文件分块方法
CN103020543A (zh) * 2012-12-31 2013-04-03 北京启明星辰信息技术股份有限公司 一种虚拟磁盘映像加密管理系统及方法
CN103780622A (zh) * 2014-01-24 2014-05-07 华中科技大学 一种面向云存储的数据分类加密方法
CN104239575A (zh) * 2014-10-08 2014-12-24 清华大学 一种虚拟机镜像文件存储、分发方法及装置

Also Published As

Publication number Publication date
CN104780048A (zh) 2015-07-15

Similar Documents

Publication Publication Date Title
CN112910840B (zh) 一种基于联盟区块链的医疗数据存储共享方法及系统
CN111130757B (zh) 一种基于区块链的多云cp-abe访问控制方法
CN104780048B (zh) 一种轻量级的镜像文件加密系统和方法
CN108737374B (zh) 一种区块链中数据存储的隐私保护方法
CN103609059B (zh) 用于安全数据共享的系统和方法
CN102761521B (zh) 云安全存储及共享服务平台
CN105700945B (zh) 一种基于净室环境的虚拟机安全迁移方法
CN109995505B (zh) 一种雾计算环境下数据安全去重系统及方法、云存储平台
CN105656864B (zh) 基于tcm的密钥管理系统及管理方法
CN109995530B (zh) 一种适用于移动定位系统的安全分布式数据库交互系统
CN113541935B (zh) 一种支持密钥托管的加密云存储方法、系统、设备、终端
CN107040520B (zh) 一种云计算数据共享系统及方法
CN104618096A (zh) 保护密钥授权数据的方法、设备和tpm密钥管理中心
CN111737770A (zh) 一种密钥管理方法及应用
CN104484628B (zh) 一种具有加密解密功能的多应用智能卡
CN106326666A (zh) 一种健康档案信息管理服务系统
CN104184736B (zh) 一种实现安全云计算的方法和系统
CN113626859A (zh) 支持密钥托管个人文件加密保护方法、系统、设备、介质
CN117459230A (zh) 一种基于区块链和密钥共享的密钥托管方法
CN108494552B (zh) 支持高效收敛密钥管理的云存储数据去重方法
CN110098924A (zh) 支持可搜索透明加密的层级密钥技术
CN110958211B (zh) 一种基于区块链的数据处理系统及方法
CN110958285B (zh) 一种基于区块链的数据存储系统
CN111914280A (zh) 一种文件自加密解密方法
CN111464311A (zh) 一种机固多节点一体授权管理的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant