Android安全通讯

怀抱观古今,寝食展戏谑。这篇文章主要讲述Android安全通讯相关的知识,希望能为你提供帮助。
最近在弄关于移动端安卓通讯的问题,总结下来,主要分为三方面防护,今天先记录第一点:防止恶意代码的注入。
“android APP二次打包”则是盗版正规Android APP,破解后植入恶意代码重新打包。不管从性能、用户体验、外观它都跟正规APP一模一样但是背后它确悄悄运行着可怕的程序,它会在不知不觉中浪费手机电量、流量,恶意扣费、偷窥隐私等等行为。
要实现代码内部防止APP被二次打包首先得了解APK的机器识别原理,APK的唯一识别是依靠包名和签名来做鉴定的,类似豌豆夹的洗白白、360手机卫士等安全软件对APK的山寨识别,他们就是依赖包名来确定APK然后通过签名来确定其是否山寨。所以说自己的程序内部在启动的时候可以通过获取APK本身的签名然后和正确的签名做对比来识别自己是否被二次打包。
【Android安全通讯】

通过PackageManag对象可以获取APK自身的签名

Android安全通讯

文章图片

通过对签名的码的分解得到一串20左右的字符串,此字符串则是APK的签名的MD5值,通过获取的签名MD5值与正确的MD5值进行对比,就可以识别其APK是否被盗版。
Android安全通讯

文章图片



经过比对,如果MD5值不一样,则可判断为二次打包,可以进行退出程序等处理。


本文出自 “移动平台开发” 博客,请务必保留此出处http://liuxudong1001.blog.51cto.com/10877072/1863910

    推荐阅读