LoginSignup
36
37

More than 5 years have passed since last update.

[Android]apkから証明書のfingerprintを表示する

Posted at

Androidの署名済みapkからfingerprintを表示したくて調べたことをメモしておきます。

jarsigner -verifyで取り出した証明書のCAで判別できればいいのですが、そうではない場合や、GCMやfacebookのAPIなどに登録したい場合に証明書のfingerprintを表示したいと思うので調べました。

↓こんなのが表示したいです。

     MD5:  B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB
     SHA1: 16:59:E7:E3:0C:AA:7A:0D:F2:0D:05:20:12:A8:85:0B:32:C5:4F:68
     Signature algorithm name: SHA1withRSA

keystoreから取り出す場合

keytool -list -keystore my-signing-key.keystore

署名前などわかっている場合はkeytoolで普通に確認できます。
通常はこれで十分なはずです。

apkから取り出す場合

Java7以上なら

keytool -list -printcert -jarfile app.apk

Java6以下なら

-jarfileというオプションがJava7環境からしか使えないようなので、それ以前の場合はapkファイルをunzipして.RSAファイルを取り出して以下を行います。

.RSAファイルはビルド環境などによるかと思いますが、META-INF/CERT.RSAなどにあるかと思います。

keytool -printcert -file ANDROID_.RSA

参考(元ネタ)

How to find out which key was used to sign an app?

36
37
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
37