1.一种混合云存储中数据的完整性验证方法,其特征在于,在PDP算法的基础上,借助变色龙签名算法以及私有云为文件分配秘钥以及生成标签,并存储于公有云中,当选定文件进行验证时,私有云生成验证信息,发送至公有云,公有云获取秘钥以及标签,形成证据,具体为:第一聚合值的形成:公有云获取验证信息,根据挑战信息集合以及密钥,将所有被选中文件块的特定扇区在与挑战信息中的大整数进行乘积操作后进行累加,得到第一聚合值,所述第一聚合值的个数与扇区数目一致;第二聚合值的形成:公有云对待验证文件块的在线变色龙哈希辅助变量与挑战信息集合中的C个随机大整数元素进行乘积操作然后累加求和后得到第二聚合值;证据形成:公有云对待验证文件块所对应的离线标签与挑战信息集合中的随机大整数元素进行幂运算并进行累乘聚合,得到第三聚合值,所述第一聚合值、第二聚合值以及第三聚合值形成证据;以私有云为平台,使证据与待验证文件块发生碰撞,判断待验证文件块是否完整。
2.根据权利要求1所述的一种混合云存储中数据的完整性验证方法,其特征在于,通过所述私有云为文件分配秘钥以及生成标签具体为:私有云提前分配密钥以及离线标签,所述离线标签包括文件块替身信息、离线变色龙哈希辅助变量以及密钥中的动态更新通用变量。
3.根据权利要求2所述的一种混合云存储中数据的完整性验证方法,其特征在于,所述选定文件进行验证前,还包括文件的分割,所述文件的分割具体为用户对将待上传的文件进行分块处理,得到文件块集合,对于每一个单独的文件块进行分区处理,将一个单独的文件块划分成若干扇区,根据陷门信息、文件块替身信息以及离线变色龙哈希辅助变量,计算出每个真实文件块对应的在线变色龙哈希辅助变量,并将其与待上传文件存储至公有云中。
4.根据权利要求3所述的一种混合云存储中数据的完整性验证方法,其特征在于,当选定文件进行验证时,还包括挑战信息集合的获取,所述挑战信息集合的获取为:私有云在文件分区后得到的文件块中随机选取若干,生成长度为C的随机整数序列,所述随机整数序列序列包含C个不重复整数,对应要被验证的C个文件块的索引号;私有云在素数域初始化后得到的大整数群循环群中,挑选若C个随机大整数元素,与文件块的索引构成挑战信息集合,并发送至公有云。
5.根据权利要求1‑4之一所述的一种混合云存储中数据的完整性验证方法,其特征在于,还包括数据的动态更新,所述数据的动态更新具体为:构建认证数据结构以及版本索引表并存储于公有云中,当数据发生动态更新时,公有云获取待更新文件块的认证树结构以及版本索引号信息并发送至私有云,私有云根据计算,判断数据动态更新是否成功。
6.根据权利要求5所述的一种混合云存储中数据的完整性验证方法,其特征在于,所述构建认证数据结构具体为:
以多分支树结构为基础,借助变色龙哈希函数,对文件块进行签名,并结合文件块版本号进行签名的聚合操作,得到根节点签sig(R),并将所述根节点签sig(R)存储于bucket中;
用户文件被分割为若干个文件块,每个文件块对应一个叶子节点;
根据叶子节点,构建成所述认证数据结构,并将构建所述认证数据结构所需要的信息存储于公有云中bucket结构中。
7.根据权利要求6所述的一种混合云存储中数据的完整性验证方法,其特征在于,每个多分支树结构对应一个bucket,每个文件被分散存储于若干个bucket结构中,且每个bucket结构存放有p个文件块、一个根节点签名sig(R)以及一个整数mid,1≦mid≦p,1≦p≦8,每个文件块对应一个所述叶子节点。
8.根据权利要求7所述的一种混合云存储中数据的完整性验证方法,其特征在于,所述构建版本索引表具体为:
以文件块对应的bucket编号、文件块在bucket内部的序号版本信息以及文件块的索引号形成版本索引表并存储于公有云中,用于对文件块进行组织管理,当数据发生动态更新时,所述版本索引表中的版本信息同时发生更新。
9.根据权利要求8所述的一种混合云存储中数据的完整性验证方法,其特征在于,所述当数据发生动态更新时,公有云获取更新文件块的认证数据结构以及版本信息并生成动态更新证据发送至私有云,私有云根据计算,判断数据动态更新是否成功,具体为:当发生数据动态更新时,公有云根据版本索引号查找更新文件块的位置,利用文件块构建多分支树,计算根节点R′;私有云利用公有云中的版本信息、待更新的叶子节点内存储的数据以及公有云返回的辅助认证路径的信息集合,生成更新前的根节点R0并签名的得到根节点签sig(R0),判断sig(R0)与sig(R)是否相等,如果相等,则说明数据被更新之前保持完整,私有云使用辅助认证路径的信息集合与更新后叶子节点存储的数据计算新的根节点R1,与之前的根节点R′比较,若相等,则将根节点R1的根节点签sig(R1)发送至公有云,替换sig(R0),实现更新。