CN103177222B - 一种文件加壳、脱壳的处理方法及其设备 - Google Patents
一种文件加壳、脱壳的处理方法及其设备 Download PDFInfo
- Publication number
- CN103177222B CN103177222B CN201110437932.9A CN201110437932A CN103177222B CN 103177222 B CN103177222 B CN 103177222B CN 201110437932 A CN201110437932 A CN 201110437932A CN 103177222 B CN103177222 B CN 103177222B
- Authority
- CN
- China
- Prior art keywords
- enciphering
- deciphering algorithm
- file
- file destination
- shell
- 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
- 238000000034 method Methods 0.000 claims description 30
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- 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
- 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/2107—File encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Power Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种文件加壳、脱壳的处理方法及其设备,该文件加壳的处理方法包括:加壳设备利用加解密算法对目标文件进行加密,获得加密目标文件,并将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;所述加壳设备利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;所述加壳设备将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备。本发明实施例中,通过对加解密算法进行分割,并只在加壳目标文件中携带部分加解密算法,使得完整的加解密算法不容易被发现和破解,从而提高加壳技术的安全性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种文件加壳、脱壳的处理方法及其设备。
背景技术
现有技术中,如图1所示,为文件加壳(即可执行程序资源压缩,是保护文件的常用手段,加壳过的程序可以直接运行,但是不能查看源代码,需要经过脱壳才可以查看源代码)、脱壳技术的原理示意图,通过加解密算法对目标文件进行加密,得到加密目标文件(即加密后的目标文件);之后,将加密目标文件嵌入到加壳目标文件(即加壳后的目标文件)中;此外,加壳目标文件中还嵌入有加解密算法所需要的算法Key(密钥)、以及加解密算法。
对于文件脱壳过程,在获得加壳目标文件后,会自动执行加壳目标文件中的加解密算法,以对加壳目标文件中的加密目标文件进行解密,从而将加壳目标文件还原为目标文件,之后再加载目标文件,完成脱壳过程。
在实现本发明的过程中,发明人发现现有技术中至少存在以下问题:
加解密算法携带在加壳目标文件中,容易被发现和破解,从而降低加壳技术的安全性。
发明内容
本发明实施例提供一种文件加壳、脱壳的处理方法及其设备,以提高加壳技术的安全性。
为了达到上述目的,本发明实施例提供一种文件加壳的处理方法,包括:
加壳设备利用加解密算法对目标文件进行加密,获得加密目标文件,并将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;
所述加壳设备利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;
所述加壳设备将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备,使得所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法,并通过所述加解密算法对所述加密目标文件进行解密。
本发明实施例提供一种文件脱壳的处理方法,包括:
脱壳设备接收加壳设备发送的加壳目标文件以及第二部分加解密算法;
所述脱壳设备从所述加壳目标文件中获得第一部分加解密算法和加密目标文件;
所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法;
所述脱壳设备通过所述加解密算法对所述加密目标文件进行解密,得到目标文件。
本发明实施例提供一种加壳设备,包括:
第一获得模块,用于利用加解密算法对目标文件进行加密,获得加密目标文件;
分割模块,用于将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;
第二获得模块,用于利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;
发送模块,用于将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备,使得所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法,并通过所述加解密算法对所述加密目标文件进行解密。
本发明实施例提供一种脱壳设备,包括:
接收模块,用于接收加壳设备发送的加壳目标文件以及第二部分加解密算法;
第一获得模块,用于从所述加壳目标文件中获得第一部分加解密算法和加密目标文件;
第二获得模块,用于通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法;
第三获得模块,用于通过所述加解密算法对所述加密目标文件进行解密,得到目标文件。
与现有技术相比,本发明实施例至少具有以下优点:通过对加解密算法进行分割,并只在加壳目标文件中携带部分加解密算法,使得完整的加解密算法不容易被发现和破解,从而提高加壳技术的安全性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中文件加壳、脱壳技术的原理示意图;
图2是本发明实施例一中的加壳过程的原理示意图;
图3是本发明实施例一中的脱壳过程的原理示意图;
图4是本发明实施例一提供的文件加壳、脱壳的处理方法流程示意图;
图5是本发明实施例二提供的一种加壳设备的结构示意图;
图6是本发明实施例三提供的一种脱壳设备的结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例一提供一种文件(包括但不限于Flash文件)加壳、脱壳的处理方法,该方法可应用于离散式的文件加壳、脱壳处理过程中;该离散式是指每一个目标文件在脱壳时都是相互单独的。如图2和图3所示,分别为加壳过程的原理示意图和脱壳过程的原理示意图;结合上述原理示意图,如图4所示,该文件加壳、脱壳的处理方法包括以下步骤:
步骤401,加壳设备(如开发机、编译机等)利用加解密算法(Alg)对目标文件(即需要加壳的目标文件TargetFile)进行加密,获得加密目标文件(即加密后的目标文件CipherFile),并将加解密算法分割成第一部分加解密算法(AlgB)和第二部分加解密算法(AlgA),且该第一部分加解密算法(AlgB)中携带有加解密算法所需要的算法Key(密钥)。
本发明实施例中,在将加解密算法(Alg)分割成第一部分加解密算法(AlgB)以及第二部分加解密算法(AlgA)的过程中,具体为:加壳设备将加解密算法(Alg)对应的文件分割成两部分AlgA和AlgB。
步骤402,加壳设备利用第一部分加解密算法(AlgB)和加密目标文件(CipherFile)获得加壳目标文件(ShellFile,即加壳后最终生成的文件)。
具体的,加壳设备可以将第一部分加解密算法(AlgB)嵌入到加壳模板文件(ShellTemplate,即加壳所需要的模板文件)的算法区域(即AlgB字段)内,并可以将加密目标文件(CipherFile)嵌入到加壳模板文件(ShellTemplate)的数据区域(即Data字段)内,从而通过加壳模板文件(ShellTemplate)获得加壳目标文件(ShellFile)。
本发明实施例中,在算法区域(AlgB字段)和数据区域(Data字段)为空的加壳模板文件(ShellTemplate)中,当嵌入了第一部分加解密算法(AlgB)和加密目标文件(CipherFile)后,即可以生成加壳目标文件(ShellFile)。
本发明实施例的一种优选实施方式中,加壳模板文件(ShellTemplate)中还可以有目标文件类型区域(即Type字段),因此,加壳设备在生成加壳目标文件(ShellFile)的过程中,还可以获得目标文件(TargetFile)的文件类型,并将目标文件(TargetFile)的文件类型嵌入到加壳模板文件(ShellTemplate)的目标文件类型区域(Type字段)中。
步骤403,加壳设备将加壳目标文件(ShellFile)以及第二部分加解密算法(AlgA)通知给脱壳设备(如客户端等)。其中,加壳设备在获得加壳目标文件(ShellFile)后,可以将加壳目标文件(ShellFile)通知给服务器,并由服务器将加壳目标文件(ShellFile)通知给脱壳设备。
本发明实施例中,加壳设备可以将加壳目标文件(ShellFile)以及第二部分加解密算法(AlgA)一起通知给脱壳设备,也可以将加壳目标文件(ShellFile)以及第二部分加解密算法(AlgA)分别通知给脱壳设备。
需要注意的是,在通知第二部分加解密算法(AlgA)的过程中,加壳设备是以算法库(AlgLib)的方式进行通知的;其中,算法库(AlgLib)中存储了若干个加解密算法的AlgB_MD5与AlgA之间的对应关系,AlgB_MD5是加解密算法的AlgB的MD5值,AlgA是加解密算法的AlgA。
具体的,加壳设备需要获得第一部分加解密算法(AlgB)所对应的MD5值(即AlgB_MD5),并在算法库(AlgLib)中记录第一部分加解密算法所对应的MD5值(AlgB_MD5)与第二部分加解密算法之间的对应关系(AlgA);之后,加壳设备可以将算法库(AlgLib)通知给脱壳设备。
在上述文件加壳处理的基础上,本发明实施例中,如图4所示,还可以包括以下文件脱壳处理过程:
步骤404,脱壳设备接收加壳设备发送的加壳目标文件(ShellFile)以及第二部分加解密算法(AlgA)。
需要注意的是,在接收加壳设备发送的第二部分加解密算法(AlgA)的过程中,脱壳设备是以接收加壳设备发送的算法库(AlgLib)的方式接收第二部分加解密算法(AlgA)的;其中,算法库(AlgLib)中存储了若干个加解密算法的第一部分加解密算法(AlgB)所对应的MD5值(即AlgB_MD5)与第二部分加解密算法(AlgA)之间的对应关系。
步骤405,脱壳设备从加壳目标文件(ShellFile)中获得第一部分加解密算法(AlgB)和加密目标文件(CipherFile)。
具体的,由于加壳目标文件(ShellFile)的加壳模板文件(ShellTemplate)中嵌入了第一部分加解密算法(AlgB)和加密目标文件(CipherFile),因此脱壳设备可以从加壳目标文件(ShellFile)的加壳模板文件(ShellTemplate)的算法区域内(AlgB字段)获得其嵌入的第一部分加解密算法(AlgB),并可以从加壳目标文件(ShellFile)的加壳模板文件(ShellTemplate)的数据区域内(Data字段)获得其嵌入的加密目标文件(CipherFile)。
本发明实施例的一种优选实施方式中,当在加壳目标文件(ShellFile)中嵌入有目标文件(TargetFile)的文件类型时,脱壳设备还可以从加壳目标文件(ShellFile)的加壳模板文件(ShellTemplate)的目标文件类型区域内(Type字段)获得其嵌入的目标文件(TargetFile)的文件类型。
步骤406,脱壳设备通过第一部分加解密算法(AlgB)以及第二部分加解密算法(AlgA)获得加解密算法。
具体的,在从加壳目标文件(ShellFile)中获得第一部分加解密算法(AlgB)之后,该脱壳设备需要获得该第一部分加解密算法(AlgB)所对应的MD5值(AlgB_MD5),并通过第一部分加解密算法所对应的MD5值(AlgB_MD5)查询算法库(AlgLib);且由于算法库(AlgLib)中存储了若干个加解密算法的第一部分加解密算法(AlgB)所对应的MD5值(即AlgB_MD5)与第二部分加解密算法(AlgA)之间的对应关系,因此可查询到对应的第二部分加解密算法(AlgA);之后,脱壳设备对第一部分加解密算法(AlgB)以及获得的第二部分加解密算法(AlgA)进行合并,以获得加解密算法(Alg)。
步骤407,脱壳设备通过加解密算法(Alg)对加密目标文件(CipherFile)进行解密,得到目标文件(TargetFile)。
本发明实施例中,通过对加解密算法进行分割,并只在加壳目标文件中携带部分加解密算法,使得完整的加解密算法不容易被发现和破解,从而提高加壳技术的安全性。
需要注意的是,与现有文件加密***中对文件进行加密的过程相比,在文件加密***中,并未涉及将加解密算法分割成第一部分加解密算法和第二部分加解密算法的过程,且文件加密***中对文件的处理无法保证程序的运行,而上述加壳、脱壳的处理方法可以保证程序的运行。
实施例二
基于与上述方法同样的发明构思,本发明实施例中还提供了一种加壳设备,如图5所示,该加壳设备包括:
第一获得模块11,用于利用加解密算法对目标文件进行加密,获得加密目标文件;
分割模块12,用于将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;
第二获得模块13,用于利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;
发送模块14,用于将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备。
所述第二获得模块13,具体用于将所述第一部分加解密算法嵌入到加壳模板文件的算法区域内,并将所述加密目标文件嵌入到所述加壳模板文件的数据区域内,以通过所述加壳模板文件获得所述加壳目标文件。
所述发送模块14,具体用于获得所述第一部分加解密算法所对应的MD5值,并在算法库中记录所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系;以及将所述算法库通知给所述脱壳设备。
本发明实施例中,上述的文件包括但不限于Flash文件。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
实施例三
基于与上述方法同样的发明构思,本发明实施例中还提供了一种脱壳设备,如图6所示,该脱壳设备包括:
接收模块21,用于接收加壳设备发送的加壳目标文件以及第二部分加解密算法;
第一获得模块22,用于从所述加壳目标文件中获得第一部分加解密算法和加密目标文件;
第二获得模块23,用于通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法;
第三获得模块24,用于通过所述加解密算法对所述加密目标文件进行解密,得到目标文件。
所述第一获得模块22,具体用于获得所述加壳目标文件的加壳模板文件的算法区域内所嵌入的所述第一部分加解密算法,以及所述加壳模板文件的数据区域内所嵌入的所述加密目标文件。
所述接收模块21,具体用于接收所述加壳设备发送的算法库,在所述算法库中记录有所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系。
所述第二获得模块23,具体用于获得所述第一部分加解密算法所对应的MD5值,并通过所述第一部分加解密算法所对应的MD5值查询所述算法库,获得对应的第二部分加解密算法;
以及对所述第一部分加解密算法以及获得的第二部分加解密算法进行合并,以获得所述加解密算法。
本发明实施例中,上述的文件包括但不限于Flash文件。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (18)
1.一种文件加壳的处理方法,其特征在于,包括:
加壳设备利用加解密算法对目标文件进行加密,获得加密目标文件,并将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;
所述加壳设备利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;
所述加壳设备将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备,使得所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法,并通过所述加解密算法对所述加密目标文件进行解密;
其中,所述将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法包括:所述加壳设备将所述加解密算法对应的文件分割成所述第一部分加解密算法对应的文件及所述第二部分加解密算法对应的文件。
2.如权利要求1所述的方法,其特征在于,所述加壳设备利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件,包括:
所述加壳设备将所述第一部分加解密算法嵌入到加壳模板文件的算法区域内,并将所述加密目标文件嵌入到所述加壳模板文件的数据区域内,以通过所述加壳模板文件获得所述加壳目标文件。
3.如权利要求1所述的方法,其特征在于,所述加壳设备将所述第二部分加解密算法通知给脱壳设备,包括:
所述加壳设备获得所述第一部分加解密算法所对应的MD5值,并在算法库中记录所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系;
所述加壳设备将所述算法库通知给所述脱壳设备。
4.如权利要求1-3任一项所述的方法,其特征在于,所述文件包括:Flash文件。
5.一种文件脱壳的处理方法,其特征在于,包括:
脱壳设备接收加壳设备发送的加壳目标文件以及第二部分加解密算法;
所述脱壳设备从所述加壳目标文件中获得第一部分加解密算法和加密目标文件;
所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法;
所述脱壳设备通过所述加解密算法对所述加密目标文件进行解密,得到目标文件;
其中,所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法包括:将所述第一部分加解密算法对应的文件与所述第二部分加解密算法对应的文件合并得到所述加解密算法对应的文件。
6.如权利要求5所述的方法,其特征在于,所述脱壳设备从所述加壳目标文件中获得第一部分加解密算法和加密目标文件,包括:
所述脱壳设备获得所述加壳目标文件的加壳模板文件的算法区域内所嵌入的所述第一部分加解密算法,以及所述加壳模板文件的数据区域内所嵌入的所述加密目标文件。
7.如权利要求5所述的方法,其特征在于,所述脱壳设备接收加壳设备发送的第二部分加解密算法,包括:
所述脱壳设备接收所述加壳设备发送的算法库,在所述算法库中记录有所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系。
8.如权利要求7所述的方法,其特征在于,所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法,包括:
所述脱壳设备获得所述第一部分加解密算法所对应的MD5值,并通过所述第一部分加解密算法所对应的MD5值查询所述算法库,获得对应的第二部分加解密算法;
所述脱壳设备对所述第一部分加解密算法以及获得的第二部分加解密算法进行合并,以获得所述加解密算法。
9.如权利要求5-8任一项所述的方法,其特征在于,所述文件包括:Flash文件。
10.一种加壳设备,其特征在于,包括:
第一获得模块,用于利用加解密算法对目标文件进行加密,获得加密目标文件;
分割模块,用于将所述加解密算法分割成第一部分加解密算法和第二部分加解密算法;
第二获得模块,用于利用所述第一部分加解密算法和所述加密目标文件获得加壳目标文件;
发送模块,用于将所述加壳目标文件以及所述第二部分加解密算法通知给脱壳设备,使得所述脱壳设备通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法,并通过所述加解密算法对所述加密目标文件进行解密;
其中,所述分割模块具体用于将所述加解密算法对应的文件分割成所述第一部分加解密算法对应的文件及所述第二部分加解密算法对应的文件。
11.如权利要求10所述的加壳设备,其特征在于,
所述第二获得模块,具体用于将所述第一部分加解密算法嵌入到加壳模板文件的算法区域内,并将所述加密目标文件嵌入到所述加壳模板文件的数据区域内,以通过所述加壳模板文件获得所述加壳目标文件。
12.如权利要求10所述的加壳设备,其特征在于,
所述发送模块,具体用于获得所述第一部分加解密算法所对应的MD5值,并在算法库中记录所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系;以及将所述算法库通知给所述脱壳设备。
13.如权利要求10-12任一项所述的加壳设备,其特征在于,所述文件包括:Flash文件。
14.一种脱壳设备,其特征在于,包括:
接收模块,用于接收加壳设备发送的加壳目标文件以及第二部分加解密算法;
第一获得模块,用于从所述加壳目标文件中获得第一部分加解密算法和加密目标文件;
第二获得模块,用于通过所述第一部分加解密算法以及所述第二部分加解密算法获得加解密算法;
第三获得模块,用于通过所述加解密算法对所述加密目标文件进行解密,得到目标文件;
其中,所述第二获取模块具体用于将所述第一部分加解密算法对应的文件与所述第二部分加解密算法对应的文件合并得到所述加解密算法对应的文件。
15.如权利要求14所述的脱壳设备,其特征在于,
所述第一获得模块,具体用于获得所述加壳目标文件的加壳模板文件的算法区域内所嵌入的所述第一部分加解密算法,以及所述加壳模板文件的数据区域内所嵌入的所述加密目标文件。
16.如权利要求14所述的脱壳设备,其特征在于,
所述接收模块,具体用于接收所述加壳设备发送的算法库,在所述算法库中记录有所述第一部分加解密算法所对应的MD5值与所述第二部分加解密算法之间的对应关系。
17.如权利要求16所述的脱壳设备,其特征在于,
所述第二获得模块,具体用于获得所述第一部分加解密算法所对应的MD5值,并通过所述第一部分加解密算法所对应的MD5值查询所述算法库,获得对应的第二部分加解密算法;
以及对所述第一部分加解密算法以及获得的第二部分加解密算法进行合并,以获得所述加解密算法。
18.如权利要求14-17任一项所述的脱壳设备,其特征在于,所述文件包括:Flash文件。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110437932.9A CN103177222B (zh) | 2011-12-23 | 2011-12-23 | 一种文件加壳、脱壳的处理方法及其设备 |
US14/367,198 US9100170B2 (en) | 2011-12-23 | 2012-11-20 | File packing and unpacking method, and device thereof |
PCT/CN2012/084867 WO2013091452A1 (zh) | 2011-12-23 | 2012-11-20 | 一种文件加壳、脱壳的处理方法及其设备 |
KR1020147020060A KR101698403B1 (ko) | 2011-12-23 | 2012-11-20 | 파일 압축 및 압축해제 방법 및 장치 |
JP2014547687A JP5866460B2 (ja) | 2011-12-23 | 2012-11-20 | ファイルをパックする/アンパックするための方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110437932.9A CN103177222B (zh) | 2011-12-23 | 2011-12-23 | 一种文件加壳、脱壳的处理方法及其设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103177222A CN103177222A (zh) | 2013-06-26 |
CN103177222B true CN103177222B (zh) | 2015-08-12 |
Family
ID=48637069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110437932.9A Active CN103177222B (zh) | 2011-12-23 | 2011-12-23 | 一种文件加壳、脱壳的处理方法及其设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9100170B2 (zh) |
JP (1) | JP5866460B2 (zh) |
KR (1) | KR101698403B1 (zh) |
CN (1) | CN103177222B (zh) |
WO (1) | WO2013091452A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700003B (zh) * | 2013-12-04 | 2019-02-01 | 腾讯科技(深圳)有限公司 | 一种文件加壳及脱壳方法、装置及*** |
CN106778226A (zh) * | 2016-11-24 | 2017-05-31 | 四川无声信息技术有限公司 | 文件壳脱壳方法及装置 |
US10331902B2 (en) * | 2016-12-29 | 2019-06-25 | Noblis, Inc. | Data loss prevention |
CN109213474B (zh) * | 2017-06-30 | 2021-05-28 | 武汉斗鱼网络科技有限公司 | 基于Flash的通用壳设置方法、存储介质、电子设备及*** |
KR102018960B1 (ko) * | 2017-12-19 | 2019-09-05 | 유재욱 | 이중 패킹을 이용한 코드 난독화 |
KR102110124B1 (ko) * | 2018-04-05 | 2020-05-13 | 소프트캠프 주식회사 | 이메일의 암호화 첨부파일 무해화 시스템과 이를 이용한 무해화 방법 |
KR102027815B1 (ko) * | 2018-05-30 | 2019-10-02 | 국민대학교산학협력단 | Pin 기반의 파일 복호화 방법 및 이를 수행하는 장치 |
CN108985015A (zh) * | 2018-06-29 | 2018-12-11 | 江苏通付盾信息安全技术有限公司 | 应用文件的脱壳方法及装置 |
CN110708273B (zh) * | 2018-07-10 | 2022-03-04 | 杭州海康威视数字技术股份有限公司 | 一种数据加密、解密方法及数据加密解密*** |
KR101967170B1 (ko) | 2018-09-13 | 2019-04-09 | (주) 인프론티브 | I/o 제어에 의한 컴퓨터 스토리지 매니지먼트 시스템 |
KR102067630B1 (ko) | 2019-02-01 | 2020-01-17 | 배용대 | 접근 제어 기반 데이터 분산 저장 시스템 및 방법 |
CN110532129A (zh) * | 2019-09-02 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 一种文件加密存储的方法、装置、设备以及存储介质 |
CN110868405B (zh) * | 2019-11-05 | 2022-03-04 | 南方电网数字电网研究院有限公司 | 恶意代码检测方法、装置、计算机设备及存储介质 |
CN113742754A (zh) * | 2021-09-15 | 2021-12-03 | 广东电网有限责任公司 | 一种定值文件加密方法及相关装置 |
WO2024075871A1 (ko) * | 2022-10-07 | 2024-04-11 | 시큐레터 주식회사 | 이메일에 첨부된 암호를 갖는 압축파일의 처리를 위한 방법 및 이를 위한 장치 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1897005A (zh) * | 2006-05-23 | 2007-01-17 | 施霖 | 一种用于防止软件运行在非授权计算机上的保护装置 |
CN1992585A (zh) * | 2005-12-30 | 2007-07-04 | 上海贝尔阿尔卡特股份有限公司 | 一种用于用户设备与内部网络间安全通信的方法及装置 |
CN102004884A (zh) * | 2009-08-28 | 2011-04-06 | 华为技术有限公司 | 一种获取可执行文件输入表的方法及装置 |
CN102108512A (zh) * | 2009-12-25 | 2011-06-29 | 比亚迪股份有限公司 | 一种金属化学蚀刻液及蚀刻方法 |
CN102184363A (zh) * | 2011-05-21 | 2011-09-14 | 电子科技大学 | 基于综合处理的软件壳自动脱壳方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003114853A (ja) * | 2001-10-04 | 2003-04-18 | Koden Electronics Co Ltd | 電子メール秘密保護システム |
JP2004213181A (ja) * | 2002-12-27 | 2004-07-29 | Ricoh Co Ltd | カプセル化文書構造、記憶媒体、情報処理装置、カプセル化文書作成編集装置及び起動プログラム |
US7280956B2 (en) * | 2003-10-24 | 2007-10-09 | Microsoft Corporation | System, method, and computer program product for file encryption, decryption and transfer |
US9124650B2 (en) * | 2006-12-13 | 2015-09-01 | Quickplay Media Inc. | Digital rights management in a mobile environment |
US8601259B2 (en) * | 2009-04-20 | 2013-12-03 | Cleversafe, Inc. | Securing data in a dispersed storage network using security sentinel value |
KR20100137152A (ko) * | 2009-06-22 | 2010-12-30 | 동서대학교산학협력단 | 데이터 패키징 암호화 시스템 및 방법 |
-
2011
- 2011-12-23 CN CN201110437932.9A patent/CN103177222B/zh active Active
-
2012
- 2012-11-20 KR KR1020147020060A patent/KR101698403B1/ko active IP Right Grant
- 2012-11-20 JP JP2014547687A patent/JP5866460B2/ja active Active
- 2012-11-20 US US14/367,198 patent/US9100170B2/en active Active
- 2012-11-20 WO PCT/CN2012/084867 patent/WO2013091452A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1992585A (zh) * | 2005-12-30 | 2007-07-04 | 上海贝尔阿尔卡特股份有限公司 | 一种用于用户设备与内部网络间安全通信的方法及装置 |
CN1897005A (zh) * | 2006-05-23 | 2007-01-17 | 施霖 | 一种用于防止软件运行在非授权计算机上的保护装置 |
CN102004884A (zh) * | 2009-08-28 | 2011-04-06 | 华为技术有限公司 | 一种获取可执行文件输入表的方法及装置 |
CN102108512A (zh) * | 2009-12-25 | 2011-06-29 | 比亚迪股份有限公司 | 一种金属化学蚀刻液及蚀刻方法 |
CN102184363A (zh) * | 2011-05-21 | 2011-09-14 | 电子科技大学 | 基于综合处理的软件壳自动脱壳方法 |
Also Published As
Publication number | Publication date |
---|---|
US20150006891A1 (en) | 2015-01-01 |
US9100170B2 (en) | 2015-08-04 |
JP5866460B2 (ja) | 2016-02-17 |
JP2015507258A (ja) | 2015-03-05 |
KR101698403B1 (ko) | 2017-01-20 |
KR20140104040A (ko) | 2014-08-27 |
WO2013091452A1 (zh) | 2013-06-27 |
CN103177222A (zh) | 2013-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103177222B (zh) | 一种文件加壳、脱壳的处理方法及其设备 | |
CN109377244B (zh) | 一种基于多链互联区块链网络的食品快速溯源***及方法 | |
US11620609B2 (en) | Delivery method, device, system, unmanned vehicle and computer readable storage medium | |
CN104995632B (zh) | 隐私保护数据库*** | |
CN106209739A (zh) | 云存储方法及*** | |
CN105577379A (zh) | 一种信息处理方法及装置 | |
CN104809407A (zh) | 云存储前端数据加解密及校验方法和*** | |
CN102821098A (zh) | 云环境下即时通讯消息自溶解***及方法 | |
CN111385084A (zh) | 数字资产的密钥管理方法、装置及计算机可读存储介质 | |
CN111104691A (zh) | 敏感信息的处理方法、装置、存储介质及设备 | |
CN109902495B (zh) | 一种数据融合方法和装置 | |
CN107315967B (zh) | 数据匹配方法、装置及计算机可读存储介质 | |
CN102970228B (zh) | 一种基于IPsec的报文传输方法和设备 | |
CN112182600A (zh) | 数据加密方法、数据解密方法及电子设备 | |
CN112839013A (zh) | 一种密钥传输方法、装置及计算机可读存储介质 | |
CN109831405B (zh) | 一种云平台上的文件保护方法及装置 | |
CN116800535A (zh) | 多台服务器之间相互免密方法及装置 | |
KR101699176B1 (ko) | Hdfs 데이터 암호화 및 복호화 방법 | |
WO2016078382A1 (zh) | Hsm加密信息同步实现方法、装置和*** | |
CN106933695B (zh) | 一种swf文件的校验方法及*** | |
CN113346999B (zh) | 一种基于拆分加密的大脑中枢*** | |
CN113672955B (zh) | 一种数据处理方法、***及装置 | |
CN111865891B (zh) | 一种数据传输方法、用户端、电子设备及可读存储介质 | |
CN105450597A (zh) | 一种信息传输方法及装置 | |
KR20150002821A (ko) | 복수의 저장 서비스 제공자들에 분산 및 저장된 파일의 기밀성을 보호하기 위한 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |