2024年6月13日发(作者:)
(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(21)申请号 CN2.8
(22)申请日 2015.06.04
(71)申请人 成都果豆数字娱乐有限公司
地址 610041 四川省成都市高新区府城大道西段399号9栋2单元15层5号
(72)发明人 姚远
(74)专利代理机构 北京天奇智新知识产权代理有限公司
代理人 郭霞
(51)
H04L29/08
H04L29/06
(10)申请公布号 CN 105007302 A
(43)申请公布日 2015.10.28
权利要求说明书 说明书 幅图
(54)发明名称
一种移动终端数据存储方法
(57)摘要
本发明提供了一种移动终端数据存
储方法,该方法包括:在云存储服务器的
数据同步过程中,存储控制中心通过验证
用户移动终端的信息,为用户终端分配身
份许可;用户终端利用该身份许可登录云
存储服务器注册安全帐户,通过安全帐户
来使用云存储服务器进行存储和共享。本
发明提出了一种移动终端存储方法,可以
减轻服务器的压力,降低智能手机与云存
储集群的耦合程度,增强数据同步应用的
灵活性。
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种移动终端数据存储方法,其特征在于,包括:
在云存储服务器的数据同步过程中,存储控制中心通过验证用户移动终端
务
的信息,为用户终端分配身份许可;用户终端利用该身份许可登录云存储服
器注册安全帐户,通过安全帐户来使用云存储服务器进行存储
和共享。
2.根据权利要求1所述的方法,其特征在于,所述用户从存储控制中心获
户
安全帐户令牌T的由如下方法生成:
ρ=H(a‖j)(n-1)/α;
T=ρsk·e mod n
得身份许可后,按需创建多个令牌来表示不同账号,并限制一个用户创建帐
的最大数量;
其中H()是散列函数,a是云存储服务器地址,j为同一个用户注册帐户次数,
将上述的ρ作为公开的参数,用户登录云存储服务器时只输入私钥sk,而不
3.根据权利要求2所述的方法,其特征在于,所述用户终端利用身份许可
转发私钥。
sk为用户私钥,n为用户总数,e为随机数;
登录云存储服务器注册安全帐户,进一步包括:
1)用户向云存储服务器发送注册帐户请求;
2)云存储服务器返回注册次数上限k和地址参数a;
3)移动终端执行验证,并将验证结果和注册次数j发送给云存储服务器;
4)云存储服务器验证该验证结果和j的值(1≤j≤k),如果验证不成立,则终止
5)移动终端创建令牌帐户T,创建成功之后向云存储服务器端发送T和别
6)云存储服务器检测数据库里是否存在同样的令牌T,若存在则返回失败;
4.根据权利要求3所述的方法,其特征在于,在所述用户终端利用身份许
移动终端验证安全帐户,验证成功之后登录云存储服务器;根据内容类别
对用户上传的数据进行分区处理,将数据分成N个分区D1,
根据内容是否需要对
可登录云存储服务器注册安全帐户的步骤之后,该方法还包括:
否则将T和随机数e加入数据库并绑定该别名,返回用户注册帐户成功。
名;
协议返回用户失败;
D2,…,DN,然后
云存储服务器端保密而选择以下加密方式之一:
将数据加密之后上传到云存储服务器端;解码密钥只在移动终端中;或
用户直接上传数据,数据加密由云存储服务器端进行,此时数据信息对云
在用户存储共享数据时,将数据分成N个分区,分别设置共享权限:
1)共享者向数据宿主发送共享请求和自己的地址;
2)数据宿主接受请求之后,将共享者需求数据的分区数β发送给云存储服务
3)生成共享密钥kmβ:
kmβ=u·H(β‖m‖t)2+v
其中(u,v)是随机参数对,t为当前时间;
4)云存储服务器端将该分区数的共享次数m和共享密钥
kmβ返回给数据宿
5)数据宿主转发给共享者共享密钥kmβ以及该共享分区的
解码密钥;
6)共享者根据共享密钥kmβ和安全帐户的公钥T,形成共
享密钥验证: G=H(kmβ‖T)(n-
主;
器端;
存储服务器端是可见的;
1)/α
云存储服务器端存储公钥G和参数对(n,α),并返回共享者β区可共享确认;
当共享者需要访问β区的数据时,登录云存储服务器,输入
kmβ,云存储服
户公钥T,若共享密钥验证公式成立,则允许共享者
区β。
务器端提取共享者的令牌帐
访问共享数据
说 明 书
技术领域
本发明涉及手机互联网信息存储,特别涉及一种移动终端数据存储方法。
背景技术
手机互联网和云计算的普及应用,为人们提供了极大的便利。智能手机上
同
的数据及在云存储服务器的存储,涉及到数据同步问题。有的数据需要严格
步,才能为用户带来使用的便利,如通讯录信息;而有的数据需要一
比如智能手机里的照片、视频等,需要在云存储服务器保留历
增量同步。现有的数据同步方法不适合大数据量的应用,
数据来降低网络传输的数据量,需要手机端和服
般同步,
史数据,以实现
通过检测和传输差异
务器端共同参与才能实现。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种移动终端数据存储
在云存储服务器的数据同步过程中,存储控制中心通过验证用户移动终端
务
优选地,所述用户从存储控制中心获得身份许可后,按需创建多个令牌来
表示不同账号,并限制一个用户创建帐户的最大数量;
的信息,为用户终端分配身份许可;用户终端利用该身份许可登录云存储服
器注册安全帐户,通过安全帐户来使用云存储服务器进行存储和共享。
方法,包括:
安全帐户令牌T的由如下方法生成:
ρ=H(a‖j)(n-1)/α;
T=ρsk·e mod n
其中H()是散列函数,a是云存储服务器地址,j为同一个用户注册帐户次数,
将上述的ρ作为公开的参数,用户登录云存储服务器时只输入私钥sk,而不
优选地,所述用户终端利用身份许可登录云存储服务器注册安全帐户,进
1)用户向云存储服务器发送注册帐户请求;
2)云存储服务器返回注册次数上限k和地址参数a;
3)移动终端执行验证,并将验证结果和注册次数j发送给云存储服务器;
4)云存储服务器验证该验证结果和j的值(1≤j≤k),如果验证不成立,则终止
5)移动终端创建令牌帐户T,创建成功之后向云存储服务器端发送T和别
6)云存储服务器检测数据库里是否存在同样的令牌T,若存在则返回失败;
名;
协议返回用户失败;
一步包括:
转发私钥。
sk为用户私钥,n为用户总数,e为随机数;
否则将T和随机数e加入数据库并绑定该别名,返回用户注册帐户成功。
优选地,在所述用户终端利用身份许可登录云存储服务器注册安全帐户的
移动终端验证安全帐户,验证成功之后登录云存储服务器;根据内容类别
对用户上传的数据进行分区处理,将数据分成N个分区D1,
根据内容是否需要对云存储
步骤之后,该方法还包括:
D2,…,DN,然后
服务器端保密而选择以下加密方式之一:
将数据加密之后上传到云存储服务器端;解码密钥只在移动终端中;或
用户直接上传数据,数据加密由云存储服务器端进行,此时数据信息对云
在用户存储共享数据时,将数据分成N个分区,分别设置共享权限:
1)共享者向数据宿主发送共享请求和自己的地址;
存储服务器端是可见的;
2)数据宿主接受请求之后,将共享者需求数据的分区数β发送给云存储服务
3)生成共享密钥kmβ:
kmβ=u·H(β‖m‖t)2+v
其中(u,v)是随机参数对,t为当前时间;
器端;
4)云存储服务器端将该分区数的共享次数m和共享密钥
kmβ返回给数据宿
5)数据宿主转发给共享者共享密钥kmβ以及该共享分区的
解码密钥;
6)共享者根据共享密钥kmβ和安全帐户的公钥T,形成共
享密钥验证:
云存储服务器端存储公钥G和参数对(n,α),并返回共享者β区可共享确认;
当共享者需要访问β区的数据时,登录云存储服务器,输入
kmβ,云存储服
T,若共享密钥验证公式成立,则允许共享者
本发明相比现有技术,具有以下优点:
本发明提出了一种移动终端存储方法,可以减轻服务器的压力,降低智能
附图说明
图1是根据本发明实施例的移动终端数据存储方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详
细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本
手机与云存储集群的耦合程度,增强数据同步应用的灵活性。
务器端提取共享者的令牌帐户公钥
访问共享数据区β。
G=H(kmβ‖T)(n-1)/α
主;
发 明的范围仅由权利要求书限定,并且本发
下文描述中阐述诸多具体细节以便
而提供这些细节,并且无这
要求书实现本发明。
明涵盖诸多替代、修改和等同物。在
提供对本发明的透彻理解。出于示例的目的
些具体细节中的一些或者所有细节也可以根据权利
本发明的一方面提供了一种移动终端数据存储方法。图1是根据本发明实
种
施例的移动终端数据存储方法流程图。本发明根据数据的特征值信息,将多
数据同步机制融合在一起,并且可以灵活选择同步策略。同步机制的
由用户指定,也可以由应用程序来选择,将数据的同步信息,
值信息文件中,使方法的适用面较广。
选择可以
单独放置在特征
数据同步之前,需要检测数据的冗余情况和缺失情况,进而根据这些情况
方
来进行数据同步操作。用户智能手机与云存储服务器通过网络相连。本发明
法采用散列值作为数据的特征值信息,根据同步的数据情况,采用个
方法生成不同的特征值信息,以防止碰撞;采用散列方法的数
法本身独立,增强了方法的适应性。
快速散列
量及类型,与方
特征值信息由“文件名特征值信息”和“文件内容特征值信息”组成,两
可以唯一标识一个文件的路径信息和内容信息。
者结合,
(1)文件名特征值信息的计算。方法考虑了常用的两种情况:①扁平化存储
的文件,如一个目录下的所有文件(不包括子目录),则仅需要计算文件名特
信息。②树状存储结构的目录和文件,如多层次目录结构中的文件,
算全路径文件名特征值信息。
征值
则需要计
(2)文件内容的特征值信息计算。用户智能手机的数据类型多样,有文本文
件等尺寸较小的文件,也有照片、视频片段等比较大的文件数据。针对文件
尺 寸这两类不同的数据情况,可以采用以下两种计算策略:①以联系人
表的小数据量信息,计算全部数据
大数据量信息,可以采用全
防止散列碰撞的前提
方法的文件同
息碰撞
信息为代
的特征值信息。②以照片、视频等为代表的
部计算方式。但为了节省智能手机电力的使用,在
下,可以采用选取几个文件片段的计算方式。由于本发明
步主要依赖于文件名信息,同一个文件在内容修改后的特征值信
几率非常低。
根据基于云存储服务器的应用特点,将特征值信息单独打包存储为文件,
特
保存在云存储服务器。该方法的优点是:终端进行数据重复检查时,仅下载
征值信息文件,节省网络带宽,不用再重复计算云存储服务器保存数
值信息,提高了数据检查效率。 据的特征
本发明方法设计的特征值信息逻辑组织结构如下:特征值信息文件由3类
文件头信息块定义如下字段名,分别为:
ARYSIZE:指示文件名散列码映射数组的尺寸
FNHTYPE:指示计算文件名散列值采用的散列方法类型
HDCOUNT:文件内容采用散列方法的个数
HDTYPE:散列方法类型
文件名特征值信息块定义如下字段名,分别为:
数据块组成:文件头信息块、文件名特征值信息块和文件内容特征值信息块。
FNNOFFSET:0表示无下一个特征值信息;非0表示下一个文件名散列信
FLAG:0表示本地无此文件;1表示本地文件与云存储服务器完全一致;2
表示本地文件内容与云存储服务器文件内容不一致;3表示本地有此文件,
存储服务器没有;
息的偏移量
而云
HDOFFSET表示文件内容散列信息偏移量;
OFFSETFLAG:表示HDOFFSET是否有效。
文件名特征值信息块采用散列数组链表的方式组织:文件名特征值信息块
构成散列数组链表,数组尺寸由ARYSIZE字段决定;文件名散列数组链表
FNNOFFSET文件偏移量字段来实现;文件名信息块中通过
字段来查找所对应的文件内容信息块。通过此种方式,
织到文件存储的物理映射。
通过
HDOFFSET偏移量
实现了散列信息逻辑组
在上述特征值信息文件的读写工作机制中,以写为例,对特征值信息文件
信
中信息块的写操作,如果实现基于事务的原子操作开销比较大,并且特征值
息文件不会发生并发读写操作。据此,本发明方法对新增信息块的写
方法,即先写信息块内容,再对标志信息块的关键字段进行更
正确性的前提下,对写错误采取舍弃相应存储空间的策
的修改操作同样适用,仅需在修改前,先将相应
息块的写包括分配写和对HDOFFSET字
采用回写
新,在保证方法
略。回写方法对信息块
的标志位置无效即可。新增信
段的更新写。写流程如下:
(1)新信息块的分配写。只有在两种情况下才会对特征值信息文件尾部写信
息:分配文件名信息块和分配文件内容信息块。采用回写方法处理文件尾部
的 数据追加过程中,因意外造成的信息不一致问题,具体策略为先写信
更新前面的偏移量字段。 息块,再
假定偏移量为OFFSET,写信息块为WDATA,写偏移量为WOFFSET,回
①程序中记录OFFSET。
②在文件尾执行WDATA操作,如果该步骤出现意外,则下次写信息时重
③执行WOFFSET操作,如果该步骤出现意外,则下次写信息时重新从①
回写方法WOFFSET最后执行,保证了信息块的正确性。
(2)对HDOFFSET字段的写,也采用回写方法:先确保OFFSETFLAG字段
为0,表示HDOFFSET字段无效,然后执行新信息块的分配和写操作,新
块写成功后,再更新HDOFFSET字段,最后将OFFSETFLAG字段
HDOFFSET字段有效。至此,保证了特征值信息文件逻辑的
开始。
新从①开始。
写方法写过程如下:
信息
置1,表示
正确性。
用户在实际使用智能手机设备中,可能会出现以下情况:(1)丢失设备、更
换设备。(2)对设备进行完全重置,如恢复出厂设置、格式化存储等。(3)误
件。本发明方法在实现文件数据严格同步的前提下,考虑实际情况,
步流程进行优化,对这些意外情况进行容错处理。
删文
对文件同
文件同步机制,以特征值信息文件为依托,通过文件名信息块的
以
FNHASHCODE字段和文件内容信息块的HD散列CODE字段来进行比对,
确定文件是否存在、文件内容是否有变化,并以OFLAG字段为辅助,
必要的决定参与,实现了文件数据同步功能。文件同步机制的
个方面。
加上用户
设计包括以下几
在正常情况下:
(1)无论终端设备是否需要重新初始化,都要先从云存储服务器下载特征值
(2)如果云存储服务器没有特征值信息文件,则清空云存储服务器存储,在
服
(3)云存储服务器有特征值信息文件时,通过将本地文件与特征值信息文件
进行比对,将OFLAG字段为2(表示文件内容改变)和3(表示本地产生的新
的文件存储到云存储服务器;将OFLAG
的文件从云存储服务器删除;
骤也实现了云存储服
本地初始化特征值信息文件,并将本地文件和特征值信息文件传送到云存储
务器。实现云存储服务器与本地文件数据的一致性。
信息文件,以特征值信息文件为同步依据。
文件)
字段为0(表示本地已经将该文件删除)
OFLAG字段为1表示对应的文件无需更新。本步
务器与本地文件数据的一致性。
在分批传送文件过程中,可能会发生失败,从而使特征值信息文件未能传
值
方案1:在本地文件没有改变的情况下,重新启动一次同步过程,并选择不
服
从云存储服务器恢复文件,即可达到文件严格一致的同步目标。假设云存储
务器存储的用户文件集合为U,云存储服务器存储的特征值信息文件
送到云存储服务器,使云存储服务器存储的文件和云存储服务器存储的特征
信息文件不一致。对文件数据同步的解决方案有2种。
中记录的 用户文件信息集合为UH,U-UH=
Un,集合Un即是云存储服务器散列信息文件丢
之
失的n个文件的信息,丢失的原因是这n个文件传送到云存储服务器后,与
对应的特征值信息文件未能传送到云存储服务器。在本地数据没有发
情况下,本地拥有这n个文件的完整信息,只要一次成功同步,
和本地、云存储服务器特征值信息文件和用户文件,就
生改变的
云存储服务器
可以达到严格一致。
方案2本地文件有增、删的情况下,重新启动一次同步过程,选择不从云
件
存储服务器恢复文件、从云存储服务器删除与本地文件不一致文件、通过文
名核对方式从云存储服务器删除与本地文件不一致文件的3个选项,
文件严格一致的同步目标。假设云存储服务器存储的用户文件
储服务器存储的特征值信息文件中记录的用户文件信息
即可达到
集合为U,云存
集合为UH,U-UH=Un,
Un即是云存储服务器特征值信息文件丢失的n个文件的信息,
UL,那么本地文件集合为
UL∩Un≤Un,无论Un集合大小,
只要一次成功同步,就可以使U=UL, 使云存储服务器和本
致。 地、云存储服务器特征值信息文件和用户文件达到严格一
通过引入防止因这些意外造成用户数据丢失的机制,让用户参与必要的决
特
定,保证了本发明方法的实用性。在文件同步之前,先从云存储服务器下载
征值信息文件,再让用户决定是否从云存储服务器恢复文件。在这些
后,才进行智能手机和云存储服务器的文件同步。该方法可有
中发生的文件丢失问题,具体实现中可以再细化同名文
步骤完成
效解决实际使用
件的覆盖策略。
可以对核心方法进行辅助扩充,例如添加文件修改时间戳、源文件终端身
少
份等信息,以提高方法的智能程度和效能,并通过对数据同步情况分类,减
用户不必要的参与,提高方法的用户体验。
根据本发明进一步的实施例,在云存储服务的数据同步过程中,针对安全
户
性需求,引入第三方的存储控制中心,负责通过验证用户的手机信息来给用
一个合法匿名身份。用户在注册使用云存储服务器之前,首先需要在
中心获得身份许可,之后用身份许可去云存储服务器注册安全
帐户时除了用户自己注册,也可以选择接入控制服务器
存储控制
帐户。注册安全
注册的方式。
本发明用户不可以直接凭身份许可登录云存储服务器,而是利用一个身份
护
许可对应多个安全帐户的方式来使用云存储服务器,用户注册安全帐户既保
了用户隐私也能让攻击者失去攻击的目标。用户从存储控制中心获得
后可以按需创建多个令牌来表示不同账号。每个用户的令牌参
使是同一用户的不同账号的参数也是不一样的,这样确
够将同一个用户的不同账号联系起来,只能够限
量。下面是安全帐户令牌T的生成方法
j为同一个用户注册帐户次
身份许可
数都不相同,即
保云存储服务器端不能
制一个用户创建帐户的最大数
(H()是散列函数,a是云存储服务器地址,
数,sk为用户私钥,n为用户总数,e为随机数):
ρ=H(a‖j)(n-1)/α;
T=ρsk·e mod n
上面这种生成安全帐户的方法和通常的身份匿名验证方法十分地类似,本
发明将上述的ρ作为公开的参数,用户登录云存储服务器时只需要输入私钥
而不需要转发私钥。 sk,
本发明的实施例方法分为注册、登录以及数据存储和共享。注册主要是存
控
储控制中心的身份许可注册和云存储服务器端的安全帐户注册。用户从存储
制中心注册获得身份许可,接下来凭身份许可注册云存储服务器安全
后用户就可以使用云存储服务器的存储和共享功能。 帐户,之
在这个过程中用户和存储控制中心完成身份许可认证协议,存储控制中心
返回用户证书参数值(云存储服务器端不参与其中)。首先,存储控制中心需
定用户是合法用户而不是一段恶意攻击程序,本本发明用户将手机信
的其他私人基本信息一起上传给存储控制中心。这里手机信息
实存在的依据,存储控制中心通过返回短信来判断本次
身份许可注册框架中,将存储控制中心作为半可
自己的其他私人信息加密之后存储在存储
体步骤:
要确
息和用户
作为确认用户真
申请是否来自合法用户。
信状态,用户需要在手机端将
控制中心。下面是身份许可注册的具
1)用户将注册请求、手机信息和加密后的其他基本信息发送给存储控制中
2)存储控制中心比对此手机信息,如果注册次数超过次数上限r,返回用户
3)存储控制中心返回用户核实信息,验证此手机信息是否有效,如果验证失
4)存储控制中心确认了用户的合法身份。用户与存储控制中心执行数字签名
定义公钥组(Ai,b,c,n),计算Q值:
协议:
败,则返回用户失败。
失败。
心。
其中sk为用户私钥,λ为用户私钥个数,Ai,b,c
取值,n为用户总数。
为用户私钥的顺序截
之后用户注册云存储服务器安全帐户时,手机端利用Q值证明用户拥有合
5)手机端保存随机参数e和计算结果Q的值。
用户从存储控制中心获得了合法的身份许可后可以凭借此身份许可在云存
高
1)用户发送给云存储服务器器所需信息和身份许可来完成注册。这种方式
与
下,在用户获得了身份许可之后,存储控制中心就处于断开状态,完全不参
接下来的任何流程。用户注册的方式适合安全级别较高的用户和云存
与通常保护用户隐私的三方协议相比,这个流程中存储控制中
与云存储服务器的任何隐私。
储服务器端注册多个安全帐户。根据用户和云存储服务器对安全程度需求的
低,可以选择两种不同的注册云存储服务器方式:
法的身份许可。
储服务器,
心不能获得用户
2)云注册由存储控制中心去实现。用户发给存储控制中心云存储服务器地址
器
和云存储服务器对个人身份信息的需求,由存储控制中心去完成云存储服务
的注册。这里由于本发明将存储控制中心作为半可信状态,为了使用
私人信息对存储控制中心不可见,本发明采用同态加密方法加
信息,存储控制中心可以从加密的信息里检索出云存储
息,而不能够知道信息的具体内容。
户存储的
密用户其他私人
服务器所需求的私人信
两种注册方式的流程是类似的,下面是由用户注册的步骤:
1)用户向云存储服务器发送注册帐户请求。
2)云存储服务器返回注册次数上限k和地址参数a。
3)手机端执行验证,并将验证结果和注册次数j发送给云存储服务器。
4)云存储服务器验证该验证结果和j的值(1≤j≤k),如果验证不成立,则终止
5)手机端创建令牌帐户T,创建成功之后向云存储服务器端发送T和别名。
6)云存储服务器检测数据库里是否存在同样的T,若存在则返回失败;否则
用户在获得了云存储服务器注册账号之后,就可以在云存储服务器端存储
自己的数据。存储控制中心也不再参与其中。本发明在考虑安全隐私的基础
也按用户需求做了一些安全分级处理,可以节省手机端的开销又不影
基本安全。
将T和随机数e加入数据库并绑定此别名,返回用户注册帐户成功。
协议返回用户失败。
上,
响用户的
手机端首先验证安全帐户,验证成功之后登录云存储服务器。用户上传的
数据可以根据内容类别等进行分区处理,将数据分成(D1,
然后根据用户不同情
D2,…,DN)N个分区,
况(内容是否需要对云存储服务器端保密)选择加密方式:
1)将数据加密之后上传到云存储服务器端。这种方法解码密钥只在手机端
2)用户直接上传数据,数据加密由云存储服务器端进行。在这种方式下,用
户的此数据信息对云存储服务器端是可见的。此方法适合用户存储非重要信
中,适合安全要求较高的存储文件和可信度不高的云存储服务器端。
息
时使用,主要为了减少移动手机端的计算开销。
由于用户间合作完成项目或者处理数据的需求,用户存储在云存储服务器
储
端的数据需要共享出去,而且通常上传的文件会有多个共享者存在。用户存
自己数据时可以对数据进行分区处理。用户根据自己需要和共享考虑
成N个分区,共享者访问用户的共享数据时,只能访问特定
问其他部分数据。
将数据分
分区而不能下载访
下面是共享者获取共享权限的详细流程:
1)共享者向数据宿主发送共享请求和自己的地址;
2)数据宿主同意之后,将共享者需求数据的分区数β发送给云存储服务器端;
3)下面是共享密钥kmβ的生成,其中(u,v)是随机参数对,
t为当前时间;
kmβ=u·H(β‖m‖t)2+v
4)云存储服务器端将此分区数的共享次数m和共享密钥
kmβ返回给数据宿主
加密的共享数据,则带上解码密钥);
5)数据宿主转发给共享者共享密钥kmβ以及此共享分区的
解码密钥;
6)共享者根据共享密钥kmβ和安全帐户的公钥T,形成完
整的共享密钥验证: G=H(kmβ‖T)(n-
(若β区是由云存储服务器
1)/α
之后,云存储服务器端存储公钥G和参数对(n,α),并返回共享者β区可共
上面的流程之后,共享者需要访问β区的数据时,只需要登录云存储服务器,
输入kmβ,云存储服务器端提取共享者的令牌帐户
成立,则共享者可以访问共享数据区β。
享确认;
公钥T,若共享密钥验证公式
进一步地,在数据同步过程中,本发明优选地改进现有的增量传输方法,
服
以在云存储系统中进行的优化。以上传新版本文件过程为例。起初,云存储
务器和手机端上都有一份文件OLD的相同副本。随后用户修改了手
副本,形成NEW。于是,需要将手机端上的NEW上传到云
新版本。则本发明定义手机端为发送方,云服务器为接
为四步:
机端OLD
存储服务器上形成
收方。增量传输可以分
①手机端向云服务器发起NEW上传请求。
②云服务器将OLD按固定大小分成块,计算每个块的滚动校验码和AES
校验码,并将各个块的滚动校验码集合CHECHSET传
输到手机端。
③云服务器收到CHECHSET后,对NEW文件开启同样大小的滚动窗口进
1
行滚动校验。滑动窗口的滚动校验以字节为单次滚动距离向前滚动,每滚动
字节进行一次滚动校验和AES校验。校验方法校验遍历整个文件之
定位出NEW和OLD所有相同数据块的位置,剩余的就是需
务器的NEW的数据块信息。所以,最后手机端需要传
后,便可以
要增量传输到云服
输的数据是:NEW中与
元数据信息。
OLD不相同的数据块,以及新版本NEW的分块
④云服务器收到手机端增量传输的内容后,将文件数据块与NEW的分块元
独
数据进行关联,形成新版本文件。需要关联的文件块由两部分组成,NEW
有的文件块以及NEW与OLD公共的文件块。因此需要做两步操作:
端传来的NEW增量文件块和NEW的分块元数据进行关联;
的OLD文件中定位出公共文件块,并将其与NEW文
在云服务器形成完整的NEW文件。一次
①将手机
②将服务器端已有
件元数据进行关联。至此,
增量上传文件过程结束。
其中,③中提到的滚动校验方法是传输过程中主要的时间开销,方法具体
如下:滚动校验码采用的是多项式滚动校验码,通过将第一个字节移出校验
加入最后一个字节的校验码的方式,更新计算检验码值。本发明判断
段是否相同,通过计算滚动校验码来猜测二者可能相同,用
者肯定相同。
码,
两个数据
AES校验码确定二
再看具体的滑动窗口滚动校验方法,分两步:
①先计算滑动窗口内数据的滚动散列值,并在CHECHSET里查找其值是否
②如果没有找到,则滑动窗口向前滚动1字节。如果找到了,则进一步计
算滑动窗口内数据的ASE值。如果ASE值在CHECHSET里存在,则认为
滑动窗口内数据为重复数据,不存在则滑
存在。
目前
动窗口向前滚动1字节。
与端对端的应用场景不同,云存储环境下具有高并发的特性,面对云存储
高
环境下的增量传输,服务器端作为星形传输拓扑结构中的中心点,需要应对
并发的场景,系统的并发度受内存大小、网络带宽、磁盘I/O读写速
因此,本发明对滚动校验码的性能进行了优化。 度的限制。
本发明提到Rsync的滚动校验码,运用增量的思想,每次只需要计算两次
窗口之间不同的字节值。因此磁盘I/O只需要关注滑动窗口一头一尾这两个
的数据即可。因此,计算滚动校验码时每次从磁盘读取滑动窗口之后
字节进内存,与滑动窗口第一个字节数据替换,实现增量更新
校验码信息。针对磁盘I/O操作做性能提升。采用缓冲
字节的方式来优化方法。具体的缓冲区数据更新
字节
的下一个
滑动窗口的滚动
区的思想来预读入若干个
方法如下:
开辟两个缓冲区,head和tail,大小都为bSize,其中bsize远小于滚动窗口
大小。滑动窗口移出Head[i]和包含tail[i]是一次窗口滑动。滑动窗口读取
次之后,将第Size个缓冲区数据移至缓冲区第1个位置,随
节,完成缓冲区的向前滑动操作。
(Size-1)
后读入(Size-1)个字
该优化方法能够有效的优化磁盘访问。是滑动窗口内容全部存放内存和全
部内容存磁盘每次读取的方式的折中,兼顾了内存大小和磁盘读写速度的限
使方法更加适合并发的实际运行环境。 制,
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以
多
用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在
个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的
来实现,从而,可以将它们存储在存储系统中由计算系统来执
明不限制于任何特定的硬件和软件结合。
程序代码
行。这样,本发
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本
围
发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范
的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的
之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求
者这种范围和边界的等同形式内的全部变化和修改例。
保护范围
范围和边界、或


发布评论