如何以编程方式读取SHA和MD5指纹的Andr​​oid [英] How to read SHA and MD5 fingerprint programmatically in Android

查看:156
本文介绍了如何以编程方式读取SHA和MD5指纹的Andr​​oid的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好我想读的密钥库编程的我的应用程序从它被签署的SHA和MD5指纹值。

我要使用SHA或MD5值作为安全密钥。这个键我会在code使用加密的东西,服务器端解密一样的。

有没有办法找到这个还是有没有办法做同样使用不同的好方法。这应该是其他可以找到这个密钥的方式没有人。

先谢谢了。


解决方案

  PackageInfo信息;
尝试{    信息= getPackageManager()。getPackageInfo(
        com.your.package.name,PackageManager.GET_SIGNATURES);    对(签字签名:info.signatures){
        消息摘要MD;
        MD = MessageDigest.getInstance(SHA);
        md.update(signature.toByteArray());
        字符串hash_key =新的String(Base64.en code(md.digest(),0));
    }}赶上(E1的NameNotFoundException){
}赶上(抛出:NoSuchAlgorithmException E){
}赶上(例外五){
}

Hello I want to read SHA and MD5 fingerprint value of keystore programmatically of my app from which it was signed.

I'll take either SHA or MD5 value as key for security. This key I will use in the code to encrypt something and decrypt same at server end.

Is there any way to find this or is there any way to do same using different good approach. This should be in such a way nobody other can find this key.

Thanks in advance.

解决方案

PackageInfo info;
try {

    info = getPackageManager().getPackageInfo(
        "com.your.package.name", PackageManager.GET_SIGNATURES);

    for (Signature signature : info.signatures) {
        MessageDigest md;
        md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        String hash_key = new String(Base64.encode(md.digest(), 0));
    }

} catch (NameNotFoundException e1) {
} catch (NoSuchAlgorithmException e) {
} catch (Exception e) {
}

这篇关于如何以编程方式读取SHA和MD5指纹的Andr​​oid的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