本发明涉及云计算服务领域,尤其涉及一种云端数据保护的方法、服务器装置和客户端装置。
背景技术:
::随着云服务技术快速的发展,越来越多的用户选择将自己的数据存储在云端服务器上。随之而来的云数据的安全问题已成为用户最为关切的问题,云数据安全可分为云存储安全和云传输安全。当用户将数据上传到云端后,用户失去了对云端数据的控制。而对云端数据进行控制的云服务提供商的可信度,对用户而言是无法得知的。如果云服务提供商是可信的,那用户放在云端的数据就处于安全状态;如果云服务提供商是不可信的,那云端的用户数据就是不安全的。在云服务提供商和用户间都需要传输数据,但在目前开放的互联网环境下,数据传输安全已成为云计算服务中最薄弱的环节。技术实现要素:为了提高云产品中数据的安全性,本发明提供了一种云端数据保护的方法、服务器装置和客户端装置。第一方面,本发明提供一种云端数据保护的方法,所述方法包括:对初始密钥进行加密,发送至客户端;接收客户端根据所述初始密钥生成的加密文件;存储所述加密文件。第二方面,本发明提供一种云端数据保护的方法,所述方法包括:接收服务器发送的初始密钥;根据所述初始密钥生成加密文件;发送所述加密文件至服务器。第三方面,本发明提供一种云端数据保护的服务器装置,所述装置包括:发送初始密钥模块,用于对初始密钥进行加密,发送至客户端;接收加密文件模块,用于接收客户端根据所述初始密钥生成的加密文件;存储加密文件模块,用于存储所述加密文件。第四方面,本发明提供一种云端数据保护的客户端装置,所述装置包括:接收初始密钥模块,用于接收服务器发送的初始密钥;加密密文生成模块,用于根据所述初始密钥生成加密文件;发送加密密文模块,用于发送所述加密文件至服务器。本发明通过对客户端与服务器传输的数据进行加密,保障了传输数据的安全,且将服务器存储的是密文,保障了存储的数据不会轻易被篡改。为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的云端数据保护的方法的流程示意图;图2为本发明另一实施例提供的云端数据保护的方法的流程示意图;图3为本发明实施例提供的服务器装置的框图;图4为本发明实施例提供的发送初始密钥模块的框图;图5为本发明实施例提供的客户端装置的框图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。现实的大部分云产品中,用户的数据依然是以明文形式存在,只是通过简单的用户认证和完全网络传输协议来维护用户数据的安全。然而,这类方式将导致数据的安全性低并且消耗的成本也大。为了解决上述问题,本发明实施例提供了一种云端数据保护的方法、服务器装置和客户端装置。如图1所示,图1为本发明实施例提供的云端数据保护的方法的流程示意图。图1中,该方法包括:步骤101,对初始密钥进行加密,发送至客户端。具体为,对初始密钥进行rsa加密,并将加密后的初始密钥发送至客户端。步骤102,接收客户端根据初始密钥生成的加密文件。具体为,客户端有个上传按钮,要上传的文件会放在上传文件队列里面等待上传。初始密钥与客户端上传的文件的标识符进行关联,并对标识符标识的文件进行加密,生成加密文件,客户端对加密文件进行传输,服务器接收该加密文件。本发明实施例不对文件的格式加以限定。步骤103,存储加密文件。具体为,将客户端发来的加密文件,存储在服务器。本发明实施例通过对客户端与服务器传输的数据进行加密,保障了传输数据的安全,且服务器存储的是密文,保障了存储的数据不会轻易被篡改。基于上述实施例的内容,作为一种可选实施例:对初始密钥进行加密,发送至客户端包括:根据哈希函数,对用户信息进行加密,生成初始密钥;对初始密钥加密;将加密的初始密钥发送至客户端。具体为,运用杂凑运算,即哈希函数对用户的登录信息或注册信息进行加密,其中用户的登录信息或注册信息包括:用户id号、用户密码、用户的登录信息或注册信息的时间戳、随机数。对用户id号、用户密码、用户的登录信息或注册信息的时间戳、随机数进行哈希运算后生成初始密钥。对初始密钥进行rsa加密运算,将加密后的初始密钥发送至客户端。本发明实施例通过哈希函数,对用户信息进行加密生成初始密钥,并将加密后的初始密钥发送至客户端,保障服务器和客户端传输的数据保密和安全性。基于上述实施例的内容,作为一种可选实施例:对初始密钥进行加密,发送至客户端包括:提取初始密钥的消息摘要;对消息摘要进行加密,生成签名;对初始密钥和签名进行加密;将加密后的签名和初始密钥发送至客户端。具体为,每个初始密钥对应唯一的消息摘要,根据md5消息摘要算法对初始密钥进行消息摘要提取,得到提取后的消息摘要,之后使用服务器的私钥对该消息摘要加密,生成签名。服务器利用客户端公钥,对该签名和初始密钥一起进行加密,并将加密后的签名和初始密钥作为密文发送至客户端。本发明实施例通过对服务器向客户端发送的数据加密,保证传输数据的安全性。根据本发明的另一方面,本发明实施例还提供一种云端数据保护的方法,如图2所示,该方法包括:步骤201,接收服务器发送的初始密钥。具体为,客户端接收服务器发送的初始密钥,其中,初始密钥都是进行过rsa加密的。步骤202,根据初始密钥生成加密文件。具体为,客户端对初始密钥利用私钥解密,得到解密后的初始密钥。客户端对要上传的文件会放在上传文件队列里面等待上传,并根据sql语言将解密后的初始密钥和客户端上传的文件的标识符进行关联,得到关联表达式。例如:上传文件的标识符为fd,将fd和解密后的初始密钥运用数据库关联,此时可以通过关于fd的sql语言表达式来查询到对应初始密钥,sql语句如下:selectkeyfromtable(数据库表)wherefd=xxx;其中xxx指fd具体的值;使用解密后的初始密钥和aes加密算法对fd标识的文件进行加密,得到加密文件。需要说明的是,本发明实施例将所有的关联表达式存储在客户端的密钥数据库中。步骤203,发送加密文件至服务器。具体为,客户端将加密密文发送至服务器,用户对密文进行下载。其中,在进行下载文件时,只需要先提取标识符fd,然后通过标识符fd获取到对应初始密钥。由于不同登录时期上传的文件对应着不同的初始密钥,所以在找到初始密钥后,其对应的加密文件即是需要下载的文件。最后用aes加密算法对下载的文件进行解密。本发明实施例通过将解密后的初始密钥和客户端上传的文件的标识符进行关联,进而保证在得到初始密钥后,能够找到唯一对应的加密文件。基于上述实施例的内容,作为一种可选实施例:还包括:接收服务器发送的加密签名;对签名进行解密,得到解密消息摘要;发送解密消息摘要至服务器。具体为,在客户端接收服务器发来的初始密钥的同时,还接收了在服务器中进行加密后的签名。客户端使用服务器的公钥对该签名进行解密,得到解密消息摘要。将解密消息摘要发送到服务器,用于服务器判断该解密消息摘要和服务器中原有的加密消息摘要是否完全相同,当服务器接收的解密消息摘要和原有的加密消息摘要相比有改变,则说明消息在传输过程中发生了变化。本发明实施例通过得到解密消息摘要,并与原有的加密消息摘要进行比较,得知消息是否被改变了,进而保证了消息的完整性。根据本发明的又一方面,本发明实施例还提供一种云端数据保护的服务器装置,参见图3,图3为本发明实施例提供的服务器装置的框图。该装置用于在前述各实施例中进行云端数据保护的形成。因此,在前述各实施例中云端数据保护的方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。如图所示,该装置包括:发送初始密钥模块301,用于对初始密钥进行加密,发送至客户端;接收加密文件模块302,用于接收客户端根据初始密钥生成的加密文件;存储加密文件模块303,用于存储加密文件。本发明实施例通过对客户端与服务器传输的数据进行加密,保障了传输数据的安全,且将服务器存储的是密文,保障了存储的数据不会轻易被篡改。基于上述实施例的内容,作为一种可选实施例:如图4所示,发送初始密钥模块301包括:初始密钥生成单元3011,用于根据哈希函数,对用户信息进行加密,生成初始密钥;初始密钥加密单元3012,用于对初始密钥加密;发送加密初始密钥单元3013,用于将加密的初始密钥发送至客户端。本发明实施例通过哈希函数,对用户信息进行加密生成初始密钥,并将加密后的初始密钥发送至客户端,保障服务器和客户端传输的数据保密和安全性。基于上述实施例的内容,作为一种可选实施例:发送初始密钥模块包括:提取单元,用于提取初始密钥的消息摘要;签名生成单元,用于对消息摘要进行加密,生成签名;初始密钥和签名加密单元,用于对初始密钥和签名进行加密;发送单元,用于将加密后的签名和初始密钥发送至客户端。本发明实施例通过对服务器向客户端发送的数据加密,保证传输数据的安全性。本发明实施例提供的装置是用于执行上述各方法实施例的,具体的流程和详细介绍请参见上述各方法实施例,此处不再赘述。根据本发明的又一方面,本发明实施例还提供一种云端数据保护的客户端装置,参见图5,图5为本发明实施例提供的客户端装置的框图。该装置用于在前述各实施例中进行云端数据保护的形成。因此,在前述各实施例中云端数据保护的方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。如图所示,该装置包括:接收初始密钥模块501,用于接收服务器发送的初始密钥;加密密文生成模块502,用于根据初始密钥生成加密文件;发送加密密文模块503,用于发送加密文件至服务器。本发明实施例通过将解密后的初始密钥和客户端上传的文件的标识符进行关联,进而保证在得到初始密钥后,能够找到唯一对应的加密文件。基于上述实施例的内容,作为一种可选实施例:还包括:接收加密签名模块,用于接收服务器发送的加密签名;解密消息摘要确定模块,用于对签名进行解密,得到解密消息摘要;发送解密消息摘要模块,用于发送解密消息摘要至服务器。本发明实施例通过得到解密消息摘要,并与原有的加密消息摘要进行比较,得知消息是否被改变了,进而保证了消息的完整性。本发明实施例提供的装置是用于执行上述各方法实施例的,具体的流程和详细介绍请参见上述各方法实施例,此处不再赘述。本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12当前第1页12