CN107070656B - 一种应用程序中so文件的加密方法、解密方法和系统 - Google Patents
一种应用程序中so文件的加密方法、解密方法和系统 Download PDFInfo
- Publication number
- CN107070656B CN107070656B CN201710208845.3A CN201710208845A CN107070656B CN 107070656 B CN107070656 B CN 107070656B CN 201710208845 A CN201710208845 A CN 201710208845A CN 107070656 B CN107070656 B CN 107070656B
- Authority
- CN
- China
- Prior art keywords
- file
- encrypted
- storing
- private key
- section
- 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
Images
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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting 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
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种应用程序中so文件的加密方法、解密方法和系统,其中加密方法包括:通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。本发明使每一个so文件都依赖于另一个so文件,进而无法独立使用其中任何一个so文件,实现了对so文件的保护作用。
Description
技术领域
本发明涉及数据安全领域,更具体地,涉及应用程序中so文件的加密方法、解密方法和系统。
背景技术
目前,Android应用程序都会将核心功能编写到so文件中,so文件是unix的动态连接库文件,作用相当于windows下的.dll文件。由于so文件是用C语言或者C++编写的,所以其安全性要比使用JAVA写的高很多。在Android应用程序发布的时候,so文件会放到最终的APK文件中。随着Android程序开发的模块化,一般会将独立的功能编写到一个SO文件中,然后主程序来加载每个独立功能的SO来完成相应的功能。
黑客通过解压缩APK文件可以很容易地获取到APK包中的所有so文件,从而盗取了开发者的知识产权。
现有技术通常采用so文件循环依赖的方法保护so文件,所谓循环依赖,通俗地说,就是如果存在a、b以及c三个so文件,那么让a文件校验b和c文件,但是这种方法中a文件并没有被校验,因此,黑客就可以通过修改a的校验程序绕过所有的校验步骤。显然,现有技术对so文件的保护存在巨大的漏洞。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的应用程序中so文件的加密方法和系统。
根据本发明的一个方面,提供一种应用程序中so文件的加密方法,包括:
S1、通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
S2、对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
S3、通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
根据本发明的另一个方面,本发明还提供一种与加密方法对应的解密方法,包括:
对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
将所述字符数组权限修改为可写属性;
检索解密该字符数组的私钥和解密函数的地址;以及
调用私钥和解密函数对所述字符数组进行解密。
根据本发明的另一个方面,本发明还提供一种应用程序中so文件的加密系统,包括:
密钥生成模块,用于通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
创建节模块,用于对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
存储模块,用于通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
根据本发明的另一个方面,本发明还提供一种应用程序中so文件的解密系统,包括:
第一地址检索模块,用于对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
属性修改模块,用于将所述字符数组权限修改为可写属性;
第二地址检索模块,用于检索解密该字符数组的私钥和解密函数的地址;以及
解密模块,用于调用私钥和解密函数对所述字符数组进行解密。
本申请提出一种应用程序中so文件的加密方法、解密方法和系统,通过在应用程序的一个so文件中存储用于解密另一个so文件的密钥,使每一个so文件都依赖于另一个so文件,进而无法独立使用其中任何一个so文件,实现了对so文件的保护作用,通过调用解密每个so文件的密钥的地址,使得开发者可以调用任意一个so文件,方法简单,同时提高了效率。
附图说明
图1为本发明一个实施例的应用程序中so文件的加密方法的流程图;
图2为本发明另一个实施例的应用程序中so文件的加密方法的图;
图3为本发明实施例的一种应用程序中so文件的解密方法的流程图;
图4为本发明实施例的获取该so文件中用于存放加密数据的字符数组的地址的流程图;
图5为本发明实施例的应用程序中so文件的加密系统的结构框图;
图6为本发明实施例的应用程序中so文件的解密系统的结构框图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
现有技术通常采用so文件循环依赖的方法保护so文件,所谓循环依赖,通俗地说,就是如果存在a、b以及c三个so文件,那么让a文件校验b和c文件,但是这种方法中a文件并没有被校验,因此,黑客就可以通过修改a的校验程序绕过所有的校验步骤。
为了克服现有技术存在的上述缺陷,本发明提供一种应用程序中so文件的加密方法,如图1所示,具体包括:
S1、通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
S2、对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;
S3、通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
需要注意的是,本加密方法通过在应用程序中每个待加密so文件中存储用于解密配对so文件的密钥,使每一个so文件都依赖于另一个so文件,进而无法独立使用其中任何一个so文件,实现了对so文件的保护作用。
需要注意的是,本实施例为了将加密数据和解密密钥的存储位置互不干涉,通过在每个so文件中创建两个节,即第一节信息和第二节信息来实现。
需要注意的是,加密前的数据包括so文件需要使用的表格数据、参数、系数或字符串。
在一个可选实施例中,所述步骤S2中在所述待加密so文件中创建用于存储加密数据的第一节信息,进一步包括:
在所述第一节信息中创建用于存放全局变量的字符数组。
在一个可选实施例中,所述步骤S3中将加密数据存储在所述第一节中,进一步包括:将所述加密数据作为全局变量存放至所述字符数组中。
需要注意的是,通过将数据统一定义到一个全局的字符数组中,而该字符数组定义在节中,同时对全局的字符数组进行加密,实现了每个so文件中的字符数组都是加密的。
在一个可选实施例中,所述步骤S3进一步包括:
将所述配对so文件的私钥对应的解密函数存储在所述待加密so文件中。
需要注意的是,解密的过程不止需要私钥,还需要解密函数,解密函数用于结合私钥对加密数据进行解密,因此,每个私钥都存在一个对应的解密函数。
图2示出了本发明中加密方法的另一个实施例的流程图,如图2可知,本加密方法除了前一个实施例包括的3个步骤,还进一步包括:
S4、存储解密所述配对so文件中加密数据的私钥和解密函数的地址。
需要注意的是,如何安排每个so文件的私钥的存储位置,具有两者方法,一种是按照顺序进行放置,例如将第一个so文件的私钥放置在第二个so文件中,将第二个so文件的私钥放置在第三个so文件中,依次类推,但是这样存在的问题就是,如果黑客希望解密某个so文件,只要按顺序获取该so文件以及排序在它后面的so文件,调用它后面的so文件中的密钥和解密函数,就可以解密该so文件。因此,还存在随机进行放置的方法,显然,在随机放置后,记录每一个私钥的存储位置就显得尤为重要,只有记录了每个私钥的存储位置,后期调用时才不许盲目地乱试。
图3示出了本发明实施例的一种应用程序中so文件的解密方法的流程图,如图3可知,该解密方法包括:
301、对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
302、将所述字符数组权限修改为可写属性;
303、检索解密该字符数组的私钥和解密函数的地址;以及
304、调用私钥和解密函数对所述字符数组进行解密。
需要注意的是,字符数组的权限在常规状态下为只读属性,并不能修改,因此,在调用so文件时,首先要将字符数组的权限修改为可写属性。
需要注意的是,当主程序启动后,会加载所有so文件到内存中,同时会调用每个so文件的解密函数功能,来实现每个so文件对其他so文件中的加密数据进行解密,从而使得所有SO文件可以正常使用。
在一个具体实施例,so文件的解密方法还包括:在对所述字符数组进行解密后,将所述字符数组的权限还原为只读属性。
图4示出了获取该so文件中用于存放加密数据的字符数组的地址的流程图,如图4可知,该步骤包括:
401、获取所述待解密so文件的加载基址;
402、根据所述待解密so文件的文件格式,获取该字符数组节在所述待解密so文件的私钥so文件中的偏移;以及
403、根据所述加载基址和偏移,获得该字符数组的地址。
为了更清楚地阐明本发明应用程序中so文件的加密方法,下面结合具体实施例进行说明。
1、使用RSA算法来生成一对公钥PublicKey和私钥SecretKey。RSA.CreatePairKey(SecretKey,PublicKey)。
2、在每个so文件中增加一个节用于存放全局的字符数组。在xx.so文件中定义的字符数组为:
int g_var[max]__attribute__((section(".data")))={xx};
先使用RSA的加密算法来将数据加密来再填入到g_var字符数组中。从而实现g_var存储的数据就是已经加过密的。
其中__attribute__((section(".data")))表示将g_var字符数组添加到节名为“.data”的节中。
对数据进行加密则使用RSA.encrypt(PublicKey,g_var,size);语句,其中RSA.encrypt是RSA算法的加密接口,PublicKey是加密使用的公钥KEY,g_var是字符数组的内容,size则是占用内存的大小。
3、在另一个so文件中添加第二节信息,用于存储私钥SecretKey,具体实现如下:String SecretKey[]__attribute__((section(".key")))={xx};其中SecretKey是需使用的私钥SecretKey,__attribute__((section(".key")))表示将SecretKey添加到新增加的第二节信息.key中。
为了更清楚地阐明本发明应用程序中so文件的解密方法,下面结合具体实施例进行说明。
1、通过读取系统文件/proc/PID/maps读取到每个so文件的加载基址,其中PID表示当前应用的进程ID值。
2、获取到so文件的基址后,由于so文件的格式是公开的,依据so文件的文件格式来获取到字符数组节所在so文件中的偏移,从而加上基址则可以得到字符数组在内存中的地址。
3、将字符数组的权限修改为可写属性,具体调用API函数mprotect来修改:
mprotect((void*)(addr,size,PROT_READ|PROT_EXEC|PROT_WRI TE))
通过这个API函数则将内存地址为addr,大小为size的内存修改成可以写、可以读以及可以执行的内存属性。
在一个具体实施例中,调用解密函数来对加密数据进行解密操作,RSA.decrypt(SecretKey,addr,size)。
在一个具体实施例中,对数据进行了解密后,需要对内存属性进行还原。具体还是调用mprotect函数来还原:mprotect((void*)(addr,size,PROT_READ|PROT_EXEC)),将其中的写属性去掉,改为只读和可执行。
在一个实施例中,本发明还提供一种应用程序中so文件的加密系统,如图5所示,包括:
密钥生成模块,用于通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
创建节模块,用于对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
存储模块,用于通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
在一个可选实施例中,创建节模块进一步用于:在所述第一节信息中创建用于存放全局变量的字符数组,存储模块进一步用于将所述加密数据作为全局变量存放至所述字符数组中。
在一个可选实施例中,存储模块进一步用于:将所述配对so文件的私钥对应的解密函数存储在所述待加密so文件中。
在一个可选实施例中,加密系统除了上述模块外,还包括:
存储密钥模块,用于存储解密所述配对so文件中加密数据的私钥和解密函数的地址。
在一个实施例中,本发明还提供一种应用程序中so文件的解密系统,如图6所示,包括:
第一地址检索模块,用于对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
属性修改模块,用于将所述字符数组权限修改为可写属性;
第二地址检索模块,用于检索解密该字符数组的私钥和解密函数的地址;以及
解密模块,用于调用私钥和解密函数对所述字符数组进行解密。
在一个可选实施例中,解密系统还包括:
权限还原模块,用于在对所述字符数组进行解密后,将所述字符数组的权限还原为只读属性。
在一个可选实施例中,第一地址检索模块进一步包括:
加载基址单元,用于获取所述待解密so文件的加载基址;
偏移单元,根据所述待解密so文件的文件格式,获取该字符数组节在所述待解密so文件的私钥so文件中的偏移;以及
地址获取单元,用于根据所述加载基址和偏移,获得该字符数组的地址。
在一个实施例中,本发明公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:
S1、通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
S2、对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
S3、通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
在一个实施例中,本发明公开了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:
S1、通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
S2、对于待加密so文件,配置有用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
S3、通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种应用程序中so文件的加密方法,其特征在于,包括:
S1、通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
S2、对于待加密so文件,配置用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
S3、通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
2.如权利要求1所述的应用程序中so文件的加密方法,其特征在于,所述步骤S2中配置用于存储所述待加密so文件的加密数据的第一节信息,进一步包括:
在所述第一节信息中创建用于存放全局变量的字符数组。
3.如权利要求2所述的应用程序中so文件的加密方法,其特征在于,所述步骤S3中将所述加密数据存储在所述第一节信息中,进一步包括:将所述加密数据作为全局变量存放至所述字符数组中。
4.如权利要求2所述的应用程序中so文件的加密方法,其特征在于,所述步骤S3进一步包括:
将所述配对so文件的私钥对应的解密函数存储在所述待加密so文件中。
5.如权利要求4所述的应用程序中so文件的加密方法,其特征在于,还包括:
S4、存储用于解密所述配对so文件中加密数据的私钥和解密函数的地址。
6.一种如权利要求5所述的加密方法对应的解密方法,其特征在于,包括:
对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
将所述字符数组权限修改为可写属性;
检索解密该字符数组的私钥和解密函数的地址;以及
调用私钥和解密函数对所述字符数组进行解密。
7.如权利要求6所述的解密方法,其特征在于,还包括:
在对所述字符数组进行解密后,将所述字符数组的权限还原为只读属性。
8.如权利要求6所述的解密方法,其特征在于,所述获取所述待解密so文件中用于存放加密数据的字符数组的地址的步骤,包括:
获取所述待解密so文件的加载基址;
根据所述待解密so文件的文件格式,获取该字符数组节在所述待解密so文件的私钥so文件中的偏移;以及
根据所述加载基址和偏移,获得该字符数组的地址。
9.一种应用程序中so文件的加密系统,其特征在于,包括:
密钥生成模块,用于通过RSA算法生成应用程序中的每个so文件的公私密钥对,任意两个so文件的公私密钥对不相同;
创建节模块,用于对于待加密so文件,配置用于存储所述待加密so文件的加密数据的第一节信息以及用于存储所述待加密so文件的配对so文件的私钥的第二节信息;以及
存储模块,用于通过所述待加密so文件的公钥,对所述待加密so文件自身的数据进行加密,获得所述加密数据,将所述加密数据存储在所述第一节信息中,在所述第二节信息存储所述配对so文件的私钥。
10.一种应用程序中so文件的解密系统,其特征在于,包括:
第一地址检索模块,用于对于待解密so文件,获取所述待解密so文件中用于存放加密数据的字符数组的地址;
属性修改模块,用于将所述字符数组权限修改为可写属性;
第二地址检索模块,用于检索解密该字符数组的私钥和解密函数的地址;以及
解密模块,用于调用私钥和解密函数对所述字符数组进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710208845.3A CN107070656B (zh) | 2017-03-31 | 2017-03-31 | 一种应用程序中so文件的加密方法、解密方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710208845.3A CN107070656B (zh) | 2017-03-31 | 2017-03-31 | 一种应用程序中so文件的加密方法、解密方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107070656A CN107070656A (zh) | 2017-08-18 |
CN107070656B true CN107070656B (zh) | 2020-02-07 |
Family
ID=59602863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710208845.3A Active CN107070656B (zh) | 2017-03-31 | 2017-03-31 | 一种应用程序中so文件的加密方法、解密方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107070656B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109657480A (zh) * | 2017-10-11 | 2019-04-19 | 中国移动通信有限公司研究院 | 一种文件处理方法、设备及计算机可读存储介质 |
CN108076050B (zh) * | 2017-11-15 | 2020-06-30 | 广州鑫燕网络科技有限公司 | 一种密文封箱式保护JavaScript源码的方法及系统 |
CN108229192B (zh) * | 2018-01-04 | 2020-05-08 | 武汉斗鱼网络科技有限公司 | 一种文件解密方法、装置及客户端 |
CN108197439B (zh) * | 2018-01-04 | 2020-05-08 | 武汉斗鱼网络科技有限公司 | 一种文件加密方法、装置及服务器 |
CN108256343B (zh) * | 2018-01-12 | 2020-05-12 | 武汉斗鱼网络科技有限公司 | Shader文件的加密方法、装置及解密方法、装置 |
CN108256342B (zh) * | 2018-01-12 | 2020-05-12 | 武汉斗鱼网络科技有限公司 | Shader文件的加密方法、装置及解密方法、装置 |
CN109255245A (zh) * | 2018-08-13 | 2019-01-22 | 海南新软软件有限公司 | 一种本地密钥保护方法、装置及系统 |
CN111611551B (zh) * | 2020-05-06 | 2023-04-18 | 山东正中信息技术股份有限公司 | 一种基于国密算法的动态链接库保护方法及其系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694796A (zh) * | 2012-05-10 | 2012-09-26 | 深圳市深信服电子科技有限公司 | 加密文件的管理方法、装置及服务器 |
CN103455764A (zh) * | 2013-08-27 | 2013-12-18 | 无锡华御信息技术有限公司 | 一种基于文件分割合并技术的文件加密以及解密系统 |
CN104408370A (zh) * | 2014-12-25 | 2015-03-11 | 珠海全志科技股份有限公司 | 安卓系统安全性验证方法及其验证装置 |
CN105426774A (zh) * | 2015-11-03 | 2016-03-23 | 王爱华 | 一种用于智能手机数据信息加密解密的usb装置及实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9141823B2 (en) * | 2013-03-15 | 2015-09-22 | Veridicom, Sa De Cv | Abstraction layer for default encryption with orthogonal encryption logic session object; and automated authentication, with a method for online litigation |
-
2017
- 2017-03-31 CN CN201710208845.3A patent/CN107070656B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694796A (zh) * | 2012-05-10 | 2012-09-26 | 深圳市深信服电子科技有限公司 | 加密文件的管理方法、装置及服务器 |
CN103455764A (zh) * | 2013-08-27 | 2013-12-18 | 无锡华御信息技术有限公司 | 一种基于文件分割合并技术的文件加密以及解密系统 |
CN104408370A (zh) * | 2014-12-25 | 2015-03-11 | 珠海全志科技股份有限公司 | 安卓系统安全性验证方法及其验证装置 |
CN105426774A (zh) * | 2015-11-03 | 2016-03-23 | 王爱华 | 一种用于智能手机数据信息加密解密的usb装置及实现方法 |
Non-Patent Citations (1)
Title |
---|
Android基于动态加载的软件保护研究;宿元庆;《中国优秀硕士学位论文全文数据库》;20160315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107070656A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107070656B (zh) | 一种应用程序中so文件的加密方法、解密方法和系统 | |
US11816230B2 (en) | Secure processing systems and methods | |
TWI530874B (zh) | 生成應用程式安裝封包、執行應用程式的方法及裝置 | |
US10204235B2 (en) | Content item encryption on mobile devices | |
JP5337411B2 (ja) | 情報秘匿化方法および情報秘匿化装置 | |
US20150095652A1 (en) | Encryption and decryption processing method, apparatus, and device | |
WO2011134207A1 (zh) | 软件保护方法 | |
CN106845167A (zh) | 一种apk的加固方法和装置,及动态加载方法和装置 | |
JP2012128536A (ja) | データ保護処理プログラム | |
US10880082B2 (en) | Rekeying keys for encrypted data in nonvolatile memories | |
CN113661491A (zh) | 用于加密和更新虚拟盘的方法 | |
KR101749209B1 (ko) | 애플리케이션의 정보 은닉 방법 및 장치, 및 애플리케이션 실행 방법 및 장치 | |
CN111143879A (zh) | 一种Android平台SD卡文件保护方法、终端设备及存储介质 | |
CN107688729B (zh) | 基于可信主机的应用程序保护系统及方法 | |
JP6215468B2 (ja) | プログラム保護装置 | |
CN117094016B (zh) | 基于国密Linux内核文件系统数据的加密方法及装置 | |
CN111291389B (zh) | 一种计算机核心程序全生命周期的保护方法及系统 | |
CN112800418B (zh) | 自定义程序集的文件保护方法及装置 | |
JP2017108293A (ja) | 半導体集積回路装置およびデータ処理装置 | |
Bryson | The Linux Crypto API-A User’s Perspective | |
CN111382426A (zh) | 微控制器、微控制器解密方法和解密系统 | |
CN113901490A (zh) | 一种基于sql重构的库表数据加密存储方法 | |
JP2015019180A (ja) | 電子署名装置及び電子署名方法 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230605 Address after: 7th Floor, Unit 2, Building 6, Science City, Shawen Town, Guiyang National High tech Industrial Development Zone, 550000, Guizhou Province Patentee after: Guizhou Tailuo Digital Technology Co.,Ltd. Address before: 430000 Wuhan Donghu Development Zone, Wuhan, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |