1.一种云环境中支持外包数据动态插入的确定性删除方法,其特征在于,包括:
获取两个公私钥对,并得到外包文件的唯一文件名;
获取密钥和数据块,并将所述文件名和数据集上传至云服务器;
根据所述云服务器返回的存储证据和辅助验证信息,验证检查所述外包文件的存储结果;
获取需要插入新数据块的叶子节点序号及其维护的所有数据块、文件名和对应的时间戳以及辅助认证信息集,并根据需要插入新数据块的叶子节点序号、文件名和对应的时间戳,计算第二签名,然后生成数据插入命令,并将第一数据块插入至所述外包文件中;
获取需要删除数据块的叶子节点序号及其维护的所有数据块、文件名、数据块序号和对应的时间戳以及辅助认证信息集,并根据需要删除数据块的叶子节点序号、文件名、数据块序号和对应的时间戳,计算第四签名,然后生成数据删除命令,并将第二数据块从所述外包文件中删除;
获取密钥和数据块,并将所述文件名和数据集上传至云服务器,包括:
利用获取的数据加密密钥将所述外包文件进行加密,将加密后的所述外包文件分成多块,并随机插入获取的多个数据块,得到数据集,同时将插入位置进行保存;
获取密钥和数据块,并将所述文件名和数据集上传至云服务器,还包括:
将所述数据集和所述文件名上传至云服务器,并利用Merkle哈希求和树的叶子节点维护所述数据块;
根据所述云服务器返回的存储证据和辅助验证信息,验证检查所述外包文件的存储结果,包括:
利用Merkle哈希求和树对所述数据集进行维护后,根据第一根节点计算出第一签名,并返回存储证据。
2.如权利要求1所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,获取两个公私钥对,并得到外包文件的唯一文件名,包括:获取数据拥有者和云服务器的数字签名公私钥对,并基于单向抗碰撞哈希函数得到外包文件的一个唯一的文件名。
3.如权利要求1所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,根据所述云服务器返回的存储证据和辅助验证信息,验证检查所述外包文件的存储结果,还包括:根据获取任意所述叶子节点所维护的数据块和对应的辅助验证信息计算第二根节点,并当所述第一根节点和所述第二根节点相等且所述第一签名是基于所述第一根节点的有效签名,则删除所述外包文件的本地备份。
4.如权利要求3所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,获取需要插入新数据块的叶子节点序号及其维护的所有数据块、文件名和对应的时间戳以及辅助认证信息集,并根据需要插入新数据块的叶子节点序号、文件名和对应的时间戳,计算第二签名,然后生成数据插入命令,并将第一数据块插入至所述外包文件中,包括:根据获取的需要插入新数据块的叶子节点序号、文件名和对应的时间戳,计算出第二签名,将得到数据插入命令和第一数据块上传至所述云服务器后,利用所述第二签名验证所述数据插入命令是否有效,并当所述数据插入命令有效时,将所述第一数据块插入指定叶子节点维护的数据块的末尾。
5.如权利要求4所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,获取需要插入新数据块的叶子节点序号及其维护的所有数据块、文件名和对应的时间戳以及辅助认证信息集,并根据需要插入新数据块的叶子节点序号、文件名和对应的时间戳,计算第二签名,然后生成数据插入命令,并将第一数据块插入至所述外包文件中,还包括:更新所述指定叶子节点到根节点路径上的所有节点,得到第三根节点,并根据第三根节点计算第三签名,然后根据返回的所述叶子节点维护的所有数据块和获取的对应的辅助验证信息计算出第四根节点,并当所述第四根节点与所述第三根节点相等,且所述第三签名有效时,完成所述第一数据块的插入。
6.如权利要求5所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,获取需要删除数据块的叶子节点序号及其维护的所有数据块、文件名、数据块序号和对应的时间戳以及辅助认证信息集,并根据需要删除数据块的叶子节点序号、文件名、数据块序号和对应的时间戳,计算第四签名,然后生成数据删除命令,并将第二数据块从所述外包文件中删除,包括:根据获取的需要删除数据块的叶子节点序号、文件名、数据块序号和对应的时间戳,计算出第四签名,将得到数据删除命令上传至所述云服务器后,利用所述第四签名验证所述数据删除命令是否有效,并当所述数据删除命令有效时,从叶子节点中删除第二数据块。
7.如权利要求6所述的云环境中支持外包数据动态插入的确定性删除方法,其特征在于,获取需要删除数据块的叶子节点序号及其维护的所有数据块、文件名、数据块序号和对应的时间戳以及辅助认证信息集,并根据需要删除数据块的叶子节点序号、文件名、数据块序号和对应的时间戳,计算第四签名,然后生成数据删除命令,并将第二数据块从所述外包文件中删除,包括:更新所述叶子节点到根节点路径上的所有节点,得到第五根节点,并根据第五根节点计算第五签名,并根据返回的所述叶子节点维护的所有数据块和获取的对应的辅助验证信息计算出第六根节点,并当所述第六根节点与所述第五根节点相等,且所述第五签名有效时,完成所述第二数据块的删除。