一种云计算环境数据安全存储系统和方法

文档序号:7552110阅读:301来源:国知局
专利名称:一种云计算环境数据安全存储系统和方法
技术领域
本发明涉及一种信息安全系统和方法,具体涉及一种云计算环境数据安全存储系统和方法。
背景技术
云计算是一种面向互联网的分布式计算服务,作为IT资源和服务的一种交付使用模型,它可以实现随时随地、便捷的、按需的从可配置计算资源共享池中获取所需的资源(如网络、服务器、存储、应用、服务等),这些资源可以被迅速提供并发布,同时最小化管理成本或服务提供商的干涉。云计算是近年来IT界最热门的一个技术名词,很多专家认为,云计算会改变互联网的技术基础,甚至会影响整个产业的格局。目前,世界上几乎所有的IT产业巨头都投身于云计算的研究和应用产业中。当云计算系统运算处理的对象是海量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,并将不同类型的存储设备通过软件集合起来协同工作,共同对外提供数据存储服务。这样,在用户看来,云计算系统的后端就是一个巨大的云平台,这个云平台被大量用户共享,用户所要做的事情就是往云平台中上传数据,而不用关心数据是如何存放的。但是,甲用户的私有数据很可能和乙用户的数据存放在同一个存储服务器上,甚至是同一个磁盘上。乙用户就有机会利用虚拟机窃取云平台中存储的数据,如果甲用户的数据是明文,那么甲用户的数据就难以得到保护,会被非法使用或修改,最终导致泄露。为了解决云平台中的数据安全问题,现有技术中典型的解决方案是采用加密技术对数据全文加密,将数据加密后存储至云平台。然而当涉及大量数据时,需要生成并维护管理大量的加解密密钥,由于密钥管理的专业性和复杂性,一些用户选择使用第三方提供的密钥管理服务。但是如果密钥管理方和云平台的提供方之间进行合谋攻击,用户的数据就得不到应有的保护。

发明内容
本发明针对现有技术中在云计算环境中云计算环境尤其是云存储环境中存在的数据安全风险问题,提出了一种能够打破密钥和密文数据之间的联系,由第三方来维护密钥和密文数据的映射关系,在不依赖于云服务提供商以及密钥管理服务提供商可靠性的前提下,为使用云计算的用户提供数据机密性安全保护的云计算环境数据安全存储系统,及实现上述系统的云计算环境数据安全存储方法。本发明的技术方案如下:—种云计算环境数据安全存储系统,其特征在于:它包括分别连接密钥映射服务器并与所述密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台;所述用户端向所述密钥映射服务器提出存储请求或数据请求,所述存储请求包括用户标识和用户数据,所述数据请求包括用户标识和由所述云平台返回的数据存储地址;所述密钥映射服务器根据所述存储请求生成密钥标识,所述密钥管理服务器中生成与所述密钥标识对应的密钥值;所述密钥映射服务器根据所述数据请求分别由所述云平台和密钥管理服务器中获取密文数据和密钥值;所述加解密服务器根据所述密钥值将所述用户数据加密成密文数据,或根据所述密钥值将所述密文数据解密成所述用户数据,完成加密或解密后,删除所述密钥值、用户数据和密文数据;所述密钥映射服务器中储存所述用户标识、密钥标识和数据存储地址的映射关系,所述密钥管理服务器中储存所述密钥标识和密钥值,所述云平台中储存所述密文数据。所述密钥映射服务器用于使用所述密钥标识向所述密钥管理服务器提出密钥请求,接收所述密钥管理服务器生成的密钥值;或向所述加解密服务器输入所述密钥值和所述用户数据,所述加解密服务器将所述用户数据转换成密文数据,由所述密钥映射服务器将所述密文数据输入云平台中保存,所述云平台输出的数据存储地址返回所述用户端,所述密钥映射服务器中存储所述用户标识、密钥标识和数据存储地址的映射关系,删除所述密钥值、用户数据和密文数据;或根据所述用户端的所述数据请求,向所述云平台输入所述数据存储地址,接收由所述云平台输出的与所述数据存储地址对应的所述密文数据;或根据与所述数据存储地址对应的所述密钥标识请求所述密钥管理服务器返回所述密钥值,将所述密文数据和所述密钥值一同输入所述加解密服务器,所述加解密服务器将所述密文数据转换成所述用户数据并返回所述用户端,所述密钥映射服务器删除所述密钥值、用户数据和密文数据。所述云平台用于保存由所述密钥映射服务器输入的所述密文数据,向所述密钥映射服务器返回所述数据存储地址;或根据所述密钥映射服务器输入的所述数据存储地址查找对应的所述密文数据,向所述密钥映射服务器输出所述密文数据。所述密钥标识为随机生成。所述密钥映射服务器、密钥管理服务器和云平台相互独立。所述密钥映射服务器和/或加解密服务器为集成于所述用户端本身的功能模块。一种实现所述云计算环境数据安全存储系统的云计算环境数据安全存储方法,它包括构建一云计算环境数据安全存储系统,包括分别连接密钥映射服务器并与所述密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台;其中,用户数据加密存储的步骤包括:I)所述用户端将用户标识和用户数据传送至所述密钥映射服务器;2)所述密钥映射服务器生成与所述用户标识对应的密钥标识,并接收由所述密钥管理服务器生成的对应于所述密钥标识的密钥值,所述密钥管理服务器存储所述密钥标识和密钥值;3)所述密钥映射服务器将所述密钥值和用户数据发送至所述加解密服务器将所述用户数据加密成密文数据;4)所述云平台保存所述密文数据后将数据存储地址发送给所述用户端;所述用户数据请求使用的步骤包括:I)所述用户端将所述用户标识和数据存储地址传送至所述密钥映射服务器;II)所述密钥映射服务器将所述数据存储地址输入所述云平台中检索并返回与所述数据存储地址对应的所述密文数据;III)所述密钥映射服务器根据所述数据存储地址对应的所述密钥标识在所述密钥管理服务器中提取所述密钥值;IV)所述密钥映射服务器将所述密文数据和密钥值一同输入所述加解密服务器中将所述密文数据解密成所述用户数据,并将所述用户数据返回所述用户端。所述密钥映射服务器中储存所述用户标识、密钥标识和数据存储地址的映射关系;所述密钥管理服务器中储存所述密钥标识和密钥值,所述云平台中储存所述密文数据。所述加解密服务器在完成加密或解密之后,删除所述密钥值、用户数据和密文数据。将所述数据存储地址发送给所述用户端后,或将所述用户数据发送给所述用户端后,所述密钥映射服务器删除密钥值、用户数据和密文数据。本发明的技术效果如下:本发明的一种云计算环境数据安全存储系统和方法,其特征在于:一种云计算环境数据安全存储系统,其特征在于:它包括分别连接密钥映射服务器并与密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台;用户端向密钥映射服务器提出存储请求或数据请求,存储请求包括用户标识和用户数据,数据请求包括用户标识和由云平台返回的数据存储地址;密钥映射服务器根据存储请求生成密钥标识,密钥管理服务器中生成与密钥标识对应的密钥值;密钥映射服务器根据数据请求分别由云平台和密钥管理服务器中获取密文数据和密钥值;加解密服务器根据密钥值将用户数据加密成密文数据,或根据密钥值将密文数据解密成用户数据,完成加密或解密后,删除密钥值、用户数据和密文数据。本发明通过应用密钥映射技术,引入用于密钥映射管理的第三方,即密钥值、密文数据、密钥映射关系均分开保存,使分别存储这些数据的任意两方合谋或数据泄漏都无法破解密文数据的机密性,有效的解决了密钥管理方和云存储提供方的合谋攻击问题,实现了云计算环境下数据安全存储方案。本发明通过在密钥映射服务器中储存用户标识、密钥标识和数据存储地址的映射关系,密钥管理服务器中储存密钥标识和密钥值,云平台中储存密文数据,从而打破密钥值和密文数据之间的直接联系。且当数据存储地址发送给用户端后,或用户数据发送给用户端后,密钥映射服务器删除密钥值、用户数据和密文数据;加解密服务器完成加密或解密后,删除密钥值、用户数据和密文数据。这样就使保存密钥映射关系的位置不会同时存在密钥值和密文数据,保存密文数据的位置不会同时存在密钥值和密钥映射关系,保存密钥值的位置不会同时存在密钥映射关系和密文数据,达到密钥值、密文数据、密钥映射关系的三方独立性,有效的保证了用户的数据安全,防止了用户数据被恶意篡改或泄漏问题。本发明中,密钥信息的生成和管理过程、密钥映射过程、数据加解密过程均由相应的服务器来完成,用户只需维护自身的用户标识和数据存储地址信息,可大大节省用户繁琐的密钥生成及管理、数据加解密等操作,因此具有良好的用户体验。


