本文实例讲述了Android实现获取签名及公钥的方法。分享给大家供大家参考。具体如下:
1. java代码如下:
private byte[] getSign(Context context) { PackageManager pm = context.getPackageManager(); List<PackageInfo> apps = pm .getInstalledPackages(PackageManager.GET_SIGNATURES); Iterator<PackageInfo> iter = apps.iterator(); while (iter.hasNext()) { PackageInfo info = iter.next(); String packageName = info.packageName; //按包名 取签名 if (packageName.equals("com.test.test")) { return info.signatures[0].toByteArray(); } } return null; }
2. java代码如下:
public static String getPublicKey(byte[] signature) { try { CertificateFactory certFactory = CertificateFactory .getInstance("X.509"); X509Certificate cert = (X509Certificate) certFactory .generateCertificate(new ByteArrayInputStream(signature)); String publickey = cert.getPublicKey().toString(); publickey = publickey.substring(publickey.indexOf("modulus: ") + 9, publickey.indexOf("\n", publickey.indexOf("modulus:"))); Log.d("TRACK", publickey); return publickey; } catch (CertificateException e) { e.printStackTrace(); } return null; }
希望本文所述对大家的Android程序设计有所帮助。
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, 签名
, 获取
公钥
android 签名 公钥、android 获取公钥、android 获取cer公钥、android实现手写签名、android 实现电子签名,以便于您获取更多的相关知识。
时间: 2024-11-01 21:40:31