一种数据加密方法及加密装置与流程

文档序号:19156590发布日期:2019-11-16 00:52阅读:247来源:国知局
一种数据加密方法及加密装置与流程

本发明属于信息安全领域,具体涉及一种数据加密方法及加密装置。



背景技术:

随着信息时代和网络时代的到来,人们每天需要使用各类信息系统来处理生活中的事物,人们处于永远“在线”的状态,时刻将生活方方面面的信息数字化并通过网络传输出去。然而,人们在享受现代信息技术的同时,频发的网络泄密事件也引起了人们对个人隐私的普遍担心。多家大型网站都出现了服务器遭受攻击,用户密码泄露的情况,甚至有些网站的用户信用卡信息也发生了泄露,这让我们意识到服务提供商在攻击面前也未必可靠。而棱镜事件的曝光更让我们发现很多大型服务提供商也是不可信的,我们的电子邮件、传输的文档、视频、语音交流、银行账户等信息都毫无保留地暴露在外。而广泛使用的openssl协议的漏洞威胁到了各大网站,说明网络信道也充满了危险。信息时代,隐私已经成为一个非常重要的课题,很好的保护隐私才能保护个人、团体的名誉、财产及安全。

现有常见的加密形式为在客户端主机上安装操作系统内核底层驱动,来查验和控制对文件的访问。主要流程为:首先,通过设置的文件系统文件访问过滤功能,得到访问文件的进程号及名字;其次,根据文件访问规则,判断该进程访问是否合法。

但是,上述技术方案并不是理想的方案,主要有以下原因:

1)任何对操作系统内核层的修改都是非常复杂且极易出错的,尤其是在最普遍的windows操作系统上;

2)多平台支持差,因为必须为不同的操作系统提供不同的内核驱动。实际上,国内常见的几款数据加密软件都只支持windows客户端;

3)即使同一个客户端平台上,如果操作系统的升级带来了操作系统内核改动,就有可能导致之前版本的内核驱动无法运行或出现异常,最可怕的是“无察觉的数据损坏”;

4)一个数据保护软件的所有模块都运行在客户端上,这些软件模块就有可能被恶意软件或病毒破坏、失效,从而彻底丧失对数据的保护。

为了解决上述结束问题,发明人之前的发明专利(cn109643281a)公开了一种数据加密和解密的系统和方法。上述专利提供独立于主机以外的数据加密和解密的系统和方法。上述专利中主机不需要将大量的计算资源转移到数据加密和解密活动中去;数据加密和解密活动受主机限制较少,不需要在主机上安装重量级加密和解密软件;用户数据以加密格式存储在主机上,与其他小工具相比,主机通常配备有更多的存储空间;数据安全性得到增强,因为甚至主机的超级用户可能也无法访问存储在主机上的数据;数据加密和加密对于访问数据的用户来说可以是透明的,从而减少用户管理和控制数据安全性所需的努力。但是,上述专利仍然存在如下技术缺陷:1)其加密和解密系统和设备应用于局域网内,没有涉及云端部署;2)其数据加密平台是独立于客户端之外的物理机,没有提出用虚拟机实现加密平台;3)上述专利主要涉及数据加解密,即被动防御,对于主动防御(例如:对加密盘中已解锁的加密数据的保护)并未涉及;4)其数据加密平台存在部署成本高、主动防御功能弱的缺陷。

因此,为解决上述问题,设计一款能够有效解决在云环境中,尤其是公有云平台上的数据安全问题,并加强对已解锁的加密数据主动保护的数据加密方法和加密装置就显的尤为必要。



技术实现要素:

本发明的目的是提出一种能够实现主动防御和云端部署的数据加密方法及加密装置,具体采用如下的技术方案:

一种数据加密方法,所述方法通过独立的加密服务器实现对客户端主机内的数据进行加密,所述方法包括以下步骤:

客户端主机向加密服务器发送加密盘解锁请求;

所述加密服务器验证加密盘解锁请求,加密盘解锁请求获准,打开存储设备内的加密盘;

应用程序对加密盘内的数据进行访问;其中,访问前,加密服务器对访问的应用程序实施访问控制许可;访问时,加密服务器先对被访问数据进行解密,应用程序再对解密数据进行访问;

对存盘数据进行加密,并将加密数据写入存储设备;

客户端主机向加密服务器发送关闭加密盘请求,加密盘关闭。

进一步地,所述加密服务器运行于客户端主机内虚拟机中或运行于公有云平台上。

进一步地,所述存储设备包括客户端主机内的存储设备、与客户端主机连接的移动存储设备或者虚拟存储设备。

进一步地,所述加密服务器包括访问控制模块和访问控制模块客户端;所述访问许可控制的具体步骤为:

解密数据中的文件f被客户端主机访问时,所述访问控制模块会得到文件f的信息,同时,客户端主机的数据访问流程被暂停,等待加密服务器的访问控制许可;

所述访问控制模块将文件f的信息发送给运行于客户端主机上的访问控制模块客户端;

访问控制模块客户端根据文件f的信息在客户端主机上找到发起此次数据访问的进程信息,并将进程信息发送到访问控制模块;

根据用户设置的数据访问控制策略,访问控制模块做出此次数据访问是否应该被许可的决定;

如果访问被许可,数据访问如常运行;否则,客户端主机会得到访问失败的通知。

进一步地,客户端主机对数据访问结束后,加密服务器对加密数据进行备份。

进一步地,所述加密服务器对加密数据进行备份的步骤具体包括:

客户端主机向加密服务器发送数据1访问请求;

加密服务器经访问控制许可,向客户端主机发送数据1访问许可,进而客户端主机访问数据1;

访问数据1结束,客户端主机向加密服务器发送数据1访问结束请求;

加密服务器的备份模块对数据1进行备份;

备份模块对数据1备份完毕之后,加密服务器向客户端主机发送数据1结束请求许可,数据1访问结束;

重复上述步骤,直至客户端主机完成对所有加密数据的访问;

需要关闭加密盘时,客户端主机向加密服务器发送关闭加密盘请求;

加密服务器确认所有数据已经完成备份,向客户端主机发送关闭加密盘请求许可,则客户端主机关闭加密盘。

进一步地,实现上述数据加密方法的一种加密服务器,所述加密服务器包括访问控制模块、访问控制模块客户端和备份模块。

进一步地,一种加密服务器,所述服务器包括:

至少一个处理器;以及

存储器,所述存储器上存储有可执行指令,所述可执行指令由所述至少一个处理器执行,导致所述服务器实现如下方法:

接收客户端主机发送的加密盘解锁请求;

验证加密盘解锁请求,加密盘解锁请求获准,打开存储设备内的加密盘;

应用程序对加密盘内的数据进行访问;其中,访问前,加密服务器对访问的应用程序实施访问控制许可;访问时,加密服务器先对被访问数据进行解密,应用程序再对解密数据进行访问;

对存盘数据进行加密,并将加密数据写入存储设备;

接收客户端主机发送的关闭加密盘请求,加密盘关闭。

进一步地,一种计算机可读储存介质,包括可执行指令,所述指令被至少一个处理器执行时,实现如下方法:

接收客户端主机发送的加密盘解锁请求;

验证加密盘解锁请求,加密盘解锁请求获准,打开存储设备内的加密盘;

应用程序对加密盘内的数据进行访问;其中,访问前,所述介质对访问的应用程序实施访问控制许可;访问时,所述介质先对被访问数据进行解密,应用程序再对解密数据进行访问;

对存盘数据进行加密,并将加密数据写入存储设备;

接收客户端主机发送的关闭加密盘请求,加密盘关闭。

通过上述技术方案,本发明的技术方案具有如下优点和技术效果。

1)通过将加密服务器部署在公有云平台,用户可以获得不依赖于云平台提供商的数据保护能力。或者将加密服务器运行在客户端主机里的一个虚拟机中,实现完全替代并在功能上超越传统加密软件。

2)本申请通过访问控制功能能够优先化解来自网络内部和外部对数据安全的威胁,包括,内部威胁:防止未经许可的数据拷贝、发送;外部威胁:防止恶意软件对数据的访问,有效防范勒索软件。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,从而可依照说明书的内容予以实施,并且为了让本申请的上述和其他目的、特征和优点能够更明显易懂,以下以本申请的较佳实施例并配合附图详细说明如后。

根据下文结合附图对本申请具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述及其他目的、优点和特征。

附图说明

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

图1为本发明实施例1中数据加密方法的整体逻辑图;

图2为本发明实施例2中数据访问控制许可逻辑图;

图3为本发明实施例3中对加密数据备份逻辑图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。在下面的描述中,提供诸如具体的物料配置仅仅是为了帮助全面理解本申请的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本申请的范围和精神。另外,为了清除和简洁,实施例中省略了对已知功能和构造的描述。

本文中术语“至少一种”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和b的至少一种,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含。

实施例1

参见图1,一种数据加密方法,所述加密方法通过运行于客户端主机内虚拟机上的加密服务器实现,所述加密服务器与客户端主机通过客户端主机内的进程进行通信。

