asysbang
标题:
签名相关分析
[打印本页]
作者:
admin
时间:
2013-5-24 16:11
标题:
签名相关分析
转载请注明:
www.asysbang.com
发布apk都需要签名
官方连接:
http://developer.android.com/tools/publishing/app-signing.html
keytool -genkey -v -keystore my-release-key.keystore -alias
bdmobile
-keyalg
RSA
-keysize 2048 -validity 10000
jarsigner -verbose -sigalg SHA1with
RSA
-digestalg SHA1 -keystore my-release-key.keystore my.apk
bdmobile
红色部分保存一致那么签名之后 会生成BDMOBILE.SF和BDMOBILE.RSA 可以把签名文件和公司关联起来,虽然没实际作用但是很多大公司都做了
蓝色部分可以换成DSA 这样就是DSA加密的
--------------------------------------------------
防止别人修改自己的apk
网上经常有人改apk的资源(改图片或者汉化),那么如何防止别人“动”自己的apk呢?
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo("xxx.xxx.xxx", PackageManager.GET_SIGNATURES);
Signature[] signatures = packageInfo.signatures;
String charsString = signatures[0].toCharsString();
//just startwith, maybe md5 digest
if (!charsString.startsWith("308202dd3082029ba00")) {
// not my apk
}
} catch (NameNotFoundException e) {
e.printStackTrace();
}
以上思路只在一款设备上测试过,如有问题,欢迎指出
PS:QQ.apk能够判断出被修改签名,然后会弹出“Appid is invalid!”
不知道他的实现逻辑,有时间分析一下,其中 reg_status.java中有个
public static String STATIC_KEY = "e75734d01ad9b57f";
欢迎光临 asysbang (http://asysbang.com/)
Powered by Discuz! X2.5