1.一种数据存储系统,其特征在于,所述系统包括:指纹U盘和数据保险箱子系统;
所述指纹U盘,用于存储采用用户指纹加密的数据,与所述数据保险箱子系统进行数据通讯;
所述数据保险箱子系统,用于存储系统中所有用户的数据,与指纹U盘进行数据通讯;
所述指纹U盘包括:第一存储模块、第一通讯模块、第一备份模块和第一恢复模块;
所述第一存储模块,用于存储采用用户指纹加密的数据;
所述第一通讯模块,用于与数据保险箱子系统进行数据通讯;
所述第一备份模块,用于将第一存储模块中存储的数据上传至数据保险箱子系统;
所述第一恢复模块,用于将数据保险箱子系统中的存储的数据下载到第一存储模块;
所述数据保险箱子系统包括:第二存储模块、第二通讯模块、第二备份模块和第二恢复模块;
所述第二存储模块,用于存储系统中所有用户的数据;
所述第二通讯模块,用于与指纹U盘进行数据通讯;
所述第二备份模块,用于将第二存储模块中存储的数据上传至指纹U盘;
所述第二恢复模块,用于将指纹U盘中的存储的数据下载到第二存储模块。
2.根据权利要求1所述的系统,其特征在于,所述指纹U盘还包括第一同步模块,所述数据保险箱子系统还包括第二同步模块;
所述第一同步模块和第二同步模块,用于同步指纹U盘和数据保险箱子系统中存储的数据。
3.根据权利要求1所述的系统,其特征在于,所述指纹U盘还包括第一用户管理模块、第一联系人管理模块、第一共享模块、第一事务模块和第一断点续连模块;
所述数据保险箱子系统还包括第二用户管理模块、第二联系人管理模块、第二共享模块、第二事务模块和第二断点续连模块;
所述第一用户管理模块和第二用户管理模块,用于实现用户注册、密码更改、指纹记录、系统登陆和退出功能;
所述第一联系人管理模块和第二联系人管理模块,用于管理用户的好友及组群信息;
所述第一共享模块和第二共享模块,用于将数据共享给好友或组群,还用于从好友或组群获取共享数据;
所述第一事务模块和第二事务模块,用于实现兼容冲突控制、失败恢复和锁强制回收功能;
所述第一断点续连模块和第二断点续连模块,用于当网络连接断开时,记录上次完成的数据传输量,当再次连接网络时,继续从上次完成的位置开始传输。
4.根据权利要求1所述的系统,其特征在于,所述指纹U盘还包括:版本模块、个性化登录模块和文件目录模块;
所述版本模块,负责维护指纹U盘所存储数据的版本;
所述个性化登录模块,用于维护网络应用的登录信息,并自动支持所述应用的登录;
所述文件目录模块,用于支持对存储数据的读写操作,并支持回收站功能。
5.根据权利要求1所述的系统,其特征在于,所述数据保险箱子系统还包括:压缩模块、清算模块和虚拟文件目录模块;
所述压缩模块,用于周期性地进行数据压缩,并支持数据的解压缩;
所述清算模块,用于为系统中的用户清算其使用的存储空间,当所述存储空间超过上限时,提示所述用户升级服务;
所述虚拟文件目录模块,用于在用户的逻辑空间和系统的真实空间之间提供映射服务。
6.一种数据存储方法,其特征在于,所述方法包括:
在指纹U盘中存储采用用户指纹加密的数据,在数据保险箱子系统中存储所有用户的数据,在指纹U盘与数据保险箱子系统之间进行数据通讯;
所述在指纹U盘与数据保险箱子系统之间进行数据通讯包括:
将指纹U盘中存储的数据上传至数据保险箱子系统进行存储,或者,将数据保险箱子系统中存储的数据下载至指纹U盘进行存储。
7.根据权利要求6所述的方法,其特征在于,所述方法进一步包括:同步指纹U盘和数据保险箱子系统中存储的数据。
8.根据权利要求7所述的方法,其特征在于,所述同步的方式为:
当指纹U盘存储的数据版本高于数据保险箱子系统存储的数据版本时,将指纹U盘存储的数据替换数据保险箱子系统存储的数据,或者,当数据保险箱子系统存储的数据版本高于指纹U盘存储的数据版本时,将数据保险箱子系统存储的数据替换指纹U盘存储的数据。
一种数据存储系统和方法\n技术领域\n[0001] 本发明涉及数据存储技术领域,特别涉及一种数据存储系统和方法。\n背景技术\n[0002] 作为一种常用的数据存储设备,U盘已经被人们广泛地使用,然而,U盘存在以下显而易见的问题:和其他任何电子设备一样,U盘也会损坏,U盘一旦损坏,其中存储的数据都会丢失;U盘的安全性也存在漏洞,一旦U盘丢失,任何捡到的人都可以完全拥有其中存储的这些数据。\n[0003] 另一方面,随着网络的普及,一种基于网络的存储方式,简称网盘也在逐渐兴起,用户只需将数据通过网络上传到服务器,即可在需要的时候将这些数据下载下来使用,为了保护数据的安全,网盘通常需要用户登录(用户名和密码),并使用安全网络协议上传或下载数据。网盘存在如下缺陷:需要依靠网络,如果一台电脑没有网络连接,也就无法使用该服务;即使存在网络,相比U盘的传输速度(100Mbps数量级),当今网络的传输速度(1Mbps数量级)依然是小巫见大巫,网络传输速率不高使得用户在使用网盘时需要较长的时间等待数据传输,给用户带来不便。\n[0004] 可见,现有的数据存储方式各自存在缺陷,无法兼顾数据存储的安全性和便利性。\n发明内容\n[0005] 本发明提出一种数据存储系统和方法,用于提高数据存储的安全性和便利性。\n[0006] 本发明的技术方案是这样实现的:\n[0007] 一种数据存储系统,包括:指纹U盘和数据保险箱子系统;\n[0008] 其中,指纹U盘,用于存储采用用户指纹加密的数据,与数据保险箱子系统进行数据通讯;\n[0009] 数据保险箱子系统,用于存储系统中所有用户的数据,与指纹U盘进行数据通讯;\n[0010] 所述指纹U盘包括:第一存储模块、第一通讯模块、第一备份模块和第一恢复模块;\n[0011] 所述第一存储模块,用于存储采用用户指纹加密的数据;\n[0012] 所述第一通讯模块,用于与数据保险箱子系统进行数据通讯;\n[0013] 所述第一备份模块,用于将第一存储模块中存储的数据上传至数据保险箱子系统;\n[0014] 所述第一恢复模块,用于将数据保险箱子系统中的存储的数据下载到第一存储模块;\n[0015] 所述数据保险箱子系统包括:第二存储模块、第二通讯模块、第二备份模块和第二恢复模块;\n[0016] 所述第二存储模块,用于存储系统中所有用户的数据;\n[0017] 所述第二通讯模块,用于与指纹U盘进行数据通讯;\n[0018] 所述第二备份模块,用于将第二存储模块中存储的数据上传至指纹U盘;\n[0019] 所述第二恢复模块,用于将指纹U盘中的存储的数据下载到第二存储模块。\n[0020] 一种数据存储方法,包括:\n[0021] 在指纹U盘中存储采用用户指纹加密的数据,在数据保险箱子系统中存储所有用户的数据,在指纹U盘与数据保险箱子系统之间进行数据通讯;\n[0022] 所述在指纹U盘与数据保险箱子系统之间进行数据通讯包括:\n[0023] 将指纹U盘中存储的数据上传至数据保险箱子系统进行存储,或者,将数据保险箱子系统中存储的数据下载至指纹U盘进行存储。\n[0024] 可见,本发明提出的数据存储的系统和方法,将指纹U盘和网盘相结合(在本发明中,将数据保险箱子系统作为类似网盘的子系统),用户可以将常用的重要数据存储在指纹U盘中,这样即使在没有连接网络的电脑上可以使用这些数据,同时可以保证这部分数据的安全性;同时,用户可以将指纹U盘中的部分或全部数据备份到数据保险箱子系统(DBSS,Data Bank Sub System)中,以便在指纹U盘丢失的情况下为用户找回备份的数据。因此,本发明提出的数据存储系统和方法能够提高数据存储的安全性和便利性。\n附图说明\n[0025] 图1为本发明实施例数据存储系统的结构示意图;\n[0026] 图2为本发明实施例系统所维护的数据示意图一;\n[0027] 图3为本发明实施例系统所维护的数据示意图二。\n具体实施方式\n[0028] 本发明实施例提出一种数据存储系统,将指纹U盘和网盘相结合,该系统包括:指纹U盘和数据保险箱子系统(DBSS);\n[0029] 其中,指纹U盘,用于存储采用用户指纹加密的数据,与DBSS进行数据通讯;\n[0030] DBSS,用于存储系统中所有用户的数据,与指纹U盘进行数据通讯。\n[0031] 参见图1,图1为本发明实施例数据存储系统的结构示意图,该系统包括指纹U盘和DBSS;\n[0032] 其中,指纹U盘包括:\n[0033] 第一存储模块,用于存储采用用户指纹加密的数据,这些数据只有在验证用户的指纹通过之后才能被打开,保证了数据的安全性。\n[0034] 第一通讯模块,用于与数据保险箱子系统进行数据通讯;采用安全的网络协议,如SSL、TLS等,保证数据通讯的安全。\n[0035] 第一备份模块,用于将第一存储模块中存储的数据上传至DBSS。\n[0036] 第一恢复模块,用于将DBSS中的存储的数据下载到第一存储模块。\n[0037] 第一同步模块,同步指纹U盘和数据保险箱子系统中存储的数据。\n[0038] 第一用户管理模块,用于实现用户注册、密码更改、指纹记录、系统登陆和退出等功能;其中,用户名和密码上传到DBSS,而用户指纹仅在指纹U盘中存储。\n[0039] 第一联系人管理模块,用于管理用户的好友及群组信息,具体包括:\n[0040] 好友管理子模块,用于负责添加、信任、阻止和删除好友;\n[0041] 群组管理子模块,用于负责创建、键入、离开或删除群组。\n[0042] 第一事务模块,用于实现兼容冲突控制、失败恢复和锁强制回收等功能。\n[0043] 第一断点续连模块,用于当网络连接断开时,记录上次完成的数据传输量,当再次连接网络时,继续从上次完成的位置开始传输。\n[0044] 版本模块,负责维护指纹U盘所存储数据的版本。\n[0045] 个性化登录模块,用于维护网络应用的登录信息,并通过插件的方式自动支持所述应用的登录。\n[0046] 文件目录模块,用于支持对存储数据的读写操作,并支持回收站功能。\n[0047] DBSS包括:\n[0048] 第二存储模块,用于存储系统中所有用户上传得数据。\n[0049] 第二通讯模块,用于与指纹U盘进行数据通讯。该通讯采用安全的网络协议,以保证数据通讯的安全。\n[0050] 第二备份模块,用于将第二存储模块中存储的数据上传至指纹U盘。\n[0051] 第二恢复模块,用于将指纹U盘中的存储的数据下载到第二存储模块。\n[0052] 第二同步模块,用于同步指纹U盘和数据保险箱子系统中存储的数据。\n[0053] 第二用户管理模块,用于实现用户注册、密码更改、指纹记录、系统登陆和退出功能。\n[0054] 第二联系人管理模块,用于管理用户的好友及组群信息。\n[0055] 第二共享模块,用于将数据共享给好友或组群,还用于从好友或组群获取共享数据。\n[0056] 第二事务模块,用于实现兼容冲突控制、失败恢复和锁强制回收功能。\n[0057] 第二断点续连模块,用于当网络连接断开时,记录上次完成的数据传输量,当再次连接网络时,继续从上次完成的位置开始传输。\n[0058] 压缩模块,用于周期性地进行数据压缩,并支持数据的解压缩。\n[0059] 清算模块,用于为系统中的用户清算其使用的存储空间,当所述存储空间超过上限时,提示所述用户升级服务;\n[0060] 虚拟文件目录模块,用于在用户的逻辑空间和系统的真实空间之间提供映射服务。\n[0061] 本发明提出的数据存储系统称为完全个人数据中心(TPDC-Total Personal Data Center),采用本发明提出的TPDC,用户能够进行如下操作:\n[0062] 1、用户管理操作\n[0063] 当用户购买了TPDC的指纹U盘并接上电脑后,系统会自动提示用户进行注册,注册的第一步是记录用户的指纹,第二步是提示用户注册一个用户名和密码,该用户名和密码的作用是当指纹U盘丢失,或用户指纹发生变化,指纹U盘无法识别时,可以用它来作为备用的认证手段。\n[0064] 对于指纹U盘丢失的情况,用户可以购买一个新的指纹U盘,并输入用户名和密码,在通过认证之后,就可以为用户采集指纹,接下来就可以正常使用了。对于用户指纹发生变化的情况,用户在输入用户名和密码之后,就可以重新记录自己的指纹了。\n[0065] 用户管理必须有网络连接,因为系统需要维护以下信息:指纹U盘的序列号、用户名和密码,这样用户、指纹U盘和DBSS就紧密的绑定在一起了。\n[0066] 2、系统登录和退出\n[0067] 当将指纹U盘接上电脑后,系统会提示用户进行指纹识别,当用户通过指纹识别后,就可以自由的使用指纹U盘里的数据了。\n[0068] 3、数据使用\n[0069] 支持回收站:本发明系统为指纹U盘增加回收站功能,这样即使用户意外删除了一些数据,这些数据可有可能在回收站被找回。\n[0070] 版本维护:对于指纹U盘中的所有数据,系统都会自动维护数据的版本。\n[0071] 4、数据备份\n[0072] 用户可以选择将一部分指纹U盘上的数据备份到DBSS上,考虑到易用性和使用习惯,系统采用类似FTP的界面,左边显示指纹U盘上的空间,右边显示DBSS上的空间,然后用户选择需要备份的数据,点击上传备份即可,支持断点续连。\n[0073] 5、数据恢复\n[0074] 与数据备份相反,用户可以选择将一部分DBSS上的数据恢复到指纹U盘上,点击下载恢复即可。\n[0075] 6、数据同步\n[0076] 本发明系统还支持数据同步的功能,因为数据备份和数据恢复需要用户明确知道到底是指纹U盘上的数据版本高,还是DBSS上的数据版本高,有了数据同步,用户就可以放心的交由系统来决定到底是将数据从指纹U盘备份到DBSS上,还是从DBSS恢复到指纹U盘上,只有当系统无法判断版本高低时,才需要用户介入进行选择,这样不但大大减少了用户的操作和错误发生的概率,例如,用户错误的将低版本的数据替换了高版本的数据,而且还可以减少网络传输,例如,指纹U盘和DBSS上数据的版本一样,就可以跳过这一部分数据的传输。\n[0077] 7、个性化登录服务\n[0078] 系统支持为用户自动登录一些当前最热门的网络应用,例如QQ、MSN等,用户只需在第一次使用时为这些应用提供必要的登录信息,系统会记录下这些信息,并在下一次使用这些应用时,自动为用户进行登录,避免了麻烦的输入,也可以防止在公共场所下,登录信息被别人偷看到。\n[0079] 8、数据共享\n[0080] 数据共享是建立在好友和组群的基础上的。\n[0081] 好友的管理类似于IM系统,用户会首先发起邀请对方成为好友,如果对方接受邀请,则成为好友,之后就可以互相共享数据。\n[0082] 对于组群的管理,用户可以申请加入某个组群,也可以自己建立一个组群,组群里的组员就可以互相共享数据。\n[0083] 为实现上述功能及操作,本发明系统采用如下技术:\n[0084] 1、安全技术\n[0085] 采用软硬件结合的方式来为用户提供数据的安全保障,其中:\n[0086] 硬件保障:指纹U盘将数据通过用户指纹进行加密,除非认证通过,才能解码出正确的数据。另外,用户提供的支持个性化登录的信息也被统一维护在指纹U盘中,其他人无法获取。\n[0087] 软件保障:指纹U盘和DBSS之间的通讯采用安全的网络协议,例如SSL、TLS等,确保网络上没有第三方能够获取用户的数据。\n[0088] 2、压缩技术\n[0089] DBSS的压缩模块采用以下两种压缩技术:\n[0090] 压缩算法,例如ZIP、GZIP等,对数据进行压缩;\n[0091] 重复数据压缩:事实上,很多用户会存储大量相同的数据,例如,最新流行的歌曲、视频等,对于这些数据,系统中只需要维护一份拷贝即可。我们可以采用数据摘要算法,例如MD5、SHA1等,来判断数据是否相同。\n[0092] 3、虚拟文件目录技术\n[0093] 因为有了重复数据压缩技术,使得有必要在真实文件目录外构建一层虚拟文件目录。和用户直接打交道的是自己的虚拟文件目录,而由指纹U盘的文件目录模块维护虚拟文件目录和真实文件目录之间的映射关系。\n[0094] 4、同步技术\n[0095] 同步技术是本发明系统的核心技术,由指纹U盘的第一同步模块和DBSS的第二同步模块共同完成指纹U盘和DBSS存储数据的同步。\n[0096] 为避免发生数据不一致的问题,对于同一用户,在同一时间只支持一个指纹U盘与DBSS的同步操作,并支持以下同步语义(同步语义是一种对远程文件的操作指令):\n[0097] 已同步(synchronized)——表示同步双方的文件已经处于同步状态了,因此没有必要交换数据;\n[0098] 覆盖(overwrite)——是指一方的文件比另一方的文件新,因此新的一方的文件就要覆盖另一方的文件;\n[0099] 删除(delete)——是指一方的文件已经被删除了,而另一方的文件依然存在,因此同步的过程中,需要将另一方的文件也进行删除。\n[0100] 指纹U盘和DBSS均支持以下基本操作:新建(create)、修改(modify)和删除(delete),以及以下复合操作:重命名(rename)、复制粘贴(copy&paste)、剪切粘贴(cut&paste)和移动(move),同步语义的操作指令在到达远程终端后会翻译成基本/复合操作进行执行,表1列举了它们之间的这种翻译关系。\n[0101] \n[0102] 表1\n[0103] 数据的版本可以在一定程度上自动化同步双方的同步操作,如果这一方数据的版本确定高于另一方数据的版本,则自动将高版本的数据替换低版本的数据,如果无法判断版本的高低,则需要用户介入进行选择。\n[0104] 假设同步时这一方数据X的版本是v,另一方数据X的版本是v’,则:\n[0105] v=v’:无同步操作(即采用synchronized同步语义)\n[0106] v>v’:这一方数据X替换另一方数据X(即这一方对另一方采用非synchronized同步语义)\n[0107] v<v’:另一方数据X替换这一方数据X(即另一方对这一方采用非synchronized同步语义)\n[0108] v?v’:用户介入进行选择,要么v=v’无同步操作(即采用synchronized同步语义),要么v>v’这一方数据X替换另一方数据X(即这一方对另一方采用非synchronized同步语义),要么v<v’另一方数据X替换这一方数据X(即另一方对这一方采用非synchronized同步语义)\n[0109] 数据在None状态时的版本为0,生命周期开始即create操作之后的版本变为1,以后每一次操作(create、modify和delete)版本都会增加1,直到生命周期结束又会变为\n0。除此以外,版本还会受以下操作的影响:\n[0110] v=v’:双方版本保持不变\n[0111] v>v’:另一方数据X版本变为v\n[0112] v<v’:这一方数据X版本变为v’\n[0113] v?v’:要么双方版本保持不变,并记录v=v’,要么另一方数据X版本变为v,并记录v>v’,要么这一方数据X版本变为v’,并记录v<v’\n[0114] 数据的版本由指纹U盘序列号和本地版本两部分组成,例如,U1-2、U2-5等。在没有任何用户介入选择的前提下,除非两个版本的指纹U盘序列号相同,否则无法判断它们的高低。例如,系统可以判断U1-2>U1-1、U2-5>U2-4等,但无法判断U1-2和U2-5的高低,这时用户选择U1-2>U2-5,则将U1的数据替换U2的数据,这样双方的版本都为U1-2,在这之后U1和U2又分别对数据进行操作,直到下一次同步为止。当然如果U1之后没有对数据进行任何操作,版本还是U1-2,而U2数据的版本变为U2-8,此时进行同步,则不需要用户介入选择,因为系统明确的知道U2-8>U2-6>U1-2。\n[0115] 指纹U盘的第一同步模块与DBSS的第二同步模块共同完成指纹U盘和DBSS中所存储数据的同步。\n[0116] 参见图2,图2为本发明实施例系统所维护的数据示意图一。以图2为例,指纹U盘U1此时维护的数据包括A、B、C、D和E,而DBSS此时维护的数据包括B、C、D、E和F。这里维护的意思并不意味着数据此时一定存在,例如,A可能已经被delete了,但A在上次同步之后是存在的,或者A是在上次同步之后新create的,但又被delete了,总之维护的数据包括所有上次同步之后存在的,以及上次同步之后新create的数据。同时,DBSS没有维护A,也就是A的状态为None,其版本默认为*-0(*代表任何指纹U盘序列号);同样,U1没有维护F,其版本默认为U1-0。\n[0117] 同步过程由U1发起,U1将A、B、C、D和E的版本发送给DBSS,DBSS的第二同步模块逐个对这些数据分析所需要采用的同步语义,假设U1上B的版本和DBSS上B的版本一样,U1上C的版本比DBSS上C的版本高,U1上D的版本比DBSS上D的版本低,U1上E的版本和DBSS上E的版本无法比较,另外,默认的U1上A的版本比DBSS上A的版本高,U1上F的版本和DBSS上F的版本低。\n[0118] ●对于A\n[0119] ■如果U1上的A不存在,则U1对DBSS采用synchronized同步语义;\n[0120] ■如果U1上的A存在,则U1对DBSS采用replace同步语义;\n[0121] ●对于B,采用synchronized同步语义;\n[0122] ●对于C\n[0123] ■如果U1上的C不存在,则U1对DBSS采用delete同步语义;\n[0124] ■如果U1上的C存在,则U1对DBSS采用replace同步语义;\n[0125] ●对于D\n[0126] ■如果DBSS上的D不存在,则DBSS对U1采用delete同步语义;\n[0127] ■如果DBSS上的D存在,则DBSS对U1采用replace同步语义;\n[0128] ●对于E,需要用户介入选择,并记录版本之间的关系:\n[0129] ■如果用户选择U1上E的版本和DBSS上E的版本一样,则采用synchronized同步语义;\n[0130] ■如果用户选择U1上E的版本比DBSS上E的版本高,存在以下两种情况:\n[0131] ◆如果U1上的E不存在,则U1对DBSS采用delete同步语义;\n[0132] ◆如果U1上的E存在,则U1对DBSS采用replace同步语义;\n[0133] ■如果用户选择U1上E的版本比DBSS上E的版本低,存在以下两种情况:\n[0134] ◆如果DBSS上的E不存在,则DBSS对U1采用delete同步语义\n[0135] ◆如果DBSS上的E存在,则DBSS对U1采用replace同步语义;\n[0136] ●对于F,DBSS对U1采用replace同步语义。\n[0137] 5、锁技术和事务\n[0138] 在本发明中,锁技术和事务所面对的对象是文件和目录,并且本发明中所采用的是可强制回收的锁,也就是说如果一方需要获得锁,而该锁又被另一方占用了,则这一方是有权利强制回收另一方的锁的。以下详细介绍:\n[0139] 在同步技术中,为了避免发生数据不一致的问题,对于同一用户,同一时间仅支持一个指纹U盘和DBSS的同步操作。对于指纹U盘来说,可以简单地通过限制只有一个处理同步的线程来实现;而对于DBSS来说,由于它面对的是大量并发的同步请求,如果仅采用一个处理同步的线程来实现,势必会影响效率,因此必须采用多线程,然而多线程又会带来数据不一致的问题,因此需要采用锁技术来解决。\n[0140] 以图3为例,图3为本发明实施例系统所维护的数据示意图二,在同步时,A采用synchronized同步语义,B由DBSS对指纹U盘采用replace同步语义,C由指纹U盘对DBSS采用replace同步语义,D由DBSS对指纹U盘采用delete同步语义,E由指纹U盘对DBSS采用delete同步语义。这时,事务模块对A不加锁,对B和D加读锁,对C和E加写锁。在对A和B进行数据备份时,事务模块需要对A和B加写锁。在对D和E进行数据恢复时,事务模块需要对D和E加读锁。表2给出了读锁和写锁之间的关系,凡是兼容关系的,它们就可以并发进行,凡是冲突关系的,它们就得按照先后顺序依次执行。\n[0141] \n 读锁 写锁\n 读锁 兼容 冲突\n 写锁 冲突 冲突\n[0142] 表2\n[0143] 有了锁,就有了事务的概念,每一个数据的上传或下载都视为一个事务。\n[0144] 另外,由于种种原因,例如用户取消、系统崩溃等,很有可能事务会发生失败,这时需要失败恢复功能,即将数据恢复到事务开始之前的状态,对于加读锁的数据,它不会发生变化,因此不存在恢复的问题,对于加写锁的数据,它会发生变化,因此需要将新数据首先存储到一个临时空间,只有在成功之后才会覆盖旧数据,如果失败,则旧数据不受影响。\n[0145] 如果事务中断发生在网络断连,或用户提前退出的情况下,这时该事务会一直占用锁,直到它下次恢复中断并完成事务为止。长期占用锁是十分低效的行为,如果这时有其它事务需要对数据加冲突的锁时,则必须等待,因此,系统采用强制的策略对锁进行回收,强制权在用户。如果DBSS接收到一个事务请求,它会检查是否事务涉及的数据已经被加了冲突的锁,如果是,还要进一步检查是否是一个由于事务中断而长期占用的锁,如果是,则提示用户是否需要强制回收锁,如果用户选择是,则向中断的事务发出失败指令,并开始执行新的事务请求。\n[0146] 在本发明提出的系统中,指纹U盘的第一事务模块和DBSS的第二事务模块负责实现上述的兼容冲突控制、失败恢复和锁强制回收等功能。\n[0147] 6、断点续连技术\n[0148] 本发明实施例提出的系统中,系统会自动记录上次完成的数据传输量,当再次连接网络时,它首先会检查是否在中断的过程中已经强制回收了锁,如果是,则取消数据传输,否则,继续从上次完成的位置开始传输。指纹U盘的第一断点续连模块和DBSS的第二断点续连模块负责完成上述功能。\n[0149] 7、个性化登录技术\n[0150] 系统会在指纹U盘维护一张记录了用户不同应用登录信息的表。当用户登录系统之后,这张表就会被用来辅助用户登录这些应用,即减少了输入,又增加了安全。对于不同的应用,会有不同的技术来将登录信息传递给这些应用,最常用的三种技术为:WIN消息、模拟键盘和参数传递。所谓WIN消息,就是通过Windows的消息通道将登录信息传递给应用;而模拟键盘就是模拟用户的输入,将登录信息输入应用的界面;参数传递相对比较简单,对于这类应用,启动它的同时,可以直接将登录信息作为启动参数输入,这样一旦应用启动,用户就已经登录了。\n[0151] 在本发明提出的系统中,指纹U盘的个性化登录模块负责完成上述个性化登录过程。\n[0152] 本发明实施例还提出一种数据存储方法,包括:\n[0153] 在指纹U盘中存储采用用户指纹加密的数据,在数据保险箱子系统中存储所有用户的数据,在指纹U盘与数据保险箱子系统之间进行数据通讯。\n[0154] 上述方法中,所述在指纹U盘与数据保险箱子系统之间进行数据通讯包括:\n[0155] 将指纹U盘中存储的数据上传至数据保险箱子系统进行存储,或者,将数据保险箱子系统中存储的数据下载至指纹U盘进行存储。\n[0156] 上述方法可以进一步包括:同步指纹U盘和数据保险箱子系统中存储的数据。同步的方式为:当指纹U盘存储的数据版本高于数据保险箱子系统存储的数据版本时,将指纹U盘存储的数据替换数据保险箱子系统存储的数据,或者,当数据保险箱子系统存储的数据版本高于指纹U盘存储的数据版本时,将数据保险箱子系统存储的数据替换指纹U盘存储的数据。\n[0157] 综上所述,本发明提出的数据存储的系统和方法,将指纹U盘和网盘相结合,包括指纹U盘和DBSS,用户可以将常用的重要数据存储在指纹U盘中,这样即使在没有连接网络的电脑上可以使用这些数据,同时可以保证这部分数据的安全性;同时,用户可以将指纹U盘中的部分或全部数据备份在DBSS中,以便在指纹U盘丢失的情况下为用户找回备份的数据。并且,本发明提出的系统和方法还支持指纹U盘与DBSS之间的数据备份、数据恢复、数据同步等功能。可见,本发明提出的数据存储的系统和方法,能够提高数据存储的安全性和便利性。\n[0158] 总结本发明实施例提出的数据存储系统,即TPDC,具有以下特点:\n[0159] 安全性:通过多项措施保障用户数据的安全,一方面指纹U盘需要用户的指纹才能解密U盘里的数据,因此即便是指纹U盘弄丢了,用户也不需要担心数据泄露,另一方面,在指纹U盘和DBSS进行数据通讯时,系统采用加密的网络协议保证数据通讯的安全。\n[0160] 便利性:除了需要一开始用指纹进行激活,用户的使用习惯和普通U盘并无二样,提供同步机制,方便用户保持指纹U盘和DBSS的同步。\n[0161] 可靠性:用户可以选择将一部分指纹U盘里的数据备份到DBSS上,这样即便是指纹U盘丢失,依然可以从DBSS中找回这些重要数据,额外的,系统还引入了回收站的概念,当用户删除指纹U盘里的数据后,它不会立刻真的删除,而是进入了回收站,这样可以防止用户意外删除了某些数据,而后来又想找回这些数据。\n[0162] 扩展性:虽然指纹U盘的容量是一定的,但其在DBSS中的空间是可以不断扩展的,用户可以随时选择更高级别的DBSS服务以获取更多的空间,另一方面,用户也可以购买多个指纹U盘,同步机制会保证它们和DBSS之间的数据同步。\n[0163] 个性化:用户的指纹是访问用户数据的一把钥匙,同时这把钥匙还是开启用户其它应用的万能钥匙,有了这把钥匙,一旦进入TPDC,用户就可以无需输入密码,而使用个性化的网络应用,例如QQ、MSN等,TPDC会自动维护这些应用的登录信息,并在需要时自动登录。\n[0164] 共享化:用户可以指定将一部分数据共享给其他用户在DBSS上的空间,虽然逻辑上数据从一个用户拷贝给了另一个用户,但实际上仅仅是拷贝了一个链接而已,这样不但用户之间可以十分快速地共享数据,而且在存储空间消耗上也可以忽略不计。\n[0165] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
法律信息
- 2022-04-12
未缴年费专利权终止
IPC(主分类): H04L 29/08
专利号: ZL 200910083198.3
申请日: 2009.05.05
授权公告日: 2012.09.05
- 2014-05-28
专利实施许可合同备案的生效
IPC(主分类): H04L 29/08
合同备案号: 2014110000017
专利号: ZL 200910083198.3
申请日: 2009.05.05
让与人: 汤淼
受让人: 北京聚盾科技发展有限公司
发明名称: 一种数据存储系统和方法
申请公布日: 2009.09.30
授权公告日: 2012.09.05
许可种类: 独占许可
备案日期: 2014.04.16
- 2012-09-05
- 2009-11-25
- 2009-09-30
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
2005-08-17
| | |
2
| |
2007-04-04
|
2005-09-30
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |