CN111488600B - 一种资源处理方法、电子设备和服务器 - Google Patents
一种资源处理方法、电子设备和服务器 Download PDFInfo
- Publication number
- CN111488600B CN111488600B CN202010276474.4A CN202010276474A CN111488600B CN 111488600 B CN111488600 B CN 111488600B CN 202010276474 A CN202010276474 A CN 202010276474A CN 111488600 B CN111488600 B CN 111488600B
- Authority
- CN
- China
- Prior art keywords
- resource
- application
- digest
- ciphertext
- plaintext
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000004590 computer program Methods 0.000 claims description 18
- 101150053844 APP1 gene Proteins 0.000 description 36
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 36
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 36
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 238000011068 loading method Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 8
- 230000004044 response Effects 0.000 description 7
- 238000005242 forging Methods 0.000 description 6
- 101100055496 Arabidopsis thaliana APP2 gene Proteins 0.000 description 5
- 101100016250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GYL1 gene Proteins 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2151—Time stamp
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供了一种资源处理方法及电子设备。该方法包括:接收第一资源的显示请求;响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。本发明能够准确地识别本地资源是否存在待显示的第一资源。
Description
技术领域
本发明涉及资源处理技术领域,尤其涉及一种资源处理方法、电子设备和服务器。
背景技术
目前,随着电子设备的发展,各种类型的应用越来越受用户欢迎。各类应用在使用过程中,一般需要对资源(例如图片资源)进行显示。因此,衍生出了越来越多的网络图片加载工具,如ImageLoader、Picasso、Glide等框架,这些框架主要是利用缓存的原理,通过第一次接收图片资源时,可以从网络下载该图片资源并缓存到本地,下次再需要显示该图片资源时,如果本地已经缓存有该图片资源,则直接使用本地图片资源进行图片显示,无需从网络下载图片资源。通过上述图片加载流程可以确定,在使用缓存图片资源进行图片显示时,需要识别出本地是否具有该图片资源。
相关技术中,主要是通过图片的URL来作为图片的标识,用于判断图片是否在缓存中存在。但是,在一些场景下,同一图片的URl是不同的。例如即时通讯的群聊场景中,即便是同一张图片,当由不同的群发送时,所带有的URL是不同的。依据URL识别会将来自不同群的同一个图片认为是不同的图片资源,从而对同一图片资源进行重复的网络访问,下载重复的图片资源。
因此,相关技术存在无法准确识别本地资源中是否存在待显示资源的问题。
发明内容
本发明实施例提供一种资源处理方法、电子设备和服务器,以解决相关技术无法准确识别本地资源中是否存在待显示资源的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种资源处理方法,应用于电子设备,所述方法包括:
接收第一资源的显示请求;
响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
第二方面,本发明实施例提供了一种资源处理方法,应用于服务器,所述方法包括:
接收第一资源的发送请求;
响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
获取所述第一资源的第一时间戳;
发送所述第一摘要密文和所述第一时间戳。
第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
接收模块,用于接收第一资源的显示请求;
判断模块,用于响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
第一显示模块,用于在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
第四方面,本发明实施例还提供了一种服务器,所述服务器包括:
接收模块,用于接收第一资源的发送请求;
第一获取模块,用于响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
第二获取模块,用于获取所述第一资源的第一时间戳;
发送模块,用于发送所述第一摘要密文和所述第一时间戳。
第五方面,本发明实施例还提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现所述的资源处理方法的步骤。
第六方面,本发明实施例还提供了一种服务器,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现所述的资源处理方法的步骤。
第七方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述第一方面或第二方面所述的资源处理方法的步骤。
在本发明实施例中,在接收到第一资源的显示请求后,可以响应于该显示请求,根据该显示请求对应的第一摘要密文和第一时间戳来组合地唯一性地判断本地资源中是否存在上述第一资源,可以准确的识别本地资源中是否存在待显示的第一资源。并在存在该第一资源的情况下,直接使用本地中的第一资源进行显示,避免了第一资源的重复下载。并且,使用摘要密文和时间戳进行组合来标识资源,可以避免单独采用资源的摘要来标识资源所导致的因不同资源具有相同摘要的资源判断错误的情况,避免了同一资源重复下载,降低了重复资源对存储空间和网络带宽的不必要占用,避免了不必要的网络请求,对资源的使用更加精准,从而提升系统性能;而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中的一种图片加载工具的结构框图;
图2是本发明一个实施例的资源处理方法的流程图;
图3是本发明一个实施例的图片数据示意图一;
图4是本发明一个实施例的图片数据示意图二;
图5是本发明另一个实施例的资源处理方法的流程图;
图6是本发明又一个实施例的资源处理方法的流程图;
图7是本发明一个实施例的电子设备的框图;
图8是本发明一个实施例的服务器的框图;
图9是本发明一个实施例的电子设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了一种图片加载工具(这里为ImageLoader)的结构框图。
图1所示的ImageLoader的结构中含有两个成员变量:MemoryCache和DiskCache。MemoryCache负责管理内存中的bitmap(位图)加载。DiskCache负责磁盘的bitmap加载,同时DiskCache中有一个ImageFetcher的模块,负责从网络下载图片到本地磁盘。
ImageLoader的图片加载流程包括:
首先,ImageLoader根据图片的url从MemoryCache中取bitmap,如果MemoryCache中没有,就去DiskCache中取bitmap;DiskCache根据图片url先从磁盘取bitmap,如果磁盘没有该url对应的bitmap,DiskCache就依据url从网络下载图片到磁盘,然后再从磁盘取出这张bitmap返回给ImageLoader;最后,ImageLoader就是将这张bitmap设置到ImageView上,从而实现图片的加载。
也就是说,ImageLoade在接收到对图片的显示请求后,可以依据url判断内存或磁盘中是否有该图片,如果没有,就从网络下载图片到磁盘,并将下载的图片缓存到内存中。
但是,ImageLoade的这种传统图片加载方法中依据url来判断本地是否存在相同图片的方式,会存在图片重复下载的情况,为此,本发明实施例提供了一种应用于电子设备的资源处理方法,可以解决诸如ImageLoade等多种图片加载工具所存在的对同一资源重复下载,进而导致重复资源占用不必要的存储空间和网络带宽,影响系统性能的问题。
该资源处理方法可以应用于电子设备侧的各种图片加载工具,例如对上述ImageLoade进行图片加载流程的改进,从而解决ImageLoade所存在的上述图片重复下载(例如图片的链接变化,但是图片内容未变化而导致的图片重复下载)的问题。为了便于说明,后文以将电子设备侧的资源处理方法的执行主体为ImageLoade为例进行说明,但是,需要说明的是,本发明应用于电子设备侧的资源处理方法可以应用于任意一种图片加载工具,或者非图片加载工具,本发明对此不做限制,原理类似,因此不再一一赘述。
参照图2,示出了本发明一个实施例的资源处理方法的流程图,应用于电子设备,所述方法具体可以包括如下步骤:
步骤101,接收第一资源的显示请求;
其中,该所述显示请求可以包括第一资源的第一摘要密文和第一时间戳;
其中,该显示请求所请求显示的第一资源可以是各类文件资源,例如图片资源、视频资源、文本资源等。其中,图片资源可以包括各种类型的图片,例如jpg格式的静态图片、gif格式的动态图片等。类似的,文本资源也可以包括各种格式的文本资源,例如txt文本,word文本等。
为了便于说明,后文均以资源为图片资源为例进行说明,当该资源为其它文件资源时,方法类似,因此不再一一赘述。
在一个示例中,电子设备可以接收到服务器下发的第一资源的显示请求,例如用户1的账号的即时通讯软件(APP1)接收到了服务器下发的来自该APP1的某个群发送的图片1,则电子设备侧的用户1账号登录的APP1可以接收到该第一资源的显示请求,该显示请求可以包括待显示的第一资源的摘要密文,以及该第一资源的时间戳。
在另一个示例中,该第一资源的显示请求也可以由用户触发,例如用户通过对APP1的某个群内的图片1进行点击操作,来请求对该图片1进行显示,从而触发该显示请求。
其中,该第一摘要密文为第一资源的摘要信息的密文,而该摘要信息可以采用任意一个摘要算法对该第一资源进行处理而生成的摘要信息,例如MD5(消息摘要算法,MD5Message-Digest Algorithm)。为了便于说明后文均以摘要为MD5为例进行说明。
而对上述摘要信息进行加密的密钥可以是与该显示请求对应的第一应用的渠道号。
而对摘要进行加密的加密算法也可以是任意一种已知的加密算法。
而上述时间戳则可以是生成第一资源的摘要明文的时间,也可以是生成该第一资源的摘要密文的时间(例如对MD5进行加密的时间)。不同资源的时间戳不同。
在本发明实施例中,发明人考虑到较大的资源,由于MD5的大小受限(为128bit),当资源足够大,导致该MD5已经无法完整的表示该资源的摘要信息时,则会存在不同的资源对应有相同的MD5的情况,因此,针对某些较大的资源,难以通过MD5来唯一的标识资源。
因此,不同资源图片可能具有相同的MD5值。如图3和图4所示的两个图片资源的16进制数据值,图3和图4为不同的图片资源,但是,图3和图4所示的两组16进制数据分别对应的两张图片的MD5值均为:008ee33a9d58b51cfeb425b0959121c9。
因为原始图片太大,而MD5的大小有限,所以MD5的有限长度内的数据无法完全表达出图片的全部的原始数据,有些图片的原始数据被丢失,因此,存在两个不同的较大图片,MD5值相同的情况。
所以,在本实施例中,该显示请求还包括该第一资源的第一时间戳,由于同一资源的时间戳相同,不同资源的时间戳不同,例如该时间戳为服务器根据服务器时间而对资源生成的,使得每个资源的时间戳绝对唯一,所以,通过时间戳和摘要的组合的方式可以准确且唯一的标识出同一个资源。
此外,发明人还考虑到服务器向电子设备所发送的资源存在被恶意攻击的可能性,使得攻击者可以伪造相同的MD5值的恶意资源,来替换服务器下发的原始资源(即上述第一资源),这样,电子设备就无法收到原本应该接收到的第一资源并显示该第一资源,所以,本发明实施例的显示请求中的摘要信息可以为MD5的密文,从而避免MD5值(即摘要明文)被伪造,而导致第一资源被替换的情况,确保资源接收和显示的准确性。
步骤102,响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
其中,可以通过摘要密文和时间戳来联合判断本地资源中是否已经存在服务器下发的第一资源。
需要说明的是,上述显示请求还可以包括现有技术中所提到的第一资源的url信息,从而在本地资源不存在第一资源时,电子设备可以利用该url从网络侧下载该第一资源并显示新下载的该第一资源。
可选地,当该显示请求对应的第一应用设置有单独的资源存储空间时,则这里的本地资源可以表示该第一应用对应的资源存储空间中所存储的该应用程序的各个资源的信息。
而当该显示请求对应的APP1与其他应用共享同一个资源存储空间,而没有单独的资源存储空间时,则这里的本地资源表示该APP1(即第一应用)与其他应用(可以是一个或多个第二应用)所共享的该资源存储空间。由于资源存储空间共享,所以存储在该空间内的资源的信息在各个共享应用(即第一应用和上述第一应用)之间也是共享的,那么只要该APP1与其他应用共享的该资源存储空间中具有该第一资源,不论该第一资源是否是来自该APP1,都可以直接显示本地资源中的该第一资源,而无需重复下载第一资源到该资源存储空间。
步骤103,在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源。
其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
也就是说,该第一摘要密文是以第一应用的渠道号为密钥(例如APP1的渠道号)来对该第一资源的摘要明文进行加密而生成的摘要密文。
其中,如果本地资源存在该第一资源,则可以直接从本地资源中获取与上述第一摘要密文和第一时间戳对应的第一资源,并在例如APP1的用户1的账号的相应群聊界面内显示所获取的该第一资源,而无需从网络侧下载该第一资源来显示。
在本发明实施例中,在接收到第一资源的显示请求后,可以响应于该显示请求,根据该显示请求对应的第一摘要密文和第一时间戳来组合地唯一性地判断本地资源中是否存在上述第一资源,可以准确的识别本地资源中是否存在待显示的第一资源。并在存在该第一资源的情况下,直接使用本地中的第一资源进行显示,避免了第一资源的重复下载。并且,使用摘要密文和时间戳进行组合来标识资源,可以避免单独采用资源的摘要来标识资源所导致的因不同资源具有相同摘要的资源判断错误的情况,避免了同一资源重复下载,降低了重复资源对存储空间和网络带宽的不必要占用,避免了不必要的网络请求,对资源的使用更加精准,从而提升系统性能;而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
可选地,在一个实施例中,当本地资源存储的是各资源的摘要密文时,在执行步骤102时,则可以在各资源的摘要密文中查询是否存在第一摘要密文,如果存在,则确定本地资源存在所述第一资源,相反,如果不存在,则确定本地资源不存在所述第一资源。
可选地,在另一个实施例中,在执行步骤102时,可以通过S11和S12来实现:
S11,根据所述显示请求对应的第一应用的渠道号,对所述第一摘要密文解密,生成所述第一资源的第一摘要明文;
例如APP1的服务器向电子设备发送了该显示请求,则电子设备中的APP1为显示该第一资源的应用程序,也即该显示请求对应的第一应用。
每个应用都有渠道号,同一个应用从不同的应用市场下载时,渠道号可以不同,而不同应用的渠道号一定是不同的。此外,同一应用在不同应用市场之间的渠道号可以该应用所属的各个电子设备之间共享;而存在合作关系的共享应用之间,共享应用中的任意一个应用也可以获取到其他共享应用的渠道号。
本步骤中,可以获取APP1的渠道号,并采用该渠道号和预设的解密算法对第一摘要密文进行解密,本实施例中,第一摘要密文为第一资源的摘要明文(例如MD5)经过APP1的渠道号加密后的摘要密文。
此外,由于同一个应用在不同应用市场下载安装后,它们的渠道号是存在差异的,那么例如从应用市场2下载的APP1(具有渠道号2)的账号2,通过服务器向本实施例的从应用市场1下载的该APP1(具有渠道号1)的账号1(对应于本电子设备)发送了一个图片1,则该第一摘要密文可以是使用发送方的渠道号2加密的,所以,本步骤中,作为接收方的电子设备可以获取到APP1的渠道号2作为解密密钥来对第一摘要密文进行解密,得到第一摘要明文。
其中,在确定解密密钥时,可以获取该APP1的对应各个应用市场的多个渠道号逐个作为密钥,来对第一摘要密文解密,直至采用准确的解密密钥来解密得到第一摘要明文,因此,S11中的第一应用的渠道号为真正可以解密第一摘要密文的第一应用的渠道号,例如上述渠道号2。
S12,获取本地资源中各第二资源的第二摘要明文和第二时间戳;
可选地,在一个实施例中,当本地资源存储的是各第二资源的摘要明文时,则可以直接从本地资源中获取到各第二资源的第二摘要明文,以及各第二资源的第二时间戳。
S13,若本地资源中存在第二摘要明文与所述第一摘要明文相同、且第二时间戳与所述第一时间戳相同的第二资源,则将该第二资源确定为所述第一资源。
其中,本地资源中针对每个已下载的资源存储有相互关联的摘要明文(或摘要密文)和时间戳的信息,还可以存储各资源的资源数据,例如待显示的图片数据。
那么本步骤中,就可以在本地资源的多个第二资源中查询是否存在第二摘要明文与第一摘要明文相同,且第二时间戳还与该第一时间戳相同的第二资源,需要说明的是,第二摘要明文和第二时间戳是相互关联的同一个第二资源的属性信息。这样,可以准确的判断到本地资源是否存在第一资源。
如果本地资源中存在第二摘要明文与所述第一摘要明文相同、且第二时间戳与所述第一时间戳相同的第二资源(例如图片1),则将该第二资源(例如图片1)确定为所述第一资源,即待显示的资源。
例如图片5和图片6的MD5相同,但是,这两张图片的时间戳不同,因此,例如第一资源为图片6,本地资源包括图片5,则本发明实施例的方法在加载图片6时,虽然存在与图片6的MD5相同的图片,但是,图片5和图片6不存在满足时间戳相同的条件,因此,本发明实施例的方法可以将图片6作为一个新的资源来处理,即下载图片6的图片数据,并存储图片6的摘要信息(明文或密文)以及时间戳信息,有效防止了因MD5相同而导致的不同资源信息之间的覆盖问题。
在本发明实施例中,通过采用显示请求对应的第一应用的渠道号,来对显示请求对应的待显示的第一资源的第一摘要密文进行解密,换句话说,该第一摘要密文为采用与第一应用的渠道号对应的密钥进行加密的,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改。
在一个示例中,如图5所示,服务器向电子设备侧下发APP 1的资源,也可以理解为APP 1请求该资源,那么下发的资源的信息是使用发送端的APP 1的渠道号加密过的资源的MD5的密文,则电子设备侧的APP 1是一个已经在线上稳定运行的应用,其具备自己的渠道号,该渠道号在该电子设备侧是唯一且保密的,APP 1本身可获取到自己在电子设备侧的渠道号,同时,还可以获取到APP 1通过其他渠道下载对应的其他渠道号(因为发送端和接收端对APP 1的下载渠道不同,会导致二者所使用的渠道号有差异,因此,还需要获取其他渠道下载该APP 1对应的渠道号);ImageLoade可以读取该第一资源的MD5密文,并逐个使用APP1的各个渠道号进行MD5解密,直到使用正确的渠道号解密可得到MD5明文,如果经过摘要明文以及时间戳的判断确定本地资源不存在第一资源,则ImageLoade可以存储该MD5明文并与服务器下发的该第一时间戳关联存储。此种方式可有效防止文件被篡改,因为第三方文件无法获取APP 1的渠道号;如果经过摘要明文以及时间戳的判断确定本地资源存在第一资源,则ImageLoade可以将本地资源中查询到的第二资源(即第一资源)进行显示,避免了对第一资源的重复下载。
可选地,在一个实施例中,在执行上述S12时,当本地资源存储的是各第二资源的摘要密文时,可以分为以下两种实施方式:
实施方式一:在本地资源中的第二资源包括第一应用对应的资源的情况下,则可以根据第一应用的渠道号,对所述各第二资源的第二摘要密文解密,获取本地资源中所述各第二资源的第二摘要明文。
也就是说,当本地资源包括第一应用的各第二资源的第二摘要密文时,如果该显示请求对应的第一应用在本地设置有单独的第一存储空间,则该第一存储空间存储的内容可以包括该第一应用的各已下载资源的摘要密文以及与摘要密文关联的时间戳。那么在执行上述S12时,则可以采用所述第一应用对应的第一渠道号对本地资源中的每个第二摘要密文进行解密,从而获取到每个第二资源的第二摘要明文,再执行S13的判断步骤。
其中,由于在首次下载来自第一应用的资源后,可以采用该第一应用在本实施例的电子设备侧的第一渠道号,来对资源的摘要明文进行加密,所以,本步骤中在解密第二摘要密文时,可以直接使用电子设备侧按照的上述第一应用所对应的第一渠道号(例如上述列举的APP1的渠道号1),来对每个第二摘要密文逐个解密,生成每个第二资源的第二摘要明文,然后以明文的方式来判断来自该第一应用的本地资源中是否存在该第一资源,避免第一资源重复下载的问题。
实施方式二:在本地资源中的第二资源包括所述第一应用对应的资源和第二应用对应的资源的情况下,则可以根据所述第一应用的渠道号,或所述第二应用的渠道号,对所述各第二资源的第二摘要密文解密,获取本地资源中所述各第二资源的第二摘要明文。
也就是说,当本地资源包括第一应用和第二应用的各第二资源的第二摘要密文时,如果该显示请求对应的第一应用在本地未设置有单独的存储空间,而是设置有与其他应用共享的一个第二存储空间,该第二存储空间存储的内容可以包括来自每个共享应用的各已下载的第二资源的第二摘要密文以及与第二摘要密文关联的第二时间戳,其中,这里的每个共享应用指代共享该第二存储空间的每个应用,当然包括上述第一应用,此外,第二应用的数量可以是多个。例如该第二存储空间对应的应用包括第一应用(即APP1)以及多个第二应用(例如APP2和APP3)。那么在执行上述S12时,则可以采用各个第二资源所对应的应用的渠道号,来对各个第二资源的第二摘要密文分别进行解密,从而获取到每个第二资源的第二摘要明文,再执行S13的判断步骤。
举例来说,第二存储空间存储有APP1、APP2的资源,其中,APP1和APP2在该电子设备中基于各自的下载渠道,它们的渠道号分别为渠道号1和渠道号3,那么在下载对应APP1的某个资源1后,可以对该资源1的摘要明文采用渠道号1进行加密,存储资源1的第二摘要密文1;那么在下载对应APP2的某个资源2后,可以对该资源的摘要明文采用渠道号3进行加密,存储相应的资源2的第二摘要密文2。
所以,在本实施例中,在执行S12时,可以采用第一应用(例如APP1)的渠道号1来对第二摘要密文1进行解密,得到第二存储空间中资源1的第二摘要明文1;采用第二应用(例如APP2)的渠道号3来对第二摘要密文2进行解密,得到第二存储空间中资源2的第二摘要明文2。
在本发明实施例中,对于多个应用共享存储空间的情况,本发明实施例的方法可以获取到共享存储空间的多个应用中每个应用在本地对应的渠道号,由于渠道号共享,从而可以解密共享存储空间中第一应用以及第二应用的各个第二资源的第二摘要密文,那么如果与第一应用共享存储空间的另外一个应用下载过上述第一资源,则在共享存储空间查找到该第一资源后,也不会再下载第一资源,避免了共享资源的应用之间的资源重复下载。
在一些应用场景下,各个应用之间可以相互合作实现资源共享,例如应用商店、游戏中心、浏览器等应用对应用的图标,详情页图片等资源可实现资源共享,因此,可以建立公共的图片缓存路径,当用户通过应用商店下载图片后,在其他游戏中心、浏览器等可在傻干图片缓存路径检索该图片md5是否已被缓存,如果缓存则直接从本地获取该图片资源,无需再次下载到该缓存路径。
具体的,应用商店、游戏中心、浏览器等同属于相同厂商,而这些应用的图片等资源具有多种相同属性,经常在不同应用内展示相同图片,所以可以使用公共的中转服务器来下发上述显示请求。这些应用的渠道号可实现共享,应用之间使用渠道号去解密共享路径下的资源文件是允许的,渠道号为应用之间共享资源提供了便捷的途径的同时,又防止非厂商应用恶意攻击。类似的,如同属于一个公司的各个应用之间也可以搭建公共的中转服务器进行资源的下发。采用渠道号共享的方式进行MD5资源安全验证。本发明的上述技术方案不仅使得一个应用可及时获取缓存资源,防止重复下载网络资源,而且其他与之资源共享的应用也同样可以使用该资源,对用户而言,省流量,页面体验更加流畅。
可选地,在步骤102之后,根据本发明实施例的方法还可以包括:
步骤104,在本地资源中不存在所述第一资源的情况下,下载所述第一资源并显示所述第一资源;
例如本地资源中不存在MD5明文与服务器下发的MD5的明文相同,且与时间戳与服务器下发的时间戳相同,即MD5和时间戳同时满足条件的一个资源,则说明本地资源不存在该第一资源,可以从该显示请求中获取第一资源的url,利用url从网络下载第一资源,并在第一应用中显示下载的该第一资源。
可选地,步骤105,将所述第一资源、第一摘要密文和所述第一时间戳关联存储到本地,或,将所述第一资源、第一摘要明文和所述第一时间戳关联存储到本地;
其中,所述第一摘要明文为所述第一摘要密文的明文信息,所述第一摘要密文为根据所述第一应用的渠道号对所述第一摘要明文加密而生成的摘要密文。
其中,由于本地资源不存在第一资源,为了避免下次再次下载第一资源,可以将下载的上述第一资源(例如图片数据)的第一摘要明文与上述显示请求中携带的该第一资源的第一时间戳关联存储到本地,其中,第一摘要明文为采用上述第一应用的渠道号对显示请求中的该第一摘要密文解密后得到的明文数据;
或者,
可以采用第一应用在该电子设备侧的上述第一渠道号(例如APP1的渠道号1)来对下载的上述第一资源(例如图片数据)的第一摘要明文(可以是使用MD5算法新生成的摘要,也可以是对第一摘要密文解密后得到的第一摘要明文)进行加密,生成第一摘要密文(这里的第一摘要密文可以与步骤102中的第一摘要密文相同或不同,当发送端的第一应用的渠道号与接收端的第一应用的渠道号相同时,则这两个第一摘要密文相同,相反,如果发送端的第一应用的渠道号与接收端的第一应用的渠道号不同,则这两个第一摘要密文是不同的),为了区分,这里将新生成的第一摘要密文命名为目标摘要密文,来将目标摘要密文与第一时间戳作为第一资源的信息关联存储到本地。
在一个示例中,在执行步骤105时,当该第一应用设置有上述第一存储空间时,则将需要关联存储的第一资源的信息存储到第一存储空间,当该第一应用设置有上述第二存储空间时,则将需要关联存储的第一资源的信息存储到第二存储空间。
可选地,存储的信息还可以包括该第一资源的资源数据,例如图片数据,方便下次直接显示第一资源。
本发明实施例中,在首次下载第一资源后,可以将第一资源的摘要明文与第一时间戳关联存储到本地,或者将第一资源的目标摘要密文与第一时间戳关联存储到本地,使得下次再接收到该第一资源后,可以无需从网络下载第一资源,直接利用时间戳和第一资源的摘要明文,来判断本地是否存在该第一资源,避免了资源重复下载,降低了存储空间的占用,节省了网络带宽。
其中,步骤105在步骤104之后执行,步骤103和步骤104是并列步骤,根据本地资源是否存在第一资源而择一执行。
参照图6,示出了本发明另一个实施例的资源处理方法的流程图,应用于服务器,具体可以包括如下步骤:
步骤201,接收第一资源的发送请求;
其中,所述资源发送请求可以包括待发送的第一资源;
其中,针对某个APP的不同账号之间的资源交互,都需要经过本发明实施例的服务器,例如用户1通过APP1的账号1,发送一个图片1给用户1在APP1上的联系人用户2(对应于APP1的账号2),则服务器可以接收到对应账号1的APP1的资源发送请求,该资源发送请求可以包括所需要发送的图片1的图片数据,或者图片1的url。
步骤202,响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
其中,获取第一摘要密文的方法可以是基于发送请求来获取。例如获取的方式包括例如利用发送请求中的加密密钥来对图片1的MD5进行加密,生成MD5密文;和/或,发送请求中携带有图片1的MD5密文,因此,从该资源发送请求中获取该图片1的MD5密文。
其中,所述发送请求还可以包括发送所述第一资源的第一应用的渠道号,因此,可以获取所述第一资源的第一摘要明文;然后,根据所述渠道号对所述第一摘要明文加密,生成第一摘要密文。
例如,服务器可以采用利用MD5算法来计算上述图片1的MD5,然后,采用发送请求中例如上述账号1对应的APP1的渠道号来对该MD5进行加密,生成图片1的MD5密文。
本发明实施例中,采用发送该第一资源的第一应用的渠道号来对第一资源的摘要明文进行加密,由于第三方文件无法获取到应用程序的渠道号,因此,第一资源的摘要密文不容易被破解,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止在服务器侧发送例如上述显示请求之前所发送的第一摘要密文被篡改,有效防止客户端接收到的第一资源被篡改的问题。
步骤203,获取所述第一资源的第一时间戳;
其中,关于时间戳的定义和解释可以参照应用于电子设备的资源处理方法中的详细阐述,原理类似,这里不再一一赘述。需要说明的是,不同资源的时间戳是不同的,而同一资源的时间戳是相同的。
其中,本发明对于步骤202中的加密步骤和步骤203的执行顺序不做限制。
步骤204,发送所所述第一摘要密文和所述第一时间戳。
其中,服务器可以响应于账户1的APP1的发送请求,来将步骤203和步骤202所得到的所述第一摘要密文和所述第一时间戳发送给账号2的APP1(即这里的客户端),例如,可以将第一摘要密文和第一时间戳携带至应用于电子设备的资源处理方法中的上述显示请求中,并将显示请求发送至账户2的APP1,使得客户端接收到该显示请求之后,可以按照应用于上述电子设备的上述资源处理方法来进行处理,判断该图片1是否在本地资源中已经存在,如果存在则不再重复下载该图片1,而是直接采用本地的图片1进行显示,相反,如果不存在,则再去基于显示请求中图片1的url去从网络中下载该图片1的图片数据进行图片1的显示。
在本发明实施例中,服务器在转发资源时,可以将待发送的第一资源的第一摘要密文和第一时间戳发送给客户端,即,以资源的摘要密文和资源的时间戳的组合来唯一性的标识出资源,从而便于客户端依据该摘要密文和时间戳准确地判断本地资源中是否已经存在该第一资源,避免客户端对同一资源的重复下载,解决了重复资源对存储空间和网络带宽的不必要占用,进而影响系统性能的问题。而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
可选地,根据本发明实施例的方法还可以包括判断第一资源是否是服务器已经发送过的资源的步骤,具体而言:
若所述本地资源的摘要信息中不存在所述第一摘要明文,则将所述第一资源作为未发送过的资源;
其中,服务器的本地资源中可以存储已发送资源的摘要明文以及时间戳的信息,那么如果本地资源的摘要信息中不存在图片1的MD5,则说明服务器还没有转发过图片1。
若所述本地资源的摘要信息中存在所述第一摘要明文,则获取具有所述第一摘要明文的已发送过的第二资源的第二包头信息;根据所述第一资源的第一包头信息和所述第二包头信息,判断所述第一资源是否为已发送过的资源(可选地,在根据所述第一资源的第一包头信息和所述第二包头信息,判断所述第一资源是否为已发送过的资源时,若所述第一包头信息和所述第二包头信息相同,则将所述第一资源作为已发送过的资源;若所述第一包头信息和所述第二包头信息不同,则将所述第一资源作为未发送过的资源。)。
其中,如果服务器的本地资源的摘要信息中存在图片1的MD5(例如MD5-1),但是,如上述实施例所述,不同资源也存在MD5相同的情况,因此,单凭MD5还没有办法准确的确定,服务器是否转发过该图片1。所以,这里服务器还需要获取本地资源中关联有MD5-1的第二资源的第二包头信息,以及获取第一资源的第一包头信息,然后,判断这两个包头信息是否一致,如果是一致的,说明本地资源中的MD5-1就是第一资源,即图片1的MD5明文(换句话说,第一资源是服务器已发送过的资源),如果不一致,则说明本地资源中的MD5-1不是第一资源,即不是图片1的MD5明文(换句话说,第一资源不是服务器已发送过的资源,即第一资源是服务器未发送过的资源)。
在本发明实施例中,根据服务器本地资源的信息来判断第一资源是否为已发送过的资源,从而便于准确的获取到第一资源的第一时间戳。其中,若所述本地资源的摘要信息中不存在所述第一摘要明文,则将所述第一资源作为未发送过的资源;若所述本地资源的摘要信息中存在所述第一摘要明文,则获取具有所述第一摘要明文的已发送过的第二资源的第二包头信息;根据所述第一资源的第一包头信息和所述第二包头信息,判断所述第一资源是否为已发送过的资源,从而可以有效地准确地判断第一资源是否是服务器已经发送过的资源。
可选地,步骤202和步骤203之后,根据本发明实施例的方法还可以包括:
若所述第一资源为未发送过的资源,则将所述第一资源的所述第一摘要明文和所述第一时间戳关联存储至本地资源的摘要信息中。
其中,如果第一资源时服务器未发送过的资源,则可以将第一资源的上述第一摘要明文以及第一资源的第一时间戳关联地存储至本地资源的摘要信息中,在该本地资源的摘要信息中可以存储有很多记录,每条记录包括一个资源的摘要明文和时间戳。
本发明实施例中,当确定第一资源为未发送过的资源,则可以将第一资源的所述第一摘要明文和所述第一时间戳关联存储至本地资源的摘要信息中,从而便于下次转发资源时,结合上述本地资源的摘要信息,来依据时间戳和摘要明文的组合来准确地判断所需要转发的资源是否是已发送过的资源。
可选地,在执行步骤203时,若所述第一资源为已发送过的资源,则在本地资源的摘要信息中获取与所述第一资源对应的第一时间戳,其中,所述本地资源的摘要信息用于存储已发送过的资源的相互关联的摘要明文以及时间戳;若所述第一资源为未发送过的资源,则获取生成所述第一摘要明文或生成所述第一摘要密文时的时间信息以作为所述第一资源的第一时间戳。
其中,当第一资源为已发送过的资源,为了确保同一资源的摘要明文保持一致,以及同一资源的时间戳保持一致,可以在本地资源的摘要信息中来获取与第一资源关联的第一时间戳,这样可以确保面临服务器已经发送过的资源,每次发送该资源时,向客户端所发送的该资源的时间戳是一致的,从而便于客户端侧依据资源的摘要明文以及时间戳这个组合来准确地判断客户端侧是否已经下载存储过该资源,避免资源重复下载的问题。
相反,如果该第一资源为服务器未发送过的资源,则服务器可以为该第一资源生成区别于其他资源的唯一性的时间戳,确定第一时间戳的方式可以包括获取生成所述第一摘要明文的时间信息以作为该第一资源的第一时间戳(即将服务器对图片1生成MD5明文的时间作为该图片1的时间戳),或获取生成所述第一摘要密文时的时间信息以作为所述第一资源的第一时间戳(即将服务器对图片1的MD5明文进行加密时的时间作为该图片1的时间戳),这两种确定时间戳的方式都可以确保时间戳的唯一,不同资源的时间戳会不同。
参照图7,示出了本发明一个实施例的电子设备的框图。本发明实施例的电子设备能实现上述实施例中的资源处理方法的细节,并达到相同的效果。
图7所示电子设备包括:
接收模块301,用于接收第一资源的显示请求;
判断模块302,用于响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
第一显示模块303,用于在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
可选地,所述判断模块302包括:
解密子模块,用于根据所述第一应用的渠道号对所述第一摘要密文解密,生成所述第一摘要明文;
第一获取子模块,用于获取本地资源中各第二资源的第二摘要明文和第二时间戳;
确定子模块,用于若本地资源中存在第二摘要明文与所述第一摘要明文相同、且第二时间戳与所述第一时间戳相同的第二资源,则将该第二资源确定为所述第一资源。
可选地,所述获取子模块包括:
第二获取子模块,用于在所述第二资源包括第一应用对应的资源的情况下,根据所述第一应用的渠道号,对所述各第二资源的第二摘要密文解密,获取本地资源中所述各第二资源的第二摘要明文。
可选地,所述获取子模块包括:
第三获取子模块,用于在所述第二资源包括所述第一应用对应的资源和第二应用对应的资源的情况下,根据所述第一应用的渠道号,或所述第二应用的渠道号,对所述各第二资源的第二摘要密文解密,获取本地资源中所述各第二资源的第二摘要明文。
可选地,所述电子设备还包括:
第二显示模块,用于在本地资源中不存在所述第一资源的情况下,下载所述第一资源并显示所述第一资源;
存储模块,用于将所述第一资源、第一摘要密文和所述第一时间戳关联存储到本地,或,将所述第一资源、第一摘要明文和所述第一时间戳关联存储到本地;
其中,所述第一摘要明文为所述第一摘要密文的明文信息,所述第一摘要密文为根据所述第一应用的渠道号对所述第一摘要明文加密而生成的摘要密文。
本发明实施例提供的电子设备能够实现上述方法实施例中电子设备实现的各个过程,为避免重复,这里不再赘述。
电子设备通过上述模块,在接收到第一资源的显示请求后,可以响应于该显示请求,根据该显示请求对应的第一摘要密文和第一时间戳来组合地唯一性地判断本地资源中是否存在上述第一资源,可以准确的识别本地资源中是否存在待显示的第一资源。并在存在该第一资源的情况下,直接使用本地中的第一资源进行显示,避免了第一资源的重复下载。并且,使用摘要密文和时间戳进行组合来标识资源,可以避免单独采用资源的摘要来标识资源所导致的因不同资源具有相同摘要的资源判断错误的情况,避免了同一资源重复下载,降低了重复资源对存储空间和网络带宽的不必要占用,避免了不必要的网络请求,对资源的使用更加精准,从而提升系统性能;而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
参照图8,示出了本发明一个实施例的服务器的框图。本发明实施例的服务器能实现上述实施例中的资源处理方法的细节,并达到相同的效果。图8所示服务器包括:
接收模块501,用于接收第一资源的发送请求;
第一获取模块502,用于响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
第二获取模块503,用于获取所述第一资源的第一时间戳;
发送模块504,用于发送所述第一摘要密文和所述第一时间戳。
可选地,所述服务器还包括:
存储模块,用于若所述第一资源为未发送过的资源,则将所述第一资源的所述第一摘要明文和所述第一时间戳关联存储至本地资源的摘要信息中。
可选地,所述第二获取模块503包括:
第二获取子模块,用于若所述第一资源为已发送过的资源,则在本地资源的摘要信息中获取与所述第一资源对应的第一时间戳,其中,所述本地资源的摘要信息用于存储已发送过的资源的相互关联的摘要明文以及时间戳;
第三获取子模块,用于若所述第一资源为未发送过的资源,则获取生成所述第一摘要明文或生成所述第一摘要密文时的时间信息以作为所述第一资源的第一时间戳。
可选地,所述服务器还包括:
设置模块,用于若所述本地资源的摘要信息中不存在所述第一摘要明文,则将所述第一资源作为未发送过的资源;
判断模块,用于若所述本地资源的摘要信息中存在所述第一摘要明文,则获取具有所述第一摘要明文的已发送过的第二资源的第二包头信息,根据所述第一资源的第一包头信息和所述第二包头信息,判断所述第一资源是否为已发送过的资源。
可选地,所述判断模块包括:
第一设置子模块,用于若所述第一包头信息和所述第二包头信息相同,则将所述第一资源作为已发送过的资源;
第二设置子模块,用于若所述第一包头信息和所述第二包头信息不同,则将所述第一资源作为未发送过的资源。
本发明实施例提供的服务器能够实现上述方法实施例中服务器实现的各个过程,为避免重复,这里不再赘述。
服务器通过上述模块,在转发资源时,可以将待发送的第一资源的第一摘要密文和第一时间戳发送给客户端,即,以资源的摘要密文和资源的时间戳的组合来唯一性的标识出资源,从而便于客户端依据该摘要密文和时间戳准确地判断本地资源中是否已经存在待显示的该第一资源,避免客户端对同一资源的重复下载,解决了重复资源对存储空间和网络带宽的不必要占用,进而影响系统性能的问题。而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
图9为实现本发明各个实施例的一种电子设备的硬件结构示意图。
该电子设备400包括但不限于:射频单元401、网络模块402、音频输出单元403、输入单元404、传感器405、显示单元406、用户输入单元407、接口单元408、存储器409、处理器410、以及电源411等部件。本领域技术人员可以理解,图9中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,射频单元401,用于接收第一资源的显示请求;
处理器410,用于响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
在本发明实施例中,在接收到第一资源的显示请求后,可以响应于该显示请求,根据该显示请求对应的第一摘要密文和第一时间戳来组合地唯一性地判断本地资源中是否存在上述第一资源,可以准确的识别本地资源中是否存在待显示的第一资源。并在存在该第一资源的情况下,直接使用本地中的第一资源进行显示,避免了第一资源的重复下载。并且,使用摘要密文和时间戳进行组合来标识资源,可以避免单独采用资源的摘要来标识资源所导致的因不同资源具有相同摘要的资源判断错误的情况,避免了同一资源重复下载,降低了重复资源对存储空间和网络带宽的不必要占用,避免了不必要的网络请求,对资源的使用更加精准,从而提升系统性能;而且,第一摘要密文是根据该显示请求对应的第一应用的渠道号加密而生成的摘要密文,由于第三方文件无法获取到应用程序的渠道号,所以,第一资源的第一摘要密文不易被解密,从而降低第一资源的第一摘要明文被窃取可能性,进而可以有效防止电子设备接收到的第一资源被篡改,可以避免攻击者伪造与第一资源的摘要信息相同的伪资源来发送给电子设备,进而导致资源接收错误的情况。
应理解的是,本发明实施例中,射频单元401可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器410处理;另外,将上行的数据发送给基站。通常,射频单元401包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元401还可以通过无线通信系统与网络和其他设备通信。
电子设备通过网络模块402为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元403可以将射频单元401或网络模块402接收的或者在存储器409中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元403还可以提供与电子设备400执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元403包括扬声器、蜂鸣器以及受话器等。
输入单元404用于接收音频或视频信号。输入单元404可以包括图形处理器(Graphics Processing Unit,GPU)4041和麦克风4042,图形处理器4041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元406上。经图形处理器4041处理后的图像帧可以存储在存储器409(或其它存储介质)中或者经由射频单元401或网络模块402进行发送。麦克风4042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元401发送到移动通信基站的格式输出。
电子设备400还包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板4061的亮度,接近传感器可在电子设备400移动到耳边时,关闭显示面板4061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器405还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元406用于显示由用户输入的信息或提供给用户的信息。显示单元406可包括显示面板4061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板4061。
用户输入单元407可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元407包括触控面板4071以及其他输入设备4072。触控面板4071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板4071上或在触控面板4071附近的操作)。触控面板4071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器410,接收处理器410发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板4071。除了触控面板4071,用户输入单元407还可以包括其他输入设备4072。具体地,其他输入设备4072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板4071可覆盖在显示面板4061上,当触控面板4071检测到在其上或附近的触摸操作后,传送给处理器410以确定触摸事件的类型,随后处理器410根据触摸事件的类型在显示面板4061上提供相应的视觉输出。虽然在图9中,触控面板4071与显示面板4061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板4071与显示面板4061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元408为外部装置与电子设备400连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元408可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备400内的一个或多个元件或者可以用于在电子设备400和外部装置之间传输数据。
存储器409可用于存储软件程序以及各种数据。存储器409可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器409可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器410是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器409内的软件程序和/或模块,以及调用存储在存储器409内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器410可包括一个或多个处理单元;优选的,处理器410可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器410中。
电子设备400还可以包括给各个部件供电的电源411(比如电池),优选的,电源411可以通过电源管理系统与处理器410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,电子设备400包括一些未示出的功能模块,在此不再赘述。
优选的,本发明实施例还提供一种电子设备,包括处理器410,存储器409,存储在存储器409上并可在所述处理器410上运行的计算机程序,该计算机程序被处理器410执行时实现上述应用于电子设备的资源处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
优选的,本发明实施例还提供一种服务器,包括处理器410,存储器409,存储在存储器409上并可在所述处理器410上运行的计算机程序,该计算机程序被处理器410执行时实现上述应用于服务器的资源处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述应用于电子设备或应用于服务器的资源处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (10)
1.一种资源处理方法,应用于电子设备,其特征在于,所述方法包括:
接收第一资源的显示请求;
响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
2.根据权利要求1所述的方法,其特征在于,所述根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源,包括:
根据所述第一应用的渠道号对所述第一摘要密文解密,生成第一摘要明文;
获取本地资源中各第二资源的第二摘要明文和第二时间戳;
若本地资源中存在第二摘要明文与所述第一摘要明文相同、且第二时间戳与所述第一时间戳相同的第二资源,则将该第二资源确定为所述第一资源。
3.根据权利要求2所述的方法,其特征在于,所述获取本地资源中各第二资源的第二摘要明文,包括:
在所述第二资源包括所述第一应用对应的资源和第二应用对应的资源的情况下,根据所述第一应用的渠道号,或所述第二应用的渠道号,对所述各第二资源的第二摘要密文解密,获取本地资源中所述各第二资源的第二摘要明文。
4.根据权利要求1所述的方法,其特征在于,所述根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源之后,所述方法还包括:
在本地资源中不存在所述第一资源的情况下,下载所述第一资源并显示所述第一资源;
将所述第一资源、第一摘要密文和所述第一时间戳关联存储到本地,或,将所述第一资源、第一摘要明文和所述第一时间戳关联存储到本地;
其中,所述第一摘要明文为所述第一摘要密文的明文信息,所述第一摘要密文为根据所述第一应用的渠道号对所述第一摘要明文加密而生成的摘要密文。
5.一种资源处理方法,应用于服务器,其特征在于,所述方法包括:
接收第一资源的发送请求;
响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
获取所述第一资源的第一时间戳;
发送所述第一摘要密文和所述第一时间戳。
6.一种电子设备,其特征在于,所述电子设备包括:
接收模块,用于接收第一资源的显示请求;
判断模块,用于响应于所述显示请求,根据第一摘要密文和第一时间戳判断本地资源中是否存在第一资源;
第一显示模块,用于在本地资源中存在所述第一资源的情况下,显示所述本地资源中的所述第一资源;其中,所述第一摘要密文为根据第一应用的渠道号加密而生成的摘要密文,所述第一应用为所述显示请求对应的应用。
7.一种服务器,其特征在于,所述服务器包括:
接收模块,用于接收第一资源的发送请求;
第一获取模块,用于响应于所述发送请求,根据第一应用的渠道号对所述第一资源的第一摘要明文加密,生成第一摘要密文,其中,所述第一应用为所述发送请求对应的应用;
第二获取模块,用于获取所述第一资源的第一时间戳;
发送模块,用于发送所述第一资源的显示请求至客户端,其中,所述显示请求包括所述第一摘要密文和所述第一时间戳。
8.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的资源处理方法的步骤。
9.一种服务器,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求5所述的资源处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的资源处理方法中的步骤,或如权利要求5所述的资源处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010276474.4A CN111488600B (zh) | 2020-04-09 | 2020-04-09 | 一种资源处理方法、电子设备和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010276474.4A CN111488600B (zh) | 2020-04-09 | 2020-04-09 | 一种资源处理方法、电子设备和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111488600A CN111488600A (zh) | 2020-08-04 |
CN111488600B true CN111488600B (zh) | 2023-03-21 |
Family
ID=71798728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010276474.4A Active CN111488600B (zh) | 2020-04-09 | 2020-04-09 | 一种资源处理方法、电子设备和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111488600B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113591100A (zh) * | 2021-06-19 | 2021-11-02 | 特瓦特能源科技有限公司 | 一种本地资源校验方法及装置 |
CN114185621B (zh) * | 2021-12-17 | 2024-07-12 | 广东德生科技股份有限公司 | 一种应用程序界面图片加载方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978530A (zh) * | 2015-03-12 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种应用安全管理方法、装置、服务器以及系统 |
CN105718276A (zh) * | 2014-12-02 | 2016-06-29 | 北京奇虎科技有限公司 | 提供apk下载的方法和装置以及nginx服务器 |
CN107147750A (zh) * | 2017-07-21 | 2017-09-08 | 广州爱九游信息技术有限公司 | 上传、打包装置及服务平台、下载服务器和分发方法 |
CN108881122A (zh) * | 2017-05-15 | 2018-11-23 | 北京京东尚科信息技术有限公司 | App信息验证的方法和装置 |
CN109634925A (zh) * | 2019-02-20 | 2019-04-16 | 平安科技(深圳)有限公司 | 资源文件下载方法、装置、计算机设备和存储介质 |
CN110025955A (zh) * | 2018-01-11 | 2019-07-19 | 武汉斗鱼网络科技有限公司 | 信息处理方法、终端、计算机可读存储介质和计算机设备 |
CN110740353A (zh) * | 2018-07-20 | 2020-01-31 | 北京优酷科技有限公司 | 请求识别方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007072468A1 (en) * | 2005-12-22 | 2007-06-28 | Digiprove Limited | Establishing proof of existence and possession of digital content |
-
2020
- 2020-04-09 CN CN202010276474.4A patent/CN111488600B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718276A (zh) * | 2014-12-02 | 2016-06-29 | 北京奇虎科技有限公司 | 提供apk下载的方法和装置以及nginx服务器 |
CN104978530A (zh) * | 2015-03-12 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种应用安全管理方法、装置、服务器以及系统 |
CN108881122A (zh) * | 2017-05-15 | 2018-11-23 | 北京京东尚科信息技术有限公司 | App信息验证的方法和装置 |
CN107147750A (zh) * | 2017-07-21 | 2017-09-08 | 广州爱九游信息技术有限公司 | 上传、打包装置及服务平台、下载服务器和分发方法 |
CN110025955A (zh) * | 2018-01-11 | 2019-07-19 | 武汉斗鱼网络科技有限公司 | 信息处理方法、终端、计算机可读存储介质和计算机设备 |
CN110740353A (zh) * | 2018-07-20 | 2020-01-31 | 北京优酷科技有限公司 | 请求识别方法及装置 |
CN109634925A (zh) * | 2019-02-20 | 2019-04-16 | 平安科技(深圳)有限公司 | 资源文件下载方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111488600A (zh) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11343233B2 (en) | Node control method and related apparatus in distributed system | |
CN108809906B (zh) | 数据处理方法、系统及装置 | |
CN108510022B (zh) | 一种二维码生成、验证方法及服务器 | |
CN109886010B (zh) | 验证图片发送方法、合成方法及装置、存储介质和终端 | |
CN110719319B (zh) | 一种资源共享方法、装置、终端设备及存储介质 | |
CN109088844B (zh) | 信息拦截方法、终端、服务器及系统 | |
CN111049980A (zh) | 一种应用分享方法、电子设备及计算机可读存储介质 | |
CN111488600B (zh) | 一种资源处理方法、电子设备和服务器 | |
WO2018049970A1 (zh) | 热点网络切换方法及终端 | |
CN111597540B (zh) | 应用程序的登录方法、电子设备及可读存储介质 | |
CN113238868A (zh) | 任务处理方法、装置、服务器、设备、系统及存储介质 | |
CN114553612B (zh) | 数据加密、解密方法、装置、存储介质及电子设备 | |
CN109639706B (zh) | 一种请求处理方法、服务器、客户端、系统、电子设备及计算机可读存储介质 | |
CN110460862B (zh) | 一种直播处理的方法、终端设备及存储介质 | |
CN111083009B (zh) | 一种抓包方法、装置和移动终端 | |
CN109992430B (zh) | 一种数据传输方法、第一终端和第二终端 | |
CN115589286B (zh) | 一种数据加解密方法、装置、电子设备及存储介质 | |
CN110851408A (zh) | 一种文件压缩方法、文件解压方法和电子设备 | |
CN108737341B (zh) | 业务处理方法、终端及服务器 | |
CN108880787B (zh) | 一种信息密钥的处理方法及相关设备 | |
CN110784467B (zh) | 一种消息中的网络链接处理方法、电子设备 | |
CN111356096B (zh) | 一种信息发送方法及电子设备 | |
CN111343618B (zh) | 一种显示方法及电子设备 | |
CN110719269B (zh) | 一种数据传输方法及移动终端 | |
CN110855550A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |