android安全加固方案,android安全加固技术
先介绍5种android apk安全技术,其它后面补充
1、代码混淆
原理:本质就是改变类名、方法名,使代码可读性变差,进而保护代码
种类
混淆前
混淆后
class
BookManager
a
function
getName()
c()
方式:通过 proguard 三方库,在proguard-rules.pro文件中设置改名规则,将gradle中minifyEnabled 设为true,打开混淆功能
注意事项:四大组件保留、jin要调用的方法保留、R文件
2、去除log
原理:停止log输出,进而防止敏感信息泄露
方式:
(1)自己包装log类,打包时自动屏蔽
(2)通过proguard 将系统Log类置为无效
去除Log
注意事项:打开优化开关、添加去除log规则
3、对抗反编译
原理:让apk、dex文件无法通过反编译工具正常编译,导致工具异常崩溃等。常见反编译工具apkTool、baksmali、dex2jar、JEB等
apktool错误信息
dk2.png
4、对抗模拟器
原理:如果检测到运行在模拟器,自动退出
方式:
(1)检测模拟器上特有的几个文件
(2)检测模拟器默认的电话号码
(3)检测设备"IDS"是不是"000000000000000"
(4)检测imsi id是不是“310260000000000”
(5)检测手机上的一些硬件信息
(6)检测手机运营商家
检测id
emulator2.png
检测文件
5、对抗apk重打包
原理:apk重新大包后签名会改变
方法:检测现在的签名和原本的签名是否一致,不一致退出应用
获取现在的签名
2020-11-22
android安全加固方案,android安全加固技术相关推荐
- android+反调试+方案,Android反调试笔记
1)代码执行时间检测 通过取系统时间,检测关键代码执行耗时,检测单步调试,类似函数有:time,gettimeofday,clock_gettime. 也可以直接使用汇编指令RDTSC读取,但测试AR ...
- android 屏幕录制方案,Android录屏的三种解决方案
本文总结三种用于安卓录屏的解决方案: adb shell命令screenrecord MediaRecorder, MediaProjection MediaProjection , MediaCod ...
- android 插件化 方案,Android应用开发之Android 插件化,qihoo360插件方案配置教程
本文将带你了解Android应用开发Android 插件化,qihoo360插件方案配置教程,希望本文对大家学Android有所帮助. Android 插件化,qihoo360插件方案 目录 Andr ...
- android tts实现方案,Android自动朗读(TTS)的实现
前言: Android提供了自动朗读支持.可以对指定文本内容进行朗读,从而发生声音:还允许把文本对应的音频录制成音频文件,方便以后播放.Android的自动朗读主要通过TextToSpeech来完成, ...
- android 屏幕录制方案,Android录屏的三种方案
本文总结三种用于安卓录屏的解决方案: adb shell命令screenrecord MediaRecorder, MediaProjection MediaProjection , MediaCod ...
- Android音频录制方案,Android录屏的三种方案
本文总结三种用于安卓录屏的解决方案: adb shell命令screenrecord MediaRecorder, MediaProjection MediaProjection , MediaCod ...
- android专项测试 方案,Android性能专项测试.pdf
目录 前言 battery-historian试用 MemoryMonitor工具 HeapViewer工具 AllocationTracker(DeviceMonitor) AllocationTr ...
- android布局优化方案,Android启动优化-布局优化
Android启动优化-布局优化 安卓应用开发发展到今天,已经成为一个非常成熟的技术方向,从目前的情况看,安卓开发还是一个热火朝天的发展,但高级人才却相对较少,如今移动互联网的开发者也逐渐开始注重插入 ...
- android 加壳 方案,android加壳思路
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 对java及dex代码保护的技术发展:第一代 dex文件加密,打包.在运作时通过一个自定义的类加载器进行解密. 第二代 ...
最新文章
- LeetCode 973. K Closest Points to Origin--TopK 问题--最小堆--C++,Python解法
- 我在神策做研发 丨 与客户难题“对抗”的百余天
- mPaas 研发流程和线上运维介绍
- teechart绘制实时曲线_关于PIII曲线
- 多表查询, 聚集查询和分组查询
- preempt_count
- itext java代码生成PDF文档
- 回顾百度企业竞争情报系统
- 【区块链开发指南】序言
- Kettle对非结构化数据进行分类
- 杰理之79NRTC 时间【篇】
- 计算机中丢失msvcp140.dll无法启动此程序怎么办(修复教程)
- 苹果xsmax怎么开机_苹果xsmax触屏不灵敏,xsmax触屏失灵怎么回事
- EtherCAT从站 SII结构说明
- 语音降噪中“音乐噪声“的处理方法
- 凯西·牛顿(Casey Newton)即将离任
- 汉家江湖永动机统计测试
- kafka伪集群搭建
- BT4:库中基本类型——Factory和Blackboard
- Cadence学习记录(一)元器件原理图绘制