CN107506651A - 一种代码加密方法及系统 - Google Patents

一种代码加密方法及系统 Download PDF

Info

Publication number
CN107506651A
CN107506651A CN201710536502.XA CN201710536502A CN107506651A CN 107506651 A CN107506651 A CN 107506651A CN 201710536502 A CN201710536502 A CN 201710536502A CN 107506651 A CN107506651 A CN 107506651A
Authority
CN
China
Prior art keywords
class
task
code
file
code file
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
CN201710536502.XA
Other languages
English (en)
Other versions
CN107506651B (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.)
Seal information technology (Shanghai) Co.,Ltd.
Original Assignee
Shanghai Feixun Data Communication 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 Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201710536502.XA priority Critical patent/CN107506651B/zh
Publication of CN107506651A publication Critical patent/CN107506651A/zh
Application granted granted Critical
Publication of CN107506651B publication Critical patent/CN107506651B/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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及计算机技术领域,尤其涉及一种代码加密方法及系统。包括:步骤S1,获取原始代码文件;所述原始代码文件基于原始类实现任务;步骤S2,对所述原始代码文件进行类混合处理得到类混合代码文件,所述类混合代码文件包括与所述任务对应的任务类并且基于所述任务类实现所述任务。经过类混合处理以后的类混合代码文件,在经过混淆处理、压缩处理以后,即使混淆处理的加密被反向破解了,但是核心代码的类都是以任务为单位进行封装的,将多个不相干的对象实体混合为一个虚拟特制对象(即任务类对象),通过预定的命名规则定义形式,形成难以理解和分割的以任务为单位的功能块,这样代码被窃取依然无从下手。

Description

一种代码加密方法及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种代码加密方法及系统。
背景技术
随着互联网技术的日益发展,软件的发展速度得以井喷似的壮大,随着开源技术的推广,虽然对软件的快速发展和强大带来了更大的变化,但是同时对于数据的保密,完整和安全性上带来了严重的考验。
例如Java应用软件,Java通过虚拟机方式运行,具有编程时无需考虑内存管理等优点,因此被广泛应用与各种应用软件。通常情况下,采用Java编写的应用软件源程序代码经过Java编译器编译后,生成Java字节码(.class文件),Java字节码独立于计算机硬件及操作系统,在运行时由Java虚拟机的Java解释器负责解释并通过及时编译器生产机器代码而执行。然而,由于Java字节码中包含大量的调试信息,例如:源文件名、行号、字段名、方法名、参数名和变量名等,这些调试信息很容易被反编译和通过逆向工程获得应用软件完整的源程序代码。
因此,人们开始投入大量的精力对于自己代码的安全维护成本上考虑,防止别人给自己的软件注入漏洞或者提取源代码获取加密信息。
代码混淆,是将计算机程序的代码转换成一种功能上的等价,但是难于阅读和理解的形式的行为。将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字,使得阅读的人无法根据名字猜测其用途。重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式,打乱代码的格式。
申请公布号CN 105404794 A,申请公布日2016年3月16日公开的发明专利申请公开了一种Java应用软件的保护方法和装置,通过获取Java应用软件的压缩包,该压缩包中包含至少一个类文件,根据其中的至少一个类文件中的指令访问权限,对至少一个类文件中的函数进行合并处理,从而将多个函数的指令合并到同一函数中,产生强混淆效果,同时减少了总函数数量,增加了通过反编译和通过逆向工程获的应用软件完整的远程代码的难度。
申请公布号CN 106326694A,申请公布日2017年1月11日的发明专利申请公布了一种基于C源代码的混淆的Andrid应用加固方法。采用NDK编程的方式,把重要代码保存在C动态链接库中,在对C源代码进行混淆,可以增强对软件的保护措施。同时,把重要代码写到so库中,还能增加代码的重用性,在其他应用中可以直接引入现成的so库,免去了二次开发的麻烦。
但是这些混淆技术并不全面,因为高级语言的程序结构体可以揭示软件的设计意图从而帮助他人理解,稍微懂一点技术的人就能很好的破解。
发明内容
本发明为了解决上述技术问题,提出一种代码加密方法,其特征在于,包括:步骤S1,获取原始代码文件;所述原始代码文件基于原始类实现任务;步骤S2,对所述原始代码文件进行类混合处理得到类混合代码文件,所述类混合代码文件包括与所述任务对应的任务类并且基于所述任务类实现所述任务。
作为优选,所述类混合处理是指按照所述原始代码文件执行的任务将所述原始代码文件中的多个原始类合并形成任务类。
作为优选,所述原始类包括原始变量和原始方法;所述任务类包括与所述原始类的与实现所述任务相关的所述原始变量一一对应的任务变量和与所述原始类的与实现所述任务相关的所述原始方法一一对应的任务方法。
作为优选,所述步骤2包括:步骤S2-1,查找实现所述任务所需的所有所述原始类;步骤S2-2,建立与所述任务对应的任务类并且按照类命名规则为所述任务类命名;步骤S2-3,为所述任务类添加任务变量和任务方法;步骤S2-4,根据所述原始代码文件中用于执行所述任务的代码段生成所述类混合代码文件的用于执行所述任务的代码段。。
作为优选,所述步骤S2-3包括:将所述步骤S2-1中查找到的所述原始类的原始变量和原始方法分别按照变量命名规则和任务命名规则重名以后作为所述任务类的所述任务变量和所述任务方法。
作为优选,还包括:步骤S3,将所述类混合代码文件进行代码混淆处理获得混淆代码文件。
作为优选,还包括:步骤S4,将混淆代码文件进行压缩处理获得压缩代码文件。
本发明还公开了一种代码加密系统,其特征在于,包括:类混合模块,对所述原始代码文件进行类混合处理得到类混合代码文件,所述类混合代码文件包括与所述任务对应的任务类并且基于所述任务类实现所述任务;所述原始类包括原始变量和原始方法;所述任务类包括与所述原始变量一一对应的任务变量和与所述原始方法一一对应的任务方法。
作为优选,还包括对所述类混合代码进行混淆处理以得到混淆代码文件的混淆模块。
作为优选,还包括对所述混淆代码文件进行压缩处理以得到压缩代码文件的压缩模块。
附图说明
图1是本发明实施例的流程图。
具体实施方式
以下具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
实施例一
一种代码加密系统,用于对执行任务以实现某些功能的原始代码文件进行加密。原始代码文件可以为由C语言、C++、C#、Java、Javascript、PHP等高级语言编程的应用程序的程序代码。原始代码文件中包括用于定义不同的类的类文件。通过实例化这些类,并且调用这些类中的方法,可以使得应用程序完成不同的任务、实现不同的功能。
代码加密系统包括类混合模块、混淆模块以及压缩模块。
一.类混合模块
类混合模块用于对原始代码文件进行类混合处理获得类混合代码文件。类混合处理是指按照原始代码文件执行的任务将原始代码文件中的多个原始类合并形成任务类。即将原始代码文件中与同一项任务相关的所有原始类合并为一个与该任务对应的任务类。原始代码文件基于实例化原始类对象并调用原始类对象的方法来完成的任务,在类混合代码文件中是基于实例化与该任务对应的任务类,并且调用该任务类的相应任务方法来实现的。
具体的,类混合模块包括原始类查找单元、任务类建立单元、任务实现单元。
对于原始代码文件执行的各项任务,原始类查找单元在原始代码文件查找实现该任务所需要的所有原始类以及该原始类中与实现该任务相关的所有原始变量和原始方法,并且传输给任务类建立单元。
任务类建立单元新建一个与该任务对应的任务类文件,并且按照预定的类命名规则为该任务类文件对应的任务类命名。类命名规则可以由程序员根据自己的编程习惯定义,其目的是为了方便程序员自己在程序调试、程序测试或者程序维护时对于任务类文件理解,因此,只要符合所使用的程序语言的类名定义规则的规则,可以不局限于任何的规则。一般来讲,建议采用与任务的内容相关的字符、字符串或者代码等符号为该任务类命名。任务类建立单元还依次将来自原始类查找单元的、与执行该任务有关的各原始类添加至该任务类中。具体的包括:在任务类中定义与需添加的原始类中的与实现任务相关的原始变量对应的任务变量以及在任务类中定义与需添加的原始类中的与实现任务相关的原始方法对应的任务方法。其中,任务变量的定义按照预先定义的变量命名规则进行命名。变量命名规则可以由程序员根据自己的编程习惯定义,其目的是为了方便程序员自己在程序调试、程序测试或者程序维护时对于任务类中的任务变量进行理解,因此,只要在符合所使用的程序语言的变量命名规则的规则前提下,可以不局限于任何的规则。一般来讲,建议采用与原始类名称和该原始两变量名称均相关的字符、字符串或者代码等符号为该任务类命名。同样,任务方法的定义按照预先定义的方法命名规则进行命名。变量命名规则可以由程序员根据自己的编程习惯定义,其目的是为了方便程序员自己在程序调试、程序测试或者程序维护时对于任务类中的任务变量进行理解,因此,只要在符合所使用的程序语言的变量命名规则的规则前提下,可以不局限于任何的规则。一般来讲,建议采用与原始类名称和该原始两变量名称均相关的字符、字符串或者代码等符号为该任务类命名。
任务实现单元,根据原始代码文件中用于执行任务的代码段生产类混合代码文件的用于执行任务的代码段。具体为:对于原始代码段中用于实现某任务的代码段,将该代码段中的原始类替换为与该任务对应的任务类,将该代码段中的各原始类的原始变量替换为与该任务对应的任务类中与该原始变量对应的任务变量,将该代码段中的各原始类的原始方法替换为与该任务对应的任务类中与该原始方法对应的任务方法。
二.混淆模块
混淆模块用于对经类混合模块处理得到的类混合代码文件进行混淆处理以得到混淆代码文件。混淆模块的实现方式有多种,其原理是:将计算机程序的代码,转换成一种功能上等价但是难于阅读和理解的形式。具体为:将代码中的各种元素,如变量、函数、类的名字改写成无意义的名字。比如改写成无意义的随机字母组合的字符串,使得阅读的人无法根据名字猜测其用途。重写代码中的部分逻辑:例如将while循环改写为for循环,将if语句改写为case语句,将循环改写成递归等等。打乱代码的格式,比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。可以采用现有技术中已存在的或者未来技术中将会出现的各种混淆器来实现。
三.压缩模块
通过用长度更短的字符替代混淆代码文件的中的某些长度较长的字符,以压缩混淆代码文件的大小,使得压缩后得到的压缩代码文件更加的精简。
上述三种模块可以相互的通过不同的应用程序独立实现,也可以部分或者全部集成在同一应用程序中来实现。例如,将混淆模块和压缩模块集成在一个应用程序中实现时:可以在混淆类混合代码文件的时候:将代码中的各种元素,如变量、函数、类的名字改写成单个字母、或是简段的无意义字母组合,甚至改写成“_”这种无意义的符号。重写代码中的部分逻辑:精简中间变量。打乱代码的格式,比如删除空格,将多行代码挤到一行中等等。可以采用现有技术中已存在的或者未来技术中将会出现的各种混淆压缩器来实现。
基于本实施例所述的代码加密系统的代码加密方法包括:
步骤S1,获取原始代码文件。原始代码文件基于原始类实现任务,原始类包括原始变量和原始方法。
步骤S2,由类混淆模块对所述原始代码文件进行类混合处理得到类混合代码文件。具体包括:
步骤S2-1,由类混淆模块的原始类查找单元在原始代码文件中查找实现所述任务所需的所有所述原始类以及该原始类中与实现该任务相关的所有原始变量和原始方法。
步骤S2-2,由类混淆模块的任务类建立单元建立与任务对应的任务类并且按照类命名规则为所述任务类命名;
步骤S2-3,由类混淆模块的任务类建立单元为建立的任务类添加任务变量和任务方法。包括:在任务类中定义与需添加的原始类中的与实现任务相关的原始变量对应的任务变量以及在任务类中定义与需添加的原始类中的与实现任务相关的原始方法对应的任务方法。
步骤S2-4,由类混淆模块的任务实现单元根据原始代码文件中用于执行任务的代码段生产类混合代码文件的用于执行任务的代码段。使得类混淆代码文件能够基于任务类实现对应的任务。
步骤S3,由混淆处理模块将类混合代码文件进行代码混淆处理获得混淆代码文件。
下面以一段原始代码文件为例进行对本实施例的类混淆处理方法进行描述:
假如原始代码段需要执行一个人骑着马车去某个地方的任务。原始代码段包括用于执行该任务的人类、载物类、动物类这三种类的对象:人、车、马。并且,人需要有骑马的方法,马需要有奔跑的功能(即方法),车需要有滚动的功能(即方法)。通过这样三个类对象的合作就可以让人骑着马车到任何想到的目的地。
原始代码段中,需要对应三个类的类文件:
人类文件(person.class.php)中的部分代码:
原始代码文件中还包括用于实现人骑着马车去某个地方的执行文件,执行文件中将引用并示例化上述三个对象,然后调用彼此的方法协同合作实现人骑着马车去某个地方的任务:
include person.class.php;
include traler.class.php;
include.animal.class.php;
p=new person();
t=new traler();
a=new animal();
//赋予人这个对象名叫小明,男,18岁
p.age=18;
p.name=xiaomig;
p.sex=man;
//创建一个两条腿的黑色的车
t.color=black;
t.legs=2;
t.size=big;
//创建一条3岁的绿色小狗
a.age=3;
a.name=paul;
a.color=green;
//人骑马
p->drive();
//马拉车
a->pull();
//车滚动
t->run();
对上述原始代码文件进行类混合以后的类混合文件,包括对应于人骑马车的任务的任务类(person.class.php):
混淆代码文件中还包括用于实现人骑着马车去某个地方的执行文件,执行文件中将引用并示例化上述类对象,然后调用其中的方法实现人骑着马车去某个地方的任务:
include person.class.php;
p=new person();
//赋予人这个对象名叫小明,男,18岁
p.p.age=18;
p.p.name=xiaomig;
p.p.sex=man;
//创建一个两条腿的黑色的车
p.t.color=black;
p.t.legs=2;
p.t.size=big;
//创建一条3岁的绿色小狗
p.a.age=3;
p.a.name=paul;
p.a.color=green;
//人骑马
p->drive();
//马拉车
p->pull();
//车滚动
p->run();
经过类混合处理以后的类混合代码文件,在经过混淆处理、压缩处理以后,即使混淆处理的加密被反向破解了,但是核心代码的类都是以任务为单位进行封装的,将多个不相干的对象实体混合为一个虚拟特制对象(即任务类对象),通过预定的命名规则定义形式,形成难以理解和分割的以任务为单位的功能块,这样代码被窃取依然无从下手。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (10)

1.一种代码加密方法,其特征在于,包括:
步骤S1,获取原始代码文件;所述原始代码文件基于原始类实现任务;
步骤S2,对所述原始代码文件进行类混合处理得到类混合代码文件,所述类混合代码文件包括与所述任务对应的任务类并且基于所述任务类实现所述任务。
2.根据权利要求1所述的一种代码加密方法,其特征在于:所述类混合处理是指按照所述原始代码文件执行的任务将所述原始代码文件中的多个原始类合并形成任务类。
3.根据权利要求2所述的一种代码加密方法,其特征在于:所述原始类包括原始变量和原始方法;所述任务类包括与所述原始类的与实现所述任务相关的所述原始变量一一对应的任务变量和与所述原始类的与实现所述任务相关的所述原始方法一一对应的任务方法。
4.根据权利要求3所述的一种代码加密方法,其特征在于,所述步骤2包括:
步骤S2-1,查找实现所述任务所需的所有所述原始类;
步骤S2-2,建立与所述任务对应的任务类并且按照类命名规则为所述任务类命名;
步骤S2-3,为所述任务类添加任务变量和任务方法;
步骤S2-4,根据所述原始代码文件中用于执行所述任务的代码段生成所述类混合代码文件的用于执行所述任务的代码段。
5.根据权利要求4所述的一种代码加密方法,其特征在于,所述步骤S2-3包括:将所述步骤S2-1中查找到的所述原始类的原始变量和原始方法分别按照变量命名规则和任务命名规则重名以后作为所述任务类的所述任务变量和所述任务方法。
6.根据权利要求1或2或3或4或5所述的一种代码加密方法,其特征在于,还包括:
步骤S3,将所述类混合代码文件进行代码混淆处理获得混淆代码文件。
7.根据权利要求6所述的一种代码加密方法,其特征在于,还包括:
步骤S4,将混淆代码文件进行压缩处理获得压缩代码文件。
8.一种代码加密系统,其特征在于,包括:
类混合模块,对所述原始代码文件进行类混合处理得到类混合代码文件,所述类混合代码文件包括与所述任务对应的任务类并且基于所述任务类实现所述任务;
所述原始类包括原始变量和原始方法;所述任务类包括与所述原始变量一一对应的任务变量和与所述原始方法一一对应的任务方法。
9.根据权利要求8所述的一种加密系统,其特征在于:还包括对所述类混合代码文件进行混淆处理以得到混淆代码文件的混淆模块。
10.根据权利要求9所述的一种加密系统,其特征在于:还包括对所述混淆代码文件进行压缩处理以得到压缩代码文件的压缩模块。
CN201710536502.XA 2017-07-04 2017-07-04 一种代码加密方法及系统 Active CN107506651B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710536502.XA CN107506651B (zh) 2017-07-04 2017-07-04 一种代码加密方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710536502.XA CN107506651B (zh) 2017-07-04 2017-07-04 一种代码加密方法及系统

Publications (2)

Publication Number Publication Date
CN107506651A true CN107506651A (zh) 2017-12-22
CN107506651B CN107506651B (zh) 2021-10-22

Family

ID=60678733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710536502.XA Active CN107506651B (zh) 2017-07-04 2017-07-04 一种代码加密方法及系统

Country Status (1)

Country Link
CN (1) CN107506651B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107992725A (zh) * 2017-12-29 2018-05-04 北京星河星云信息技术有限公司 一种代码加密、解密方法及装置
WO2019148816A1 (en) * 2018-02-05 2019-08-08 Beijing Elex Technology Co., Ltd Method and apparatus for data compilation, electronic device and computer readable storage medium
CN111666078A (zh) * 2020-04-30 2020-09-15 平安科技(深圳)有限公司 源码加固方法、装置、计算机设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1260055A (zh) * 1997-06-09 2000-07-12 联信公司 用于提高软件安全性的模糊技术
CN101689232A (zh) * 2007-06-29 2010-03-31 艾利森电话股份有限公司 对计算机程序代码的执行轨迹进行模糊化
CN101807239A (zh) * 2010-03-29 2010-08-18 山东高效能服务器和存储研究院 一种防止源代码反编译的方法
CN103413073A (zh) * 2013-07-09 2013-11-27 北京深思数盾科技有限公司 一种保护java可执行程序的方法及设备
CN104899481A (zh) * 2015-06-17 2015-09-09 上海斐讯数据通信技术有限公司 防止应用程序反编译的系统及其方法
CN105404794A (zh) * 2014-09-04 2016-03-16 腾讯科技(深圳)有限公司 Java应用软件的保护方法和装置
KR20160065261A (ko) * 2014-11-28 2016-06-09 주식회사 티모넷 앱 위변조 방지시스템 및 그 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1260055A (zh) * 1997-06-09 2000-07-12 联信公司 用于提高软件安全性的模糊技术
CN101689232A (zh) * 2007-06-29 2010-03-31 艾利森电话股份有限公司 对计算机程序代码的执行轨迹进行模糊化
CN101807239A (zh) * 2010-03-29 2010-08-18 山东高效能服务器和存储研究院 一种防止源代码反编译的方法
CN103413073A (zh) * 2013-07-09 2013-11-27 北京深思数盾科技有限公司 一种保护java可执行程序的方法及设备
CN105404794A (zh) * 2014-09-04 2016-03-16 腾讯科技(深圳)有限公司 Java应用软件的保护方法和装置
KR20160065261A (ko) * 2014-11-28 2016-06-09 주식회사 티모넷 앱 위변조 방지시스템 및 그 방법
CN104899481A (zh) * 2015-06-17 2015-09-09 上海斐讯数据通信技术有限公司 防止应用程序反编译的系统及其方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107992725A (zh) * 2017-12-29 2018-05-04 北京星河星云信息技术有限公司 一种代码加密、解密方法及装置
WO2019148816A1 (en) * 2018-02-05 2019-08-08 Beijing Elex Technology Co., Ltd Method and apparatus for data compilation, electronic device and computer readable storage medium
US11231916B2 (en) 2018-02-05 2022-01-25 Beijing Elex Technology Co., Ltd. Method and apparatus for data compilation using intermediate class files, electronic device and non-transitory computer readable storage medium
CN111666078A (zh) * 2020-04-30 2020-09-15 平安科技(深圳)有限公司 源码加固方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN107506651B (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
CN104765687B (zh) 基于对象跟踪和污点分析的j2ee程序漏洞检测方法
CN105683990B (zh) 用于保护动态库的方法和装置
Do Nascimento et al. A systematic mapping study on domain-specific languages
CN107506651A (zh) 一种代码加密方法及系统
CN106326694A (zh) 一种基于C源代码的混淆的Android应用加固方法
CN106462677A (zh) 优化和保护软件
CN103902859A (zh) 基于JAVA下hook技术的代码保护方法及系统
CN104573416A (zh) 一种生成应用安装包、执行应用的方法及装置
KR101234591B1 (ko) Jni를 이용한 안드로이드 난독화 방법
CN104834838B (zh) 防止dex文件从内存中转存的方法及装置
CN109828776A (zh) 一种查找缺失资源并补充的方法及系统
CN106778100A (zh) 基于安卓平台和ios平台的混淆编译方法及混淆编译器
CN104679493B (zh) 一种流程化的事件处理机制的改进方法
Benouda et al. Automatic code generation within MDA approach for cross-platform mobiles apps
CN106650339B (zh) 一种基于控制流复杂化的Java代码混淆方法
Ray An overview of webassembly for iot: Background, tools, state-of-the-art, challenges, and future directions
CN107180168A (zh) 文件加载、生成方法和装置,以及智能终端
Ricci et al. Concurrent object-oriented programming with agent-oriented abstractions: The ALOO approach
CN110633073A (zh) 基于Il2cpp编译的Unity代码混淆的方法
CN113434148A (zh) 防解密客户端开发编译方法、装置、电子设备及存储介质
Fitzgerald et al. Triumphs and challenges for the industrial application of model-oriented formal methods
CN114625376A (zh) 数据传递方式转化方法、装置、电子设备及可读存储介质
CN111563266B (zh) 电力系统数据操作程序加密方法及装置、解密方法及装置
Varró Incremental queries and transformations: From concepts to industrial applications
CN112052462B (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201113

Address after: 318015 no.2-3167, zone a, Nonggang City, no.2388, Donghuan Avenue, Hongjia street, Jiaojiang District, Taizhou City, Zhejiang Province

Applicant after: Taizhou Jiji Intellectual Property Operation Co.,Ltd.

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Applicant before: Phicomm (Shanghai) Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210915

Address after: 200000 Room C, 18th floor, 1255 Xikang Road, Putuo District, Shanghai

Applicant after: Seal information technology (Shanghai) Co.,Ltd.

Address before: 318015 no.2-3167, area a, nonggangcheng, 2388 Donghuan Avenue, Hongjia street, Jiaojiang District, Taizhou City, Zhejiang Province

Applicant before: Taizhou Jiji Intellectual Property Operation Co.,Ltd.

GR01 Patent grant
GR01 Patent grant