云端数据的保护方法与流程

文档序号:15358288发布日期:2018-09-05 00:17阅读:198来源:国知局

本发明涉及云端信息保护技术领域,尤其是涉及一种云端数据的保护方法。



背景技术:

由于信息量的日渐庞大,本地的数据存储设备常常已经不能满足用户的存储需求,因此,越来越多的用户将数据保存在云端服务器中;通常,用户通过登录口令访问云端服务器上的个人云存储空间;但这种访问方式的机制过于单一,一旦口令泄露或者被破解,用户存储在云端服务器中的数据即被非法侵入;另外,用户可以通过云端平台的密钥管理系统对存储的数据进行加密,但由于加密的密钥对应平台提供,因此,用户的个人数据存在被平台本身非法访问的可能性,数据的安全性依然较低。



技术实现要素:

有鉴于此,本发明的目的在于提供一种云端数据的保护方法,以提高云端数据的安全性。

第一方面,本发明实施例提供了一种云端数据的保护方法,该方法应用于云端服务器,包括:接收用户身份信息对应的第一密文;第一密文为公钥加密用户身份信息得到的;通过公钥对应的私钥,解密第一密文,得到用户身份信息;验证用户身份信息是否合法;如果是,通过用户身份信息解密第二密文,得到数据保护密钥;第二密文由用户预先存储的云端服务器中;用户与用户身份信息对应;根据数据保护密钥,对用户的云端数据进行加密或解密处理。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述用户身份信息至少包括所述用户设置的口令、面部特征值、指纹特征值、时间戳、校验编码中的一种或多种。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,验证用户身份信息是否合法的步骤,包括:判断用户身份信息和参考身份信息是否相匹配;如果是,确认用户身份信息合法;参考身份信息预先存储在云端服务器中。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,通过用户身份信息解密第二密文,得到数据保护密钥的步骤,包括:将用户身份信息的摘要值作为解密密钥,采用用户指定的第一密码算法解密第二密文,得到数据保护密钥。

结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,根据数据保护密钥,对用户的云端数据进行加密处理的步骤,包括:将数据保护密钥作为加密密钥,采用用户指定的第二密码算法加密用户的云端数据,得到云端数据的第三密文;将第三密文保存至云端服务器。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述方法还包括:向用户发送第一验证码;接收用户身份信息对应的第一密文的步骤,包括:接收用户身份信息、第二验证码和云端数据对应的第一密文;第一密文为公钥加密用户身份信息、第二验证码和云端数据得到的。

结合第一方面的第五种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中,通过公钥对应的私钥,解密第一密文,得到用户身份信息的步骤,包括:通过公钥对应的私钥,解密第一密文,得到身份信息、第二验证码和云端数据;判断第二验证码与第一验证码是否匹配,如果是,执行验证用户身份信息是否合法的步骤。

第二方面,本发明实施例还提供一种云端数据的保护装置,该装置设置于云端服务器;装置包括:接收模块,用于接收用户身份信息对应的第一密文;第一密文为公钥加密用户身份信息得到的;第一解密模块,用于通过公钥对应的私钥,解密第一密文,得到用户身份信息;验证模块,用于验证用户身份信息是否合法;第二解密模块,用于如果用户身份信息合法,通过用户身份信息解密第二密文,得到数据保护密钥;第二密文由用户预先存储的云端服务器中;用户与用户身份信息对应;加密解密模块,用于根据数据保护密钥,对用户的云端数据进行加密或解密处理。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,验证模块,还用于:判断用户身份信息和参考身份信息是否相匹配;如果是,确认用户身份信息合法;参考身份信息预先存储在云端服务器中。

第三方面,本发明实施例还提供一种云端服务器,包括:存储器和处理器,其中,存储器用于存储一条或多条计算机指令,一条或多条计算机指令被处理器执行,以实现上述云端数据的保护方法。

本发明实施例带来了以下有益效果:

本发明实施例提供的一种云端数据的保护方法、装置和云端服务器,云端服务器接收到第一密文后,采用对应的私钥解密该第一密文,得到用户身份信息;验证该用户身份信息合法后,通过该用户身份信息解密第二密文,得到数据保护密钥;进而再根据该数据保护密钥,对用户的云端数据进行加密或解密处理。该方式中,用户可以通过自定义的用户身份信息,对数据保护密钥进行加密,实现了密钥对、用户身份信息和数据保护密钥的逐层保护,既可以避免非法者访问云端数据,也可以避免云端服务器平台本身读取用户的云端数据,提高了云端数据的安全性。

本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。

附图说明

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

图1为本发明实施例提供的一种云端数据的保护方法的流程图;

图2为本发明实施例提供的另一种云端数据的保护方法的流程图;

图3为本发明实施例提供的云端数据保护方式的示意图;

图4为本发明实施例提供的另一种云端数据的保护方法的流程图;

图5为本发明实施例提供的一种云端数据的保护装置的结构示意图;

图6为本发明实施例提供的一种云端服务器的结构示意图。

具体实施方式

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

考虑到现有的云端数据的保护方式安全性较低的问题,本发明实施例提供了一种云端数据的保护方法、装置和云端服务器;该技术可以应用于云存储、云计算、云安全等多种云服务平台系统的数据保护中;该技术可以采用相关的软件或硬件实现,下面通过实施例进行描述。

参见图1所示的一种云端数据的保护方法的流程图;该方法应用于云端服务器;该方法包括如下步骤:

步骤s102,接收用户身份信息对应的第一密文;该第一密文为公钥加密用户身份信息得到的;

用户在与云端服务器进行通信的过程中,常常会在云端服务器留下相关数据,例如,上传保存在云端服务器的数据、查询记录、应用使用痕迹等;这些云端数据常常会与用户的账户信息相关联,保存在该用户对应的存储区域中。

上述用户身份信息至少包括用户设置的口令、面部特征值、指纹特征值、时间戳、校验编码中的一种或多种。其中,口令可以包含数字、文字或符号,或者其中任意多种形式的组合;面部特征值可以为用户的面部图像数据经特征提取后获取到的数据;该面部图像数据可以包含面部整体,也可以仅包含面部的局部,例如,仅包括五官,或仅包括一半面部等;在进行面部特征提取时,用户也可以设定指定的特征,例如,提取面部的纹理特征、五官比例特征、形态学特征等;该面部特征值可以为一维、二维或多维矩阵等。

上述指纹特征值可以为用户指定手指的图像数据经特征提取后获取到的数据;在进行指纹特征提取时,通常需要将图像数据进行滤波后,提取指纹的细节特征,该细节特征包括指纹末梢点、分叉点等;该指纹特征值也可以为一维、二维或多维矩阵等,具体形式不做限定。上述时间戳可以为用户指定的文件经加密后形成的凭证文档,可以用于表明该文件的生成时间;时间戳的具体形式可以为一个字符序列,该字符序列可以用来唯一地标识某一刻的时间。上述校验编码也可以称为验证码。

步骤s104,通过公钥对应的私钥,解密该第一密文,得到用户身份信息;

通常,用户在申请访问云端服务器时,云端服务器会分配给用户一个云端服务器的公钥,用户端采用公钥对上传的数据进行加密,生成密文;云端服务器接收到该密文后,会采用该云端服务器公钥对应的私钥对密文进行解密,从而得到数据的明文。

步骤s106,验证该用户身份信息是否合法;

云端服务器可以预先存储有该用户的参考身份信息;为了验证当前用户是否具有访问云端服务器中指定云端数据的权限,可以将接收到的用户身份信息与该参考身份信息进行匹配;当用户身份信息中的信息的种类、数量均相同,且每种信息的匹配程度大于设定阈值时,则可以确认当前的用户身份信息合法,当前用户具有访问指定云端数据的权限。

为了避免用户b使用预先保存在用户终端内的用户a的用户身份信息,去访问属于用户a的云端数据,向云端服务器发送的用户身份信息中,可以携带有生成该用户身份信息的时间信息,例如,通过该用户身份信息生成的时间戳;云端服务器在验证用户身份信息之前,可以先对该用户身份信息的生成时间进行核对,如果生成时间早于当前时间的设定时间段,则可以认定该用户身份信息已过期,属于不合法信息。

步骤s108,如果是,通过用户身份信息解密第二密文,得到数据保护密钥;第二密文可以为用户注册时,系统用用户身份信息加密数据保护密钥生成的,并预先存储在云端服务器中;用户与用户身份信息对应;

数据保护密钥可以由用户预先设置,也可以是用户注册时,系统随机生成,再经该用户对应的用户身份信息加密后,得到第二密文;该第二密文再上传至云端服务器;用户访问云端服务器时,其用户身份信息被验证合法后,再使用当前上传的用户身份信息解密该第二密文,从而得到上述数据保护密钥。

步骤s110,根据该数据保护密钥,对用户的云端数据进行加密或解密处理。

例如,用户需要向云端服务器上传数据,可以通过该数据保护密钥进行加密,生成对应的密文,再将该密文保存在云端服务器中;用户需要从云端服务器读取数据时,可以通过该数据保护密钥解密对应的密文,得到对应的明文,再读取该明文至用户终端。通常,上述数据保护密钥为对称密钥,以便于使用相同的数据保护密钥对云端数据进行加密和解密。

本发明实施例提供的一种云端数据的保护方法,云端服务器接收到第一密文后,采用对应的私钥解密该第一密文,得到用户身份信息;验证该用户身份信息合法后,通过该用户身份信息解密第二密文,得到数据保护密钥;进而再根据该数据保护密钥,对用户的云端数据进行加密或解密处理。该方式中,用户可以通过自定义的用户身份信息,对数据保护密钥进行加密,实现了密钥对、用户身份信息和数据保护密钥的逐层保护,既可以避免非法者访问云端数据,也可以避免云端服务器平台本身读取用户的云端数据,提高了云端数据的安全性。

参见图2所示的另一种云端数据的保护方法的流程图;该方法在图1中所示方法基础上实现,该方法应用于云端服务器;该实施例中,以用户向云端服务器上传云端数据为例进行说明;该方法包括如下步骤:

步骤s202,向用户发送第一验证码;

步骤s204,接收用户身份信息、第二验证码和云端数据对应的第一密文;该第一密文为公钥加密用户身份信息、第二验证码和云端数据得到的。

步骤s206,通过公钥对应的私钥,解密第一密文,得到身份信息、第二验证码和云端数据;

步骤s208,判断第二验证码与第一验证码是否匹配,如果是,执行步骤s212;如果否,执行步骤s210;

步骤s210,向用户发送验证码校验失败的信息;

例如,上述第一验证码可以为图片形式的验证码,上述第二验证码可以为该图片上显示的数字、字母、汉字等字符串;如果用户发送的第二验证码与第一验证码不匹配,则向用户发送验证码校验失败的信息,以提示用户重新输入第二验证码,并再次发送第一密文;通过该第一验证码和第二验证码可以确认云端服务器接收到的第一密文是否有效。

步骤s212,判断用户身份信息和参考身份信息是否相匹配;该参考身份信息预先存储在云端服务器中。如果是,执行步骤s216;如果否,执行步骤s214;

步骤s214,向用户发送用户身份信息匹配失败的信息;

步骤s216,确认用户身份信息合法;将用户身份信息的摘要值作为解密密钥,采用用户指定的第一密码算法解密第二密文,得到数据保护密钥。

步骤s218,将数据保护密钥作为加密密钥,采用用户指定的第二密码算法加密用户的云端数据,得到云端数据的第三密文;

参见图3所示的云端数据保护方式的示意图;密码机用于生成密钥对,该密钥对用于保护用户身份信息;密码机属于密码硬件安全产品,存储密钥的安全性由密码机自身保证,密码机内可以安全存储云端配置的密钥;用户终端采用公钥加密用户身份信息,云端服务器采用对应的私钥解密用户身份信息;再采用用户身份信息作为密钥,对数据保护密钥进行密码保护;采用用户身份信息解密得到数据保护密钥后,再采用该数据保护密钥对用户上传的云端数据进行加密,或用户预访问的云端数据进行解密。

步骤s220,将第三密文保存至云端服务器。

用户在发送用户身份信息时,可以将该第一密码算法和第二密码算法的算法种类标识携带在用户身份信息中;为了提高云端数据的安全性,该一密码算法和第二密码算法通常需要及时更新,以防止算法被破解。例如,可以定时向用户发送提示信息,以提示用户更换算法种类。

上述第一密码算法和第二密码算法均可采用对称密码算法实现,该对称密码算法包括但不限于sm4算法,des(dataencryptionstandard,数据加密标准)算法,3des(tripledataencryptionstandard,三重数据加密标准)算法,tdea(tripledataencryptionalgorithm,三重数据加密算法)算法,blowfish算法,rc5算法,idea算法等。

上述云端数据的保护方法,用户可以通过自定义的用户身份信息,对数据保护密钥进行加密,实现了密钥对、用户身份信息和数据保护密钥的逐层保护,既可以避免非法者访问云端数据,也可以避免云端服务器平台本身读取用户的云端数据,提高了云端数据的安全性。

参见图4所示的另一种云端数据的保护方法的流程图;该方法在上述图1或图2所示方法基础上实现;该方法由用户终端(也可以称为客户端)和云端服务器交互实现;该方法包括如下步骤:

步骤s402,云端服务器向用户终端发送验证码;该验证码用于确认从客户端接收信息的有效性。

步骤s404,用户终端生成用户自定义信息(相当于上述用户身份信息),该用户自定义信息包括但不限于口令、特征值、验证码等。

步骤s406,用户终端通过公钥加密该用户自定义信息,生成用户自定义信息的密文。

步骤s408,用户终端向云端服务器提交该用户自定义信息的密文、用户待存储在云端服务器的信息及验证码对应信息。

步骤s410,云端服务器通过云端服务器的私钥解密用户自定义信息、确认验证码对应信息的正确性,将云端数据库中保存的用户自定义信息与解密的用户自定义信息进行比较,如果二者一致,则确定用户终端发送用户自定义信息正确。

步骤s412,云端服务器以用户自定义信息作为密钥,解密保存在云端的用户保护密钥(相当于上述数据保护密钥),生成用户保护密钥的明文。

步骤s414,云端服务器通过用户保护密钥加密待存储在云端服务器的信息,生成该信息的密文;将该信息的密文保存在该用户终端对应用户的独立空间中。

上述方式中,用户自定义使用一种或多种信息的组合成关键码作为登录认证的凭证,使用平台公钥加密保护凭证数据上传到云端;通过用户自定义信息加密保护密钥;再通过保护密钥加密保护云端信息。通过以上逐层保护,一方面保证存储在云端个人信息的安全,另一方面确保云端的个人信息只有本人才能使用,其他任何人(云端系统包括开发和运维人员)都无法解密使用提高了云端数据的安全性。

对应于上述方法实施例,本发明实施例提供了一种云端数据的保护装置,如图5所示,该装置包括:

接收模块50,用于接收用户身份信息对应的第一密文;第一密文为公钥加密用户身份信息得到的;

第一解密模块51,用于通过公钥对应的私钥,解密第一密文,得到用户身份信息;

验证模块52,用于验证用户身份信息是否合法;

第二解密模块53,用于如果用户身份信息合法,通过用户身份信息解密第二密文,得到数据保护密钥;第二密文由用户预先存储的云端服务器中;用户与用户身份信息对应;

加密解密模块54,用于根据数据保护密钥,对用户的云端数据进行加密或解密处理。

上述验证模块,还用于:判断用户身份信息和参考身份信息是否相匹配;如果是,确认用户身份信息合法;参考身份信息预先存储在云端服务器中。

本发明实施例提供的一种云端数据的保护装置,云端服务器接收到第一密文后,采用对应的私钥解密该第一密文,得到用户身份信息;验证该用户身份信息合法后,通过该用户身份信息解密第二密文,得到数据保护密钥;进而再根据该数据保护密钥,对用户的云端数据进行加密或解密处理。该方式中,用户可以通过自定义的用户身份信息,对数据保护密钥进行加密,实现了密钥对、用户身份信息和数据保护密钥的逐层保护,既可以避免非法者访问云端数据,也可以避免云端服务器平台本身读取用户的云端数据,提高了云端数据的安全性。

本实施例提供了一种与上述方法实施例相对应的一种云端服务器。图6为该云端服务器的结构示意图,如图6所示,该云端服务器包括存储器100和处理器101;其中,存储器100用于存储一条或多条计算机指令,一条或多条计算机指令被处理器执行,以实现上述云端数据的保护方法,该方法可以包括以上方法中的一种或多种。

进一步,图6所示的云端服务器还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。

其中,存储器100可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。

本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述云端数据的保护方法,具体实现可参见方法实施例,在此不再赘述。

本发明实施例所提供的云端服务器,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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