图1是本发明的云计算环境数据安全存储系统结构示意2是本发明的用户数据加密存储过程的流程示意3是本发明的用户数据请求使用过程的流程示意图
具体实施例方式下面结合附图对本发明进行说明。在以下描述中,一些具体细节为计算机领域的技术人员提供对本发明的整体理解。在实施例中,以示意图或者框图的形式表明实现具体功能的元件,以便突出技术重点,而不会在不必要的细节方面模糊本发明。比如,由于本领域普通技术人员的理解范围中涵盖了关于网络通信、电磁信号指令技术、用户端接口或输入/输出技术等本领域中公开的、常识性的细节,因而在实施例中最大程度上省略了上述技术细节,而不认为这些细节是获得本发明完整技术方案所必须的特征。如图1所示,本发明的云计算环境数据安全存储系统包括密钥映射服务器1、密钥管理服务器2、加解密服务器3和用户端4,密钥映射服务器I分别与密钥管理服务器2、加解密服务器3和用户端4连接,并进行数据交换,密钥映射服务器I还与云平台5连接,实现密文数据的上传和下载。其中:用户端4作为云计算系统的使用者,可向密钥映射服务器I提出上传用户数据的存储请求和接收用户数据的数据请求;其中存储请求的内容为用户标识Userjd和用户数据Plain_Data,数据请求内容为用户标识User_id和数据存储地址Data_url。由于同一个用户端4可能拥有多份数据,因此相对于用户端4而言用户标识Userjd不唯一,但是相对于用户标识User_id而言数据存储地址Data_url具有唯一'丨生。其中数据存储地址Data_url用于标识密文数据在云平台4中的存储位置。密钥映射服务器I根据用户端4的存储请求随机生成一个与用户标识Userjd对应的密钥标识Key_id,并使用密钥标识Key_id向密钥管理服务器2提出密钥请求,之后接收由密钥管理服务器2生成的密钥值Key ;或向加解密服务器3输入密钥值Key和用户数据Plain_Data,请求将用户数据Plain_Data转换成密文数据Cipher_Data,并将转换后的密文数据Cipher_Data输入云平台5,最后将云平台5输出的数据存储地址Data_url通过密钥映射服务器I返回用户端4,储存用户标识User_id、密钥标识Key_id和数据存储地址Data_url的映射关系,删除密钥值Key、用户数据Plain_Data和密文数据Cipher_Data ;或根据用户端4的数据请求,验证由用户端4输入的用户标识Userjd和数据存储地址Data_url是否匹配,确认后向云平台5提出包括数据存储地址Data_url的密文数据请求,之后接收由云平台5输出的与数据存储地址Data_url对应的密文数据Cipher_Data ;或根据之前存储的数据存储地址Data_url对应的密钥标识Key_id请求密钥管理服务器2返回密钥值Key,之后将密文数据Cipher_Data和密钥值Key —同输入加解密服务器3,请求将密文数据Cipher_Data转换成用户数据Plain_Data,并将转换后的用户数据Plain_Data返回给用户端4,同时删除密钥值Key、用户数据Plain_Data和密文数据Cipher—Data0在密钥映射服务器I上仅储存维护用户标识Userjd、密钥标识Key_id和数据存储地址Data_url的映射关系,典型的映射关系如(User_id, Key_id, Data_url),而不长期存储任何密钥值Key、用户数据Plain_Data或密文数据Cipher_Data信息。密钥管理服务器2应密钥映射服务器I的密钥请求为用户端4生成对应于密钥标识Key_id的密钥值Key,并管理、维护密钥信息,典型的密钥信息包含密钥标识Key_id及其对应的密钥值Key。
加解密服务器3用于提供数据加解密服务,根据密钥映射服务器I输入的密钥值Key和用户数据Plain_Data,将用户数据Plain_Data转换成密文数据Cipher_Data,之后将密文数据Cipher_Data返回密钥映射服务器I ;或根据密钥映射服务器I输入的密钥值Key和密文数据Cipher_Data,将密文数据Cipher_Data转换成用户数据Plain_Data,之后将用户数据Plain_Data返回密钥映射服务器I。在完成加密操作或解密操作之后,加解密服务器3删除密钥值Key、用户数据Plain_Data和密文数据Cipher_Data。云平台5即云计算服务平台,用于向用户端4提供计算或存储服务,保存由密钥映射服务器I输入的密文数据Cipher_Data,并向密钥映射服务器I返回数据存储地址Data_url ;或根据密钥映射服务器I输入的数据存储地址Data_url查找对应的密文数据Cipher_Data,并向密钥映射服务器I输出密文数据Cipher_Data。对于上述实施例,密钥映射服务器1、密钥管理服务器2和云平台4为独立的三方实体,任意两方合谋或数据泄漏都无法得到用户端4的用户数据Plain_Data。其中密钥映射服务器I和加解密服务器3既可以是两个完全独立于用户端4的服务器实体,也可以是集成于用户端4本身的功能模块,即密钥映射模块和加解密模块。本发明的云计算环境数据安全存储方法主要包括用户数据加密存储和用户数据请求使用两个过程。其中:如图2所示,用户数据加密存储过程描述的是用户端4将用户数据Plain_Data采用加密的形式存储至云平台5,同时运用密钥映射技术保证云平台5中数据的安全性,包括以下步骤:I)用户端4使用安全传输通道,如SSL加密通道,将用户标识Userjd和用户数据Plain_Data传送至密钥映射服务器1,提出上传用户数据的存储请求;2)密钥映射服务器I根据用户端4的存储请求随机生成一个对应于用户标识User_id的密钥标识Key_id,并使用密钥标识Key_id向密钥管理服务器2提出密钥请求;3)密钥管理服务器2应密钥映射服务器I的密钥请求为用户端4生成对应于密钥标识Key_id的密钥值Key,并将密钥信息(Key_id,Key)存储至密钥管理服务器2中;4)密钥管理服务器4向密钥映射服务器I返回密钥信息(Key_id,Key);5)密钥映射服务器I将密钥值Key和用户数据Plain_Data发送至加解密服务器3,请求加密操作;6)加解密服务器3依据收到的密钥值Key将用户数据Plain_Data转换成密文数据 Cipher_Data ;7)加解密服务器3将密文数据Cipher_Data返回至密钥映射服务器1,之后删除密钥值Key、用户数据Plain_Data和密文数据Cipher_Data ;8)密钥映射服务器I将收到的密文数据Cipher_Data发送至云平台5 ;9)云平台5将密文数据Cipher_Data存储至相关的存储设备中;10)云平台5将数据存储地址Data_url返回给密钥映射服务器I ;11)密钥映射服务器I中存储映射对(Key_id,Data_url),同时删除密钥值Key、用户数据Plain_Data和密文数据Cipher_Data ;12)密钥映射服务器I将数据存储地址Data_url返回给用户端4。如图3所示,用户端数据请求使用过程描述的是用户端4请求数据时,密钥映射服务器I首先从云平台5中取得密文数据Cipher_Data,根据在密钥映射服务器I中存储的密钥标识Key_id和数据存储地址Data_url的映射关系取得密钥值Key,将密文数据Cipher_Data解密后返回给用户端4的过程。其包括以下步骤:I)用户端4向密钥映射服务器I提出接收用户数据的数据请求,数据请求的内容包括用户标识User_id和数据存储地址Data_url ;II)密钥映射服务器I根据用户端4的数据请求,根据数据存储地址Data_url向云平台5提出包括数据存储地址Data_url的密文数据请求;III)云平台5根据数据存储地址Data_url检索并返回与数据存储地址Data_url对应的密文数据Cipher_Data给密钥映射服务器I ;IV)密钥映射服务器I根据映射关系(User_id,Key_id, Data_url)中数据存储地址Data_url对应的密钥标识Key_id ;V)密钥映射服务器I根据密钥标识Key_id向密钥管理服务器2提出密钥请求;VI)密钥管理服务器2根据密钥标识Key_id查询对应的密钥值Key,并将密钥值Key返回给密钥映射服务器I ;VII)密钥映射服务器I将密文数据Cipher_Data和密钥值Key —同给加解密服务器3,请求解密操作;VIII)加解密服务器3将密文数据Cipher_Data转换成用户数据Plain_Data,之后将用户数据Plain_Data输入给密钥映射服务器I ;IX)密钥映射服务器I返回用户数据Plain_Data给用户端4。应当指出,以上所述具体实施方式
可以使本领域的技术人员更全面地理解本发明创造,但不以任何方式限制本发明创造。因此,尽管本说明书参照附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换,总之,一切不脱离本发明创造的精神和范围的技术方案及其改进,其均应涵盖在本发明创造专利的保护范围当中。
权利要求
1.一种云计算环境数据安全存储系统,其特征在于:它包括分别连接密钥映射服务器并与所述密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台;所述用户端向所述密钥映射服务器提出存储请求或数据请求,所述存储请求包括用户标识和用户数据,所述数据请求包括用户标识和由所述云平台返回的数据存储地址;所述密钥映射服务器根据所述存储请求生成密钥标识,所述密钥管理服务器中生成与所述密钥标识对应的密钥值;所述密钥映射服务器根据所述数据请求分别由所述云平台和密钥管理服务器中获取密文数据和密钥值;所述加解密服务器根据所述密钥值将所述用户数据加密成密文数据,或根据所述密钥值将所述密文数据解密成所述用户数据,完成加密或解密后,删除所述密钥值、用户数据和密文数据; 所述密钥映射服务器 中储存所述用户标识、密钥标识和数据存储地址的映射关系,所述密钥管理服务器中储存所述密钥标识和密钥值,所述云平台中储存所述密文数据。
2.如权利要求1所述的一种云计算环境数据安全存储系统,其特征在于:所述密钥映射服务器用于使用所述密钥标识向所述密钥管理服务器提出密钥请求,接收所述密钥管理服务器生成的密钥值;或向所述加解密服务器输入所述密钥值和所述用户数据,所述加解密服务器将所述用户数据转换成密文数据,由所述密钥映射服务器将所述密文数据输入云平台中保存,所述云平台输出的数据存储地址返回所述用户端,所述密钥映射服务器中存储所述用户标识、密钥标识和数据存储地址的映射关系,删除所述密钥值、用户数据和密文数据; 或根据所述用户端的所述数据请求,向所述云平台输入所述数据存储地址,接收由所述云平台输出的与所述数据存储地址对应的所述密文数据;或根据与所述数据存储地址对应的所述密钥标识请求所述密钥管理服务器返回所述密钥值,将所述密文数据和所述密钥值一同输入所述加解密服务器,所述加解密服务器将所述密文数据转换成所述用户数据并返回所述用户端,所述密钥映射服务器删除所述密钥值、用户数据和密文数据。
3.如权利要求1所述的一种云计算环境数据安全存储系统,其特征在于:所述云平台用于保存由所述密钥映射服务器输入的所述密文数据,向所述密钥映射服务器返回所述数据存储地址;或根据所述密钥映射服务器输入的所述数据存储地址查找对应的所述密文数据,向所述密钥映射服务器输出所述密文数据。
4.如权利要求1或2或3所述的一种云计算环境数据安全存储系统,其特征在于:所述密钥标识为随机生成。
5.如权利要求1或2或3所述的一种云计算环境数据安全存储系统,其特征在于:所述密钥映射服务器、密钥管理服务器和云平台相互独立。
6.如权利要求1或2或3所述的一种云计算环境数据安全存储系统,其特征在于:所述密钥映射服务器和/或加解密服务器为集成于所述用户端本身的功能模块。
7.一种实现如权利要求1-6之一所述的云计算环境数据安全存储系统的云计算环境数据安全存储方法,它包括构建一云计算环境数据安全存储系统,包括分别连接密钥映射服务器并与所述密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台; 其中,用户数据加密存储的步骤包括: 1)所述用户端将用户标识和用户数据传送至所述密钥映射服务器;2)所述密钥映射服务器生成与所述用户标识对应的密钥标识,并接收由所述密钥管理服务器生成的对应于所述密钥标识的密钥值,所述密钥管理服务器存储所述密钥标识和密钥值; 3)所述密钥映射服务器将所述密钥值和用户数据发送至所述加解密服务器将所述用户数据加密成密文数据; 4)所述云平台保存所述密文数据后将数据存储地址发送给所述用户端; 所述用户数据请求使用的步骤包括: 1)所述用户端将所述用户标识和数据存储地址传送至所述密钥映射服务器; II)所述密钥映射服务器将所述数据存储地址输入所述云平台中检索并返回与所述数据存储地址对应的所述密文数据; III)所述密钥映射服务器根据所述数据存储地址对应的所述密钥标识在所述密钥管理服务器中提取所述密钥值; IV)所述密钥映射服务器将所述密文数据和密钥值一同输入所述加解密服务器中将所述密文数据解密成所述用户数据,并将所述用户数据返回所述用户端。
8.如权利要求7所述的一种云计算环境数据安全存储方法,其特征在于:所述密钥映射服务器中储存所述用户标识、密钥标识和数据存储地址的映射关系;所述密钥管理服务器中储存所述密钥标识和密钥值,所述云平台中储存所述密文数据。
9.如权利要求7所述的一种云计算环境数据安全存储方法,其特征在于:所述加解密服务器在完成加密或 解密之后,删除所述密钥值、用户数据和密文数据。
10.如权利要求7或8或9所述的一种云计算环境数据安全存储方法,其特征在于:将所述数据存储地址发送给所述用户端后,或将所述用户数据发送给所述用户端后,所述密钥映射服务器删除密钥值、用户数据和密文数据。
全文摘要
本发明涉及一种云计算环境数据安全存储系统和方法,它包括分别连接密钥映射服务器并与密钥映射服务器进行数据交换的密钥管理服务器、加解密服务器、用户端和云平台;通过密钥映射服务器保存和维护密钥和加密数据的映射关系,打破密钥值和密文数据之间的直接联系。当数据存储地址发送给用户端后,或用户数据发送给用户端后,密钥映射服务器删除密钥值、用户数据和密文数据;加解密服务器完成加密或解密后,删除密钥值、用户数据和密文数据。这样就使保存密钥映射关系的位置不会同时存在密钥值和密文数据,保存密文数据的位置不会同时存在密钥值和密钥映射关系,保存密钥值的位置不会同时存在密钥映射关系和密文数据,达到密钥值、密文数据、密钥映射关系的三方独立性。
文档编号H04L29/06GK103107995SQ20131004880
公开日2013年5月15日 申请日期2013年2月6日 优先权日2013年2月6日
发明者张雅哲, 王艳霞, 张大鹏 申请人:中电长城网际系统应用有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1