所述数据加密方法包括以下步骤:

客户端主机向加密服务器发送加密盘解锁请求;

所述加密服务器验证加密盘解锁请求,加密盘解锁请求获准,打开存储设备内的加密盘;

优选的,所述加密盘解锁请求包括但不限于数字解锁和生物解锁。

优选的,所述存储设备包括但不限于客户端主机的硬盘、与客户端主机连接的移动存储设备或者虚拟存储设备。

应用程序对加密盘内的数据进行访问,访问前,加密服务器对访问的应用程序实施访问控制许可;

值得注意的是:访问时,需要加密服务器先对数据进行解密,应用程序再对解密数据进行访问。

优选的,所述访问包括但不限于读取、修改、写入或新建。

对存盘数据进行加密,并将加密数据写入存储设备;

具体的,存盘数据是指应用程序访问盘内数据过程中产生的新的需要写入存储设备的数据。

客户端主机向加密服务器发送关闭加密盘请求,加密盘关闭。

通过将加密服务器运行在客户端主机里的一个虚拟机中,实现完全替代并在功能上超越传统加密软件。

可替换的,所述加密服务器还可运行于公有云平台上。通过将加密服务器部署在公有云平台,用户可以获得不依赖于云平台提供商的数据保护能力,包括在本专利中新加的访问控制功能。

实施例2

参见图1,所述加密服务器打开存储设备内的加密盘后,得到加密盘内的数据,为了加强对盘内数据的保护,避免盘内数据遭受网络内部或外部不明应用程序的攻击,加密服务器能够对访问数据的应用程序进行访问控制许可。具体为:

所述加密服务器包括访问控制模块和访问控制模块客户端。其中,

所述访问控制模块运行于加密服务器内,所述访问控制模块客户端运行于客户端主机内。

在此基础上,参见图2,所述加密服务器对盘内数据进行访问控制的具体过程如下:

所述客户端主机通过在加密盘上输入密码向加密服务器发送加密盘解锁请求;

所述加密服务器验证密码,客户端主机的加密盘解锁请求获准,解锁加密盘;

当客户端主机上的进程p试图打开加密盘中的文件f时,客户端主机向访问控制模块发送文件f打开请求,同时,客户端主机上的数据访问流程被暂停,以等待加密服务器的访问控制许可;

所述访问控制模块收到文件f打开请求,并将验证命令和文件f的名称发送至访问控制模块客户端;

所述访问控制模块客户端收到验证命令;

所述访问控制模块客户端在客户端主机上搜索所有进程,获得试图打开文件f的进程p的进程名,并将之发送给访问控制模块;

所述访问控制模块针对文件f类型,根据安全规则,确认进程p是否合法;

若进程p为合法进程,则访问控制模块发送文件f打开许可给客户端主机,文件f打开成功;若进程p为非法进程,则访问控制模块发送文件f打开失败命令给客户端主机,文件f打开失败。

实施例3

在实施例2的基础上,客户端主机打开加密盘之后,应用程序通过实施例2中的加密服务器的访问许可对盘内数据进行访问或者编辑之后,加密服务器需要对加密数据进行备份,以实现数据更新的保存和更新。

所述加密服务器进一步包括备份模块,以实现加密服务器对加密数据的备份。所述加密数据的备份方法,具体包括:

客户端主机打开加密盘并访问数据1,客户端主机向加密服务器发送数据1访问请求;

加密服务器根据实施例2中的访问控制许可方法,向客户端主机发送数据1访问许可,客户端主机访问数据1;

客户端主机访问数据1结束,客户端主机向加密服务器发送数据1访问结束请求;

加密服务器的备份模块对数据1进行备份;

备份模块对数据1备份完毕之后,加密服务器向客户端主机发送数据1结束请求许可,数据1访问结束。

依次类推,客户端主机完成对所有加密数据的访问。

客户端主机需要关闭加密盘时,客户端主机向加密服务器发送关闭加密盘请求;

加密服务器确认所有数据已经完成备份,向客户端主机发送关闭加密盘请求许可,则客户端主机关闭加密盘。

本发明中的加密服务器在加密数据的整个流程中,不需要修改客户端操作系统,极大降低软件复杂性,增强可靠性;而且,兼容性佳,即支持所有主流客户端操作系统,无惧操作系统升级。另外,客户端上的任何恶意软件无法危害加密服务器。同时,加密服务器可以校验客户端软件是否经过恶意修改,以保证客户端软件的决策可靠。

对所有公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其他实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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