一种远程文件修复方法及系统技术方案

技术编号:35909998 阅读:19 留言:0更新日期:2022-12-10 10:49
本发明专利技术涉及一种远程文件修复方法,所述修复方法包括以下步骤:步骤S1、生成原始文件的sha256散列当做key值保存到数据库中;步骤S2、对原始文件进行海明码编码,生成原始文件的海明码编码文件;步骤S3、将海明码编码文件的路径保存到sha256散列对应key值的value中;步骤S4、客户端对文件进行远程下载并校验,若文件校验通过,则无需修复,若文件校验不通过,则执行步骤S5;步骤S5、通过保存的海明码编码文件的路径获得海明码编码文件,根据海明码编码文件和海明码对下载的文件进行纠正。本发明专利技术实现了可以对客户端大部分情况保持原有下载体验,无需多下载任何数据,只是小概率出错的时候,只需下载修复文件进行修复即可,而无需重新下载整个文件。载整个文件。载整个文件。

【技术实现步骤摘要】
一种远程文件修复方法及系统


[0001]本专利技术涉及远程文件下载
,特别是一种远程文件修复方法及系统。

技术介绍

[0002]现有技术中对远程文件进行下载时需要采用sha256对整个文件进行校验,如果校验不通过就要整个文件重新下载,有的时候一个大文件,由于网络不稳定,可能每次下载下载校验都不对,就要下载好几遍,甚至无法下载成功,浪费大量时间,十分影响工作效率。

技术实现思路

[0003]本专利技术的目的在于提供一种远程文件修复方法,能够在下载失败时另外下载比较小的修复包,对文件进行修复,而无需重新下载整个文件。
[0004]为实现上述目的,本专利技术提供如下技术方案:一种远程文件修复方法,所述修复方法包括以下步骤:
[0005]步骤S1、生成原始文件的sha256散列当做key值保存到数据库中;
[0006]步骤S2、对原始文件进行海明码编码,生成原始文件的海明码编码文件;
[0007]步骤S3、将海明码编码文件的路径保存到sha256散列对应key值的value中;
[0008]步骤S4、客户端对文件(该文件是存储在服务器的原始文件或者某一文件)
[0009]进行远程下载并校验,若文件校验通过,则无需修复,若文件校验不通过,则执行步骤S5;
[0010]步骤S5、通过保存的海明码编码文件的路径获得海明码编码文件,根据海明码编码文件和海明码对下载的文件进行纠正。
[0011]进一步的,所述步骤S1进一步具体为通过计算文件的sha256哈希算法,得出文件的sha256哈希值,将sha256哈希值当做key值保存到数据库中。
[0012]进一步的,所述步骤S2进一步具体为:对文件进行海明码编码,生成文件的海明码编码文件,将海明码编码文件2的N次方位的内容提取出来作为增量修复文件,海明码编码文件其余方位的内容提出来即为原始文件。
[0013]进一步的,所述步骤S3进一步具体为:将原始文件的路径和增量修复文件的路径保存到原始文件的sha256对应key值的value中。
[0014]进一步的,所述步骤S4进一步具体为:客户端对文件进行远程下载,下载的文件的请求头中返回文件的sha256值,然后下载完成后,进行sha256校验,如果下载完成后的文件sha256与数据库中保存的sha256散列对应key值相同,则校验通过,则无需修复;若校验不通过,则执行步骤S5。
[0015]进一步的,所述步骤S5进一步具体为:如果sha256校验失败,则将sha256发送给服务端,根据sha256和增量修复文件的路径获取到增量修复文件,下载到本地,将增量修复文件按照2的N次方位的位置插入到下载的文件中,通过海明码找出错误的bit,修复错误的bit,再移除海明码的2的N次方位的bit,修复下载的文件。
[0016]本专利技术还提供了一种远程文件修复系统,所述修复系统包括sha256生成模块、海明码编码模块、路径保存模块、校验模块、修正模块;
[0017]所述sha256生成模块,用于生成原始文件的sha256散列当做key值保存到数据库中;
[0018]所述海明码编码模块,用于对原始文件进行海明码编码,生成原始文件的海明码编码文件;
[0019]所述路径保存模块,用于将海明码编码文件的路径保存到sha256散列对应key值的value中;
[0020]所述校验模块,用于客户端对文件进行远程下载并校验,若文件校验通过,则无需修复,若文件校验不通过,则执行所述修正模块;
[0021]所述修正模块,用于通过保存的海明码编码文件的路径获得海明码编码文件,根据海明码编码文件和海明码对下载的文件进行纠正。
[0022]进一步的,所述sha256生成模块进一步具体为:用于通过计算文件的sha256哈希算法,得出文件的sha256哈希值,将sha256哈希值当做key值保存到数据库中。
[0023]进一步的,所述海明码编码模块进一步具体为:用于对文件进行海明码编码,生成文件的海明码编码文件,将海明码编码文件2的N次方位的内容提取出来作为增量修复文件,海明码编码文件其余方位的内容提出来即为原始文件。
[0024]进一步的,所述路径保存模块进一步具体为:用于将原始文件的路径和增量修复文件的路径保存到原始文件的sha256对应key值的value中。
[0025]进一步的,所述校验模块进一步具体为:用于客户端对文件进行远程下载,下载的文件的请求头中返回文件的sha256值,然后下载完成后,进行sha256校验,如果下载完成后的文件sha256与数据库中保存的sha256散列对应key值相同,则校验通过,则无需修复;若校验不通过,则执行所述修正模块。
[0026]进一步的,所述修正模块进一步具体为:用于如果sha256校验失败,则将sha256发送给服务端,根据sha256和增量修复文件的路径获取到增量修复文件,下载到本地,将增量修复文件按照2的N次方位的位置插入到下载的文件中,通过海明码找出错误的bit,修复错误的bit,再移除海明码的2的N次方位的bit,修复下载的文件。
[0027]本专利技术的有益效果:本专利技术实现了可以对客户端大部分情况保持原有下载体验,无需多下载任何数据,只是小概率出错的时候,只需下载修复文件进行修复即可,而无需重新下载整个文件,节约时间成本,提高工作效率。
附图说明
[0028]图1为本专利技术的方法流程图;
[0029]图2为本专利技术系统中的模块连接示意图。
具体实施方式
[0030]下面结合附图对本专利技术做进一步说明。
[0031]请参阅图1所示,本专利技术提供了一实施例:一种远程文件修复方法,所述修复方法包括以下步骤:
[0032]步骤S1、生成原始文件的sha256散列当做key值保存到数据库中;
[0033]步骤S2、对原始文件进行海明码编码,生成原始文件的海明码编码文件;
[0034]步骤S3、将海明码编码文件的路径保存到sha256散列对应key值的value中;
[0035]步骤S4、客户端对文件(该文件是存储在服务器的原始文件或者某一文件)
[0036]进行远程下载并校验,若文件校验通过,则无需修复,若文件校验不通过,则执行步骤S5;
[0037]步骤S5、通过保存的海明码编码文件的路径获得海明码编码文件,根据海明码编码文件和海明码对下载的文件进行纠正。
[0038]所述步骤S1进一步具体为通过计算文件的sha256哈希算法,得出文件的sha256哈希值,将sha256哈希值当做key值保存到数据库中。
[0039]所述步骤S2进一步具体为:对文件进行海明码编码,生成文件的海明码编码文件,将海明码编码文件2的N次方位的内容提取出来作为增量修复文件,海明码编码文件其余方位的内容提出来即为原始文件。
[0040]所述步骤S3进一步具体为:将原始文件的路径和增量本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种远程文件修复方法,其特征在于:所述修复方法包括以下步骤:步骤S1、生成原始文件的sha256散列当做key值保存到数据库中;步骤S2、对原始文件进行海明码编码,生成原始文件的海明码编码文件;步骤S3、将海明码编码文件的路径保存到sha256散列对应key值的value中;步骤S4、客户端对文件进行远程下载并校验,若文件校验通过,则无需修复,若文件校验不通过,则执行步骤S5;步骤S5、通过保存的海明码编码文件的路径获得海明码编码文件,根据海明码编码文件和海明码对下载的文件进行纠正。2.根据权利要求1所述的一种远程文件修复方法,其特征在于:所述步骤S1进一步具体为通过计算文件的sha256哈希算法,得出文件的sha256哈希值,将sha256哈希值当做key值保存到数据库中。3.根据权利要求1所述的一种远程文件修复方法,其特征在于:所述步骤S2进一步具体为:对文件进行海明码编码,生成文件的海明码编码文件,将海明码编码文件2的N次方位的内容提取出来作为增量修复文件,海明码编码文件其余方位的内容提出来即为原始文件。4.根据权利要求3所述的一种远程文件修复方法,其特征在于:所述步骤S3进一步具体为:将原始文件的路径和增量修复文件的路径保存到原始文件的sha256对应key值的value中。5.根据权利要求1所述的一种远程文件修复方法,其特征在于:所述步骤S4进一步具体为:客户端对文件进行远程下载,下载的文件的请求头中返回文件的sha256值,然后下载完成后,进行sha256校验,如果下载完成后的文件sha256与数据库中保存的sha256散列对应key值相同,则校验通过,则无需修复;若校验不通过,则执行步骤S5。6.根据权利要求5所述的一种远程文件修复方法,其特征在于:所述步骤S5进一步具体为:如果sha256校验失败,则将sha256发送给服务端,根据sha256和增量修复文件的路径获取到增量修复文件,下载到本地,将增量修复文件按照2的N次方位的位置插入到下载的文件中,通过海明码找出错误的bit,修复错误的bit,再移除海明码的2的N次方位的bit,修复下载的文件。7.一种远程文件修复系统,其特征在于:所述修复系统包括sha256生成模块、海明码编码模块、路径保存模块、...

【专利技术属性】
技术研发人员:刘德建陈丛亮李佳
申请(专利权)人:福建天晴在线互动科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1