一种安全云盘系统及其安全加密方法与流程

文档序号:12278740阅读:647来源:国知局
一种安全云盘系统及其安全加密方法与流程

本发明属于计算机技术领域,尤其涉及一种安全云盘系统及其安全加密方法。



背景技术:

随着信息技术与智能终端的快速发展,云盘广泛应用于各个领域。使用云盘的用户每天都会产生大量数据文件,很多都涉及到个人与企业的机密或隐私,因此数据安全问题是云盘的关键。目前,虽然大多云盘为用户提供了一些安全解决方案,但云盘服务端实际上是不可信的,主动权都不在用户手中,一些专业人员或管理员可轻易获取数据文件,用户处于被动状态,容易导致大量用户数据泄密事件的发生。也有用户手动对数据先行加密,再上传到云盘,这样虽然用户具有控制权,但由于加密后的数据文件仍有被暴力破解的可能,而且频繁存取过程使得手动加密解密的过程较为复杂,带来不便。同时,由于移动办公等需求,用户经常会在不同的电脑或操作平台上访问云盘,这就导致数据文件在传输操作环境中无法得到可靠的安全隔离,存在明显的泄露风险。如何让用户真正的掌握云服务的安全主动权,既快捷方便又保障数据的安全使用,是摆在我们的一个重要课题。



技术实现要素:

本发明的目的是针对上述现有技术的不足,提供一种移动便携、能够让用户享有云盘存储数据的主动控制权,更加安全可靠的安全云盘系统及其安全加密方法。

为实现本发明的目的所采用的技术方案是:一种安全云盘系统,包括微主机、密钥Key、云安全管理中心和云盘池,其中,所述云安全管理中心包括服务端和客户端,服务端通过网络与微主机相连,微主机和密钥Key配合连接,微主机通过云安全管理中心的客户端与云盘池连接,所述服务端包括密钥模块、用户管理模块、安全模块和存储模块,主要用于密钥信息(KI)和用户注册认证的管理,所述客户端包括身份信息模块、虚拟磁盘模块、加解密模块、数据分割编码模块、负载均衡模块、信息管理模块和云盘管理模块,主要用于对数据的处理和对云盘的数据存取,所述云盘池包括若干私有云盘或公众云盘,主要用于提供云储存并扩容云端存储器数量,私有云盘是面向特定用户且不对外开放的云存储器,公众云盘是面向公众并对所有人群开放的云存储器。

所述密钥Key为包括设有硬件唯一标示码(KID)的加密芯片、控制器和存储器的移动存储设备,采用硬件加密手段保护用户的数据和信息安全。

所述微主机为包括中央处理器、EMMC内存、SSD存储器、输入输出端口、WiFi模块和显示模块的移动智能设备,主要用于为密钥Key的使用、数据的操作传输提供安全可靠的排他性隔离环境。

所述密钥模块主要用于对应密钥Key的密钥信息(KI)和登录口令的管理,并参与云密钥在服务端的处理。

所述用户管理模块主要用于用户的注册认证、用户唯一标识(UID)、合法权限、权限范围、时间和次数的管理。

所述安全模块,主要负责用户管理、密钥信息(KI)和登录口令的安全保障,有效防重放、防篡改等攻击。

所述存储模块,主要用于信息数据库的存储。

所述识别管理模块,主要用于识别管理密钥Key等移动设备在微主机上的接入许可,能够排除非法接入设备对系统的侵入。

所述虚拟磁盘模块,加载寄存在微主机EMMC内存中,退出或关闭立即撤销,负责为用户提供虚拟化的本地逻辑存储空间,便于用户对数据进行本地操作,降低频繁的网络请求,可以提高用户数据操作环境的绝对安全性,防止因病毒或木马导致的泄密事件。

所述数据分割冗余模块,用于对存储数据进行分块分割和编码冗余处理,完整数据被随机分割成份数不同且大小不等的若干数据碎片,并将分割产生的若干数据碎片进行冗余化处理,能够有效解决云盘数据丢失,提高云盘存储数据的可靠性。同时,也为数据的并行传输提供了前提条件,能够有效改善数据的存取效率。

所述负载均衡模块,主要用于将任务合理分配,使整个系统负载平衡,从而提高系统对数据的整体处理能力,能够实时监控并根据云盘和网络的性能指标以及数据分割情况分配存储任务,优化不同云盘存储资源的利用率,提高云盘同步并行存取数据的效率,有效增强系统整体存取数据的性能。

所述加解密模块,主要用于对存储数据进行加解密处理并参与云密钥在客户端的处理,为用户提供实时自动的文件加解密处理,进一步提高数据的安全机密性。

所述信息管理模块,主要用于数据的控制信息管理,控制信息分别为文件分割信息(FSEI)和文件存储目录信息(FSLI),通过将存储数据本身和数据控制信息进行分离,以实现存储数据的控制权转移,控制信息存储于密钥Key中,即使存储数据本身在云盘端泄露,由于缺少对应的控制信息,仍不能对数据存取使用,从技术层面上打消用户对于云盘存储数据的安全疑虑。

所述云盘管理模块,主要用于为私有云盘和公众云盘提供统一云盘接口,实现云盘池,对接入系统的云盘进行处理,便于用户数据的管理,能够根据用户操作和系统各模块反馈的信息对指定的单个云盘或多个云盘进行特定操作,能够保障数据分割冗余模块产生的数据碎片存入多个云盘的不同云存储器,保障不会在任何一个云盘上找到数据的所有碎片,从机制上保证储数据的机密性和隐私性。

本发明还进一步提供一种基于安全云盘系统的安全加密方法,该方法包括以下步骤:

(1)用户将未注册的密钥Key插入微主机,微主机通过云安全管理中心的客户端对接入的密钥Key先进行识别管理,识别不正确则拒绝操作,识别正确则向云安全管理中心的服务端发起注册请求;

(2)服务端对用户提供的注册信息进行审核,审核通过则根据密钥Key的硬件唯一标示码(KID)产生用户唯一标识UID并存储在服务端,同时生成用户关键信息,用户关键信息包括但不仅限于密钥信息(KI)、用户信息P和登录口令C,审核失败则中止操作;

(3)服务端对密钥Key做初始化设定,并向密钥Key存储写入用户关键信息,完成密钥Key的注册;

(4)用户使用步骤(3)完成注册的密钥Key并插入微主机,微主机通过云安全管理中心的客户端对接入的密钥Key先进行识别管理,识别不正确则拒绝操作,识别正确则向云安全管理中心的服务端发起登录请求;

(5)服务端对客户端发来的登录请求进行用户关键信息和UID与KID的检索核准,核准通过则进入步骤(6),反之则中止操作;

(6)客户端从密钥Key中获取以下信息:硬件唯一标示码KID、用户信息P、注册时间T、有效期E、随机数R;

(7)客户端根据当前时间生成时间戳Tu,并将时间戳Tu和步骤(6)中获取的信息结合判断用户身份合法性,不匹配或过期则失败,正确则客户端通过SM3算法将KID和用户信息P加密,生成得到密钥A,A=KID&P;再通过SM4算法将用户信息P、注册时间T、有效期E、时间戳Tu和随机数R加密,生成得到密文B,B=A&P&T&E&Tu&R,客户端将密文B连同协议头一起发送给服务端,该段协议头中包含有KID信息;

(8)服务端通过解析协议头得到KID,再通过KID在服务端查找对应的用户信息P,服务端通过SM3算法将KID和用户信息P加密,生成得到密钥C,如密钥C=密钥A,服务端则通过SM4算法解密密文B得到用户信息P、注册时间T、有效期E、时间戳Tu和随机数R;如密钥C≠密钥A,则失败;

(9)服务端通过获得的时间戳Tu进行校验判断,如偏离当前服务器时间±3min则被认为超时请求,从而失败,未超时则根据服务端获取的有效期E判断是否过期,过期则失败,未过期则调用服务端存储的用户唯一标识UID;

(10)服务端再根据当前时间生成新时间戳Ts,服务端对随机数R 做+n运算,得到新随机数Rn,再通过SM3算法加密新随机数Rn,生成得到密钥K,K=Rn;再通过SM4算法将UID 、新随机数Rn和新时间戳Ts加密,得到密文D,D=K&UID&Rn&Ts;服务端将密文D连同协议头一起发送给服务端,该段协议头中包含有新随机数Rn信息;

(11)客户端通过解析协议头得到新随机数Rn,客户端通过SM3算法加密新随机数Rn,生成得到密钥J;如密钥J=密钥K,客户端则通过密钥K解密密文D,得到UID 、新随机数Rn和新时间戳Ts,并对新随机数Rn做-n运算,得到随机数R,如密钥J≠密钥K,则失败;

(12)客户端通过获得的新时间戳Ts进行校验判断,如偏离当前客户端时间±3min则被认为超时请求,从而失败,未超时则判断随机数R是否改变,改变则失败,未改变则认证通过,客户端得到UID,将UID与步骤(6)获得的KID通过sm3算法加密成密文,得到云密钥V;

(13) 上传数据时,云安全管理中心的虚拟磁盘模块在微主机上产生一个虚拟的逻辑磁盘,用户先在虚拟的逻辑磁盘上对数据进行临时操作,云安全管理中心的数据分割编码模块将虚拟磁盘上的用户数据随机分成若干份大小不等的数据碎片,并对每份数据碎片进行冗余处理,信息管理模块同时生成文件分割信息(FSEI),然后加解密模块使用步骤(6)——步骤(12)实时运算得来的云密钥V对每份数据碎片进行加密,再通过云盘管理模块连接云盘池,每份加密后的碎片文件经负载均衡模块处理后随机分散并行上传至多个云盘的不同云存储器上,信息管理模块生成文件存储目录信息(FSLI),信息管理模块通过微主机将碎片文件的文件分割信息(FSEI)和文件存储目录信息(FSLI)写入密钥Key内,完成数据的上传;

(14)下载数据时,云安全管理中心的数据管理模块从密钥Key中获得碎片文件的文件分割信息(FSEI)和文件存储目录信息(FSLI),云盘管理模块连接云盘池,再根据文件存储目录信息(FSLI)经负载均衡模块处理后从多个云盘的不同云存储器上将对应的数据碎片下载到虚拟磁盘中,加解密模块通过步骤(6)——步骤(12)实时运算得来的云密钥V对所有的数据碎片进行解密,解密后得到的数据碎片再经过数据分割编码模块根据文件分割信息(FSEI)组合并进行冗余校验,校验有误则进行冗余处理,校验无误后则重新生成数据明文本身并存放在虚拟磁盘中,完成数据的下载。

按照上述方案获得的一种安全云盘系统及其安全加密方法,用户仅需通过密钥Key和微主机操作客户端将数据直接上传即可,多重安全加密措施均在后台为用户自动完成,密钥Key和微主机做为用户可控设备,是完全可信的,且微主机为密钥Key和用户提供了安全隔离的传输操作环境,避免了接入设备的不稳定因素而导致的泄密。密钥Key本身也具备硬件加密措施,能有效降低随意使用密钥Key带来的安全风险。系统内各组件之间多重识别校验和认证过程,提高了整个系统的关联性和安全性,即使云安全管理中心和云盘能够被黑客攻破或出现泄露,但由于云密钥是系统内各组件的高度参与和通过安全加密方法实时运算得到的,就算获取了KID和UID,也不能获取正确的云密钥,更不可能验证通过,因此用户数据安全性更高。同时,云盘池利用了云存储的分布式特点并充分扩大了云盘存储对象数目,数据在被分割加密后,分散存储于多个云盘的不同云存储器上,导致不仅破解所有云盘的难度大,且即使破解成功,由于文件分割信息(FSEI)和文件存储目录信息(FSLI)是在密钥Key上,掌握在用户手中,所以无法完全获取数据碎片的组成,通过暴力破解并获得原始数据的可能性极低。具有能够让用户享有对云盘数据存储的主动控制权,且移动便携,安全加密性十分突出的特点。

附图说明

图1是本发明的结构框图。

图2是本发明的注册流程图。

图3是本发明的登录流程图。

图4是本发明的安全加密方法流程图。

图5是本发明的上传数据和下载数据流程图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

参看图1,本发明的一种安全云盘系统,该系统包括微主机2、密钥Key1、云安全管理中心3和云盘池4,其中,所述云安全管理中心3包括服务端3-1和客户端3-2,服务端3-1通过网络与微主机2相连,微主机2和密钥Key1配合连接,微主机2通过云安全管理中心的客户端3-2与云盘池连接,所述服务端3-1包括密钥模块、用户管理模块、安全模块和存储模块,主要用于密钥信息(KI)和用户注册认证的管理,所述客户端3-2包括身份信息模块、虚拟磁盘模块、加解密模块、数据分割编码模块、负载均衡模块、信息管理模块和云盘管理模块,主要用于对数据的处理和对云盘的数据存取。所述密钥Key1包括固设有硬件唯一标示码(KID)的加密芯片、控制器和存储器,采用硬件加密手段保护用户的数据和信息安全。所述微主机2包括中央处理器、EMMC内存、SSD存储器、输入输出端口、WiFi模块和显示模块,主要用于为密钥Key的使用、数据的操作传输提供安全可靠的排他性隔离环境。所述云盘池包括若干私有云盘或公众云盘,主要用于提供云存储并扩容云端存储器数量,私有云盘是面向特定用户且不对外开放的云存储器,公众云盘是面向公众并对所有人群开放的云存储器。

所述密钥模块主要用于对应密钥Key的密钥信息(KI)和登录口令的管理,并参与云密钥在服务端的处理。

所述用户管理模块主要用于用户的注册认证、用户唯一标识(UID)、合法权限、权限范围、时间和次数的管理。

所述安全模块,主要负责用户管理、密钥信息(KI)和登录口令的安全保障,有效防重放、防篡改等攻击。

所述存储模块,主要用于信息数据库的存储。

所述识别管理模块,主要用于识别管理密钥Key等移动设备在微主机上的接入许可,能够排除非法接入设备对系统的侵入。

所述虚拟磁盘模块,加载寄存在微主机EMMC内存中,退出或关闭立即撤销,负责为用户提供虚拟化的本地逻辑存储空间,便于用户对数据进行本地操作,降低频繁的网络请求,可以提高用户数据操作环境的绝对安全性,防止因病毒或木马导致的泄密事件。

所述数据分割冗余模块,用于对存储数据进行分块分割和编码冗余处理,完整数据被随机分割成份数不同且大小不等的若干数据碎片,并将分割产生的若干数据碎片进行冗余化处理,能够有效解决云盘数据丢失,提高云盘存储数据的可靠性。同时,也为数据的并行传输提供了前提条件,能够有效改善数据的存取效率。

所述负载均衡模块,主要用于将任务合理分配,使整个系统负载平衡,从而提高系统对数据的整体处理能力,能够实时监控并根据云盘和网络的性能指标以及数据分割情况分配存储任务,优化不同云盘存储资源的利用率,提高云盘同步并行存取数据的效率,有效增强系统整体存取数据的性能。

所述加解密模块,主要用于对存储数据进行加解密处理并参与云密钥在客户端的处理,为用户提供实时自动的文件加解密处理,进一步提高数据的安全机密性。

所述信息管理模块,主要用于数据的控制信息管理,控制信息分别为文件分割信息(FSEI)和文件存储目录信息(FSLI),通过将存储数据本身和数据控制信息进行分离,以实现存储数据的控制权转移,控制信息存储于密钥Key中,即使存储数据本身在云盘端泄露,由于缺少对应的控制信息,仍不能对数据存取使用,从技术层面上打消用户对于云盘存储数据的安全疑虑。

所述云盘管理模块,主要用于为私有云盘和公众云盘提供统一云盘接口,实现云盘池,对接入系统的云盘进行处理,便于用户数据的管理,能够根据用户操作和系统各模块反馈的信息对指定的单个云盘或多个云盘进行特定操作,能够保障数据分割冗余模块产生的数据碎片存入多个云盘的不同云存储器,保障不会在任何一个云盘上找到数据的所有碎片,从机制上保证储数据的机密性和隐私性。

参看图2、图3、图4、图5,一种基于安全云盘系统的安全加密方法,包括以下步骤:

如图2,注册时,用户将未注册的密钥Key插入微主机,微主机通过云安全管理中心的客户端对接入的密钥Key先进行识别管理,识别不正确则拒绝操作,识别正确则向云安全管理中心的服务端发起注册请求;服务端对用户提供的注册信息进行审核,审核通过则根据密钥Key的硬件唯一标示码(KID)产生用户唯一标识UID并存储在服务端,同时生成用户关键信息,用户关键信息包括但不仅限于密钥信息(KI)、用户信息P和登录口令C,审核失败则中止操作;服务端对密钥Key做初始化设定,并向密钥Key存储写入用户关键信息,得到已注册的密钥Key,完成注册。

如图3,登录时,用户将已注册的密钥Key并插入微主机,微主机通过云安全管理中心的客户端对接入的密钥Key先进行识别管理,识别不正确则中止操作,识别正确则向云安全管理中心的服务端发起登录请求;服务端对客户端发来的登录请求进行用户关键信息和UID与KID匹配核准,核准通过则登陆完成,反之则中止操作。

如图4,安全加密运算时,客户端从密钥Key中获取以下用户关键信息:硬件唯一标示码KID、用户信息P、注册时间T、有效期E、随机数R;客户端根据当前时间生成时间戳Tu,并将时间戳Tu和步骤(6)中获取的信息结合判断用户身份合法性,不匹配或过期则失败,正确则客户端通过SM3算法将KID和用户信息P加密,生成得到密钥A,A=KID&P;再通过SM4算法将用户信息P、注册时间T、有效期E、时间戳Tu和随机数R加密,生成得到密文B,B=A&P&T&E&Tu&R,客户端将密文B连同协议头一起发送给服务端,该段协议头中包含有KID信息;服务端通过解析协议头得到KID,再通过KID在服务端查找对应的用户信息P,服务端通过SM3算法将KID和用户信息P加密,生成得到密钥C,如密钥C=密钥A,服务端则通过SM4算法解密密文B得到用户信息P、注册时间T、有效期E、时间戳Tu和随机数R;如密钥C≠密钥A,则失败;服务端通过获得的时间戳Tu进行校验判断,如偏离当前服务器时间±3min则被认为超时请求,从而失败,未超时则根据服务端获取的有效期E判断是否过期,过期则失败,未过期则调用服务端存储的用户唯一标识UID;服务端再根据当前时间生成新时间戳Ts,服务端对随机数R 做+n运算,得到新随机数Rn,再通过SM3算法加密新随机数Rn,生成得到密钥K,K=Rn;再通过SM4算法将UID 、新随机数Rn和新时间戳Ts加密,得到密文D,D=K&UID&Rn&Ts;服务端将密文D连同协议头一起发送给服务端,该段协议头中包含有新随机数Rn信息;客户端通过解析协议头得到新随机数Rn,客户端通过SM3算法加密新随机数Rn,生成得到密钥J;如密钥J=密钥K,客户端则通过密钥K解密密文D,得到UID 、新随机数Rn和新时间戳Ts,并对新随机数Rn做-n运算,得到随机数R,如密钥J≠密钥K,则失败;客户端通过获得的新时间戳Ts进行校验判断,如偏离当前客户端时间±3min则被认为超时请求,从而失败,未超时则判断随机数R是否改变,改变则失败,未改变则认证通过,客户端得到UID,将UID与步骤(6)获得的KID通过sm3算法加密成密文,最终得到云密钥V。

如图5,上传数据时,云安全管理中心的虚拟磁盘模块在微主机上产生一个虚拟的逻辑磁盘,用户先在虚拟的逻辑磁盘上对数据进行临时操作,云安全管理中心的数据分割编码模块将虚拟磁盘上的用户数据随机分成若干份大小不等的数据碎片,并对每份数据碎片进行冗余处理,信息管理模块同时生成文件分割信息(FSEI),然后加解密模块使用实时运算得来的云密钥V对每份数据碎片进行加密,再通过云盘管理模块连接云盘池,将每份加密后的碎片文件经负载均衡模块处理后随机分散并行上传至多个云盘的不同云存储器上,信息管理模块生成文件存储目录信息(FSLI),信息管理模块通过微主机将碎片文件的文件分割信息(FSEI)和文件存储目录信息(FSLI)写入密钥Key内,完成数据的上传。下载数据时,云安全管理中心的数据管理模块从密钥Key中获得碎片文件的文件分割信息(FSEI)和文件存储目录信息(FSLI),云盘管理模块网络连接云盘池,再根据文件存储目录信息(FSLI)经负载均衡模块处理后从多个云盘的不同云存储器上将对应的数据碎片下载到虚拟磁盘中,加解密模块通过实时运算得来的云密钥V对所有的数据碎片进行解密,解密后得到的数据碎片再经过数据分割编码模块根据文件分割信息(FSEI)组合并进行冗余校验,校验有误则进行冗余处理,校验无误后则重新生成数据明文本身并存放在虚拟磁盘中,供用户使用或拷贝,用户退出或关闭后虚拟磁盘自动卸载并清除数据。

本发明的特点在于不仅仅是单纯将密钥Key和微主机作为安全终端,而是将其与云安全管理中心和云盘池组成系统,整个系统的组件在安全加密的过程中缺一不可。其优点在于即使云安全管理中心和云盘端能够被黑客攻破或出现泄露,从中获取了KID和UID,但由于缺失密钥Key和微主机参与脱密过程,仍然无法得到完整的安全加密方法,没有完整的安全加密方法就不能获取正确的云密钥,因此用户数据不可能获得,反之亦然,而同时破解本系统内所有组件的可能性不高。并且,云盘池利用了云存储的分布式特点,进一步扩容了云存储的终端数量,数据在被分割加密后,分散存储于多个云盘的不同云存储器上,导致不仅破解所有云盘的难度大,且即使破解成功,文件分割信息(FSEI)和文件存储目录信息(FSLI)存储在密钥Key上,掌握在用户手中,因此也无法完全获取数据碎片的组成,通过暴力破解并获得原始数据的可能性极低。具有移动便携、能够让用户享有云盘存储数据的主动控制权,避免数据泄露,安全加密性十分突出的效果。

本发明的技术方案并不限制于本发明所述的实施例的范围内。本发明未详尽描述的技术内容均为公知技术。

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