CN107169324A - 一种基于动态加解密的Android应用加固方法 - Google Patents
一种基于动态加解密的Android应用加固方法 Download PDFInfo
- Publication number
- CN107169324A CN107169324A CN201710331858.XA CN201710331858A CN107169324A CN 107169324 A CN107169324 A CN 107169324A CN 201710331858 A CN201710331858 A CN 201710331858A CN 107169324 A CN107169324 A CN 107169324A
- Authority
- CN
- China
- Prior art keywords
- code
- file
- encryption
- dex
- key
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/16—Program or content traceability, e.g. by watermarking
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种Android应用加固方法,属于信息安全技术领域。本发明包括代码加密、动态防御、完整性校验、动态加载四个模块。加密过程对Android应用程序class.dex加密,对核心代码二次加密,并对加密后的签名认证,将加密的结果嵌入资源文件。动态防御过程,检测调试器和模拟器,检测到被调试或运行在模拟器中退出应用程序。开启子进程,子进程和主进程相互ptrace监控,子进程循环检测调试器和模拟器,被调试则结束进程。完整性检测模块,认证签名信息,防止资源和代码被篡改。代码解密模块提取隐藏在图片中的加密信息,解密得到中间数据,对其中的核心代码部分二次解密,将解密后的结果直接加载至内存执行。
Description
技术领域
本发明涉及一种Android应用加固方法,属于信息安全技术领域。
背景技术
从谷歌2007年推出Android系统至今,Android市场飞速发展,但Android平台编译生成的应用APK极易受到攻击。攻击者通过反编译、逆向工程等技术破解Android应用,窃取应用代码和用户数据,给应用使用带来很多不安全因素。因此,针对Android系统的防逆向就非常重要。通过对应用的加固,达到保护应用代码、反破解、反逆向、反植入等目的,从而保障Android应用的原生性和完整性。
从Android2.3开始,代码混淆技术开始使用。通过混淆源JAVA代码或者smali文件等方式。代码混淆在一定程度上减低了代码的可读性,保护了代码,可以抵抗对应用代码的静态分析,但是不能抵抗反编译或调试攻击,实际加固效果较差。
软件加壳技术是Android加固技术中重要的一项。软件加壳对源程序进行压缩或者加密。应用程序运行时,首先运行壳程序,对被压缩或加密的源程序进行解压缩或解密,还原出源程序并加载至内存执行。随着对Android应用和脱壳技术的研究,简单的压缩或者加密以及很难抵抗外在攻击,加固比较容易被突破。但过于复杂的加密也会减低程序的运行效率。软件加壳隐藏了应用程序源代码,有效地保护了应用程序。但“壳”程序自身也需要保护,防止被攻击者攻击。
发明内容
本发明的目的是为了保护Android应用程序,保护应用不被静态和动态分析,克服现有加固方法的不足,提出一种Android应用加固方法,对应用程序代码进行加密,对关键部分代码二次加密,实现保护应用代码与运行安全目的。
本发明的设计原理为:本发明涉及一种Android应用加固方法,属于信息安全技术领域。本发明包括代码加密、动态防御、完整性校验、动态加载四个模块。加密过程对Android应用程序class.dex加密,对核心代码二次加密,并对加密后的签名认证,将加密的结果嵌入资源文件。动态防御过程,检测调试器和模拟器,检测到被调试或运行在模拟器中退出应用程序。开启子进程,子进程和主进程相互ptrace监控,子进程循环检测调试器和模拟器,被调试则结束进程。完整性检测模块,认证签名信息,防止资源和代码被篡改。代码解密模块提取隐藏在图片中的加密信息,解密得到中间数据,对其中的核心代码部分二次解密,将解密后的结果直接加载至内存执行。
本发明的技术方案是通过如下步骤实现的:
步骤1,应用程序加密时,解压需要保护的Android应用APK文件,获取代码文件classes.dex,提取classes.dex中核心的方法代码,采用对称加密方法加密核心代码得到加密数据,将加密数据添加特殊起止标志位后,替换class.dex中关键代码,生成新的dex文件。
步骤2,设定另一密钥K2,将步骤1中生成的dex文件加密,将加密后的文件嵌入资源文件。
步骤3,对嵌入后的资源文件做签名,将两次加密密钥K1、K2,签名验证信息和解密程序、文件提取程序存入到so文件中,重新打包应用程序,签名生成新的APK文件。
步骤4,动态防御。应用程序运行时,主进程检测当前系统运行环境是否为模拟器或调试机、当检测到运行在模拟器和调试机、直接退出程序运行;主进程fork出子进程,主进程和子进程相互ptrace监控;子进程定时检测调试机和模拟器,检测到应用正在被调试,子进程退出,主进程监控到子进程已退出时,退出应用程序。
步骤5,完整性检测。提取so文件中的签名信息、验证签名信息是否正确。
步骤6,动态加载。应用程序运行时,提取资源文件中的加密文件和so库中的密钥K1、K2,利用K2对加密文件解密,得到中间代码,定位到关键代码加密位置,提取关键代码的加密数据,利用K1对关键代码解密,获取原始class.dex代码,加载至内存。
有益效果
相比于现有的代码混淆加固方法,代码只是增加了代码看阅读难度,代码保护程度较弱,本发明对代码进行加密,能够更好的保护代码。
相比于软件加壳的加固方法,本发明对普通的代码一次加密,对关键代码二次加密,有效地保护了代码,特别是关键代码的保护。同时将加密的结果和密钥通过水印的方式嵌入图片,保护了加密结果。
附图说明
图1为本发明一种Android应用加固方法原理图;
图2为应用加密模块流程图;
图3为动态防御模块主进程检测流程图;
图4为动态防御模块子进程检测流程图;
图5为应用解密模块流程图。
具体实施方式
为了更好的说明本发明的目的和优点,下面结合实施例对本发明方法的实施方式做进一步详细说明。
具体流程为:
步骤1,关键代码加密。
步骤1.1,提取Android应用APK压缩文件中的classes.dex文件。
步骤1.2,定位核心代码,核心代码部分包括:程序Activity、Service生命周期代码,程序登录等涉及密钥与验证的代码、程序核心算法代码。分别提取各段核心代码。
步骤1.3,采用密钥K1,对每块关键代码进行AES加密。
步骤1.4,将各段加密后的代码加上起止标识位,替换原代码,重新计算dex文件长度和校验值。
步骤2,dex文件加密。
步骤2.1,对步骤1生成的dex,使用密钥K2加密,将加密结果嵌入资源文件。
步骤2.2,将嵌入加密结果的资源文件利用HMAC-MD5签名校验,签名密钥使用K1+K2(字符串拼接),Hash校验值、两次加密密钥K1、K2和用于提取资源文件中的代码、解密代码存储到so文件中。
步骤3修改AndroidManifest.xml中Application,将APK资源文件和自定义的壳dex文件和so文件重新打包和签名、生成新的APK文件。
步骤4动态防御。
步骤4.1,通过proc文件系统读取/proc/pid/status文件就存储了进程号为pid的进程状态,定时检测/proc/pid/status中的TracerPid,若该字段不为0时表示调试进程的pid,若检测到TracerPid不为0,则应用正在被调试。调试应用时,应用程序运行在虚拟中。相比于真实设备,虚拟机存在一些特殊的文件,/system/bin/qemu-props,/system/lib/libc_malloc_debug_qemu.so文件和目录/sys/qemu_trace,分别检测这三个文件或目录是否存在,若存在,则认为运行在模拟器中。当检测到被调试或运行在模拟器中,则直接杀死主进程,退出应用程序。
步骤4.2,使用fork函数fork出子进程,主进程和子进程分别调用ptrace,相互监控。子进程利用pipe管道通信向主进程注入一段字符串,主进程读取子进程注入消息,当一定时间内没有读取到字符串,则子进程启动异常,直接退出应用程序
步骤4.3子进程循环检测调试机和模拟器。利用步骤4.1方法检测是否被调试。另外,当使用IDA调试应用时,android_server监听23946端口。检测/proc/net/tcp文件,当23946端口正在被android_server占用时,检测到应用正在被IDA调试。当利用IDA调试器来过反调试时,采取的方式是单步调试。相比于正常运行,单步调试的运行速度要慢的多,正常代码指令的速度一般在1000ms,检测代码执行的时间,设定经验阈值2000ms,当时间间隔超过阈值,则认为正在被反调试。通过以上流程,当检测到被反调试时,子进程退出,主进程在监控到子进程已经退出时,直接退出应用程序。
步骤5,完整性检测。使用JNI(Java Native Interface)调用机制访问so库文件,提取so文件中的K1和K2以及签名校验值,利用K1+K2计算包含加密结果的资源文件的HMAC-MD5值,比较so文件中的签名校验值,如果两个值不同,则应用代码遭到篡改,退出应用程序。
步骤6,动态加载。
步骤6.1,从资源文件中提取被加密的原始dex文件
步骤6.2,提取密钥K2,对步骤5.1提取加密,得到中间结果。
步骤6.3,提取密钥K1,扫描中间结果,发现标识字符串0x6D61696E0x76312E30,读取接下来的8位字符长度以及长度对于的二进制流,利用K1对提取出的二进制流解密,将解密结果替换中间结果中的包括标识字符串、长度和二进制流部分。扫描整个中间结果,使用DexClassLoader类加载器将解密出的二进制代码直接加载到内存,不生成中间文件,完成解密工作。
以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种Android应用加固方法,在于所述方法包括如下步骤:
步骤1,应用程序加密时,解压需要保护的Android应用APK文件,获取代码文件classes.dex,提取classes.dex中核心的方法代码,采用对称加密方法加密核心代码得到加密数据,将加密数据添加特殊起止标志位后,替换class.dex中关键代码,生成新的dex文件;
步骤2,设定另一密钥K2,将步骤1中生成的dex文件加密,将加密后的文件嵌入资源文件;
步骤3,对嵌入后的资源文件做签名,将两次加密密钥K1、K2,签名验证信息和解密程序、文件提取程序存入到so文件中,重新打包应用程序,签名生成新的APK文件;
步骤4,动态防御。应用程序运行时,主进程检测当前系统运行环境是否为模拟器或调试机、当检测到运行在模拟器和调试机、直接退出程序运行;主进程fork出子进程,主进程和子进程相互ptrace监控;子进程定时检测调试机和模拟器,检测到应用正在被调试,子进程退出,主进程监控到子进程已退出时,退出应用程序;
步骤5,完整性检测。提取so文件中的签名信息、验证签名信息是否正确;
步骤6,动态加载。应用程序运行时,提取资源文件中的加密文件和so库中的密钥K1、K2,利用K2对加密文件解密,得到中间代码,定位到关键代码加密位置,提取关键代码的加密数据,利用K1对关键代码解密,获取原始class.dex代码,加载至内存。
2.根据权利要求1所述的一种Android应用加固方法,其特征在于:步骤1中的关键代码包括Activity、Service生命周期函数、登录等涉及密钥与验证的代码、应用程序核心算法代码。
3.根据权利要求1所述的一种Android应用加固方法,其特征在于:步骤4中动态防御方案主进程和子进程多进程检测调试检测,主进程通过fork创建子进程,并相互ptrace监控。
4.根据权利要求1所述的一种Android应用加固方法,其特征在于:步骤4中主进程通过检测/proc/pid/status中的TracerPid判断是否被调试,检测系统文件/system/bin/qemu-props,/system/lib/libc_malloc_debug_qemu.so文件和目录/sys/qemu_trace判断是否运行在模拟器中。
5.根据权利要求1所述的一种Android应用加固方法,其特征在于:步骤4中子进程通过主进程检测方法以及检测IDA调试端口23946判断是否被IDA调试;检测时间差,判断IDA是否被单步调试。
6.根据权利要求1所述的一种Android应用加固方法,其特征在于:步骤4中,主进程和子进程通过管道pipe通信。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710331858.XA CN107169324A (zh) | 2017-05-12 | 2017-05-12 | 一种基于动态加解密的Android应用加固方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710331858.XA CN107169324A (zh) | 2017-05-12 | 2017-05-12 | 一种基于动态加解密的Android应用加固方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN107169324A true CN107169324A (zh) | 2017-09-15 |
Family
ID=59816461
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201710331858.XA Pending CN107169324A (zh) | 2017-05-12 | 2017-05-12 | 一种基于动态加解密的Android应用加固方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN107169324A (zh) |
Cited By (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107977553A (zh) * | 2017-12-25 | 2018-05-01 | 中国电子产品可靠性与环境试验研究所 | 移动应用程序的安全加固的方法及装置 |
| CN108388778A (zh) * | 2018-03-21 | 2018-08-10 | 北京理工大学 | Android平台融合多特征的APP反调试方法 |
| CN109460674A (zh) * | 2018-10-23 | 2019-03-12 | 上海金档信息技术有限公司 | 一种java应用程序保护方法 |
| CN109614772A (zh) * | 2018-11-20 | 2019-04-12 | 江苏通付盾信息安全技术有限公司 | 基于应用安装包文件的代码转换方法及装置 |
| CN109977633A (zh) * | 2019-03-28 | 2019-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 一种程序保护方法及相关装置 |
| CN109995700A (zh) * | 2017-12-29 | 2019-07-09 | 北京易安睿龙科技有限公司 | 一种应用程序的安全防护方法、应用客户端及acr服务器 |
| WO2019134276A1 (zh) * | 2018-01-05 | 2019-07-11 | 武汉斗鱼网络科技有限公司 | 一种保护网页代码的方法、存储介质、电子设备和系统 |
| CN110147656A (zh) * | 2019-05-10 | 2019-08-20 | 重庆迅燕科技有限公司 | 一种Node.js的代码加密及底层运行时解密办法 |
| CN110175067A (zh) * | 2019-03-05 | 2019-08-27 | 广东电网有限责任公司信息中心 | 一种移动应用立体防御方法和系统 |
| CN110210211A (zh) * | 2019-06-05 | 2019-09-06 | 北京证大向上金融信息服务有限公司 | 一种数据保护的方法和计算设备 |
| CN111240766A (zh) * | 2020-01-22 | 2020-06-05 | 北京字节跳动网络技术有限公司 | 应用启动方法、装置、电子设备及计算机可读存储介质 |
| CN111740817A (zh) * | 2020-06-17 | 2020-10-02 | 国网天津市电力公司电力科学研究院 | 电力数据采集系统中集中器的代码篡改检测方法及系统 |
| CN112417484A (zh) * | 2020-11-26 | 2021-02-26 | 江苏通付盾信息安全技术有限公司 | 资源文件保护方法、装置、计算机设备和存储介质 |
| CN112507292A (zh) * | 2020-12-09 | 2021-03-16 | 重庆邮电大学 | 一种支持运行环境检测及完整性检测的加壳保护方法 |
| CN112671715A (zh) * | 2020-12-03 | 2021-04-16 | 上海连尚网络科技有限公司 | 一种用于保障应用的数据安全通信的方法与装置 |
| CN112667975A (zh) * | 2020-12-29 | 2021-04-16 | 西北工业大学 | 一种基于混合加固Android系统应用软件安全防护方法 |
| CN113209630A (zh) * | 2021-05-14 | 2021-08-06 | 上海完美时空软件有限公司 | 游戏应用的抓帧防御方法及装置、存储介质、计算机设备 |
| CN114048475A (zh) * | 2021-11-16 | 2022-02-15 | 上海蛮犀科技有限公司 | 一种移动应用检测终端设备环境的方法 |
| CN114385982A (zh) * | 2021-12-28 | 2022-04-22 | 武汉卡比特信息有限公司 | 安卓应用程序反调试的方法、系统、电子设备和存储介质 |
| CN114861138A (zh) * | 2022-03-15 | 2022-08-05 | 安徽航天信息科技有限公司 | 一种软件保护方法、运行控制方法、计算设备及存储介质 |
| CN116680670A (zh) * | 2023-08-03 | 2023-09-01 | 北京冠群信息技术股份有限公司 | 应用程序软件生成方法、系统、设备及存储介质 |
| CN118094597A (zh) * | 2024-03-14 | 2024-05-28 | 北京芯境科技有限责任公司 | 一种应用于Android虚拟框架的加密系统及方法 |
| CN119808174A (zh) * | 2025-03-07 | 2025-04-11 | 蜜度科技股份有限公司 | 一种应用程序篡改验证方法、装置、电子设备及介质 |
Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103530535A (zh) * | 2013-10-25 | 2014-01-22 | 苏州通付盾信息技术有限公司 | 一种Android平台应用程序保护的加脱壳方法 |
| CN103886230A (zh) * | 2014-02-24 | 2014-06-25 | 四川长虹电器股份有限公司 | android系统的软件版权保护方法及其系统 |
| CN104317625A (zh) * | 2014-11-09 | 2015-01-28 | 刘鹏 | 一种apk文件的动态加载方法 |
| CN104318155A (zh) * | 2014-11-18 | 2015-01-28 | 刘鹏 | 一种防逆向apk文件的动态加载方法 |
| CN104408337A (zh) * | 2014-11-18 | 2015-03-11 | 刘鹏 | 一种apk文件防逆向的加固方法 |
| CN104866739A (zh) * | 2015-06-04 | 2015-08-26 | 上海斐讯数据通信技术有限公司 | 安卓系统中应用程序加密方法及系统 |
| CN105426708A (zh) * | 2016-01-19 | 2016-03-23 | 北京鼎源科技有限公司 | 一种Android系统的应用程序的加固方法 |
| CN106203006A (zh) * | 2016-08-31 | 2016-12-07 | 北京鼎源科技有限公司 | 基于dex与so文件动态执行的Android应用加固方法 |
| CN106650327A (zh) * | 2016-11-24 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于动态恢复so文件的Android应用加固方法 |
| CN106650330A (zh) * | 2016-12-22 | 2017-05-10 | 合肥国信车联网研究院有限公司 | 一种基于Dex加载器的Android应用软件加固保护方法 |
| CN106650341A (zh) * | 2016-11-18 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于smali流程混淆技术的Android应用加固方法 |
-
2017
- 2017-05-12 CN CN201710331858.XA patent/CN107169324A/zh active Pending
Patent Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103530535A (zh) * | 2013-10-25 | 2014-01-22 | 苏州通付盾信息技术有限公司 | 一种Android平台应用程序保护的加脱壳方法 |
| CN103886230A (zh) * | 2014-02-24 | 2014-06-25 | 四川长虹电器股份有限公司 | android系统的软件版权保护方法及其系统 |
| CN104317625A (zh) * | 2014-11-09 | 2015-01-28 | 刘鹏 | 一种apk文件的动态加载方法 |
| CN104318155A (zh) * | 2014-11-18 | 2015-01-28 | 刘鹏 | 一种防逆向apk文件的动态加载方法 |
| CN104408337A (zh) * | 2014-11-18 | 2015-03-11 | 刘鹏 | 一种apk文件防逆向的加固方法 |
| CN104866739A (zh) * | 2015-06-04 | 2015-08-26 | 上海斐讯数据通信技术有限公司 | 安卓系统中应用程序加密方法及系统 |
| CN105426708A (zh) * | 2016-01-19 | 2016-03-23 | 北京鼎源科技有限公司 | 一种Android系统的应用程序的加固方法 |
| CN106203006A (zh) * | 2016-08-31 | 2016-12-07 | 北京鼎源科技有限公司 | 基于dex与so文件动态执行的Android应用加固方法 |
| CN106650341A (zh) * | 2016-11-18 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于smali流程混淆技术的Android应用加固方法 |
| CN106650327A (zh) * | 2016-11-24 | 2017-05-10 | 湖南鼎源蓝剑信息科技有限公司 | 基于动态恢复so文件的Android应用加固方法 |
| CN106650330A (zh) * | 2016-12-22 | 2017-05-10 | 合肥国信车联网研究院有限公司 | 一种基于Dex加载器的Android应用软件加固保护方法 |
Non-Patent Citations (2)
| Title |
|---|
| DANIEL P.BOVET: "《深入理解LINUX内核》", 30 June 2004 * |
| 李萍: "《天津中德职业技术学院学报》", 31 December 2015 * |
Cited By (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107977553A (zh) * | 2017-12-25 | 2018-05-01 | 中国电子产品可靠性与环境试验研究所 | 移动应用程序的安全加固的方法及装置 |
| CN109995700B (zh) * | 2017-12-29 | 2021-10-15 | 北京易安睿龙科技有限公司 | 一种应用程序的安全防护方法、应用客户端及acr服务器 |
| CN109995700A (zh) * | 2017-12-29 | 2019-07-09 | 北京易安睿龙科技有限公司 | 一种应用程序的安全防护方法、应用客户端及acr服务器 |
| WO2019134276A1 (zh) * | 2018-01-05 | 2019-07-11 | 武汉斗鱼网络科技有限公司 | 一种保护网页代码的方法、存储介质、电子设备和系统 |
| CN108388778A (zh) * | 2018-03-21 | 2018-08-10 | 北京理工大学 | Android平台融合多特征的APP反调试方法 |
| CN108388778B (zh) * | 2018-03-21 | 2021-03-30 | 北京理工大学 | Android平台融合多特征的APP反调试方法 |
| CN109460674A (zh) * | 2018-10-23 | 2019-03-12 | 上海金档信息技术有限公司 | 一种java应用程序保护方法 |
| CN109614772B (zh) * | 2018-11-20 | 2021-02-02 | 江苏通付盾信息安全技术有限公司 | 基于应用安装包文件的代码转换方法及装置 |
| CN109614772A (zh) * | 2018-11-20 | 2019-04-12 | 江苏通付盾信息安全技术有限公司 | 基于应用安装包文件的代码转换方法及装置 |
| CN110175067A (zh) * | 2019-03-05 | 2019-08-27 | 广东电网有限责任公司信息中心 | 一种移动应用立体防御方法和系统 |
| CN109977633A (zh) * | 2019-03-28 | 2019-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 一种程序保护方法及相关装置 |
| CN110147656A (zh) * | 2019-05-10 | 2019-08-20 | 重庆迅燕科技有限公司 | 一种Node.js的代码加密及底层运行时解密办法 |
| CN110147656B (zh) * | 2019-05-10 | 2020-10-30 | 重庆迅燕科技有限公司 | 一种Node.js的代码加密及底层运行时解密办法 |
| CN110210211A (zh) * | 2019-06-05 | 2019-09-06 | 北京证大向上金融信息服务有限公司 | 一种数据保护的方法和计算设备 |
| CN110210211B (zh) * | 2019-06-05 | 2021-09-07 | 北京证大向上金融信息服务有限公司 | 一种数据保护的方法和计算设备 |
| CN111240766B (zh) * | 2020-01-22 | 2023-12-29 | 抖音视界有限公司 | 应用启动方法、装置、电子设备及计算机可读存储介质 |
| CN111240766A (zh) * | 2020-01-22 | 2020-06-05 | 北京字节跳动网络技术有限公司 | 应用启动方法、装置、电子设备及计算机可读存储介质 |
| CN111740817A (zh) * | 2020-06-17 | 2020-10-02 | 国网天津市电力公司电力科学研究院 | 电力数据采集系统中集中器的代码篡改检测方法及系统 |
| CN112417484A (zh) * | 2020-11-26 | 2021-02-26 | 江苏通付盾信息安全技术有限公司 | 资源文件保护方法、装置、计算机设备和存储介质 |
| CN112671715A (zh) * | 2020-12-03 | 2021-04-16 | 上海连尚网络科技有限公司 | 一种用于保障应用的数据安全通信的方法与装置 |
| CN112671715B (zh) * | 2020-12-03 | 2023-05-09 | 上海连尚网络科技有限公司 | 一种用于保障应用的数据安全通信的方法与装置 |
| CN112507292A (zh) * | 2020-12-09 | 2021-03-16 | 重庆邮电大学 | 一种支持运行环境检测及完整性检测的加壳保护方法 |
| CN112507292B (zh) * | 2020-12-09 | 2024-01-26 | 重庆邮电大学 | 一种支持运行环境检测及完整性检测的加壳保护方法 |
| CN112667975A (zh) * | 2020-12-29 | 2021-04-16 | 西北工业大学 | 一种基于混合加固Android系统应用软件安全防护方法 |
| CN112667975B (zh) * | 2020-12-29 | 2024-04-26 | 西北工业大学 | 一种基于混合加固Android系统应用软件安全防护方法 |
| CN113209630A (zh) * | 2021-05-14 | 2021-08-06 | 上海完美时空软件有限公司 | 游戏应用的抓帧防御方法及装置、存储介质、计算机设备 |
| CN114048475A (zh) * | 2021-11-16 | 2022-02-15 | 上海蛮犀科技有限公司 | 一种移动应用检测终端设备环境的方法 |
| CN114385982A (zh) * | 2021-12-28 | 2022-04-22 | 武汉卡比特信息有限公司 | 安卓应用程序反调试的方法、系统、电子设备和存储介质 |
| CN114861138A (zh) * | 2022-03-15 | 2022-08-05 | 安徽航天信息科技有限公司 | 一种软件保护方法、运行控制方法、计算设备及存储介质 |
| CN116680670A (zh) * | 2023-08-03 | 2023-09-01 | 北京冠群信息技术股份有限公司 | 应用程序软件生成方法、系统、设备及存储介质 |
| CN116680670B (zh) * | 2023-08-03 | 2023-10-31 | 北京冠群信息技术股份有限公司 | 应用程序软件生成方法、系统、设备及存储介质 |
| CN118094597A (zh) * | 2024-03-14 | 2024-05-28 | 北京芯境科技有限责任公司 | 一种应用于Android虚拟框架的加密系统及方法 |
| CN118094597B (zh) * | 2024-03-14 | 2024-11-29 | 浙江数孪科技有限公司 | 一种应用于Android虚拟框架的加密系统及方法 |
| CN119808174A (zh) * | 2025-03-07 | 2025-04-11 | 蜜度科技股份有限公司 | 一种应用程序篡改验证方法、装置、电子设备及介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107169324A (zh) | 一种基于动态加解密的Android应用加固方法 | |
| KR101471589B1 (ko) | 공통중간언어 기반 프로그램을 위한 보안 제공 방법 | |
| CN104680039B (zh) | 一种应用程序安装包的数据保护方法及装置 | |
| US7930743B2 (en) | Information processing system, information processing method, information processing program, computer readable medium and computer data signal | |
| CN106203006A (zh) | 基于dex与so文件动态执行的Android应用加固方法 | |
| CN105956456B (zh) | 一种对Android系统进行四重联合签名验证的实现方法 | |
| KR101216995B1 (ko) | 인덱스 테이블 기반 코드 암호화 및 복호화 장치 및 그 방법 | |
| CN107273723B (zh) | 一种基于so文件加壳的Android平台应用软件保护方法 | |
| US20090144561A1 (en) | Method and System for Software Protection Using Binary Encoding | |
| CN107092816B (zh) | 一种Android应用程序加固方法 | |
| CN108399319B (zh) | 源代码保护方法、应用服务器及计算机可读存储介质 | |
| CN109241707A (zh) | 应用程序的混淆方法、装置和服务器 | |
| CN117009931A (zh) | 水印添加和水印应用方法、装置、设备及存储介质 | |
| Rajba et al. | Data hiding using code obfuscation | |
| KR101749209B1 (ko) | 애플리케이션의 정보 은닉 방법 및 장치, 및 애플리케이션 실행 방법 및 장치 | |
| CN102855439B (zh) | 一种执行文件自校验方法及装置 | |
| CN106295263A (zh) | 一种实现应用加固的方法及装置 | |
| CN104751026B (zh) | 安卓系统的软件保护方法、软件应用方法及相关装置 | |
| CN106650342B (zh) | 一种Jar包加固方法及系统 | |
| Xu et al. | Toward a secure android software protection system | |
| JP4120702B2 (ja) | 情報処理システムおよびプログラム | |
| CN104462884B (zh) | 软件水印的嵌入和提取方法 | |
| EP2966587A1 (en) | Method of protecting software program by corrupting memory chunks, and device for implementing said method | |
| CN107205001A (zh) | python脚本的更新方法及装置、客户端、服务器 | |
| CN120561897B (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 | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170915 |
|
| WD01 | Invention patent application deemed withdrawn after publication |