CN109697369A - 文件处理方法、装置、设备和计算机可读存储介质 - Google Patents

文件处理方法、装置、设备和计算机可读存储介质 Download PDF

Info

Publication number
CN109697369A
CN109697369A CN201710992085.XA CN201710992085A CN109697369A CN 109697369 A CN109697369 A CN 109697369A CN 201710992085 A CN201710992085 A CN 201710992085A CN 109697369 A CN109697369 A CN 109697369A
Authority
CN
China
Prior art keywords
file
check value
location information
document
document container
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.)
Pending
Application number
CN201710992085.XA
Other languages
English (en)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710992085.XA priority Critical patent/CN109697369A/zh
Publication of CN109697369A publication Critical patent/CN109697369A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例公开了一种文件处理方法、装置、设备和计算机可读存储介质。方法包括:接收文件容器和第一文件,其中,第一文件中存储有文件容器中的一个或多个文件相对于文件容器的位置信息以及文件的校验值;接收针对文件容器中的文件的校验指令;依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验。本申请实施例的文件处理方法、装置、设备和计算机可读存储介质,能够提高文件校验速度。

Description

文件处理方法、装置、设备和计算机可读存储介质
技术领域
本申请涉及数据安全技术领域,尤其涉及一种文件处理方法、装置、设备和计算机可读存储介质。
背景技术
随着互联网技术和资源共享技术的发展,客户端可以方便地访问服务器中的文件。在很多情况下,客户端会将服务器中的文件下载至本地。但是在客户端下载文件至本地的过程中,文件可能被篡改,这就导致客户端在访问下载至本地的文件时,容易使客户端数据遭到破坏、更改和泄露,安全性不高。
为了提高客户端数据的安全性。通常的做法是服务器对文件进行加密处理。客户端在校验文件时,需要先对接收到的加密文件进行解密处理,再对解密后的文件进行校验。
但是上述做法会影响客户端校验文件的速度。尤其在高频次读取文件和多文件同时处理时,上述问题尤为突出;原因在于在高频次读取文件和多文件同时处理时,频繁的对文件进行解密处理以及多文件同时解密,会占用较多客户端资源。
发明内容
本申请实施例提供一种文件处理方法、装置、设备和计算机可读存储介质,能够提高文件校验速度。
第一方面,本申请实施例提供了一种文件处理方法,方法包括:
从文件容器中,选择一个或多个文件;
获取所选择的每一文件相对于文件容器的位置信息;
计算所选择的每一文件的校验值;
将位置信息和校验值存储于用于文件校验的第一文件中;
发送文件容器和第一文件。
第二方面,本申请实施例提供了一种文件处理方法,方法包括:
接收文件容器和第一文件,第一文件中存储有文件容器中的一个或多个文件相对于文件容器的位置信息以及文件的校验值;
接收针对文件容器中的文件的校验指令;
依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验。
第三方面,本申请实施例提供了一种文件处理装置,装置包括:
选择模块,用于从文件容器中,选择一个或多个文件;
获取模块,用于获取所选择的每一文件相对于文件容器的位置信息;
计算模块,用于计算所选择的每一文件的校验值;
存储模块,用于将位置信息和校验值存储于用于文件校验的第一文件中;
发送模块,用于发送文件容器和第一文件。
第四方面,本申请实施例提供了一种文件处理装置,装置包括:
第一接收单元,用于接收文件容器和第一文件,第一文件中存储有文件容器中的一个或多个文件相对于文件容器的位置信息以及文件的校验值;
第二接收单元,用于接收针对文件容器中的文件的校验指令;
检验单元,用于依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验。
第五方面,本申请实施例提供了一种文件处理设备,设备包括:存储器和处理器;
存储器用于存储可执行程序代码;
处理器用于读取存储器中存储的可执行程序代码以执行本申请实施例第一方面或第二方面提供的文件处理方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令;计算机程序指令被处理器执行时实现本申请实施例第一方面或第二方面提供的文件处理方法。
本申请实施例的文件处理方法、装置、设备及计算机可读存储介质,能够提高文件校验速度。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的文件处理方法的第一种流程示意图;
图2示出了本申请实施例提供的文件处理方法的第二种流程示意图;
图3示出了本申请实施例提供的文件处理装置的第一种结构示意图;
图4示出了本申请实施例提供的文件处理装置的第二种结构示意图;
图5示出了能够实现根据本申请实施例的文件处理方法的计算设备的第一种示例性硬件架构的结构图;
图6示出了能够实现根据本申请实施例的文件处理方法的计算设备的第二种示例性硬件架构的结构图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本申请,并不被配置为限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
鉴于目前文件校验速度慢的问题,基于尽可能少的对文件加密和解密,来提高文件的校验速度的思想,本申请实施例提供了一种文件处理方法。发送端设备获取文件的相对位置信息并计算文件的校验值,将存储有相对位置信息和校验值的文件发送给接收端设备。接收端设备依据接收到的文件中的相对位置信息和校验值进行校验操作。无需再对文件进行加密,能够提高文件校验速度。
需要说明的是,本申请实施例提供的文件处理方法,可以应用于客户端从服务器获得文件进行校验的场景,也可以应用于一个移动终端从另一个移动终端获得文件进行校验的场景,也可以应用于移动终端从PC端获得文件进行校验的场景,也可以应用于PC端从移动终端获得文件进行校验的场景,等等。
图1示出了本申请实施例提供的文件处理方法的第一种流程示意图。其可以包括:
S101:从文件容器中,选择一个或多个文件。
S102:获取所选择的每一文件相对于文件容器的位置信息。
S103:计算所选择的每一文件的校验值。
S104:将位置信息和校验值存储于用于文件校验的第一文件中。
S105:发送文件容器和第一文件。
在本申请的一个实施例中,文件容器可以为文件夹,也可以压缩包,还可以为程序安装包。
下面本申请实施例提供的文件处理方法应用于客户端从服务器获得文件进行校验的场景且文件容器为压缩包为例进行说明。
假设,服务器中存储有压缩包A。压缩包A中存在文件夹A1、文件夹A2、文件夹A3以及文件x,文件夹A1中存在文件夹A11和文件夹A12,文件夹A3中存在文件y。从压缩包A中选择的文件为文件y。在本申请的一个实施例中,可以依据用户针对文件的选择操作来选择文件。
获取文件y相对于压缩包A的位置信息。在本申请的一个实施例中,位置信息可以为路径信息。则获取的路径信息为:“../A3/y”。
计算文件y的校验值。在本申请的一个实施例中,校验值可以为哈希值。本申请实施例并不对计算哈希值所采用的算法进行限定,可以采用MD5算法或者SHA-1算法等计算文件的哈希值。假设计算得到的文件y的哈希值为:47bce5c74f589f4867dbd57e9ca9f808。
将获得的文件y相对于压缩包A的路径信息“../A3/y”和计算得到的文件y的哈希值“47bce5c74f589f4867dbd57e9ca9f808”存储在一特定文件中,比如index.list中。
将压缩包A和文件index.list发送给客户端。
客户端在接收到压缩包A和文件index.list后,依据文件index.list中存储的路径信息和哈希值对文件y进行校验。
在本申请的一个实施例中,将位置信息和校验值存储于用于文件校验的第一文件中,可以包括:按照预设格式,将位置信息和校验值存储于用于文件校验的第一文件中。
示例性的,假设预设格式为表格式。index.list中存储的路径信息和哈希值如表1所示。
表1
文件名称 路径 哈希值
y ../A3/y 47bce5c74f589f4867dbd57e9ca9f808
示例性的,假设预设格式为键值对格式。index.list中存储的路径信息和哈希值如下表示。
文件y.路径=../A3/y;
文件y.哈希值=47bce5c74f589f4867dbd57e9ca9f808。
在本申请的一个实施例中,发送文件容器和第一文件,可以包括:发送第一文件和包含所选择的一个或多个文件的文件夹或压缩包或程序安装包;或,发送同时包含所选择的一个或多个文件和第一文件的文件夹或压缩包或程序安装包。
示例性的,将压缩包A和文件index.list发送给客户端。
再示例性的,将包含有文件index.list的压缩包A发送给客户端。
需要说明的是,在将包含有文件index.list的压缩包A发送给客户端之前,需要先将文件index.list添加在压缩包A。基于此,在本申请的一个实施例中,在发送同时包含所选择的一个或多个文件和第一文件的文件夹或压缩包或程序安装包之前,本申请实施例提供的文件处理方法还可以包括:将第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中。
在本申请的一个实施例中,还可以将文件index.list添加在压缩包A中预先设定的位置,比如:压缩包A的根目录。可以理解的是,当文件index.list添加在压缩包A的根目录后,压缩包A中存在文件夹A1、文件夹A2、文件夹A3、文件x以及文件index.list,文件夹A1中存在文件夹A11和文件夹A12,文件夹A3中存在文件y。基于此,在本申请的一个实施例中,将第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中,可以包括:将第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中预先设定的位置。
在本申请的一个实施例中,还可以对文件index.list进行加密。相应的,客户端在依据文件index.list对文件进行校验之前,需要对文件index.list进行解密。基于此,在本申请的一个实施例中,在发送同时包含所选择的一个或多个文件和第一文件的文件夹或压缩包或程序安装包之前,本申请实施例提供的文件处理方法还可以包括:加密第一文件。
需要说明的是,本申请实施例并不对加密第一文件所采用的算法进行限定,任何加密算法均可应用本申请实施例中。
图2示出了本申请实施例提供的文件处理方法的第二种流程示意图。其可以包括:
S201:接收文件容器和第一文件。
其中,第一文件中存储有文件容器中的一个或多个文件相对于文件容器的位置信息以及文件的校验值。
S202:接收针对文件容器中的文件的校验指令。
S203:依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验。
下面以相应于图1所示实施例中的示例为例进行说明。
客户端在接收到压缩包A和文件index.list,并且接收到针对压缩包A中的文件y的校验指令后,依据文件index.list中存储的文件y相对于压缩包A的路径信息和文件y的哈希值对文件y进行校验。
具体的,获取文件y相对于接收到的压缩包A的路径信息。
匹配获取到的路径信息和文件index.list中存储的文件y相对于压缩包A的路径信息。
若两个路径信息不匹配,则确认文件y校验失败。
若两个路径信息匹配,则计算文件y的哈希值。
匹配所计算的哈希值与和文件index.list中存储的文件y的哈希值。
若两个哈希值不匹配,则确认文件y校验失败。
若两个哈希值匹配,则确认文件y校验成功。
基于上述描述,在本申请的一个实施例中,依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验,可以包括:获取第二文件相对于接收到的文件容器的位置信息;匹配所获取的位置信息与第一文件中存储的第二文件相对于文件容器的位置信息;若两个位置信息不匹配,确认第二文件检验失败;若两个位置信息匹配,计算第二文件的校验值;匹配所计算的校验值与第一文件中存储的第二文件的校验值;若两个校验值不匹配,确认第二文件检验失败;若两个校验值匹配,确认第二文件检验成功。其中,校验值可以为哈希值。
在本申请的一个实施例中,在服务器对文件index.list进行加密的情况下,客户端在依据文件index.list对文件进行校验之前,需要对文件index.list进行解密。基于此,在本申请的一个实施例中,在依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验之前,本申请实施例提供的文件处理方法还可以包括:解密第一文件。
在本申请的一个实施例中,在服务器按照预设格式,将文件y相对于压缩包A的路径信息和文件y的哈希值存储在文件index.list中的情况下,客户端在依据文件index.list对文件进行校验之前,需要先检测文件index.list包括的路径信息和哈希值是否按照预设格式存储,若检测到文件index.list中的路径信息和哈希值没有按照预设格式存储,表示文件index.list被篡改,进而可以确定出压缩包A中的其他文件也有可能被篡改,此时不再进行文件校验,直接提示校验失败。只有在检测到文件index.list中的路径信息和哈希值按照预设格式存储时,才依据文件index.list对文件进行校验。
基于上述描述,在本申请的一个实施例中,在依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验之前,本申请实施例提供的文件处理方法还可以包括:检测第一文件包括的位置信息和校验值是否按照预设格式存储;若第一文件包括的位置信息和校验值按照预设格式存储,则执行依据第一文件包括的位置信息和校验值,对第二文件进行校验。
在本申请的一个实施例中,在服务器将文件index.list添加在压缩包A中的情况下,客户端接收包含有文件index.list的压缩包A。基于此,在本申请的一个实施例中,接收文件容器和第一文件,可以包括:接收包含有第一文件的文件容器。
在本申请的一个实施例中,客户端在接收到压缩包A后,可以先检测压缩包A中是否存在文件index.list,若检测到压缩包A中不存在文件index.list,表示压缩包A被篡改,进而可以确定出压缩包A中的其他文件也有可能被篡改,此时不再进行文件校验,直接提示校验失败。只有在检测到压缩包A中存在文件index.list时,才依据文件index.list对文件进行校验。基于此,在本申请的一个实施例中,在依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验之前,本申请实施例提供的文件处理方法还可以包括:检测接收到文件容器中是否存在第一文件;若接收到的文件容器中存在第一文件,则执行依据第一文件包括的位置信息和校验值,对第二文件进行校验。
在本申请的一个实施例中,客户端在接收到压缩包A且检测到压缩包中存在文件index.list后,可以先检测文件index.list是否存储在压缩包A的根目录中,若检测到文件index.list没有存储在压缩包A的根目录中,表示文件index.list被移动,进而可以确定出压缩包A中的其他文件有可能被篡改,此时不再进行文件校验,直接提示校验失败。只有在检测到文件index.list存储在压缩包A的根目录中时,才依据文件index.list对文件进行校验。基于此,在本申请的一个实施例中,在依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验之前,本申请实施例提供的文件处理方法还可以包括:检测第一文件是否存储在文件容器中预先设定的位置;若第一文件存储在文件容器中预先设定的位置,则执行依据第一文件包括的位置信息和校验值,对第二文件进行校验。
在本申请的一个实施例中,上述校验指令可以为文件读取指令。
在本申请的一个实施例中,当上述校验指令为文件读取指令时,若文件y校验成功,则读取文件y。本申请实施例的提供的文件处理方法还可以包括:若第二文件校验成功,读取第二文件。
在本申请的一个实施例中,若文件y校验成功,可以将文件y对应的路径信息和哈希值加载至内存缓存中。当再次接收到针对文件y的文件读取指令时,可以直接从内存缓存中获取文件y对应的路径信息和哈希值,进一步提高针对文件y的校验效率。基于此,本申请实施例提供的文件处理方法还可以包括:将第二文件对应的位置信息和校验值加载至内存缓存中。
在本申请的一个实施例中,若文件y校验成功,还可以将文件y的内容加载至内存缓存中。当再次接收到针对文件y的读取指令时,可以直接从内存缓存中获取文件y的内容,提高针对文件y的读取效率。基于此,基于此,本申请实施例提供的文件处理方法还可以包括:将第二文件的内容加载至内存缓存中。
需要说明的是,上述以文件y、文件index.list和压缩包A为例进行说明,仅为本申请的一具体实例并不构成对本申请的限定。
需要说明的是,上述以服务器和客户端为例进行说明,仅为本申请的一具体实例并不构成对本申请的限定。
通常上述过程可以看出,本申请实施例的文件处理方法可以应用于接收方从发送方获取文件,为了保证接收方中数据的安全性以及提高对从发送方接收到的文件的读取效率的场景。
本申请实施例的文件处理方法还可以应用于本地设备。当应用于本地设备时,无需发送和接收文件容器和第一文件。
本申请实施例提供的文件处理方法可以通过文件处理装置来实现。如图3所示,图3示出了本申请实施例提供的文件处理装置的第一种结构示意图。其可以包括:
选择模块301,用于从文件容器中,选择一个或多个文件;
获取模块302,用于获取所选择的每一文件相对于文件容器的位置信息;
计算模块303,用于计算所选择的每一文件的校验值;
存储模块304,用于将位置信息和校验值存储于用于文件校验的第一文件中;
发送模块305,用于发送文件容器和第一文件。
在本申请的一个实施例中,存储模块304,具体可以用于:
按照预设格式,将位置信息和校验值存储于用于文件校验的第一文件中。
在本申请的一个实施例中,文件处理装置还可以包括:加密模块,用于加密第一文件。
在本申请的一个实施例中,文件容器包括以下所列项中的任意一种:文件夹、压缩包和程序安装包。
在本申请的一个实施例中,发送模块305,具体可以用于:
发送第一文件和包含所选择的一个或多个文件的文件夹或压缩包或程序安装包;或,
发送同时包含所选择的一个或多个文件和第一文件的文件夹或压缩包或程序安装包。
在本申请的一个实施例中,文件处理装置还可以包括:添加模块,用于将第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中。
在本申请的一个实施例中,添加模块,具体可以用于:
将第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中预先设定的位置。
在本申请的一个实施例中,位置信息可以包括:路径数据。
在本申请的一个实施例中,校验值可以包括:哈希值。
本申请实施例提供的文件处理方法可以通过文件处理装置来实现。如图4所示,图4示出了本申请实施例提供的文件处理装置的第二种结构示意图。其可以包括:
第一接收单元401,用于接收文件容器和第一文件,第一文件中存储有文件容器中的一个或多个文件相对于文件容器的位置信息以及文件的校验值;
第二接收单元402,用于接收针对文件容器中的文件的校验指令;
检验单元403,用于依据第一文件包括的位置信息和校验值,对校验指令对应的第二文件进行校验。
在本申请的一个实施例中,检验单元403,具体可以用于:
获取第二文件相对于接收到的文件容器的位置信息;
匹配所获取的位置信息与第一文件中存储的第二文件相对于文件容器的位置信息;
若两个位置信息不匹配,确认第二文件检验失败;
若两个位置信息匹配,计算第二文件的校验值;
匹配所计算的校验值与第一文件中存储的第二文件的校验值;
若两个校验值不匹配,确认第二文件检验失败;
若两个校验值匹配,确认第二文件检验成功。
在本申请的一个实施例中,文件处理装置还可以包括:解密单元,用于解密第一文件。
在本申请的一个实施例中,文件处理装置还可以包括:检测单元,用于检测第一文件包括的位置信息和校验值是否按照预设格式存储;若第一文件包括的位置信息和校验值按照预设格式存储,则执行依据第一文件包括的位置信息和校验值,对第二文件进行校验。
在本申请的一个实施例中,校验指令为文件读取指令。
在本申请的一个实施例中,文件处理装置还可以包括:读取单元,用于若第二文件校验成功,读取第二文件。
在本申请的一个实施例中,文件处理装置还可以包括:加载单元,用于将第二文件对应的位置信息和校验值加载至内存缓存中。
在本申请的一个实施例中,加载单元还可以用于:将第二文件的内容加载至内存缓存中。
在本申请的一个实施例中,第一接收单元401,具体可以用于:
接收包含有第一文件的文件容器。
在本申请的一个实施例中,检测单元还可以用于:
检测接收到文件容器中是否存在第一文件;若接收到的文件容器中存在第一文件,则执行依据第一文件包括的位置信息和校验值,对第二文件进行校验。
在本申请的一个实施例中,文件容器包括以下所列项中的任意一种:文件夹、压缩包和程序安装包。
在本申请的一个实施例中,位置信息包括:路径数据。
在本申请的一个实施例中,校验值包括:哈希值。
图5示出了能够实现根据本申请实施例的文件处理方法的计算设备的第一种示例性硬件架构的结构图。
如图5所示,计算设备500包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505、以及输出设备506。其中,输入接口502、中央处理器503、存储器504、以及输出接口505通过总线510相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线510连接,进而与计算设备500的其他组件连接。
具体地,输入设备501接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到计算设备500的外部供用户使用。
也就是说,图5所示的计算设备也可以被实现为一种文件处理设备,该文件处理设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现图1描述的文件处理方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现图1描述的文件处理方法。
图6示出了能够实现根据本申请实施例的文件处理方法的计算设备的第二种示例性硬件架构的结构图。
如图6所示,计算设备600包括输入设备601、输入接口602、中央处理器603、存储器604、输出接口605、以及输出设备606。其中,输入接口602、中央处理器603、存储器604、以及输出接口605通过总线610相互连接,输入设备601和输出设备606分别通过输入接口602和输出接口605与总线610连接,进而与计算设备600的其他组件连接。
具体地,输入设备601接收来自外部的输入信息,并通过输入接口602将输入信息传送到中央处理器603;中央处理器603基于存储器604中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器604中,然后通过输出接口605将输出信息传送到输出设备606;输出设备606将输出信息输出到计算设备600的外部供用户使用。
也就是说,图6所示的计算设备也可以被实现为一种文件处理设备,该文件处理设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现图2描述的文件处理方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现图2描述的文件处理方法。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

Claims (28)

1.一种文件处理方法,其特征在于,所述方法包括:
从文件容器中,选择一个或多个文件;
获取所选择的每一文件相对于所述文件容器的位置信息;
计算所选择的每一文件的校验值;
将所述位置信息和所述校验值存储于用于文件校验的第一文件中;
发送所述文件容器和所述第一文件。
2.根据权利要求1所述的方法,其特征在于,所述将所述位置信息和所述校验值存储于用于文件校验的第一文件中,包括:
按照预设格式,将所述位置信息和所述校验值存储于用于文件校验的第一文件中。
3.根据权利要求1所述的方法,其特征在于,在所述发送所述文件容器和所述第一文件之前,所述方法还包括:
加密所述第一文件。
4.根据权利要求1所述的方法,其特征在于,所述文件容器包括以下所列项中的任意一种:
文件夹、压缩包和程序安装包。
5.根据权利要求4所述的方法,其特征在于,所述发送所述文件容器和所述第一文件,包括:
发送所述第一文件和包含所选择的一个或多个文件的文件夹或压缩包或程序安装包;或,
发送同时包含所选择的一个或多个文件和所述第一文件的文件夹或压缩包或程序安装包。
6.根据权利要求5所述的方法,其特征在于,在发送同时包含所选择的一个或多个文件和所述第一文件的文件夹或压缩包或程序安装包之前,所述方法还包括:
将所述第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中。
7.根据权利要求6所述的方法,其特征在于,所述将所述第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中,包括:
将所述第一文件添加在包含所选择的一个或多个文件的文件夹或压缩包或程序安装包中预先设定的位置。
8.根据权利要求1所述的方法,其特征在于,所述位置信息包括:路径数据。
9.根据权利要求1所述的方法,其特征在于,所述校验值包括:哈希值。
10.一种文件处理方法,其特征在于,所述方法包括:
接收文件容器和第一文件,所述第一文件中存储有所述文件容器中的一个或多个文件相对于所述文件容器的位置信息以及文件的校验值;
接收针对所述文件容器中的文件的校验指令;
依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验。
11.根据权利要求10所述的方法,其特征在于,所述依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验,包括:
获取所述第二文件相对于接收到的所述文件容器的位置信息;
匹配所获取的位置信息与所述第一文件中存储的所述第二文件相对于所述文件容器的位置信息;
若两个位置信息不匹配,确认所述第二文件检验失败;
若两个位置信息匹配,计算所述第二文件的校验值;
匹配所计算的校验值与所述第一文件中存储的所述第二文件的校验值;
若两个校验值不匹配,确认所述第二文件检验失败;
若两个校验值匹配,确认所述第二文件检验成功。
12.根据权利要求10所述的方法,其特征在于,在所述依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验之前,所述方法还包括:
解密所述第一文件。
13.根据权利要求10所述的方法,其特征在于,在所述依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验之前,所述方法还包括:
检测所述第一文件包括的位置信息和校验值是否按照预设格式存储;
若所述第一文件包括的位置信息和校验值按照预设格式存储,则执行所述依据所述第一文件包括的位置信息和校验值,对所述第二文件进行校验。
14.根据权利要求10所述的方法,其特征在于,所述校验指令为文件读取指令。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
若所述第二文件校验成功,读取所述第二文件。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
将所述第二文件对应的位置信息和校验值加载至内存缓存中。
17.根据权利要求15所述的方法,其特征在于,所述方法还包括:
将所述第二文件的内容加载至内存缓存中。
18.根据权利要求10所述的方法,其特征在于,所述接收文件容器和第一文件,包括:
接收包含有所述第一文件的所述文件容器。
19.根据权利要求18所述的方法,其特征在于,在所述依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验之前,所述方法还包括:
检测接收到所述文件容器中是否存在所述第一文件;
若接收到的所述文件容器中存在所述第一文件,则执行所述依据所述第一文件包括的位置信息和校验值,对所述第二文件进行校验。
20.根据权利要求10所述的方法,其特征在于,所述文件容器包括以下所列项中的任意一种:
文件夹、压缩包和程序安装包。
21.根据权利要求10所述的方法,其特征在于,所述位置信息包括:路径数据。
22.根据权利要求10所述的方法,其特征在于,所述校验值包括:哈希值。
23.一种文件处理装置,其特征在于,所述装置包括:
选择模块,用于从文件容器中,选择一个或多个文件;
获取模块,用于获取所选择的每一文件相对于所述文件容器的位置信息;
计算模块,用于计算所选择的每一文件的校验值;
存储模块,用于将所述位置信息和所述校验值存储于用于文件校验的第一文件中;
发送模块,用于发送所述文件容器和所述第一文件。
24.一种文件处理装置,其特征在于,所述装置包括:
第一接收单元,用于接收文件容器和第一文件,所述第一文件中存储有所述文件容器中的一个或多个文件相对于所述文件容器的位置信息以及文件的校验值;
第二接收单元,用于接收针对所述文件容器中的文件的校验指令;
检验单元,用于依据所述第一文件包括的位置信息和校验值,对所述校验指令对应的第二文件进行校验。
25.一种文件处理设备,其特征在于,所述设备包括:存储器和处理器;
所述存储器用于存储可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求1-9任意一项所述的文件处理方法。
26.一种文件处理设备,其特征在于,所述设备包括:存储器和处理器;
所述存储器用于存储可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求10-22任意一项所述的文件处理方法。
27.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令;所述计算机程序指令被处理器执行时实现如权利要求1-9任意一项所述的文件处理方法。
28.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令;所述计算机程序指令被处理器执行时实现如权利要求10-22任意一项所述的文件处理方法。
CN201710992085.XA 2017-10-23 2017-10-23 文件处理方法、装置、设备和计算机可读存储介质 Pending CN109697369A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710992085.XA CN109697369A (zh) 2017-10-23 2017-10-23 文件处理方法、装置、设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710992085.XA CN109697369A (zh) 2017-10-23 2017-10-23 文件处理方法、装置、设备和计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN109697369A true CN109697369A (zh) 2019-04-30

Family

ID=66226717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710992085.XA Pending CN109697369A (zh) 2017-10-23 2017-10-23 文件处理方法、装置、设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109697369A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114084168A (zh) * 2021-10-27 2022-02-25 北京百度网讯科技有限公司 自动驾驶系统控制方法、装置、电子设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539432A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种对文件进行签名的方法和装置
CN106778099A (zh) * 2016-11-29 2017-05-31 北京奇虎科技有限公司 防篡改apk的生成方法和装置、安装及运行方法和装置
CN106850609A (zh) * 2017-01-24 2017-06-13 北京奇虎科技有限公司 一种文件的校验方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539432A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种对文件进行签名的方法和装置
CN106778099A (zh) * 2016-11-29 2017-05-31 北京奇虎科技有限公司 防篡改apk的生成方法和装置、安装及运行方法和装置
CN106850609A (zh) * 2017-01-24 2017-06-13 北京奇虎科技有限公司 一种文件的校验方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
汤志伟: "电脑操作与实用软件", 四川科学技术出版社, pages: 184 - 185 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114084168A (zh) * 2021-10-27 2022-02-25 北京百度网讯科技有限公司 自动驾驶系统控制方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN105262589B (zh) 数据安全校验方法、装置及校验设备
CN104751049B (zh) 一种应用程序安装方法及移动终端
CN103530535A (zh) 一种Android平台应用程序保护的加脱壳方法
JP2013534377A (ja) 無線でのファームウェア配信技術に基づいてファームウェアを処理する方法、装置及びシステム
US8819361B2 (en) Retaining verifiability of extracted data from signed archives
CN104462965A (zh) 应用程序完整性验证方法及网络设备
JP6190404B2 (ja) 受信ノード、メッセージ受信方法およびコンピュータプログラム
CN111666564B (zh) 应用程序安全启动方法、装置、计算机设备和存储介质
CN106161336A (zh) 一种信息更新方法、装置及系统
US20160330030A1 (en) User Terminal For Detecting Forgery Of Application Program Based On Hash Value And Method Of Detecting Forgery Of Application Program Using The Same
CN109814889B (zh) 用于更新源代码库的方法和装置
CN109740309A (zh) 一种文件保护方法以及装置
US9246677B2 (en) Method and system for secure data communication between a user device and a server
CN104426657A (zh) 一种业务认证方法、系统及服务器
Chiu et al. TPMWallet: towards blockchain hardware wallet using trusted platform module in IoT
CN109697369A (zh) 文件处理方法、装置、设备和计算机可读存储介质
CN106888094B (zh) 一种签名方法及服务器
CN111431957B (zh) 文件处理方法、装置、设备和系统
CN106503529A (zh) 一种基于指纹的云存储系统
CN113378147A (zh) 一种用户登录业务平台的方法
CN110046496A (zh) 一种软件开发方法、系统及区块链节点设备和存储介质
CN112769565B (zh) 密码加密算法的升级方法、装置、计算设备和介质
Eldridge et al. One-Time Programs from Commodity Hardware
JP5941745B2 (ja) アプリケーション解析装置、アプリケーション解析システム、およびプログラム
CN101441696B (zh) 一种提高工具栏按钮描述文件安全性的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190430

RJ01 Rejection of invention patent application after publication