当前位置: 首页 > news >正文

厦门 外贸网站非常成功的网站

厦门 外贸网站,非常成功的网站,网站做得好的公司,制作游戏的网站一、StringFog 作用 一款自动对dex/aar/jar文件中的字符串进行加密Android插件工具,正如名字所言,给字符串加上一层雾霭,使人难以窥视其真面目。可以用于增加反编译难度,防止字符串代码重复。 支持java/kotlin。支持app打包生成…

一、StringFog 作用

一款自动对dex/aar/jar文件中的字符串进行加密Android插件工具,正如名字所言,给字符串加上一层雾霭,使人难以窥视其真面目。可以用于增加反编译难度,防止字符串代码重复。

  • 支持java/kotlin。
  • 支持app打包生成的apk加密。
  • 支持aar和jar等库文件加密。
  • 支持加解密算法的自主扩展。
  • 支持配置可选代码加密。
  • 完全Gradle自动化集成。
  • 不支持InstantRun

github地址:GitHub - MegatronKing/StringFog: 一款自动对字节码中的字符串进行加密Android插件工具

二、效果

加密前:ToastUtils.showShort("Copied to clipboard")

加密后: ToastUtils.iIi1(IL.IL1Iii("njfbY/eJG2iyeMhm+51Zc7wqzw==\n", "3VirCpLtOxw=\n"), new Object[0]);

由于我还加了字典混淆,所以方法名这些也变了。但是字典混淆并不会替换字符串,所以又加了字符串加密,可以看到,反编译(jadx)后的代码,区别大的不行!

tips:

StringFog和混淆完全不冲突,也不需要配置反混淆,实际上StringFog配上混淆效果会更好!

三、实现过程

其实就是普通三方依赖接入的过程,个人在此做个总结,方便以后接入。

tips:官方已经有5.0.1版本了,但是有同事反馈有概率会有问题,所以还是用的4.0.1版本

1.项目/根目录的build.gradle 添加依赖

buildscript {repositories {mavenCentral()}dependencies {...classpath 'com.github.megatronking.stringfog:gradle-plugin:4.0.1'// 选用加解密算法库,默认实现了xor算法,也可以使用自己的加解密库。classpath 'com.github.megatronking.stringfog:xor:4.0.1'}
}

2.在app或者你要使用的lib的build.gradle文件下配置

apply plugin: 'stringfog'// 导入RandomKeyGenerator类,如果使用HardCodeKeyGenerator,更换下类名
import com.github.megatronking.stringfog.plugin.kg.RandomKeyGenerator
import com.github.megatronking.stringfog.plugin.StringFogModestringfog {// 必要:加解密库的实现类路径,需和上面配置的加解密算法库一致。implementation 'com.github.megatronking.stringfog.xor.StringFogImpl'// 可选:StringFog会自动尝试获取packageName,如果遇到获取失败的情况,可以显式地指定。packageName 'com.github.megatronking.stringfog.app'// 可选:加密开关,默认开启。enable true// 可选:指定需加密的代码包路径,可配置多个,未指定将默认全部加密。fogPackages = ['com.xxx.xxx']// 可选(3.0版本新增):指定密钥生成器,默认使用长度8的随机密钥(每个字符串均有不同随机密钥),// 也可以指定一个固定的密钥:HardCodeKeyGenerator("This is a key")kg new RandomKeyGenerator()// 可选(4.0版本新增):用于控制字符串加密后在字节码中的存在形式, 默认为base64,// 也可以使用text或者bytesmode StringFogMode.base64
}

我的配置是:

粘贴个图片,因为部分同事在接入的时候,不清楚这个东西该放哪儿。

3、在app或lib的build.gradle中引入加解密库依赖。

dependencies {...// 这里要和上面选用的加解密算法库一致,用于运行时解密。implementation 'com.github.megatronking.stringfog:xor:4.0.1'
}

4.注意事项

从AGP 8.0开始,默认不生成BuildConfig,但是StringFog依赖此配置,请注意加上下面的配置。

android {// 注意请加上此配置buildFeatures {buildConfig = true}...
}

同步项目的时候,记得去依赖库列表看库拉下来没得。不然你的第二步的stringfog配置会爆红,然后第二步的配置,部分是可选的配置,可以自己酌情删掉,此外,同步,rebuild的时候,多注意报错信息,根据报错去改,遇到麻烦可能会整挺久。 

 四、是否生效

依赖库接入成功后,并不是立马就在代码里看到加密后的字符串,那样子本地也读不懂代码了,更别提更改了。如何查看是否生效,则需要打包后,反编译查看代码。如果生效,那可以看到你的字符串已经完全读不懂了,没生效则还是原来的字符串,跟明显。

如果没生效,检查配置是否有问题,清理本地的缓存,重启android studio,更改debug/release等环境试一试。

五、反编译

使用的是Jadx:

GitHub - skylot/jadx: Dex to Java decompiler

http://www.yayakq.cn/news/252162/

相关文章:

  • 网站文站加入别人网站的链接是否对自己网站不好wordpress积分
  • 网站首页下拉广告凯里做网站的公司
  • 做网站哪家好公司灵山招聘网灵山英才网做灵山专业的招聘网站
  • 杭州制作网站的公司简介网站可以做参考文献吗
  • 网站开发后期维护更新织梦网站wap
  • 自己名下备案的网站四川建设厅网站招聘
  • 开源镜像网站怎么做去除关于wordpress
  • 做图的模板下载网站有哪些内容如何做网站的映射
  • 简洁风格的网站模板免费下载vs做的网站源代码
  • 网站建设平台赚钱跨平台app开发工具
  • 织梦 网站搬家建设公司logo
  • dedecms调取友情链接 网站类型建设农业网站
  • 深圳建设网站排名做行政关注什么类型的网站
  • 如何把网站推广出题库制作助手app
  • 重庆网站模板建站网站个性化制作
  • 太原提高网站排名php网站开发试卷
  • 台州企业建站系统郝友做的网站
  • 上海柘中建设股份有限公司网站做网站能创业吗
  • 莱芜高端网站设计建设宁波网站优化体验
  • 怎样让百度搜索到自己的网站信息推广服务
  • 个人做二次元网站怎么赚钱建行互联网站
  • 江苏网站建设哪家好文字生成器在线制作
  • 沙河做网站培训课程网站
  • 网站空间文件删不掉彩虹网站建设
  • 字体分辨网站项目管理软件系统
  • 门户网站的基本特征有个人是否可以申请网址
  • 网站开发的软件支持温州百度关键词搜索
  • 如何知道网站什么时候做的网站建设众包平台
  • 网站定位与功能分析网站快速排名服务商
  • 站长平台社区网站5g空间多少钱