CN106022014A - 一种资源文件的打包方法和解包方法 - Google Patents

一种资源文件的打包方法和解包方法 Download PDF

Info

Publication number
CN106022014A
CN106022014A CN201610320859.XA CN201610320859A CN106022014A CN 106022014 A CN106022014 A CN 106022014A CN 201610320859 A CN201610320859 A CN 201610320859A CN 106022014 A CN106022014 A CN 106022014A
Authority
CN
China
Prior art keywords
file
resource
resource file
index information
final packaging
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
CN201610320859.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.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201610320859.XA priority Critical patent/CN106022014A/zh
Publication of CN106022014A publication Critical patent/CN106022014A/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • 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
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种资源文件的打包方法,包括:获取资源文件所在的目录,以及该目录下的所有资源文件,创建一个最终打包文件,该最终打包文件预留有头部,用于存储资源文件的文件索引信息在该最终打包文件中的位置,对获取的每个资源文件进行加密操作,以生成加密后的资源文件,将加密后的每个资源文件写入创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、以及该资源文件写入最终打包文件的位置,将生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。本发明能够解决现有资源文件容易被非法第三方用户获取并破解的技术问题。

Description

一种资源文件的打包方法和解包方法
技术领域
本发明属于文件加解密技术领域,更具体地,涉及一种资源文件的打包方法和解包方法。
背景技术
目前,直播软件有自带美颜功能,美颜功能则是通过编写显卡shader资源文件实现的,shader是一段在显卡的GPU上执行的程序。由于Shader程序是保存在磁盘上的文本文件,相当于是开源的程序,其随直播软件一起发布,因此第三方很轻易的就能够拿到shader文件并直接使用,更有甚者,一些非法的第三方会对获取的shader文件进行破解,从而损害了直播软件所有者的权益。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种资源文件的打包方法和解包方法,其目的在于,解决现有资源文件容易被非法第三方用户获取并破解的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种资源文件的打包方法,其特征在于,包括以下步骤:
(1)获取资源文件所在的目录,以及该目录下的所有资源文件;
(2)创建一个最终打包文件,该最终打包文件预留有头部,用于存储资源文件的文件索引信息在该最终打包文件中的位置;
(3)对步骤(1)中获取的每个资源文件进行加密操作,以生成加密后的资源文件;
(4)将加密后的每个资源文件写入步骤(2)创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、以及该资源文件写入最终打包文件的位置;
(5)将步骤(4)中生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。
优选地,资源文件是GPU中执行的Shader文件。
优选地,针对所有的资源文件所采用的加密算法是相同的。
优选地,对所有的资源文件所采用的加密算法是不同的,文件索引信息还用于记录使用的加密算法所对应的解密算法的序号。
按照本发明的另一方面,提供了一种资源文件的打包系统,包括:
第一模块,用于获取资源文件所在的目录,以及该目录下的所有资源文件;
第二模块,用于创建一个最终打包文件,该最终打包文件预留有头部,用于存储资源文件的文件索引信息在该最终打包文件中的位置;
第三模块,用于对第一模块中获取的每个资源文件进行加密操作,以生成加密后的资源文件;
第四模块,用于将加密后的每个资源文件写入第二模块创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、以及该资源文件写入最终打包文件的位置;
第五模块,用于将第四模块中生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。
按照本发明的另一方面,提供了一种资源文件的解包方法,包括以下步骤:
(1)对获取最终打包文件进行解压缩操作,并获取解压缩后的最终打包文件头部中所存储的资源文件的文件索引信息在该最终打包文件中的位置;
(2)根据获取的文件索引信息读取每个资源文件,并根据文件索引信息中包括的加密算法对应的解密算法对该资源文件进行解密操作;
(3)对于解密后的资源文件,根据文件索引信息中该资源文件的文件名生成对应的资源文件。
按照本发明的另一方面,提供了一种资源文件的解包系统,包括:
第一模块,用于对获取最终打包文件进行解压缩操作,并获取解压缩后的最终打包文件头部中所存储的资源文件的文件索引信息在该最终打包文件中的位置;
第二模块,用于根据获取的文件索引信息读取每个资源文件,并根据文件索引信息中包括的加密算法对应的解密算法对该资源文件进行解密操作;
第三模块,用于对于解密后的资源文件,根据文件索引信息中该资源文件的文件名生成对应的资源文件。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明能够通过加解密的打包操作对资源文件进行保护,从而可以防止非法第三方轻易获取并破解该资源文件,损害直播软件所有者的权益;
2、由于本发明加密过程对最终打包文件进行了压缩存储操作,因此减少了对于磁盘的占用,并且供用户下载的最终打包文件占用较少下载流量,为用户增加了使用性。
附图说明
图1是本发明资源文件的打包方法的流程图;
图2是本发明资源文件的解包方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
针对现有资源处理方法的改进,此发明提供了一种资源文件的打包方法和解包方法,其将多个shader文件打包成一个独立文件,并对各个shader使用独立的加密方法,最终对整个文件再进行一次加密和压缩。此方法采用在最终的打包文件头写入文件索引的偏移,然后写入每个独立的文件内容,再在文件末尾写入文件列表索引(记录每个文件在打包文件中的偏移和大小和文件名及加密算法序号)。在使用打包文件时,先读取打包文件后,再读取文件列表索引信息,最后解密得到每个独立的文件。
如图1所示,本发明资源文件的打包方法包括以下步骤:
(1)获取资源文件所在的目录,以及该目录下的所有资源文件;在本发明中,资源文件是GPU中执行的Shader文件,应该理解本发明并不局限于shader文件,其他类型的资源文件,比如txt、XML、JPEG、Doc、Excel类型的文件,也均落入本发明的保护范围中;
(2)创建一个最终打包文件,该最终打包文件预留有头部,用于存储该资源文件的文件索引信息在该最终打包文件中的位置(即偏移量),该文件索引信息用于记录每个资源文件的文件名、文件大小、以及后续使用的加密算法所对应的解密算法的序号;
(3)对步骤(1)中获取的每个资源文件进行加密操作,以生成加密后的资源文件;在本实施方式中,加密操作所使用的算法可以是数据加密标准(Data Encryption Standard,简称DES)、高级加密标准(AdvancedEncryption Standard,简称AES)等;
应该注意的是,本发明中,可以针对不同的资源文件使用不同的加密算法(比如,如果针对十个资源文件,使用了十种不同的加密算法,则每个加密算法会有一个对应的加密算法序号),也可以针对不同的资源文件使用相同的加密算法;
(4)将加密后的每个资源文件写入步骤(2)创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、该资源文件写入最终打包文件的位置、以及使用的加密算法所对应的解密算法的序号;
(5)将步骤(4)中生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。
如图2所示,本发明资源文件的解包方法包括以下步骤:
(1)对获取最终打包文件进行解压缩操作,并获取解压缩后的最终打包文件头部中所存储的资源文件的文件索引信息在该最终打包文件中的位置;
(2)根据获取的文件索引信息读取每个资源文件,并根据文件索引信息中包括的加密算法对应的解密算法对该资源文件进行解密操作;
(3)对于解密后的资源文件,根据文件索引信息中该资源文件的文件名生成对应的资源文件。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种资源文件的打包方法,其特征在于,包括以下步骤:
(1)获取资源文件所在的目录,以及该目录下的所有资源文件;
(2)创建一个最终打包文件,该最终打包文件预留有头部,用于存储资源文件的文件索引信息在该最终打包文件中的位置;
(3)对步骤(1)中获取的每个资源文件进行加密操作,以生成加密后的资源文件;
(4)将加密后的每个资源文件写入步骤(2)创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、以及该资源文件写入最终打包文件的位置;
(5)将步骤(4)中生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。
2.根据权利要求1所述的打包方法,其特征在于,资源文件是GPU中执行的Shader文件。
3.根据权利要求1所述的打包方法,其特征在于,针对所有的资源文件所采用的加密算法是相同的。
4.根据权利要求1所述的打包方法,其特征在于,对所有的资源文件所采用的加密算法是不同的,文件索引信息还用于记录使用的加密算法所对应的解密算法的序号。
5.一种资源文件的打包系统,其特征在于,包括:
第一模块,用于获取资源文件所在的目录,以及该目录下的所有资源文件;
第二模块,用于创建一个最终打包文件,该最终打包文件预留有头部,用于存储资源文件的文件索引信息在该最终打包文件中的位置;
第三模块,用于对第一模块中获取的每个资源文件进行加密操作,以生成加密后的资源文件;
第四模块,用于将加密后的每个资源文件写入第二模块创建的最终打包文件中,并为每个加密后的资源文件生成一个对应的文件索引信息,该文件索引信息包括该资源文件的大小、该资源文件的文件名、以及该资源文件写入最终打包文件的位置;
第五模块,用于将第四模块中生成的文件索引信息写入最终打包文件中,并对最终打包文件进行压缩存储。
6.一种资源文件的解包方法,其特征在于,包括以下步骤:
(1)对获取最终打包文件进行解压缩操作,并获取解压缩后的最终打包文件头部中所存储的资源文件的文件索引信息在该最终打包文件中的位置;
(2)根据获取的文件索引信息读取每个资源文件,并根据文件索引信息中包括的加密算法对应的解密算法对该资源文件进行解密操作;
(3)对于解密后的资源文件,根据文件索引信息中该资源文件的文件名生成对应的资源文件。
7.一种资源文件的解包系统,其特征在于,包括:
第一模块,用于对获取最终打包文件进行解压缩操作,并获取解压缩后的最终打包文件头部中所存储的资源文件的文件索引信息在该最终打包文件中的位置;
第二模块,用于根据获取的文件索引信息读取每个资源文件,并根据文件索引信息中包括的加密算法对应的解密算法对该资源文件进行解密操作;
第三模块,用于对于解密后的资源文件,根据文件索引信息中该资源文件的文件名生成对应的资源文件。
CN201610320859.XA 2016-05-16 2016-05-16 一种资源文件的打包方法和解包方法 Pending CN106022014A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610320859.XA CN106022014A (zh) 2016-05-16 2016-05-16 一种资源文件的打包方法和解包方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610320859.XA CN106022014A (zh) 2016-05-16 2016-05-16 一种资源文件的打包方法和解包方法

