获取android APP 签名的MD5和SHA1
来源:互联网 发布:网络暴力事例2017 编辑:程序博客网 时间:2024/05/22 03:19
private void getSign(Context ctx){
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo("***.***.**", PackageManager.GET_SIGNATURES);
Signature[] signs = packageInfo.signatures;
Signature sign = signs[0];
MessageDigest md1 = MessageDigest.getInstance("MD5");
md1.update(sign.toByteArray());
byte[] digest = md1.digest();
String res = toHexString(digest);
Log.e(TAG, "apk md5 = "+res);
MessageDigest md2 = MessageDigest.getInstance("SHA1");
md2.update(sign.toByteArray());
byte[] digest2 = md2.digest();
String res2 = toHexString(digest2);
Log.e(TAG, "apk SHA1 = "+res2);
} catch (Exception e) {
e.printStackTrace();
}
}
private String toHexString(byte[] block) {
StringBuffer buf = new StringBuffer();
int len = block.length;
for (int i = 0; i < len; i++) {
byte2hex(block[i], buf);
if (i < len-1) {
buf.append(":");
}
}
return buf.toString();
}
private void byte2hex(byte b, StringBuffer buf) {
char[] hexChars = { '0', '1', '2', '3', '4', '5', '6', '7', '8',
'9', 'A', 'B', 'C', 'D', 'E', 'F' };
int high = ((b & 0xf0) >> 4);
int low = (b & 0x0f);
buf.append(hexChars[high]);
buf.append(hexChars[low]);
}
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo("***.***.**", PackageManager.GET_SIGNATURES);
Signature[] signs = packageInfo.signatures;
Signature sign = signs[0];
MessageDigest md1 = MessageDigest.getInstance("MD5");
md1.update(sign.toByteArray());
byte[] digest = md1.digest();
String res = toHexString(digest);
Log.e(TAG, "apk md5 = "+res);
MessageDigest md2 = MessageDigest.getInstance("SHA1");
md2.update(sign.toByteArray());
byte[] digest2 = md2.digest();
String res2 = toHexString(digest2);
Log.e(TAG, "apk SHA1 = "+res2);
} catch (Exception e) {
e.printStackTrace();
}
}
private String toHexString(byte[] block) {
StringBuffer buf = new StringBuffer();
int len = block.length;
for (int i = 0; i < len; i++) {
byte2hex(block[i], buf);
if (i < len-1) {
buf.append(":");
}
}
return buf.toString();
}
private void byte2hex(byte b, StringBuffer buf) {
char[] hexChars = { '0', '1', '2', '3', '4', '5', '6', '7', '8',
'9', 'A', 'B', 'C', 'D', 'E', 'F' };
int high = ((b & 0xf0) >> 4);
int low = (b & 0x0f);
buf.append(hexChars[high]);
buf.append(hexChars[low]);
}
0 0
- 获取android APP 签名的MD5和SHA1
- Android 中获取签名md5 和sha1
- Android Studio 中获取SHA1和MD5(应用签名)
- Android Studio获取MD5和SHA1值(应用签名)
- 获取android应用签名证书的SHA1,MD5,SHA256值
- Android Studio中获取签名SHA1或MD5的方法
- mac获取签名的SHA1和MD5值
- 获取APK的信息 显示出MD5和SHA1签名。
- 获取签名证书的SHA1值和MD5值
- android sudio 如何获取自带和打包签名时的sha1与md5值
- 关于android app签名文件获取sha1和MD值
- Android Studio查看签名文件sha1和MD5的方法
- Android 获取 MD5 和 SHA1
- 通过控制台获取Android app签名的sha1值
- MD5、SHA1和android apk签名杂谈
- MD5、SHA1和android apk签名杂谈
- Android Studio为APP签名,提取签名的SHA1/MD5编码
- Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值
- GRE写作必备句型
- 2012年5月SAT香港真题解析
- ECSHOP 广告添加搜索功能
- 【玩转cocos2d-x之三十二】xml的解析
- 单例模式的简单创建
- 获取android APP 签名的MD5和SHA1
- 【玩转cocos2d-x之三十三】游戏嵌入Webview网页
- structs 2.x 框架的初步学习
- volley 发送两次或者多次请求问题,解决方案
- Json的读写数据详解步骤
- 【玩转cocos2d-x之三十四】绘图:CCDrawingPrimitives和CCDrawNode
- Zxing 在Fragment中实现二维码扫描(不推荐使用)
- SOA架构 今天你实现了吗?
- 读书笔记:自定义函数实现字符串处理函数----strlen、strcmp、strcat、strcpy