CN105975816A - 移动终端下基于虚拟技术的代码保护方法及系统 - Google Patents

移动终端下基于虚拟技术的代码保护方法及系统 Download PDF

Info

Publication number
CN105975816A
CN105975816A CN201510984580.7A CN201510984580A CN105975816A CN 105975816 A CN105975816 A CN 105975816A CN 201510984580 A CN201510984580 A CN 201510984580A CN 105975816 A CN105975816 A CN 105975816A
Authority
CN
China
Prior art keywords
instruction
code
custom
operation code
machine
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.)
Granted
Application number
CN201510984580.7A
Other languages
English (en)
Other versions
CN105975816B (zh
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 Antian Information Technology Co Ltd
Original Assignee
Wuhan Antian Information 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 Antian Information Technology Co Ltd filed Critical Wuhan Antian Information Technology Co Ltd
Priority to CN201510984580.7A priority Critical patent/CN105975816B/zh
Publication of CN105975816A publication Critical patent/CN105975816A/zh
Application granted granted Critical
Publication of CN105975816B publication Critical patent/CN105975816B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
    • 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/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1015Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to users
    • 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
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code

Abstract

本发明提出移动终端下基于虚拟技术的代码保护方法及系统,首先解析可执行文件的代码块,获取代码块中的代码指令,之后将代码指令拆分为机器指令,并将拆分出的标准机器指令置换为用户自定制的私有自定义指令格式和含义,保留原有操作数,在执行过程中通过虚拟技术执行自定义指令,从而实现实际执行代码的目的。本发明能对重要执行代码和逻辑进行保护,使其不被逆向工程,且自定义指令通过虚拟技术进行执行,不用担心其在多硬件架构上的跨平台问题。

Description

移动终端下基于虚拟技术的代码保护方法及系统
技术领域
本发明涉及移动安全技术领域,尤其涉及移动终端下基于虚拟技术的代码保护方法及系统。
背景技术
安卓系统目前支持多种可执行文件格式,例如APK、DEX、ELF等,并且在安卓4.4之后添加了一种新的运行时环境ART,该运行时环境下的可执行文件格式为OAT,安卓5.0以后,便将原来的Dalvik运行时环境完全替代ART运行时环境,并且安卓系统在运行的CPU架构上,除了ARM,还增加了对X86、MIPS以及ARM64位的支持。
由于标准的指令架构下的可执行代码采用公开标准的指令格式和定义,所以其能够被通用的逆向分析工具进行反编译或反汇编。例如,对于APK及DEX文件,可以被APKTool、dex2jar以及JEB等反编译工具进行反编译,对于ELF文件,可以通过IDA及hexray反编译工具进行反编译,从而进行代码的分析和逆向还原。目前有很多黑客利用这一手段对代码进行恶意分析,严重危害信息安全。
发明内容
针对目前安卓系统平台中的可执行文件易被反编译和逆向还原,本发明提出了移动终端下基于虚拟技术的代码保护方法及系统,首先解析可执行文件的代码块,获取代码块中的代码指令,之后将代码指令拆分为机器指令,并将拆分出的标准机器指令置换为用户自定制的私有自定义指令格式和含义,保留原有操作数,在执行过程中通过虚拟技术执行自定义指令,从而实现实际执行代码的目的。
具体发明内容包括:
移动终端下基于虚拟技术的代码保护方法,包括:
识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置,该过程支持多种可执行文件的格式识别和解析,包括APK、DEX、ELF、OAT等格式的可执行文件;
解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令,该过程支持多种架构下的代码指令的获取、识别和解析,包括Dalvik、ARM、Thumb、ARM64、X86、MIPS等架构下的代码指令,并将解析的各代码指令拆分为相应架构下的机器指令;
根据标准指令与自定义指令映射表,将机器指令置换为自定义指令;
当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
根据自定义指令的实际指令类型,对自定义指令进行模拟执行,该过程支持对不同架构下的机器指令进行模拟执行。
进一步地,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
进一步地,所述根据标准指令与自定义指令映射表,将机器指令置换为自定义指令,具体为:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的标准操作码置换为自定义操作码,机器指令的操作数不变。
进一步地,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
进一步地,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器;其中模拟不同架构的寄存器,模拟内存分配具体为:根据所要模拟执行的机器指令在执行过程中所占的内存,模拟分配一定的内存空间,实现模拟对内存的操作,并将模拟分配的内存空间中的一部分模拟为栈空间,利用模拟对寄存器的操作来模拟使用所述栈空间。
移动终端下基于虚拟技术的代码保护系统,包括:
可执行文件解析模块,用于识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置,该过程支持多种可执行文件的格式识别和解析,包括APK、DEX、ELF、OAT等格式的可执行文件;
指令获取模块,用于解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令,该过程支持多种架构下的代码指令的获取、识别和解析,包括Dalvik、ARM、Thumb、ARM64、X86、MIPS等架构下的代码指令,并将解析的各代码指令拆分为相应架构下的机器指令;
自定义指令置换模块,用于根据标准指令与自定义指令映射表,将机器指令置换为自定义指令;
指令类型解析模块,用于当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
模拟执行模块,用于根据自定义指令的实际指令类型,对自定义指令进行模拟执行。
进一步地,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
进一步地,所述自定义指令置换模块,具体用于:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的标准操作码置换为自定义操作码,机器指令的操作数不变。
进一步地,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
进一步地,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器;其中模拟不同架构的寄存器,模拟内存分配具体为:根据所要模拟执行的机器指令在执行过程中所占的内存,模拟分配一定的内存空间,实现模拟对内存的操作,并将模拟分配的内存空间中的一部分模拟为栈空间,利用模拟对寄存器的操作来模拟使用所述栈空间。
本发明的有益效果是:
针对目前安卓系统平台中的可执行文件易被反编译和逆向还原,本发明提出了移动终端下基于虚拟技术的代码保护方法及系统,将可执行文件解析为机器指令,并按规定将机器指令置换为自定义指令,起到了保护代码的作用,逆向分析工具无法正确解析保护后的自定义指令,只能获取出无法识别的二进制序列,故本发明能对重要执行代码和逻辑进行保护,使其不被逆向工程;
本发明自定义指令通过虚拟技术进行执行,不用担心其在多硬件架构上的跨平台问题,且虚拟执行过程中完全按照自定义指令与实际指令间的对应关系进行执行,从而达到执行实际代码的目的。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明移动终端下基于虚拟技术的代码保护方法的自定义指令生成方法流程图;
图2为本发明移动终端下基于虚拟技术的代码保护方法的自定义指令执行方法流程图;
图3为本发明移动终端下基于虚拟技术的代码保护系统结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
本发明给出了移动终端下基于虚拟技术的代码保护方法的自定义指令生成方法实施例,如图1所示,包括:
S101:识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置,该过程支持多种可执行文件的格式识别和解析,包括APK、DEX、ELF、OAT等格式的可执行文件;
S102:解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令,该过程支持多种架构下的代码指令的获取、识别和解析,包括Dalvik、ARM、Thumb、ARM64、X86、MIPS等架构下的代码指令,并将解析的各代码指令拆分为相应架构下的机器指令;
S103:根据标准指令与自定义指令映射表,将机器指令置换为自定义指令。
优选地,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
优选地,所述根据标准指令与自定义指令映射表,将机器指令置换为自定义指令,具体为:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的操作码置换为自定义操作码,机器指令的操作数不变,根据需求,该过程可以将全部机器指令置换为自定义指令,也可将其中一些指令类型的机器指令置换为自定义指令,该指令置换过程的实现方法有两种,一种是通过更改机器指令格式来实现,另一种是通过指令函数实现,以ARM下的mov指令为例:
假设要求对ARM架构下的mov指令进行保护,以其中一条mov指令为例,假设该指令为mov r1, r0,则
若通过更改机器指令格式来实现指令置换,且根据标准指令与自定义指令映射表,mov指令操作码对应的自定义操作码为0x88的一个字节,指令mov r1, r0的机器指令格式为:
Opcode(操作码) Op1(操作数1) Op2(操作数2)
mov r1 r0
则该mov指令可以被置换为如下形式的自定义指令:
Opcode(操作码) Op1(操作数1) Op2(操作数2)
0x88 16个bit位 16个bit位
自定义指令中0x88的一个字节对应mov指令的操作码,操作数不变,但是换为用16bit位表示,0x88后的第一个16bit位为mov指令操作数1,第二个16bit位为mov指令操作数2;
若通过指令函数来实现指令置换,则需自定义类似如下形式的置换方法:
def func_mov (op1, op2) {
op1=op2;
}
其实现置换过程的伪代码为:
fake_mov r1, op1;
fake_mov r0, op2;
fake_push r1;
fake_push r0;
fake_blx func_mov;
其中r1,r0为虚拟寄存器,实现虚拟栈空间,首先将mov指令的操作数1移动到虚拟寄存器r1,将mov指令的操作数2移动到虚拟寄存器r0,然后将r1、r2的值压入栈顶,最后调用置换方法,实现指令置换。
本发明还给出了移动终端下基于虚拟技术的代码保护方法的自定义指令执行方法实施例,如图2所示,包括:
S201:当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
S202:根据自定义指令的实际指令类型,对自定义指令进行模拟执行,该过程支持对不同架构下的机器指令进行模拟执行。
优选地,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
优选地,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器;
所述模拟不同架构的寄存器,模拟内存分配具体为:根据所要模拟执行的机器指令在执行过程中所占的内存,模拟分配一定的内存空间,实现模拟对内存的操作,并将模拟分配的内存空间中的一部分模拟为栈空间,利用模拟对寄存器的操作来模拟使用所述栈空间;
所述模拟产生的系统调用和API调用具体为:对可能产生的,具有实际文件系统写入、网络连接、通讯行为等敏感行为的系统调用和API调用,编写简易代码,通过代码进行模拟实现;对于其他可能产生的,不存在上述敏感行为的系统调用和API调用,根据具体机器指令类型,向系统和API传递参数,并获取返回值,实现模拟过程。
本发明还给出了移动终端下基于虚拟技术的代码保护的系统实施例,如图3所示,包括:
可执行文件解析模块301,用于识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置,该过程支持多种可执行文件的格式识别和解析,包括APK、DEX、ELF、OAT等格式的可执行文件;
指令获取模块302,用于解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令,该过程支持多种架构下的代码指令的获取、识别和解析,包括Dalvik、ARM、Thumb、ARM64、X86、MIPS等架构下的代码指令,并将解析的各代码指令拆分为相应架构下的机器指令;
自定义指令置换模块303,用于根据标准指令与自定义指令映射表,将机器指令置换为自定义指令;
指令类型解析模块304,用于当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
模拟执行模块305,用于根据自定义指令的实际指令类型,对自定义指令进行模拟执行。
优选地,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
优选地,所述自定义指令置换模块303,具体用于:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的操作码置换为自定义操作码,机器指令的操作数不变。
优选地,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
优选地,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器;其中模拟不同架构的寄存器,模拟内存分配具体为:根据所要模拟执行的机器指令在执行过程中所占的内存,模拟分配一定的内存空间,实现模拟对内存的操作,并将模拟分配的内存空间中的一部分模拟为栈空间,利用模拟对寄存器的操作来模拟使用所述栈空间。
本说明书中方法的实施例采用递进的方式描述,对于系统的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。针对目前安卓系统平台中的可执行文件易被反编译和逆向还原,本发明提出了移动终端下基于虚拟技术的代码保护方法及系统,将可执行文件解析为机器指令,并按规定将机器指令置换为自定义指令,起到了保护代码的作用,逆向分析工具无法正确解析保护后的自定义指令,只能获取出无法识别的二进制序列,故本发明能对重要执行代码和逻辑进行保护,使其不被逆向工程;本发明自定义指令通过虚拟技术进行执行,不用担心其在多硬件架构上的跨平台问题,且虚拟执行过程中完全按照自定义指令与实际指令间的对应关系进行执行,从而达到执行实际代码的目的。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。

Claims (10)

1.移动终端下基于虚拟技术的代码保护方法,其特征在于,包括:
识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置;
解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令;
根据标准指令与自定义指令映射表,将机器指令置换为自定义指令;
当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
根据自定义指令的实际指令类型,对自定义指令进行模拟执行。
2.如权利要求1所述的方法,其特征在于,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
3.如权利要求2所述的方法,其特征在于,所述根据标准指令与自定义指令映射表,将机器指令置换为自定义指令,具体为:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的标准操作码置换为自定义操作码,机器指令的操作数不变。
4.如权利要求1或2或3所述的方法,其特征在于,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
5.如权利要求1或2或3所述的方法,其特征在于,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器。
6.移动终端下基于虚拟技术的代码保护系统,其特征在于,包括:
可执行文件解析模块,用于识别和解析安卓系统中的可执行文件,并确定可执行文件代码块在内存中的分布位置;
指令获取模块,用于解析可执行文件代码块,获取代码指令,并将代码指令拆分为由操作码和操作数构成的机器指令;
自定义指令置换模块,用于根据标准指令与自定义指令映射表,将机器指令置换为自定义指令;
指令类型解析模块,用于当执行自定义指令时,根据标准指令与自定义指令映射表,对自定义指令的实际指令类型进行解析;
模拟执行模块,用于根据自定义指令的实际指令类型,对自定义指令进行模拟执行。
7.如权利要求6所述的系统,其特征在于,所述标准指令与自定义指令映射表包含各指令类型的机器指令的标准操作码与自定义操作码的对应关系,且一个标准操作码对应至少一个自定义操作码,一个自定义操作码只对应一个标准操作码。
8.如权利要求7所述的系统,其特征在于,所述自定义指令置换模块,具体用于:根据标准指令与自定义指令映射表,将待保护指令类型的机器指令的标准操作码置换为自定义操作码,机器指令的操作数不变。
9.如权利要求6或7或8所述的系统,其特征在于,所述指令类型包括:算数指令、逻辑指令、跳转指令、过程调用指令、加载/存储指令。
10.如权利要求6或7或8所述的系统,其特征在于,所述对自定义指令进行模拟执行,包括模拟实现自定义指令对应的实际机器指令,还包括模拟不同架构的寄存器,模拟内存分配,以及模拟产生的系统调用和API调用;其中,所述寄存器包括通用寄存器、状态寄存器。
CN201510984580.7A 2015-12-25 2015-12-25 移动终端下基于虚拟技术的代码保护方法及系统 Active CN105975816B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510984580.7A CN105975816B (zh) 2015-12-25 2015-12-25 移动终端下基于虚拟技术的代码保护方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510984580.7A CN105975816B (zh) 2015-12-25 2015-12-25 移动终端下基于虚拟技术的代码保护方法及系统

Publications (2)

Publication Number Publication Date
CN105975816A true CN105975816A (zh) 2016-09-28
CN105975816B CN105975816B (zh) 2019-06-07

Family

ID=56988411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510984580.7A Active CN105975816B (zh) 2015-12-25 2015-12-25 移动终端下基于虚拟技术的代码保护方法及系统

Country Status (1)

Country Link
CN (1) CN105975816B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168742A (zh) * 2017-05-19 2017-09-15 中南大学 基于定制安卓平台的应用快速部署方法
CN107766702A (zh) * 2017-05-10 2018-03-06 平安科技(深圳)有限公司 代码混淆方法、装置及计算机可读存储介质
CN109446096A (zh) * 2018-11-06 2019-03-08 北京知道创宇信息技术有限公司 一种智能合约调试方法、装置及其存储介质
CN109697339A (zh) * 2017-10-20 2019-04-30 南京理工大学 一种基于动态虚拟指令变换的Android应用安全保护方法
CN110175048A (zh) * 2019-05-15 2019-08-27 童先娥 一种指令处理方法及处理器
CN110196714A (zh) * 2019-06-04 2019-09-03 上海合桀软件技术有限公司 一种原始命令的转化还原方法、存储设备及终端
CN112199163A (zh) * 2020-10-16 2021-01-08 常熟理工学院 分析解释例程的虚拟指令方法、装置、设备及存储介质
CN112287380A (zh) * 2020-12-24 2021-01-29 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN112558505A (zh) * 2019-09-10 2021-03-26 阿里巴巴集团控股有限公司 工控系统的控制处理方法、装置、工控系统及电子设备
CN113536328A (zh) * 2020-04-21 2021-10-22 中国移动通信集团重庆有限公司 链接库文件加密的方法、装置及计算设备
WO2023077749A1 (zh) * 2021-11-04 2023-05-11 华为云计算技术有限公司 执行操作指令的方法、装置、设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100275034A1 (en) * 2005-02-11 2010-10-28 Simplex Major Sdn, Bhd. Software protection method
CN102831342A (zh) * 2012-07-28 2012-12-19 北京深思洛克软件技术股份有限公司 一种提高安卓系统中应用程序保护强度的方法
CN103077333A (zh) * 2013-01-22 2013-05-01 北京理工大学 一种Linux系统下软件代码保护方法
CN103324481A (zh) * 2013-06-26 2013-09-25 网宿科技股份有限公司 通过汇编实现代码混淆的编译方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100275034A1 (en) * 2005-02-11 2010-10-28 Simplex Major Sdn, Bhd. Software protection method
CN102831342A (zh) * 2012-07-28 2012-12-19 北京深思洛克软件技术股份有限公司 一种提高安卓系统中应用程序保护强度的方法
CN103077333A (zh) * 2013-01-22 2013-05-01 北京理工大学 一种Linux系统下软件代码保护方法
CN103324481A (zh) * 2013-06-26 2013-09-25 网宿科技股份有限公司 通过汇编实现代码混淆的编译方法和系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766702A (zh) * 2017-05-10 2018-03-06 平安科技(深圳)有限公司 代码混淆方法、装置及计算机可读存储介质
CN107168742B (zh) * 2017-05-19 2018-01-19 中南大学 基于定制安卓平台的应用快速部署方法
CN107168742A (zh) * 2017-05-19 2017-09-15 中南大学 基于定制安卓平台的应用快速部署方法
CN109697339A (zh) * 2017-10-20 2019-04-30 南京理工大学 一种基于动态虚拟指令变换的Android应用安全保护方法
CN109446096B (zh) * 2018-11-06 2021-08-24 北京知道创宇信息技术股份有限公司 一种智能合约调试方法、装置及其存储介质
CN109446096A (zh) * 2018-11-06 2019-03-08 北京知道创宇信息技术有限公司 一种智能合约调试方法、装置及其存储介质
CN110175048A (zh) * 2019-05-15 2019-08-27 童先娥 一种指令处理方法及处理器
CN110196714A (zh) * 2019-06-04 2019-09-03 上海合桀软件技术有限公司 一种原始命令的转化还原方法、存储设备及终端
CN112558505A (zh) * 2019-09-10 2021-03-26 阿里巴巴集团控股有限公司 工控系统的控制处理方法、装置、工控系统及电子设备
CN113536328A (zh) * 2020-04-21 2021-10-22 中国移动通信集团重庆有限公司 链接库文件加密的方法、装置及计算设备
CN112199163A (zh) * 2020-10-16 2021-01-08 常熟理工学院 分析解释例程的虚拟指令方法、装置、设备及存储介质
CN112287380A (zh) * 2020-12-24 2021-01-29 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
WO2023077749A1 (zh) * 2021-11-04 2023-05-11 华为云计算技术有限公司 执行操作指令的方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN105975816B (zh) 2019-06-07

Similar Documents

Publication Publication Date Title
CN105975816A (zh) 移动终端下基于虚拟技术的代码保护方法及系统
CN107077337B (zh) 用于执行根据两个指令集架构编译的应用编码的系统和方法
CN107480476B (zh) 一种基于ELF感染的Android本地层指令编译虚拟化加壳方法
US8464230B2 (en) Methods and systems to implement non-ABI conforming features across unseen interfaces
CN104246695A (zh) 嵌套仿真和动态链接环境
CN104267981A (zh) 一种加载桌面上的应用布局的方法及装置
CN105159738A (zh) 一种热补丁实现方法及系统
CN104731622B (zh) 一种应用程序的加载方法、装置和移动终端
CN101859244A (zh) 多工具链工程构建方法及系统
CN105204393A (zh) 基于虚核单片机的单片机生产研发工具及其实现方法
CN105183484A (zh) 一种多版本应用程序编程接口兼容的方法及装置
US20160048376A1 (en) Portable binary image format (pbif) for pre-compiled kernels
CN106055481B (zh) 计算机程序的测试方法及装置
CN106020905A (zh) 一种微控制器固件开发与更新的方法及系统
CN111782334B (zh) 一种动态链接库文件虚拟化方法、存储介质及终端设备
CN103176838A (zh) 兼容Android本机程序的方法及系统
CN103544415B (zh) 一种移动平台应用软件的加固方法
CN105573913A (zh) 一种onu系统中的程序调试方法及系统
CN110554998A (zh) 一种通过替换函数内部指令的钩子方法、装置、终端及存储介质
CN103645888A (zh) 一种自动构建操作系统的系统及方法
CN103198244B (zh) 保护动态链接库的方法
CN111385661B (zh) 语音控制全屏播放的方法、装置、终端及存储介质
CN103631585A (zh) 一种用于开发应用程序的方法及系统
CN109460280B (zh) 运行程序的方法、终端
KR101083271B1 (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 430076 No. 8 Huacheng Avenue, Donghu New Technology Development Zone, Wuhan City, Hubei Province

Applicant after: Wuhan Antian Information Technology Co., Ltd.

Address before: 430000 Hubei Wuhan East Lake New Technology Development Zone Software Park East Road 1 software industry 4.1 phase B4 building 12 stories 01 rooms.

Applicant before: Wuhan Antian Information Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant