一种云计算数据共享系统及方法与流程

文档序号:11590192阅读:284来源:国知局
一种云计算数据共享系统及方法与流程

本发明涉及数据信息安全技术领域,更具体的涉及一种云计算数据共享系统及方法。



背景技术:

云计算是it资源和服务的一种交付使用模型,它可以实现随时随地、便捷的、按需的通过网络从结构化的计算资源共享池中获取所需的资源(如网络、服务器、存储、应用、服务等),这些资源可以被迅速提供并发布,同时最小化管理成本或服务提供商的干涉。随着云计算技术的发展和云计算业务的不断进步,云计算将会在it领域发挥越来越重要的作用。

云计算环境下,用户的数据存储在云存储平台上,从物理上脱离了用户的控制。用户最担心的就是自己的数据是否得到了安全保护,是否被未授权方使用或修改,是否被非法泄漏。为了安全性考虑,一种典型的技术解决方案是采用加密技术,将数据加密后再存储至云存储平台。然而,由于业务需要,用户经常需要将数据共享给其他人,如同事、合作伙伴等。一种方法是数据拥有者将数据从云存储平台下载至本地,解密后传给合作伙伴,但是这种方法不够灵活,也会加重用户本身的工作量;另一种方法是用户将数据存储地址和密钥给合作伙伴,由合作伙伴自行去下载并解密,这种方法的问题在于,可能用户使用的该密钥同时也对应了其它加密数据,如果将密钥直接给合作伙伴可能导致预期外的数据泄漏,存在安全隐患。

综上所述,现有技术中,云计算数据共享时用户将自己的加密数据从云存储平台下载到本地再解密后传给他人的方式不灵活,以及由其他人通过数据存储地址和密钥自行下载解密进行共享存在安全隐患的问题。



技术实现要素:

本发明实施例提供一种云计算数据共享系统及方法,用以解决现有技术中云计算数据共享时用户将自己的加密数据从云存储平台下载到本地再解密后传给他人的方式不灵活,以及由其他人通过数据存储地址和密钥自行下载解密进行共享存在安全隐患的问题。

本发明实施例提供一种云计算数据共享系统,包括:第一用户、第二用户、第一服务器、云存储平台、第二服务器、第三服务器、第四服务器和第五服务器;

所述第一服务器为第一用户数据建立索引关键词,并通过加密算法为所述索引关键词生成密文索引和数据提取第一令牌;

基于所述数据提取第一令牌生成的与所述数据提取第一令牌相匹配的数据提取第二令牌,对所述第一用户数据进行加密处理得到密文数据,并将所述密文数据存储至云存储平台;

将所述密文索引和密文数据存储地址存储至所述第三服务器,并将所述数据提取第二令牌发送给所述第一用户,将所述数据提取第一令牌发送给所述第四服务器;

所述第四服务器用于管理所述数据提取第一令牌;在收到所述数据提取第二令牌后,将所述数据提取第一令牌与所述数据提取第二令牌进行匹配,当匹配成功时,并将所述数据提取第一令牌发送给所述第五服务器;

所述第三服务器用于管理所述密文索引和所述密文数据存储地址;在收到所述数据提取第一令牌后,将所述数据提取第一令牌与所述密文索引进行匹配,当匹配成功时,并将所述密文索引和所述密文数据存储地址发送给所述第五服务器;

所述第五服务器根据所述密文数据存储地址和所述密文索引从所述云存储平台提取所述密文数据,将所述密文数据发送给所述第一服务器进行数据解密,并将解密后的明文数据发送给所述第二用户;

所述第二服务器为所述第一用户生成、管理和维护密钥信息,所述密钥信息包括与加解密数据对应的数据加密密钥以及与所述密文索引对应的索引加密密钥。

优选地,所述第一服务器还用于:生成数据完整性校验码,并将所述数据完整性校验码存储至所述第五服务器。

优选地,所述第五服务器还用于:从所述云存储平台提取所述密文数据后,先通过所述数据完整性校验码进行密文数据完整性验证,并将所述密文数据发送给所述第一服务器。

优选地,所述第一服务器还用于:删除所述第一用户数据加解密的密钥信息和所述第一用户数据信息。

本发明实施例提供一种云计算数据共享方法,包括:第一用户数据加密存储步骤和第一用户数据提取步骤;

所述第一用户数据加密存储步骤具体包括:

s1:所述第一服务器接收所述第一用户提出的数据存储请求,并向所述第二服务器提出密钥请求;

s2:所述第二服务器为所述第一用户生成密钥,并将所述密钥返回给所述第一服务器,所述密钥包括数据加密密钥和索引加密密钥;

s3:所述第一服务器为第一用户数据建立索引关键词,并对所述索引关键词和所述第一用户数据分别采用索引加密密钥和数据加密密钥进行加密生成密文索引和密文数据,同时生成与所述密文索引匹配的数据提取第一令牌;基于所述数据提取第一令牌生成与所述数据提取第一令牌相匹配的数据提取第二令牌;

s4:所述第一服务器将所述第一用户数据进行加密处理得到密文数据,并将所述密文数据发送至云存储平台;

s5:所述云存储平台将所述密文数据存储地址返还给所述第一服务器;

s6:所述第一服务器将所述密文索引和所述密文数据存储地址发送给所述第三服务器,将所述数据提取第二令牌发送给所述第一用户,将所述数据提取第一令牌发送给所述第四服务器;

所述第一用户数据提取步骤具体包括:

a1:所述第一用户向所述第二用户发送所述数据提取第二令牌;

a2:所述第二用户向所述第五服务器发送所述数据提取第二令牌;

a3:所述第五服务器接收到所述数据提取第二令牌后,将所述数据提取第二令牌发送给所述第四服务器;

a4:所述第四服务器接收到所述数据提取第二令牌后,将所述数据提取第二令牌与所述数据提取第一令牌进行匹配,当匹配成功时,执行下述步骤;

a5:所述第四服务器将所述数据提取第一令牌发送给所述第五服务器,所述第五服务器接收到所述数据提取第一令牌后,将所述数据提取第一令牌发送给所述第三服务器;

a6:所述第三服务器将所述数据提取第一令牌与所述密文索引进行匹配,当匹配成功时,执行下述步骤;

a7:所述第三服务器将所述密文索引和所述密文数据存储地址发送给所述第五服务器,所述第五服务器根据所述密文索引和所述密文数据存储地址从所述云存储平台提取所述密文数据;

a8:所述第五服务器将所述密文数据发送给所述第一服务器,所述第一服务器将所述密文数据进行解密,并将解密后的明文数据发送给所述第五服务器;

a9:所述第五服务器将所述明文数据发送给所述第二用户。

优选地,所述第一用户数据加密存储步骤中所述第一服务器生成相匹配的密文索引和数据第一提取令牌后,还生成数据完整性校验码,并将所述数据完整性校验码存储至所述第五服务器;

在所述第一用户数据提取步骤中所述第五服务器从所述云存储平台提取密文数据后,先通过数据完整性校验码进行密文数据完整性验证,再将所述密文数据发送给所述第一服务器。

优选地,所述第一服务器为第一用户数据建立索引关键词,包括:

所述第一服务器根据所述第一用户数据的内容信息和元数据信息为所述第一用户数据建立索引关键词,所述第一用户数据的元数据信息包括文件名、文件扩展名和日期。

优选地,所述第一用户数据加密存储步骤中在步骤s6之后,还包括:

所述第一服务器删除所述第一用户数据加密的密钥信息和所述第一用户数据信息。

优选地,所述第一用户数据提取步骤中在步骤a9之后,还包括:

所述第一服务器删除所述第一用户数据解密的密钥信息和所述第一用户数据信息。

本发明实施例中,包括位于云计算环境中的第一服务器、第五服务器、第四服务器、第三服务器和第二服务器,引入第一服务器进行数据加解密操作,并负责建立索引关键词信息以及根据索引关键词通过加密算法生成相匹配的密文索引和数据提取第一令牌,基于数据提取第一令牌生成数据提取第二令牌,将该数据提取第二令牌发送给第一用户,将数据提取第一令牌发送给第四服务器,将密文索引和密文数据存储地址存储至第三服务器,也即,通过第四服务器保存数据提取第一令牌,第三服务器保存密文索引和密文数据存储地址,当第二用户需要提取第一用户的用户数据时,通过数据提取第二令牌从第四服务器中获得数据提取第一令牌,在通过数据提取第一令牌从第三服务器中获得密文索引和密文数据存储地址,该方式中第五服务器不存储密文索引和密文数据存储地址,避免了第五服务器受到攻击时,密文索引和密文数据存储地址的泄露,从而提高了数据共享的安全性。另外,第二用户若想获得第一用户的数据时,需通过数据提取第一令牌和数据提取第二令牌的两次验证,从而提高了数据共享的安全性。再者,第一用户数据以密文形式存储于云存储平台上,有效地保证了第一用户的数据安全,防止了第一用户数据被恶意篡改或泄漏问题。且第一用户需要共享数据时,只需要将数据提取第二令牌给第二用户,第二用户可凭此数据提取第二令牌从第五服务器中提取数据,可省去第一用户下载数据、解密数据等操作,节省了第一用户的工作量,实现了在云计算环境中的第一用户数据共享。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种云计算数据共享系统的框图;

图2为本发明实施例提供一种云计算数据共享中用户数据存储的流程示意图;

图3为本发明实施例提供一种云计算数据共享中用户数据提取的流程示意图。

附图标记说明:1、第一用户;2、第二用户;3、第一服务器;4、云存储平台;5、第二服务器;6、第三服务器;7、第四服务器;8、第五服务器。

具体实施方式

本发明实施例提供一种云计算数据共享系统,包括第一用户、第二用户、第一服务器、云存储平台、第二服务器、第三服务器、第四服务器和第五服务器;该第一服务器为第一用户数据建立索引关键词,并通过加密算法为对该索引关键词生成密文索引和数据提取第一令牌;基于该数据提取第一令牌生成的与该数据提取第一令牌相匹配的数据提取第二令牌;对该第一用户数据进行加密处理得到密文数据,并将该密文数据存储至云存储平台,将该密文索引和密文数据存储地址存储至该第三服务器,并将该数据提取第二令牌发送给该第一用户,将该数据提取第一令牌发送给该第四服务器;该第四服务器用于管理该数据提取第一令牌,将该数据提取第一令牌与该数据提取第二令牌进行匹配,当匹配成功时,并将该数据提取第一令牌发送给该第五取服务器;该第三服务器用于管理该密文索引和该密文数据存储地址,在收到该数据提取第一令牌后,根据该数据提取第一令牌与该密文索引进行匹配,当匹配成功时,并将该密文索引和该密文数据存储地址发送给该第五服务器;该第五服务器,根据该密文数据存储地址和该密文索引从该云存储平台提取该密文数据,将该密文数据发送给该第一服务器进行数据解密,并将解密后的明文数据发送给该第二用户;该第二服务器为该第一用户生成、管理和维护密钥信息,该密钥信息包括与加解密数据对应的数据加密密钥以及与该密文索引对应的索引加密密钥。从而解决现有技术中云计算数据共享时用户将自己的加密数据从云存储平台下载到本地再解密后传给他人的方式不灵活,以及由其他人通过数据存储地址和密钥自行下载解密进行共享存在安全隐患的问题。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示例性的示出了本发明实施例提供的云计算数据共享系统的框图,该云计算数据共享系统包括第一用户1、第二用户2、第一服务器3、云存储平台4、第二服务器5、第三服务器6、第四服务器7和第五服务器8。

具体地,该第一服务器3为该第一用户数据建立索引关键词,并通过加密算法为对该索引关键词生成密文索引和的数据提取第一令牌;基于该数据提取第一令牌生成的与该数据提取第一令牌相匹配的数据提取第二令牌;对该第一用户数据进行加密处理的得到密文数据,并将所述密文数据存储至云存储平台4,将该密文索引和密文数据存储地址存储至该第三服务器6,并将该数据提取第二令牌发送给该第一用户1,将该数据提取第一令牌发送给该第四服务器7;该第四服务器7用于管理该数据提取第一令牌,在收到该数据提取第二令牌后,将该数据提取第一令牌与该数据提取第二令牌进行匹配,当匹配成功时,并将该数据提取第一令牌发送给该第五服务器8;该第三服务器用于管理6该密文索引和该密文数据存储地址,在收到该数据提取第一令牌后,根据该数据提取第一令牌与该密文索引进行匹配,当匹配成功时,并将该密文索引和该密文数据存储地址发送给该第五服务器8;该第五服务器8根据该密文数据存储地址和该密文索引从该云存储平台提取该密文数据,将该密文数据发送给该第一服务器进行数据解密,并将解密后的明文数据发送给该第二用户2;该第二服务器5为该第一用户生成、管理和维护密钥信息,该密钥信息包括与加解密数据对应的数据加密密钥以及与该密文索引对应的索引加密密钥,且数据提取第一令牌与密文索引相匹配。

需要说明的是,第四服务器7和第三服务器6设置权限,该权限只用于服务器访问第四服务器7和第三服务器6,用户无法访问第四服务器7和第三服务器6,从而保证了第一令牌和密文索引以及密文数据存储地址的安全性,进而提高数据共享的安全性。

其中,设置第一用户数据加密存储步骤中第一服务器3还生成数据完整性校验码,并将数据完整性校验码存储至第五服务器8;在第一用户数据提取步骤中从云存储平台4提取数据后,第五服务器8根据数据完整性校验码进行数据完整性验证,验证数据完整后再通过第一服务器3解密等后续操作,代理第一用户完成数据完整性验证,进一步提高云计算环境数据共享的安全性。

另外,设置第一用户数据加密存储步骤中第一服务器3根据第一用户数据的内容信息和元数据信息为第一用户数据建立索引关键词信息,该信息建立方法简单直接,并使得不同的用户数据所对应建立的索引关键词不相同,索引关键词的重复性低,提高建立的索引关键词信息的精度,提高了数据信息安全性能。

再者,设置第一用户数据加密存储步骤中第一服务器3对建立的索引关键词信息采用索引加密密钥通过可搜索加密算法进行加密生成相匹配的密文索引和数据提取第一令牌,密文索引存储至第五服务器中3,使得数据索引使用可搜索加密算法以密文的形式存储在第五服务器上,即使第五服务器也不知道所提取的数据任何信息,进一步提高了数据共享的安全性能。

可选地,设置用户数据加密存储步骤中第一服务器3将数据提取令牌发送给用户后,删除第一服务器3中的第一用户数据加密的密钥信息和第一用户数据信息,节省了第一服务器3的空间,第一服务器3无需保存和知晓所提取的数据任何信息,有效地保证了用户数据的安全性能。

本发明实施例提供了一种云计算数据共享的方法,参见图2,该方法包括:第一用户数据加密存储步骤和第一用户数据提取步骤。

该第一用户数据加密存储步骤包括:

步骤201:该第一服务器接收该第一用户提出的数据存储请求,并向该第二服务器提出密钥请求。

步骤202:该第二服务器为该第一用户生成密钥,并将该密钥返回给该第一服务器,该密钥包括数据加密密钥和索引加密密钥。

步骤203:该第一服务器为第一用户数据建立索引关键词,并对该索引关键词和该第一用户数据分别采用索引加密密钥和数据加密密钥进行加密生成密文索引和密文数据,同时生成与该密文索引匹配的数据提取第一令牌;基于该数据提取第一令牌生成与该数据提取第一令牌相匹配的数据提取第二令牌。

其中,该第一服务器为第一用户数据建立数据索引关键具体操作为:该第一服务器根据该第一用户数据的内容信息和元数据信息为该第一用户数据建立索引关键词,该第一用户数据的元数据信息包括文件名、文件扩展名和日期。

步骤204:该处理服务器生成数据完整性校验码,并将所述数据完整性校验码存储至第五服务器。

步骤205:该第一服务器将第一用户数据进行加密处理得到密文数据,并将该密文数据发送至云存储平台。

步骤206:该云存储平台将该密文数据存储地址返还给该第一服务器。

步骤207:该第一服务器将该密文索引和该密文数据存储地址发送给第三服务器,将该数据提取第二令牌发送给该第一用户,将该数据提取第一令牌发送给第四服务器。

步骤208:该第一服务器删除该第一用户数据加解密的密钥信息和该第一用户数据信息。

在执行完第一用户数据加密存储步骤后执行第一用户数据提取步骤,第一用户数据提取步骤是第一用户将数据共享给合作伙伴第二用户时,第二用户提取数据的过程,优选流程如图3所示,具体包括下述步骤:

步骤301:该第一用户向该第二用户发送该数据提取第二令牌。

步骤302:该第二用户向该第五服务器发送该数据提取第二令牌。

步骤303:该第五服务器接收到该数据提取第二令牌后,将该数据提取第二令牌发送给第四服务器。

步骤304:该第四服务器接收到该数据提取第二令牌后,将该数据提取第二令牌与该数据提取第一令牌进行匹配,当匹配成功时,执行下述步骤。

需要说明的是,第四服务器接收到数据提取第二令牌后,将该数据提取第二令牌与该数据提取第一令牌进行匹配,当匹配不成功时,发送该数据提取第二令牌不合法的信息给第五服务器,第五服务器拒绝该第二用户的访问。

步骤305:该第四服务器将该数据提取第一令牌发送给该第五服务器,该第五服务器接收到该数据提取第一令牌后,将该数据提取第一令牌发送给该第三服务器。

步骤306:该第三服务器将该数据提取第一令牌与该密文索引进行匹配,当匹配成功时,执行下述步骤。

需要说明的是,该第三服务器将该数据提取第一令牌与该密文索引进行匹配,当匹配不成功时,发送该数据提取第一令牌不合法的信息给第五服务器,第五服务器拒绝该第二用户的访问。

步骤307:该第三服务器将该密文索引和该密文数据存储地址发送给该第五服务器,该第五服务器根据该密文索引和该密文数据存储地址从该云存储平台提取该密文数据。

步骤308:第五服务器根据数据完整性校验码来验证密文数据的完整性,若验证到密文数据完整时执行下述步骤,若验证到密文数据不完整则无需执行后续步骤,直接向第二用户提示数据不完整。

步骤309:该第五服务器将该密文数据发送给该第一服务器,该第一服务器将该密文数据进行解密,并将解密后的明文数据发送给该第五服务器。

其中,该第一服务器将该密文数据进行解密时,第一服务器向第二服务器提出密钥请求;第二服务器查询所需数据解密密钥,该数据解密密钥通常与数据加密密钥相同,当然也可以不相同;然后第二服务器将数据解密密钥发送给第一服务器;第一服务器根据收到的数据和数据解密密钥进行解密操作。

步骤310:该第五服务器将该明文数据发送给该第二用户。

步骤311:该第一服务器删除该第一用户数据解密的密钥信息和该第一用户数据信息。

在本发明云计算环境数据共享方法中,若有非第一用户授权的其他用户欲提取第一用户加密存储的数据时,如用户c将持有的另一数据提取令牌提交至第五服务器,提出第一用户数据提取请求,此时第五服务器验证数据提取令牌的不合法,则无需执行后续数据提取步骤,直接向用户c提示数据提取令牌不合法,拒绝该用户c的数据提取请求。

本发明实施例中,包括位于云计算环境中的第一服务器、第五服务器、第四服务器、第三服务器和第二服务器,引入第一服务器进行数据加解密操作,并负责建立索引关键词信息以及根据索引关键词通过加密算法生成相匹配的密文索引和数据提取第一令牌,基于数据提取第一令牌生成数据提取第二令牌,将该数据提取第二令牌发送给第一用户,将数据提取第一令牌发送给第四服务器,将密文索引和密文数据存储地址存储至第三服务器,也即,通过第四服务器保存数据提取第一令牌,第三服务器保存密文索引和密文数据存储地址,当第二用户需要提取第一用户的用户数据时,通过数据提取第二令牌从第四服务器中获得数据提取第一令牌,在通过数据提取第一令牌从第三服务器中获得密文索引和密文数据存储地址,该方式中第五服务器不存储密文索引和密文数据存储地址,避免了第五服务器受到攻击时,密文索引和密文数据存储地址的泄露,从而提高了数据共享的安全性。另外,第二用户若想获得第一用户的数据时,需通过数据提取第一令牌和数据提取第二令牌的两次验证,从而提高了数据共享的安全性。再者,第一用户数据以密文形式存储于云存储平台上,有效地保证了第一用户的数据安全,防止了第一用户数据被恶意篡改或泄漏问题。且第一用户需要共享数据时,只需要将数据提取第二令牌给第二用户,第二用户可凭此数据提取第二令牌从第五服务器中提取数据,可省去第一用户下载数据、解密数据等操作,节省了第一用户的工作量,实现了在云计算环境中的第一用户数据共享。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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