Publications (1)

Publication Number Publication Date
CN106022014A true CN106022014A (zh) 2016-10-12

Family

ID=57098065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610320859.XA Pending CN106022014A (zh) 2016-05-16 2016-05-16 一种资源文件的打包方法和解包方法

Country Status (1)

Country Link
CN (1) CN106022014A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106598584A (zh) * 2016-12-08 2017-04-26 广州华多网络科技有限公司 一种处理资源文件的方法、装置和系统
CN107633088A (zh) * 2017-09-29 2018-01-26 深圳市金证科技股份有限公司 一种文件管理方法及装置
CN108256342A (zh) * 2018-01-12 2018-07-06 武汉斗鱼网络科技有限公司 Shader文件的加密方法、装置及解密方法、装置
CN108256343A (zh) * 2018-01-12 2018-07-06 武汉斗鱼网络科技有限公司 Shader文件的加密方法、装置及解密方法、装置
CN108647527A (zh) * 2018-04-17 2018-10-12 阿里巴巴集团控股有限公司 文件打包、文件包解包方法、装置及网络设备
CN109471643A (zh) * 2018-11-19 2019-03-15 苏州好玩友网络科技有限公司 一种手机游戏安装包配置方法及应用其的游戏安装运行方法
CN109525589A (zh) * 2018-12-07 2019-03-26 象翌微链科技发展有限公司 一种基于高速文件传输加密压缩的优化方法及系统
CN109657488A (zh) * 2019-02-26 2019-04-19 北京智游网安科技有限公司 一种资源文件加密处理方法、智能终端及存储介质
CN109840425A (zh) * 2019-01-22 2019-06-04 北京数科网维技术有限责任公司 一种文件加密的方法和装置
CN111443942A (zh) * 2020-04-22 2020-07-24 广州虎牙科技有限公司 资源文件的打包方法、装置、存储介质和计算机设备
CN116798457A (zh) * 2023-08-29 2023-09-22 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103268452A (zh) * 2013-05-31 2013-08-28 福建伊时代信息科技股份有限公司 文件处理方法和装置
CN104038339A (zh) * 2013-03-04 2014-09-10 唐键 使用多密码算法和多密钥对文件或通信报文进行加密的方法
CN104166810A (zh) * 2014-07-29 2014-11-26 苏州乐米信息科技有限公司 手机游戏软件的加密方法
US20150222426A1 (en) * 2012-05-29 2015-08-06 Filippo Vernia Method and System for Transferring Firmware or Software to a Plurality of Devices
CN105282206A (zh) * 2014-07-25 2016-01-27 北京联嘉众赢网络技术有限公司 网站资源文件的处理方法、装置和系统
CN105468987A (zh) * 2014-08-15 2016-04-06 中兴通讯股份有限公司 一种数据处理方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150222426A1 (en) * 2012-05-29 2015-08-06 Filippo Vernia Method and System for Transferring Firmware or Software to a Plurality of Devices
CN104038339A (zh) * 2013-03-04 2014-09-10 唐键 使用多密码算法和多密钥对文件或通信报文进行加密的方法
CN103268452A (zh) * 2013-05-31 2013-08-28 福建伊时代信息科技股份有限公司 文件处理方法和装置
CN105282206A (zh) * 2014-07-25 2016-01-27 北京联嘉众赢网络技术有限公司 网站资源文件的处理方法、装置和系统
CN104166810A (zh) * 2014-07-29 2014-11-26 苏州乐米信息科技有限公司 手机游戏软件的加密方法
CN105468987A (zh) * 2014-08-15 2016-04-06 中兴通讯股份有限公司 一种数据处理方法及装置

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106598584A (zh) * 2016-12-08 2017-04-26 广州华多网络科技有限公司 一种处理资源文件的方法、装置和系统
CN106598584B (zh) * 2016-12-08 2020-02-11 广州华多网络科技有限公司 一种处理资源文件的方法、装置和系统
CN107633088B (zh) * 2017-09-29 2020-04-24 深圳市金证科技股份有限公司 一种文件管理方法及装置
CN107633088A (zh) * 2017-09-29 2018-01-26 深圳市金证科技股份有限公司 一种文件管理方法及装置
CN108256342A (zh) * 2018-01-12 2018-07-06 武汉斗鱼网络科技有限公司 Shader文件的加密方法、装置及解密方法、装置
CN108256343A (zh) * 2018-01-12 2018-07-06 武汉斗鱼网络科技有限公司 Shader文件的加密方法、装置及解密方法、装置
CN108647527A (zh) * 2018-04-17 2018-10-12 阿里巴巴集团控股有限公司 文件打包、文件包解包方法、装置及网络设备
US11100244B2 (en) 2018-04-17 2021-08-24 Advanced New Technologies Co., Ltd. File packaging and unpackaging methods, apparatuses, and network devices
CN109471643A (zh) * 2018-11-19 2019-03-15 苏州好玩友网络科技有限公司 一种手机游戏安装包配置方法及应用其的游戏安装运行方法
CN109525589A (zh) * 2018-12-07 2019-03-26 象翌微链科技发展有限公司 一种基于高速文件传输加密压缩的优化方法及系统
CN109840425A (zh) * 2019-01-22 2019-06-04 北京数科网维技术有限责任公司 一种文件加密的方法和装置
CN109840425B (zh) * 2019-01-22 2020-07-31 北京数科网维技术有限责任公司 一种文件加密的方法和装置
CN109657488A (zh) * 2019-02-26 2019-04-19 北京智游网安科技有限公司 一种资源文件加密处理方法、智能终端及存储介质
CN109657488B (zh) * 2019-02-26 2021-09-28 北京智游网安科技有限公司 一种资源文件加密处理方法、智能终端及存储介质
CN111443942A (zh) * 2020-04-22 2020-07-24 广州虎牙科技有限公司 资源文件的打包方法、装置、存储介质和计算机设备
CN111443942B (zh) * 2020-04-22 2024-04-19 广州虎牙科技有限公司 资源文件的打包方法、装置、存储介质和计算机设备
CN116798457A (zh) * 2023-08-29 2023-09-22 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质
CN116798457B (zh) * 2023-08-29 2023-12-15 中孚安全技术有限公司 刻录行为识别与管控方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
CN106022014A (zh) 一种资源文件的打包方法和解包方法
CN102334124B (zh) 文件的保护方法及装置
WO2017148316A1 (zh) 文件加密方法、文件解密方法、电子设备和存储介质
US20160117518A1 (en) File Encryption/Decryption Device And File Encryption/Decryption Method
US8184807B2 (en) Content distribution/browsing system, content distribution apparatus, content browsing apparatus and program
CN104579689B (zh) 一种软密钥系统及实现方法
CN101800811B (zh) 手机数据安全防护方法
US20130177153A1 (en) Using file metadata for data obfuscation
WO2004114303B1 (en) Playback apparatus, playback method, and program for reproducing an encrypted virtual package
TWI528217B (zh) 於線上加上即時檔案動態標籤、加密之系統及方法
JPWO2010055658A1 (ja) コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路
WO2017215148A1 (zh) 文件保护方法及装置
CN104298926B (zh) 一种运行加密文件的方法和装置
CN106682521B (zh) 基于驱动层的文件透明加解密系统及方法
CN106295403A (zh) 一种基于hbase的数据安全处理方法及系统
CN110650191A (zh) 一种分布式存储系统的数据读写方法
WO2015154436A1 (zh) 一种数据处理方法及装置
JP2018160129A (ja) データ生成プログラム、データ生成方法、およびデータ生成装置
CN102682072A (zh) 多媒体文档的数据处理方法及系统
CN108256342B (zh) Shader文件的加密方法、装置及解密方法、装置
CN109299611A (zh) 文件加密方法、装置、设备/终端/服务器及计算机可读存储介质
CN103379133A (zh) 一种安全可信的云存储系统
CN107992761B (zh) 增强pdf文档内容安全性的方法和系统
US20090285397A1 (en) Media processor and recording medium control method
JP2004023122A (ja) Icカードを利用した暗号システム

Legal Events

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

Application publication date: 20161012