本記事の内容
keytoolとは?
keytoolが必要になった背景
Windowsでの設定方法
keytoolとは
keytoolとは、鍵と証明書を管理するユーティリティです。
Oracle社が提供していて、Javaでできています。
keytoolが必要になった背景
起こったこと
Google Play Consoleにてアプリケーションを更新しようとしたら「Android App Bundle が誤った鍵で署名されています。」エラーが発生した。
原因
当初アプリをリリースした時とドメインが変わり、その影響で証明書の更新が必要になった。。
その状態でアプリケーションを更新しようとすると、Google Play Console側で持っている証明書と乖離し、エラーとなった。
対処方法を確認
Google Play デベロッパーサポートに連絡し、アップロード鍵を再登録してもらう必要がある。
事情を送るとメールにてやり方が送られてくる。
- 次のコマンドで、2048ビットのRSAキーを作成する。
keytool -genkeypair -alias upload -keyalg RSA -keysize 2048 -validity 9125 -keystore keystore.jks - 作成したキーの証明書をREMファイルとして出力する。
keytool -export -rfc -alias PEMtest -file upload_certificate.pem -keystore /Users/tester/Desktop/Key/PEMtest - 出力したREMファイルをGoogle Play デベロッパーサポートに送付する。
- 受領完了といつから反映されるかの連絡を受領する。
- 新しい証明書を利用してアプリを署名する。
Windowsでの設定方法
- Javaをダウンロードする
https://www.java.com/ja/download/ie_manual.jsp - Pathを設定する
- コマンドプロンプトからkeytoolを起動する
まとめ
- keytoolを使うにはJavaのインストールが必要。
- 使いやすくするためにpathを通そう。
おまけ
おすすめ書籍「暗号技術入門 結城浩(著)」