一种基于云的企业级文件存储系统研究
摘 要:本文将要介绍一种基于云的文件管理系统,这个系统在满足公司内部文件均存储于网盘中,但同时也克服了网盘的传输速度较慢、安全性不足、可靠性较差等缺点,使得公司内部的文件分享和传输速度大大提高,并且同时能够为公司节省存储和维护成本。本系统主要利用了局域网传输速度快、纠删码切片、空闲上传等技术方法,保证了基本的功能需求。这个系统的目标就是为了能够满足一个中小型公司或者群体对于文件保存、文件传输的安全性的要求。
关键字:便捷 可靠 安全 文件管理
引言
众所周知,企业内部的文件存储和管理一直是企业所面临的重大问题。2013年,全美最具知名度的专业体育网站CorporateCarOnline.com,世界知名的数字媒体和在线营销方案的供应商Adobe,美国著名医疗机构Advocate Medical Group相继曝出重大公司文件和数据泄露事件,造成了重大影响,让公司和公众都蒙受了巨大的损失。当前大多数公司都面临着内部文件存储成本高,安全性不足;目前对于大多数公司而言,公司内部的文件存储往往采用公司自己架设或者购买的服务器来作为存储介质。但这种方式成本较高,且就安全性而言,也存在不少弊端。比如公司内部服务器本身安全机制不够完善导致其被攻破后会造成大量数据的泄露和丢失,公司服务器的物理失窃导致的重要数据丢失等等。而近些年来,随着云盘存储技术的不断发展,将信息上传至云端进行存储不失为一种新的企业文件存储解决方案。采用云盘进行存储具有灵活性,便捷性,低成本等特点。但是云盘的安全性和保密性是否能满足企业文件存储的特点无疑是一个巨大的问题。那么文件上传前的保密与保护措施就显得尤为重要。同时企业或团体内部的文件分享的安全性与高效性也亟待解决。对安全高效的文件管理系统的需求因而产生。本文即是着眼于这个问题,通过一系列技术手段,以实现云端存储的安全化,最终对于构建一个基于云的企业级安全存储服务系统进行研究。
1 系统概述
1.1背景介绍
近年来,伴随着层出不穷的互联网数据泄露事件的发生,互联网数据的安全性显得愈发重要。同时企业内部的文件存储和管理一直是企业所面临的重大问题。寻找一种针对企业的安全高效的文件存储分享方式就成为了一个非常重要的课题。
对于企业或团体,内部文件的分享和存储安全问题则成为重中之重。采取内部架设存储设备等方式在成本上和安全性并不能尽如人意;而采用云存储的方式则会因为文件的在网间传输和互联网存储导致文件的使用便捷性、可靠性和机密性遭到影响;因此,研究出来一种能够合理的协调云存储与文件的安全性、可靠性、便捷性的方式是很有必要的。
1.2 系统开发方式
本系统采用CS模式,在一个小团体内部设置一台主机运行着sever端,有管理员进行管理,实现对于当前账号管理;在client端,每一名内部用户均可以采用账号登录的方式进行认证并且获得账号的使用权,从而实现用户对于本地文件的上传、下载、加密等操作。
2 系统功能调研
2.1 系统需求分析
普通的团体内部需要的功能主要包含以下几个方面:
1 团体内部的文件不需要存储在本地;
2 每一名团体成员都可以进行文件上传、下载、内部文件分享;
3 文件在传输过程中和文件保存中要保证私密性和可靠性;
4 在充分利用宽带资源的前提下,保证用户文件的处理速度。
2.2 系统功能实现分析
根据上一小节的需求分析,接下来确定以下几个方面作为本系统的主要功能:
对于上传,服务器接收到经过用户加密的加密文件,首先暂存在本地,等到完全接收后,进行分片的冗余处理,之后进行有关网盘的操作。对于下载,如果此时文件仍然在服务器端,那么就可以直接进行下载,否则,在接收指令后,通过对于网盘的下载操作获得相应的文件碎片(可能会有损失),并且将文件进行恢复,同时发送给客户端。具体流程如图2-1所示
图2-1
在与云盘的交互中,采取多网盘多账号的技术进行操作,一方面将文件分散到各个位置使得黑客难以完全获得文件信息,另一个方面,通过冗余技术能够恢复文件。主要采用的是百度云盘、金山快盘等。
针对文件安全性问题,主要的采取的方式是分级加密技术以及文件切片和纠删码技术。分级加密一方面能够提醒了用户的对于文件加密意识的提高,另一个方面也将文件分为了多个层次的加密。主要是进行了128位的AES加密后,通过切片数目的不同和上传至网盘的分散程度不同进行处理的。在局域网内部客户端与服务器之间的交流通过了RSA的256位的加密方式进行指令的传输与处理。
针对文件可靠性问题,采取了多网盘的文件碎片放置方式,同时将文件进行基于范德蒙德矩阵的纠删码技术进行了冗余切片,能够能够实现了1.5倍数据量的上传,且只要下载与原文件相同大小碎片量即可恢复。
针对文件传输的高效性问题,由于上传时先通过局域网内部传至服务器,暂存在本地。而局域网内部网速一般大于外网速度,并且没有网速限制,所以提高了上传速度;下载时,因为需要从网盘下载后进行合并之后进行传输,依赖于外网的速度。而下载有离线下载和在线下载两种方式,离线下载是提出下载请求后,断开连接,服务器与云盘进行下载,下载完成后重新连接,再进行局域网内服务器与客户端的传输,由于服务器端24小时不停机,所以用户下载时间仍为文件在服务器传至客户端的时间,下载速度显然提高。在线下载则用户在线下载。
3 系统设计和实现
3.1 系统整体设计
3.1.1 结构示意图
图3-1 应用示意图
本系统使用了客户端与服务器的管理方式,使得用户通过了注册后就获得了在本系统的账号,就可以进行文件的安全便捷的操作。普通用户每次登陆只需要进行客户端的账号密码输入登陆即可如同普通网盘客户端一样操作。至于服务器管理员需要进行用户注册认证,以及对于网盘凭据进行获得
3.1.2 系统架构
图3-2 模块分布
3.1.3 认证识别模块
功能:管理员获得对于网盘的操作凭据,用户使用账号密码登陆,用户与用户实现文件交流所需的票据认证。
原理:管理员通过输入购买的云空间的使用账号和密码,获得了对于云空间的操作凭证,之后系统才能够与云盘进行交互从而实现了文件在云盘的上传和下载。用户使用自己的工号作为账号,同时根据自己已经设置的密码能够获得了与服务器的交流能力,实现了用户的文件的上传下载;用户与用户间的交流能够根据服务器提供的票据实现局域网间的文件传输。
3.1.4 网间传输模块
功能:服务器将文件从本机上传至云端,客户端将文件传输至服务器或者另外的客户端
原理:首先利用了认证识别模块获得了认证,之后则通过TCP连接令客户端与服务器,客户端与客户端,服务器与云建立数据通信,能够实现文件的一系列操作。
3.1.5 加密处理模块
功能:使用加密算法对于文件进行了加密,从而提高了文件或者信息的安全性。
原理:使用了AES加密文件,其中AES加密是由用户进行的使用的密钥进行的加密,从而保证了文件的可靠性。使用了RSA来加密局域网内部信息传输,同时通过控制文件切片的数目提高了更进一步提高了文件的安全性。
3.1.6 切片处理模块
功能:根据加密处理模块所需的切片数目进行切片,同时保证了冗余的存在,能够在部分数据丢失的情况下实现文件恢复。
原理:使用了基于范德蒙德矩阵的纠删码技术,能够根据原文件生成一半数目的校验块,从而生成了1.5倍的数据进行上传,但是只需要下载原数据量就可以恢复原文件。
3.1.7 云空间的弹性管理
功能:每当有员工加入那么就进行云空间的增长,即增加另外的碎片云空间,从而保证了公司云空间的动态增长与分散管理。
原理:当有员工加入公司,令其提供账号密码来作为公司总的云的一部分,从而实现了云的碎片化,同时也能够保证了所有人云存储空间的相互弥补。
分享让更多人看到
推荐阅读
相关新闻
- 评论
- 关注