CN105867934B - 一种基于二分法和md5校验的文件远程升级方法 - Google Patents

一种基于二分法和md5校验的文件远程升级方法 Download PDF

Info

Publication number
CN105867934B
CN105867934B CN201610227087.5A CN201610227087A CN105867934B CN 105867934 B CN105867934 B CN 105867934B CN 201610227087 A CN201610227087 A CN 201610227087A CN 105867934 B CN105867934 B CN 105867934B
Authority
CN
China
Prior art keywords
block
file
check
size
tree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610227087.5A
Other languages
English (en)
Other versions
CN105867934A (zh
Inventor
王国清
刘志芳
崔跃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen Yaxon Networks Co Ltd
Original Assignee
Xiamen Yaxon Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xiamen Yaxon Networks Co Ltd filed Critical Xiamen Yaxon Networks Co Ltd
Priority to CN201610227087.5A priority Critical patent/CN105867934B/zh
Publication of CN105867934A publication Critical patent/CN105867934A/zh
Application granted granted Critical
Publication of CN105867934B publication Critical patent/CN105867934B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明一种基于二分法和MD5校验的文件远程升级方法,通过将升级服务器上的文件按照固定大小进行分块生成偶数等份组成的主块和剩余部分组成尾块,然后将主块中的每个文件块数据依次生成MD5校验值,之后将相邻两个块的MD5校验值两两成对拼接成字符串再生成上一级MD5校验值,依次类推,直到生成主块最终的MD5校验值为止,将整个过程生成的MD5校验值逆向生成一棵主块MD5校验树,最后对尾块部分独立生成MD5校验值。升级时,将主块的MD5校验树和尾块的MD5校验值发送给客户端,客户端按照相同的方式生成本地文件的主块MD5校验树和尾块MD5校验值,并按照二分法依次进行快速比对,对MD5校验值不相等的文件块进行下载升级。

Description

一种基于二分法和MD5校验的文件远程升级方法
背景技术
传统的远程升级方法大都采用完整文件下载的方式,对于动辄几百M甚至几G的大文件,由于文件的传输数据量较大,下载时间长,传统方法适用性较差。特别是对于某些大小不变,只是修正部分错误数据的文件,进行完整文件的下载既浪费资源又费事费力。
本发明一种基于二分法和MD5校验的文件远程升级方法,通过将本地文件和远程文件划分成固定大小的文件块并生成MD5校验树,然后基于二分法快速比较,以达到快速升级判断和文件局部升级的目的,某些情况下能够显著减少数据传输量和升级等待时间。本方法特别适用于对那些文件大小不变,只是进行了局部数据修改的大文件升级,对于大小发生变化或者内容改动较大的文件,升级效果与传统升级方法相同。
发明内容
本发明提出一种基于二分法和MD5校验的文件远程升级方法,以提升文件大小不变,只是进行了局部数据修改的大文件升级的升级效率。
具体方案如下:一种基于二分法和MD5校验的文件远程升级方法,包括以下步骤:
S1、对升级服务器发布的待升级的文件生成升级属性文件:
S11、将文件按固定大小分块;
假设待升级文件大小为M个字节,分块大小为N个字节,则将文件分割成两部分M1和M2;其中,M1大小为小于等于M的能够偶数倍整除N的最大整数,称之为主块;M2的大小为M-M1,位于文件的尾部,称之为尾块,其计算公式如下所示:
Figure GDA0002831199170000021
式中
Figure GDA0002831199170000022
为向下取整运算,“mod”为取余数运算;按照上述公式计算出主块的大小M1和尾块的大小M2之后,将文件进行分块,主块按照N大小进行等分,尾块独立成块;
S12、构建主块MD5校验树和尾块MD5校验值:
S121、生成尾块的MD5校验值;
S122,将主块按照固定大小N进行读取,每读取大小为N的数据生成一个MD5校验值,依次生成所有
Figure GDA0002831199170000023
个MD5校验值;
S123、将主块中相邻的两个MD5校验值字符串两两成对首尾相接拼接成字符串,对拼接的字符串生成上一级的MD5校验值,并按照此拼接生成MD5校验值的方式向上逐层级重复处理,直至剩下一个MD5校验值为止,最后剩下的 MD5校验值称之为主块MD5校验值;
S124、将主块生成的MD5校验值按照层级关系,构建成MD5校验树,主块MD5校验值为树的根节点;
S125、将主块MD5校验值和尾块的MD5校验值首尾相接,拼接成字符串生成最终文件的MD5校验值;
S13、生成升级属性文件,其中属性包括分块大小N、分块个数C、文件MD5校验值、尾块大小M2、尾块MD5校验值、主块MD5校验树;
S2、客户端向服务器端请求获取升级属性文件中的分块大小N、分块个数C、尾块大小M2以及文件MD5校验值;
S3、若升级服务器应答失败,则表示升级失败或者无需升级,升级结束;若升级服务器应答成功,则计算升级文件大小并与本地文件大小进行比较,若文件大小不等,则从升级服务器重新下载完整文件,下载完成之后执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件,若文件大小相等则进入步骤S4;
S4、判断客户端本地升级属性文件是否存在,若本地升级属性文件不存在,则执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件,然后判断本地升级属性文件中的分块大小与服务器中的分块大小是否相等,若分块大小不相等,则执行步骤S1按照S2中获取到的分块大小N重新生成本地属性文件。之后,比较本地升级属性文件中的文件MD5校验值与待升级的文件MD5校验值是否相等,若文件MD5校验值相等,则无需升级,升级结束;若文件校验值不相等,则进入步骤S5;
S5、客户端向服务端请求主块MD5校验树和尾块MD5校验值。若服务器端应答失败,则升级失败,结束升级流程;若服务器端应答成功,则根据返回结果重建主块MD5校验树,采用二分法与客户端本地主块MD5校验树及进行比对,将MD5校验值不相等的文件块的偏移地址连同分块大小N放入待升级块列表中;比较尾块的MD5校验值是否相同,若不同则将尾块大小及偏移地址加入到待升级块列表中,其中尾块的分块大小为尾块大小M2,其待升级块偏移地址的计算方式为:
尾块的待升级块偏移=分块大小N*分块个数C
主块MD5校验树和尾块MD5校验值比对完之后进入步骤S6;
S6、若带升级块列表为空,则升级完成。否则,客户端根据待升级块列表中的文件偏移地址和分块大小,向升级服务器请求下载对应的文件块,按照偏移地址覆盖写入到客户端本地文件的对应偏移,待所有待升级块列表中的块全部更新完毕之后,则执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件。
其中,所述的将文件按固定大小分块为将文件按照块的大小划分每个块在文件中所属的文件起止地址。
任选的,所述的主块MD5校验树的存储结构采用二叉树的前序、中序、后序 排序方式中的任意一种进行存储。
其中,所述的采用二分法与客户端本地主块MD5校验树进行比对,将比较后不同文件块的偏移地址连同分块大小N放入待升级块列表中具体步骤是:将重建的主块MD5校验树与客户端本地的MD5校验树遍历比较两棵树的对应节点的MD5校验值,若结点的MD5校验值相等,则跳过该节点,继续遍历;若叶节点MD5校验值不相等,则将该节点标记为待升级状态;计算标记为待升级状态的节点对应的块在文件中的起始偏移地址,将偏移地址连同分块大小N放入待升级块列表中,其中块偏移地址=块编号*分块大小N,其中块编号为主块按照分块大小N进行等分后,按一定顺序开始编号,与MD5校验树的叶节点一一对应。
任选的,所述的遍历MD5校验树的方式为前序遍历、中序遍历、后序遍历中的任意一种。
任选的,所述的块编号方式为从左到右或从右到左。
本发明一种基于二分法和MD5校验的大文件远程升级方法,通过将文件按照固定大小进行分块生成主块和尾块,然后构建由分块大小、分块个数、文件MD5校验值、尾块大小、尾块MD5校验值、主块MD5校验树组成的升级属性文件。升级时,客户端根据升级属性文件中的字段进行升级判断,并基于二分法对校验树进行快速比对,确定待升级块信息,最后完成待升级块的下载和覆盖更新。该方法避免了传统文件升级需要下载整个文件的不足,特别适合对那些文件大小不变,只是进行了局部数据修改的的大文件升级,能够有效减少数据传输量和升级等待时间。而对于文件大小发生变化或者内容变化较大的文件,该方法也能达到升级的目的,其效果与传统升级方法相同。
附图说明
图1为本发明一实施例中对文件分块示意图;
图2为本发明一实施例中生成主块和尾块MD5校验值示意图;
图3为本发明一实施例构建主块MD5校验树示意图;
图4为本发明一实施例升级属性文件结构图;
图5为本发明一实施例步骤b)的主要流程图;
图6为本发明一实施例采用二分法比较主块MD5校验树的过程;
图7为本发明一实施例对不同节点对应文件块编号的示意图;
图8为本发明一实施例步骤c)-步骤d)的主要流程。
具体实施方式
为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。现结合附图和具体实施方式对本发明进一步说明。
本实施例包括对升级文件生成升级属性文件的步骤以及升级文件的步骤,对升级服务器上的待升级文件生成升级属性文件的步骤包括:
1)、将文件按照固定大小进行分块:
假设待升级文件大小为M个字节,分块大小为N个字节,则将文件分割成两部分M1和M2。其中,M1大小为小于M的能够偶数倍整除N的整数,称之为“主块”;M2的大小为M-M1,位于文件的尾部,称之为“尾块”,其计算公式如下所示:
Figure GDA0002831199170000061
在上述公式中
Figure GDA0002831199170000066
为向下取整运算,如
Figure GDA0002831199170000062
表示
Figure GDA0002831199170000063
的取整数部分;“mod”为取余数运算,如
Figure GDA0002831199170000064
表示
Figure GDA0002831199170000065
的整数部分除于2的余数。
按照上述公式计算出主块的大小M1和尾块的大小M2之后,结合图1,示出了本实施例文件分块结构示意图,主块按照N大小进行等分,尾块独立成块。这里的分块并不是真的将文件分割成几个文件,而只是将文件按照块的大小划分每个块在文件中所属的文件起止地址。
文件分块后,接下来要构建主块的MD5校验树和尾块MD5校验值。进入步骤2)。
2)、构建主块MD5校验树和尾块MD5校验值:
首先,先生成尾块的MD5校验值;然后,将主块按照固定大小N进行读取,每读取大小为N的数据生成一个MD5校验值,依次生成所有个MD5校验值,之后再将相邻的两个MD5校验值字符串两两成对首尾 相接拼接成字符串,对拼接的字符串生成上一级的MD5校验值,以此类推,直至剩下一个MD5校验值为止,结合图2。最后剩下的位于最顶端的MD5校验值称之为主块MD5校验值;
结合图3将主块生成的MD5校验值按照层级关系,构建成MD5校验 树,主块 MD5校验值为树的根节点;
最后,将主块MD5校验值和尾块的MD5校验值首尾 相接,拼接成字符串生成最终文件的MD5校验值。
3)、生成升级属性文件:
升级属性文件保存着文件的升级信息,主要是用来判断本地文件和远程文件的数据是否相同,不同则需要进行文件升级并触发升级流程,相同则不需要进行升级。结合图4,文件升级信息包括:分块大小、分块个数、文件MD5校验值、尾块大小、尾块MD5校验值、主块MD5校验树几部分组成。其中文件MD5 校验值为主块MD5校验树根节点的MD5字符串与尾块MD5校验值字符串首尾拼接之后计算生成的MD5校验值。
本领域的相关技术人员应该知道,上述结构中,本实施例中主块MD5校验树的存储结构采用二叉树的前序方式进行存储,而采用二叉树的中序、后序排序进行存储也是可行的,采取的存储方式对于本发明的效果并无实质性影响,只需在客户端和服务端约定一致,能够正确还原树结构即可。
本实施例升级文件的主要流程如下:
a)、如果升级服务器有新的升级文件发布,则升级服务器执行上述步骤1) 到步骤3)的处理流程,生成新的升级属性文件;
b)、客户端启动之后,向服务器端请求获取升级属性文件中的分块大小N、分块个数C、尾块大小M2以及文件MD5校验值。如果升级服务器应答失败,则表示升级失败或者无需升级,升级结束;如果升级服务器应答成功,则计算升级服务器的文件大小,与本地文件大小进行比较。如果文件大小不相等,则从升级服务器中重新下载完整文件,下载完成之后,执行步骤1)到步骤3)的处理流程,生成客户端本地的升级属性文件,升级结束;如果文件大小相等,则判断客户端本地升级属性文件是否存在。如果本地升级属性文件不存在,则根据步骤1)到步骤3)的处理流程,生成本地升级属性文件。之后,判断本地升级属性文件中的分块大小与服务器中的分块大小是否相等。如果分块大小不相等,则根据步骤1)到步骤3重新生成本地属性文件。之后,比较本地升级属性文件中的文件MD5校验值与升级服务器的文件MD5校验值是否相等,如果文件校验值相等,则无需升级,升级结束;如果文件校验值不相等,则进入步骤c)。结合图5,示出了该步骤的主要流程;
c)、客户端向服务端请求主块MD5校验树和尾块MD5校验值。服务端应答失败,则升级失败,结束升级流程;服务端应答成功,则根据返回结果重建主块MD5校验树,同时与客户端本地的MD5校验树按照前序遍历顺序依次比较两棵树的对应节点的MD5校验值,如果某结点的MD5校验值相等,则跳过该节点,继续遍历。如果碰到MD5校验值不相等的叶节点,则将该节点标记为待升级状态。结合图6示出了该比较过程,灰色节点为MD5校验值不相同的节点,下图整个过程总共进行了10次比较,对应编号为1~10,而J1、J2、J3对应的块就是被标记为待升级的文件块。
树遍历比较完毕后,计算标记为待升级状态的节点对应的块在文件中的起始偏移地址,将偏移地址连同分块大小N放入待升级块列表中。其中块偏移地址=块编号*分块大小N,其中块编号为主块按照分块大小N进行等分后,从左到右从0开始编号,与MD5校验树的叶节点从左到右一一对应,该流程如图7 所示。
最后比较尾块的MD5校验值是否相同,不同则加入到待升级块列表中。尾块的待升级块偏移地址为分块大小N*分块个数C,其块大小为尾块大小M2。进入步骤d);
本实施例基于二分法对MD5校验树进行快速比对,在遍历比对时采用前序遍历的方式比对,本领域的相关技术人员应当知道的是,遍历MD5校验树的方式还可以是中序遍历或后序遍历,对于遍历的方式并不作任何的限定,而对于文件块的编号也可以是从右到左,亦不做任何的限定。
d)、如果待升级块列表为空,则升级完成。否则,客户端根据待升级块列表中的文件偏移地址和分块大小,向升级服务器请求下载对应的文件块,按照偏移地址覆盖写入到客户端本地文件的对应偏移,待所有待升级块列表中的块全部更新完毕之后。执行步骤1)到步骤3)流程,重新生成升级属性文件。升级完成。步骤c)-步骤d)的流程图大致如图8所示。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。

