本发明涉及面向数据恢复业务的数据传输系统及传输方法。
背景技术:
数据恢复业务生成的恢复数据文件数量、容量都很大,并且往往涉及企业或个人比较敏感的信息,此外数据恢复需要一定的操作周期,很难实时将恢复数据直接交付数据使用人。设计实现面向数据恢复业务的专用远程数据传输系统作为远程交付恢复数据的辅助手段将大大加速恢复数据的交付以及降低数据交付成本。
从恢复业务产生的数据来看,其需要交付的数据主要有如下特点:
1)交付的数据往往都是整盘数据,以目前的硬盘存储容量来说,交付的数据可能高达数百g字节;
2)交付的数据由大量的文件构成,百g容量包含了数以千万计的大小文件;
3)交付的数据由于经历了恢复过程,原始文件目录结构未必得以完整保留,实际数据业主可能只需要其中的某几个文件,但是由于目录结构的变化,在千万计的文件中使得查找变成一件非常困难的事情;
4)交付数据的隐私保护问题,当完成数据恢复业务以后,在交互客户之前会长时间保存在文件服务器上,容易造成用户隐私泄漏。
5)现有的文件传输系统,如ftp或者http等方式,在处理大量小文件时均有非常严重的性能缺陷,并且对于文件的检索和查找均缺乏必要的支持,此外,现有的文件传输系统在认证方面仅包含用户名和口令等方式,距离数据恢复业务需要支持的隐私保证具有一定的差距。
综上,导致现有文件传输系统交付的数据高达数百g字节,由大量的文件构成,包含了数以千万计的大小文件,查找困难,以及容易造成用户隐私泄漏。
技术实现要素:
本发明的目的是为了解决现有文件传输系统交付的数据高达数百g字节,由大量的文件构成,包含了数以千万计的大小文件,查找困难,以及容易造成用户隐私泄漏的问题,而提出面向数据恢复业务的专用远程数据传输系统及传输方法。
面向数据恢复业务的专用远程数据传输系统包括:
数据获取客户端子系统、传送代理子系统、交付数据存取子系统、交付数据存储子系统和数据恢复人员数据交付客户端子系统;
数据获取客户端子系统用于获取数据恢复人员数据交付客户端子系统持有的完成恢复的数据,供用户使用;
交付数据存取子系统用于对数据恢复人员数据交付客户端子系统提交过来的数据进行加密、索引以及存储操作,同时对数据获取客户端子系统的查询、浏览和获取请求进行应答,为用户提供访问数据的支持;
交付数据存储子系统用于存储交付数据存取子系统加密后的恢复数据,不直接面对数据获取客户端子系统和数据恢复人员数据交付客户端子系统;
传送代理子系统用于将交付数据存取子系统加密、索引以及存储后的数据传送给数据获取客户端子系统;
数据恢复人员数据交付客户端子系统用于数据获取客户端子系统远程浏览、检索和下载恢复后的数据。
面向数据恢复业务的专用远程数据传输方法具体过程为:
步骤一、数据恢复人员通过数据交付客户端子系统选择需要交付的数据的顶层目录,并设定数据需要交付的对象信息,并根据对象信息选择是否加密和全文搜索,如果选择加密,则数据交付客户端子系统引导数据恢复人员生成公私钥对,并引导数据恢复人员将私钥存入u盘或者u-key设备,通过数据交付客户端子系统将公钥和用户信息传递给交付数据存取子系统,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行加密和存储操作;
如果选择全文搜索,则数据交付客户端子系统引导数据恢复人员生成检索输入框,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行检索和存储操作;
如果不选择加密,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;
如果不选择全文搜索,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;
步骤二、当客户需要获取恢复后的数据时,客户通过数据获取客户端子系统连接传送代理子系统,提交客户的标识代码,由传输代理子系统将标识代码和请求转发到交付数据存取子系统,交付数据存取子系统对标识代码和请求的合法性进行判定,决定返回恢复后的数据或者拒绝。
本发明的有益效果为:
本发明采用数据获取客户端子系统、传送代理子系统、交付数据存取子系统、交付数据存储子系统和数据恢复人员数据交付客户端子系统,具备加密存储、传送以及支持文件检索功能。
其中数据获取客户端子系统用于获取数据恢复人员数据交付客户端子系统持有的完成恢复的数据,供用户使用;交付数据存取子系统是本系统的核心,用于对数据恢复人员数据交付客户端子系统提交过来的数据进行加密、索引以及存储等操作,同时对数据获取客户端子系统的查询、浏览和获取请求进行应答,为用户提供访问数据的支持;交付数据存储子系统为标准文件服务器,用于存储交付数据存取子系统加密后的恢复数据,不直接面对数据获取客户端子系统和数据恢复人员数据交付客户端子系统;传送代理子系统用于将交付数据存取子系统加密、索引以及存储后的数据传送给数据获取客户端子系统;作为面向数据恢复业务的专用远程数据获取系统的堡垒点暴露在网络上,用户获取恢复后的数据均通过传送代理完成,不能直接访问交付数据存取系统。数据恢复人员数据交付客户端子系统由请求进行数据恢复操作的远程数据业主持有,用于数据获取客户端子系统远程浏览、检索和下载恢复后的数据。
对于需要网络交付的数据,数据恢复人员通过数据交付客户端子系统选择需要交付的数据的顶层目录,并设定数据需要交付的对象信息,并根据对象信息选择是否加密和全文搜索,如果选择加密,则数据交付客户端子系统引导数据恢复人员生成公私钥对,并引导数据恢复人员将私钥存入u盘或者u-key设备,通过数据交付客户端子系统将公钥和相关用户信息传递给交付数据存取子系统,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行加密和存储操作;如果选择全文搜索,则数据交付客户端子系统引导数据恢复人员生成检索输入框,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行检索和存储操作;如果不选择加密,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;如果不选择全文搜索,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;
当客户需要获取恢复后的数据时,客户通过数据获取客户端子系统连接传送代理子系统,提交客户的标识代码,由传输代理子系统将标识代码和请求转发到交付数据存取子系统,交付数据存取子系统对标识代码(就是客户的用户名和口令的加密后的字段)和请求的合法性进行判定,决定返回恢复后的数据或者拒绝。
综上取得一下效果:
1)实现数据获取客户端、传送代理子系统和数据交付子系统的部分功能:
在这个阶段,除了用户标识(用户名和口令)使用加密传送以外,所有通信采取明文通信,交付数据按照恢复时的原始组织形式存在交付子系统上,由数据恢复人员将交付数据手工复制到交付数据存储子系统。在这个阶段完成恢复数据交付过程的自动化和隔离;
2)在1)基础上实现数据交付客户端,并实现所有数据的加密存储和传送:
在这个阶段,数据恢复人员使用专用客户端提交交付数据,在提交过程中,数据交付客户端会生成公私钥对,并将所有待交付数据提交存取子系统和使用公钥加密,并通过u盘等形式将密钥传递给指定的客户,客户使用客户端提交请求后交付数据存取子系统获取密文数据直接传递给用户,在用户的客户端使用用户u盘内的私钥解密后交付客户。在这个阶段完成数据的加密存储与传送;
3)在2)的基础上实现交付数据的全文检索引擎:
在这个阶段,客户可以在客户端直接对恢复后的数据进行全文检索,尤其是恢复数据没有完全恢复目录结构和文件名的情况下,全文检索会给用户带来极大的便利。
本发明可以通过检索的方式快速查找,查找简单,同时传输加密保障安全,不容易造成用户隐私泄漏,解决了现有文件传输系统交付的数据高达数百g字节,由大量的文件构成,包含了数以千万计的大小文件,查找困难,以及容易造成用户隐私泄漏的问题。
采用面向数据恢复业务的专用远程数据传输系统及传输方法交付恢复数据,比较传统人工交付,至少节省90%的时间,提供的检索查询功能可以使用户在1分钟内从10g恢复数据中找到需要的数据。
附图说明
图1为本发明面向数据恢复业务的远程数据获取系统模块构成示意图;
图2为本发明面向数据恢复业务的远程数据获取系统示意图。
具体实施方式
具体实施方式一:结合图1说明本实施方式,本实施方式的面向数据恢复业务的专用远程数据传输系统包括:
数据获取客户端子系统、传送代理子系统、交付数据存取子系统、交付数据存储子系统和数据恢复人员数据交付客户端子系统;
数据获取客户端子系统用于获取数据恢复人员数据交付客户端子系统持有的完成恢复的数据,供用户使用;
交付数据存取子系统是本系统的核心,用于对数据恢复人员数据交付客户端子系统提交过来的数据进行加密、索引以及存储等操作,同时对数据获取客户端子系统的查询、浏览和获取请求进行应答,为用户提供访问数据的支持;
交付数据存储子系统为标准文件服务器,用于存储交付数据存取子系统加密后的恢复数据,不直接面对数据获取客户端子系统和数据恢复人员数据交付客户端子系统;
传送代理子系统用于将交付数据存取子系统加密、索引以及存储后的数据传送给数据获取客户端子系统;作为面向数据恢复业务的专用远程数据获取系统的堡垒点暴露在网络上,用户获取恢复后的数据均通过传送代理完成,不能直接访问交付数据存取系统。
数据恢复人员数据交付客户端子系统由请求进行数据恢复操作的远程数据业主持有,用于数据获取客户端子系统远程浏览、检索和下载恢复后的数据。
所述交付数据指经数据恢复人员操作后,从客户待恢复介质中恢复出的、用户需要恢复的数据;
所述数据业主指提交待恢复数据介质,是恢复后数据的所有人。
从面向数据恢复业务的专用远程数据获取系统的整体结构来看,传送代理子系统为整个系统堡垒主机,其暴露在数据恢复业务内网和用户之间,用户能够直接连接的设备仅包含此连接代理。从网络部署的角度,传送代理子系统可以部署在整个系统的防火墙之外,传送代理和真正存储恢复数据的存储之间通过防火墙进行隔离,并且传输协议采用专用传输协议,这样,即使传输代理遭到攻击并陷落,也没有直接访问恢复后数据的通道,可以有效保护客户的数据隐私。图2展示了面向数据恢复业务的远程数据获取系统的部署情况。
根据项目的建设速度,可以分步骤实现所有设计功能,最终部署完成安全和便利的面向数据恢复业务的远程数据获取系统。依据功能的重要性,可以按照如下顺序逐步实现全部功能:
1)实现数据获取客户端、传送代理子系统和数据交付子系统的部分功能
在这个阶段,除了用户标识(用户名和口令)使用加密传送以外,所有通信采取明文通信,交付数据按照恢复时的原始组织形式存在交付子系统上,由数据恢复人员将交付数据手工复制到交付数据存储子系统。在这个阶段完成恢复数据交付过程的自动化和隔离;
2)在1)基础上实现数据交付客户端,并实现所有数据的加密存储和传送
在这个阶段,数据恢复人员使用专用客户端提交交付数据,在提交过程中,数据交付客户端会生成公私钥对,并将所有待交付数据提交存取子系统和使用公钥加密,并通过u盘等形式将密钥传递给指定的客户,客户使用客户端提交请求后交付数据存取子系统获取密文数据直接传递给用户,在用户的客户端使用用户u盘内的私钥解密后交付客户。在这个阶段完成数据的加密存储与传送;
3)在2)的基础上实现交付数据的全文检索引擎
在这个阶段,客户可以在客户端直接对恢复后的数据进行全文检索,尤其是恢复数据没有完全恢复目录结构和文件名的情况下,全文检索会给用户带来极大的便利。
具体实施方式二:本实施方式与具体实施方式一不同的是:所述数据恢复人员数据交付客户端子系统包括:
数据交付客户端运行在内网,供数据恢复人员交付数据使用。此客户端为数据恢复人员提供界面进行资源提交操作以及加密相关选项操作,并完成交付数据到存储系统的传送。
数据恢复人员数据交付客户端的功能描述:
数据交付客户端提供类似windows资源管理器的界面,数据恢复人员通过界面选择需要交付的数据的顶层目录,并设定这些数据需要交付的对象信息,如远端ip地址范围、用户名等等。并根据这些信息选择是否加密和全文搜索信息,如果选择加密,则数据交付客户端引导数据恢复人员生成公私钥对,并将私钥引导操作人员存入特定的u盘或者u-key设备。
当操作人员选择传送数据到存储时,客户端首选将公钥和相关用户信息传递给数据交付存取子系统,然后将待交付的数据传递给存取子系统,由存取子系统进行加密、存储和索引操作。需要指出的是,当交付数据被存取子系统保存到存储服务器上时,交付数据已经是加密格式,除非具有用户的私钥,否则无法查看任何数据。
用户ui管理模块、密钥生成管理模块、私钥存储管理模块、交付数据传送模块和密钥传送模块;
用户ui(用户界面)管理模块用于用户ui操作模块管理,包括选择目录结构,选择私钥保存设备,交付数据存取子系统信息管理和用户信息管理等等;
密钥生成管理模块用于生成加密数据所需的公私钥信息;
私钥存储管理模块用于对生成的私钥信息进行保存,保存方法包括u-key或者u盘;
交付数据传送模块用于将待交付的数据打包传送;
密钥传送模块用于把用户信息、密钥信息等传送到交付数据存取子系统;
所述用户信息为名称、单位在用户注册时的信息。
其它步骤及参数与具体实施方式一相同。
具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述交付数据存取子系统包括:
数据存取子系统是面向数据恢复业务的专用远程数据获取系统的核心,也是操作交付数据的访问的唯一接口,其功能包括加密管理、全文索引管理以及网络传送管理等等。
交付数据存取子系统的功能描述:
交付数据存取子系统连接面向数据恢复业务的专用远程数据获取系统的所有相关部件,其从交付客户端获收取待交付数据,将交付数据经过处理后存入文件存储子系统,当收到传送代理子系统转发过来的获取数据请求时,其对请求的合法性进行判定,并将合适的应答发送回代理系统。如果是请求数据,将从文件存储子系统获取相应的内容进行传送。
交付数据存取子系统的主要功能包括:
数据加密功能,能够依据公钥系统对待交付数据进行加密存储;
全文检索引擎,能够对待交付数据进行全文索引,并提供全文检索的引擎;
网络请求应答,能够接收网络请求,并对请求进行应答。具体来说,当接收到交付客户端的存储请求时,将调用相应加密和全文检索引擎的索引创建模块进行交付数据保存的请求相关操作;当接收到传送代理转发过来的全文检索请求时,其调用全文检索引擎对客户的待交付数据进行全文检索,并返回相应的检索内容;当接收到传送代理转发过来的数据获取请求时,将从存储子系统读取相应的内容进行回应。网络请求应答还包括交付数据目录结构浏览等功能。
交付数据存取子系统内部模块
用户信息认证和鉴权模块,数据浏览处理模块,数据获取请求处理模块,数据交付请求处理模块,数据加密引擎模块,全文检索引擎模块,全文索引引擎模块,公钥、用户信息管理模块和文件存储服务存取接口模块;
用户信息认证和鉴权模块用于对接收到的所有请求进行解析,提取所有请求中的用户认证信息,对用户的身份和请求的合法性进行验证;
数据浏览处理模块用于接收用户的浏览请求,并将用户请求浏览的目录结果进行回传;如果用户提交的检索请求,则调用全文检索引擎进行检索并返回全文检索的结果;数据获取请求处理模块用于接收用户请求的文件名和数据区段(文件名对应的文件在存储中的位置),并通过文件存储服务接口获取指定的数据(请求的文件名和数据区段),并回传;
数据交付请求处理模块用于听取交付人员的存储数据请求,首先将公钥和用户等信息进行存储,然后接收交付数据,根据配置(不同用户对应的公钥来对数据进行加密)调用数据加密引擎模块和全文检索引擎模块对交付数据进行处理,并使用文件存储服务存取接口对处理后交付数据进行存储;
数据加密引擎模块用于对交付数据进行全文加密,
全文检索引擎模块用于对待交付数据进行全文检索;
全文索引引擎模块用于对待交付数据进行全文索引;
公钥、用户信息管理模块用于对待交付数据进行存储;
文件存储服务存取接口模块用于对数据加密引擎和全文检索引擎处理后的信息进行存储。
其它步骤及参数与具体实施方式一或二相同。
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:所述传送代理子系统包括:
传送代理子系统作为面向数据恢复业务的专用远程数据获取系统的桥头堡主机,其功能包括数据的转发和过滤。
传送代理子系统的功能描述:
功能非常简单:接收用户数据,对用户数据进行强过滤,过滤伪造、不合法的请求,然后将过滤后的数据转发进防火墙的数据存取代理;收取数据存取代理的数据并转发给用户。
为了避免存取代理遭到外网的攻击,传送代理需要对用户的请求和对存取子系统的连接进行管理,避免用户过多的请求导致对存取子系统的攻击。
传送代理子系统的内部模块
用户连接管理模块,用户应答转发模块,用户请求内容过滤模块,用户请求转发模块和存取子系统连接管理模块;
用户连接管理模块用于对用户的连接进行限制和约束,一方面避免同一用户同时产生大于等于2个的连接,另一方面对同时的连接数进行限制,避免大于等于2个的请求对传送代理子系统、交付数据存取子系统造成冲击;
用户请求内容过滤模块用于对用户发送过来的内容进行细致的分析,包括协议合法性、请求合法性和内容合法性,但其不对鉴权信息(用户名和密码)进行验证,只有完全符合系统协议的请求才会提交用户请求转发并通过存取子系统连接管理模块把数据发送给防火墙内交付数据存取子系统;
用户应答转发模块用于收取交付数据存取子系统返回的数据,并返回相应的用户;
存取子系统连接管理模块用于维护传送代理子系统与交付数据存取子系统的连接和数据收发管理。
用户请求转发模块用于通过存取子系统连接管理模块把数据发送给防火墙内交付数据存取子系统,查找数据。
其它步骤及参数与具体实施方式一至三之一相同。
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:所述数据获取客户端子系统包括:
数据获取客户端是数据业主访问远程恢复数据的唯一手段,业主通过此客户端连接到数据恢复中心,并在客户端上完成恢复的数据查询和下载。
数据获取客户端的功能描述:
数据获取客户端的主要功能包括:
用户信息读取功能,能够读取移动介质上的用户私钥信息和预置用户身份信息,作为客户端后续操作的依据(用户网络连接管理模功能);
交付数据浏览功能,能够浏览远程的待交付数据的目录和文件名;
交付数据检索功能,能够对远程交付数据的word,pdf,excel,ppt,txt文件进行全文检索;
数据获取功能,能够获取远程的恢复数据(数据下载模块功能);
数据解密功能,能够将远程获取的数据进行解密。
用户网络连接管理模块、数据浏览模块、数据检索模块、数据下载模块、解密模块、私钥管理模块、本地文件操作模块和ui管理模块;
用户网络连接管理模块用于用户客户端和远程传送代理的网络连接以及相关操作;
数据浏览模块用于浏览远程的恢复完待交付数据的目录和文件名;
数据检索模块用于对远程恢复完交付数据的word,pdf,excel,ppt,txt文件进行全文检索;
数据下载模块用于对远程恢复完交付数据进行下载;
解密模块用于将远程获取的恢复完数据进行解密;
私钥管理模块用于为解密模块提供解密所需的私钥信息;
本地文件操作模块用于对解密后(恢复完)文件进行管理和存储;
ui管理模块用于选择恢复数据存储目录结构和用户信息管理等等。
其它步骤及参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式的面向数据恢复业务的专用远程数据传输方法具体过程为:
步骤一、对于需要网络交付的数据,数据恢复人员通过数据交付客户端子系统选择需要交付的数据的顶层目录,并设定数据需要交付的对象信息(如远端ip地址范围、用户名等等),并根据对象信息选择是否加密和全文搜索(有检索输入框),如果选择加密,则数据交付客户端子系统引导数据恢复人员生成公私钥对,并引导数据恢复人员将私钥存入特定的u盘或者u-key设备,通过数据交付客户端子系统将公钥和相关用户信息(名称、单位等在用户注册时的信息)传递给交付数据存取子系统,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行加密和存储操作;需要指出的是,当交付数据被存取子系统保存到存储服务器上时,交付数据已经是加密格式,除非具有用户的私钥,否则无法查看任何数据。
如果选择全文搜索,则数据交付客户端子系统引导数据恢复人员生成检索输入框,然后将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行检索和存储操作;
如果不选择加密,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;
如果不选择全文搜索,将待交付的数据传递给交付数据存取子系统,由交付数据存取子系统进行存储操作;
步骤二、当客户需要获取恢复后的数据时,客户通过数据获取客户端子系统连接传送代理子系统,提交客户的标识代码,由传输代理子系统将标识代码和请求转发到交付数据存取子系统,交付数据存取子系统对标识代码(客户的用户名和口令的加密后的字段)和请求的合法性进行判定,决定返回恢复后的数据或者拒绝。
对于需要网络交付的数据,在数据恢复人员完成数据恢复操作后通过“数据交付客户端”将数据提交到面向数据恢复业务的专用远程数据获取系统的交付数据存取子系统,由存取子系统进行数据处理后存入交付数据存储子系统。
当客户需要获取恢复后的数据时,客户通过数据获取客户端连接传送代理子系统,并提交客户的标识代码,由传输代理子系统将标识代码和请求转发到交付数据存取子系统,交付数据存取子系统依据标识代码和请求决定返回用户的数据或者拒绝。