Claims (6)

1.一种基于二分法和MD5校验的文件远程升级方法,包括以下步骤:
S1、对升级服务器发布的待升级的文件生成升级属性文件:
S11、将文件按固定大小分块;
假设待升级文件大小为M个字节,分块大小为N个字节,则将文件分割成两部分M1和M2;其中,M1的大小为不大于M的能够偶数倍整除N的最大整数,称之为主块;M2的大小为M-M1,位于文件的尾部,称之为尾块,其计算公式如下所示:
Figure FDA0002831199160000011
式中
Figure FDA0002831199160000012
为向下取整运算,“mod”为取余数运算;按照上述公式计算出主块的大小M1和尾块的大小M2之后,将文件进行分块,主块按照N大小进行等分,尾块独立成块;
S12、构建主块MD5校验树和尾块MD5校验值:
S121、生成尾块的MD5校验值;
S122、将主块按照固定大小N进行读取,每读取大小为N的数据生成一个MD5校验值,依次生成所有
Figure FDA0002831199160000013
个MD5校验值;
S123、将主块中相邻的两个MD5校验值字符串两两成对首尾相接拼接成字符串,对拼接的字符串生成上一级的MD5校验值,并按照此拼接生成MD5校验值的方式向上逐层级重复处理,直至剩下一个MD5校验值为止,最后剩下的MD5校验值称之为主块MD5校验值;
S124、将主块生成的MD5校验值按照层级关系,构建成MD5校验树,主块MD5校验值为树的根节点;
S125、将主块MD5校验值和尾块的MD5校验值首尾相接,拼接成字符串生成最终文件的MD5校验值;
S13、生成升级属性文件,其中属性包括分块大小N、分块个数C、文件MD5校验值、尾块大小M2、尾块MD5校验值、主块MD5校验树;
S2、客户端向服务器端请求获取升级属性文件中的分块大小N、分块个数C、尾块大小M2以及文件MD5校验值;
S3、若升级服务器应答失败,则表示升级失败或者无需升级,升级结束;若升级服务器应答成功,则计算升级文件大小并与本地文件大小进行比较,若文件大小不等,则从升级服务器重新下载完整文件,下载完成之后执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件,若文件大小相等则进入步骤S4;
S4、判断客户端本地升级属性文件是否存在,若本地升级属性文件不存在,则执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件,然后判断本地升级属性文件中的分块大小与服务器中的分块大小是否相等,若分块大小不相等,则执行步骤S1按照S2中获取到的分块大小N重新生成本地属性文件;之后,比较本地升级属性文件中的文件MD5校验值与待升级的文件MD5校验值是否相等,若文件MD5校验值相等,则无需升级,升级结束;若文件校验值不相等,则进入步骤S5;
S5、客户端向服务端请求主块MD5校验树和尾块MD5校验值;若服务器端应答失败,则升级失败,结束升级流程;若服务器端应答成功,则根据返回结果重建主块MD5校验树,采用二分法与客户端本地主块MD5校验树进行比对,将MD5校验值不相等的文件块的偏移地址连同分块大小N放入待升级块列表中;比较尾块的MD5校验值是否相同,若不同则将尾块大小及偏移地址加入到待升级块列表中,其中尾块分块大小为尾块大小M2,其待升级块偏移地址计算方式为:
尾块的待升级块偏移=分块大小N*分块个数C
主块MD5校验树和尾块MD5校验值比对完之后进入步骤S6;
S6、若带升级块列表为空,则升级完成;否则,客户端根据待升级块列表中的文件偏移地址和分块大小,向升级服务器请求下载对应的文件块,按照偏移地址覆盖写入到客户端本地文件的对应偏移,待所有待升级块列表中的块全部更新完毕之后,则执行步骤S1按照S2中获取到的分块大小N生成本地升级属性文件。
2.根据权利要求1所述的方法,其特征在于:所述的将文件按固定大小分块为将文件按照块的大小划分每个块在文件中所属的文件起止地址。
3.根据权利要求1所述的方法,其特征在于:所述的主块MD5校验树的存储结构采用二叉树的前序、中序、后续排序方式中的任意一种进行存储。
4.根据权利要求1所述的方法,其特征在于:所述的采用二分法与客户端本地主块MD5校验树进行比对,将比较后不同文件块的偏移地址连同分块大小N放入待升级块列表中具体步骤是:将重建的主块MD5校验树与客户端本地的MD5校验树遍历比较两棵树的对应节点的MD5校验值,若结点的MD5校验值相等,则跳过该节点,继续遍历;若叶节点MD5校验值不相等,则将该节点标记为待升级状态;计算标记为待升级状态的节点对应的块在文件中的起始偏移地址,将偏移地址连同分块大小N放入待升级块列表中,其中块偏移地址=块编号*分块大小N,其中块编号为主块按照分块大小N进行等分后,按一定顺序开始编号,与MD5校验树的叶节点一一对应。
5.根据权利要求4所述的方法,其特征在于:遍历MD5校验树的方式为前序遍历、中序遍历、后序遍历中的任意一种。
6.根据权利要求4所述的方法,其特征在于;所述的块编号方式为从左到右或从右到左。
CN201610227087.5A 2016-04-13 2016-04-13 一种基于二分法和md5校验的文件远程升级方法 Active CN105867934B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610227087.5A CN105867934B (zh) 2016-04-13 2016-04-13 一种基于二分法和md5校验的文件远程升级方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610227087.5A CN105867934B (zh) 2016-04-13 2016-04-13 一种基于二分法和md5校验的文件远程升级方法

Publications (2)

Publication Number Publication Date
CN105867934A CN105867934A (zh) 2016-08-17
CN105867934B true CN105867934B (zh) 2021-01-22

Family

ID=56636595

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610227087.5A Active CN105867934B (zh) 2016-04-13 2016-04-13 一种基于二分法和md5校验的文件远程升级方法

Country Status (1)

Country Link
CN (1) CN105867934B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528125A (zh) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 一种数据文件的增量更新方法和服务器、客户端以及系统
CN106775802B (zh) * 2016-11-14 2023-04-28 福建天泉教育科技有限公司 海量小文件快速更新的方法及其系统
CN107465676B (zh) * 2017-07-31 2020-03-03 广州视源电子科技股份有限公司 一种向海量数据文件存储系统中上传文件的方法及其装置
CN107609054A (zh) * 2017-08-24 2018-01-19 郑州云海信息技术有限公司 一种对象存储系统中大文件的上传、下载方法及处理系统
CN107577474B (zh) * 2017-09-12 2020-07-10 海信视像科技股份有限公司 升级文件的处理方法及装置、电子设备
CN108255510B (zh) * 2017-12-22 2021-08-06 芯海科技(深圳)股份有限公司 一种基于iap在线升级待升级固件传输校验设计方法
CN109218011B (zh) * 2018-09-07 2021-05-04 山东中磁视讯股份有限公司 一种基于md5的移动终端多媒体资源验证方法
CN109542495A (zh) * 2018-11-12 2019-03-29 青岛海信电器股份有限公司 一种软件升级方法及装置
CN110855446B (zh) * 2019-11-27 2022-11-25 杭州迪普科技股份有限公司 一种密码验证方法及装置
CN111221556B (zh) * 2020-01-09 2023-08-29 联陆智能交通科技(上海)有限公司 一种远程升级rsu镜像方法及系统
CN111880826A (zh) * 2020-07-28 2020-11-03 平安科技(深圳)有限公司 云业务应用升级方法、装置、电子设备和存储介质
CN111966375A (zh) * 2020-08-13 2020-11-20 科华恒盛股份有限公司 一种固件升级方法、系统、设备及计算机可读存储介质
CN115225319A (zh) * 2022-06-10 2022-10-21 中电云数智科技有限公司 一种数据校验方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102654839A (zh) * 2012-04-18 2012-09-05 华为技术有限公司 一种实现现场可编程门阵列可靠升级的方法及装置
US8291402B2 (en) * 2007-11-29 2012-10-16 Red Hat, Inc. Using system fingerprints to accelerate package dependency resolution
CN102831001A (zh) * 2012-09-11 2012-12-19 北京百纳威尔科技有限公司 软件升级包的制作方法及装置、程序的升级方法及设备
CN103019785A (zh) * 2012-12-11 2013-04-03 北京奇虎科技有限公司 用于处理程序升级的方法和装置
CN103957244A (zh) * 2014-04-21 2014-07-30 惠州市新思为电子科技有限公司 一种远程程序升级方法及服务器
JP2015022497A (ja) * 2013-07-18 2015-02-02 日本電信電話株式会社 文対応付け決定装置、方法、及びプログラム
US9043778B2 (en) * 2011-12-01 2015-05-26 Tencent Technology (Shenzhen) Company Limited Method and system for upgrading software

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923476A (zh) * 2009-06-12 2010-12-22 鸿富锦精密工业(深圳)有限公司 文件安装系统及文件安装方法
TWI489818B (zh) * 2013-01-04 2015-06-21 Quanta Comp Inc 遠端升級伺服器及其適用之負載平衡方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291402B2 (en) * 2007-11-29 2012-10-16 Red Hat, Inc. Using system fingerprints to accelerate package dependency resolution
US9043778B2 (en) * 2011-12-01 2015-05-26 Tencent Technology (Shenzhen) Company Limited Method and system for upgrading software
CN102654839A (zh) * 2012-04-18 2012-09-05 华为技术有限公司 一种实现现场可编程门阵列可靠升级的方法及装置
CN102831001A (zh) * 2012-09-11 2012-12-19 北京百纳威尔科技有限公司 软件升级包的制作方法及装置、程序的升级方法及设备
CN103019785A (zh) * 2012-12-11 2013-04-03 北京奇虎科技有限公司 用于处理程序升级的方法和装置
JP2015022497A (ja) * 2013-07-18 2015-02-02 日本電信電話株式会社 文対応付け決定装置、方法、及びプログラム
CN103957244A (zh) * 2014-04-21 2014-07-30 惠州市新思为电子科技有限公司 一种远程程序升级方法及服务器

Also Published As

Publication number Publication date
CN105867934A (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
CN105867934B (zh) 一种基于二分法和md5校验的文件远程升级方法
EP3678346B1 (en) Blockchain smart contract verification method and apparatus, and storage medium
CN110602148B (zh) 一种区块的状态树的生成和链上数据验证的方法及装置
CN110688377B (zh) 一种更新状态默克树的方法及装置
US11169978B2 (en) Distributed pipeline optimization for data preparation
US11461304B2 (en) Signature-based cache optimization for data preparation
CN111008201B (zh) 并行修改和读取状态树的方法和装置
US11048685B1 (en) Function-based object queries
CN111078662B (zh) 一种区块链数据存储方法与装置
CN111324577B (zh) 一种Yml文件读写的方法及装置
NL2011817C2 (en) A method of generating a reference index data structure and method for finding a position of a data pattern in a reference data structure.
CN105160253B (zh) 修复客户端程序的方法、装置、系统及服务器
WO2020108183A1 (zh) 差分升级包的生成方法、装置和设备
CN109033278A (zh) 数据处理方法、装置、电子设备及计算机存储介质
CN107423163B (zh) 整体串行增加区块的区块链的勘误方法及系统
CN114175640B (zh) 向量化的散列表
US10346256B1 (en) Client side cache for deduplication backup systems
US10740316B2 (en) Cache optimization for data preparation
CN110692078B (zh) 基于区块链的交易数据处理方法、设备和存储介质
CN107451007B (zh) 针对增加区块进行勘误的区块链的验证方法及系统
CN107451002B (zh) 针对修改区块体数据的区块链的主动验证方法及系统
CN111190768B (zh) 数据库执行错误恢复方法、数据库访问方法及装置
CN110807000B (zh) 一种文件修复方法、装置、电子设备和存储介质
US9697210B1 (en) Data storage testing
CN107451179B (zh) 针对增加区块的整体勘误的区块链的查询方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant