Play アプリ署名を使用する

Play アプリ署名を使用すると、Google がデベロッパーに代わってアプリの署名鍵を管理および保護し、その署名鍵を使用して、App Bundle から生成され最適化された配布用 APK に署名します。Play アプリ署名は、Google の安全なインフラストラクチャにアプリ署名鍵を保存し、セキュリティを強化するためのアップグレード オプションを提供します。

Play アプリ署名を使用するには、アカウント所有者であるか、製品版としてのリリース、デバイスの除外、Play アプリ署名の使用の権限を持つユーザーである必要があり、さらに Play アプリ署名利用規約に同意する必要があります。

仕組み

Play アプリ署名を使用すると、Google が自社の鍵の保管に使用しているものと同じ安全なインフラストラクチャに鍵が保管され、Google の鍵管理サービスによって保護されます。Google のインフラストラクチャについて詳しくは、Google Cloud のセキュリティに関するホワイトペーパーをご覧ください。

Android アプリは秘密鍵で署名されます。アプリのアップデートが信頼できるものであることを保証するために、秘密鍵はそれぞれ公開鍵証明書に関連付けられています。デバイスやサービスはその公開鍵証明書を使って、アプリのアップデートが同じ提供元によるものであることを確認できます。デバイスでのアプリのアップデートは、すでにインストールされているアプリと署名が一致する場合にのみ許可されます。アプリ署名鍵の管理を Google に委託することによって、このプロセスのセキュリティを強化できます。

注: 2021 年 8 月より前に作成されたアプリの場合は、Play アプリ署名を使用し、Android App Bundle を使って公開する代わりに、引き続き、APK をアップロードして、独自の鍵を管理することができます。ただし、キーストアを紛失したり、不正使用されたりした場合は、アプリを更新できなくなり、新しいパッケージ名で新しいアプリとして公開することが必要になります。このようなアプリについては、Play アプリ署名を使用し、App Bundle に切り替えることをおすすめします。

Play アプリ署名を設定、管理する

アプリでまだ Play アプリ署名を使用していない場合は、下記の手順を行います。

ステップ 1: アップロード鍵を作成する

  1. こちらの手順に沿って、アップロード鍵を作成します。
  2. アップロード鍵を使用して App Bundle に署名します。

ステップ 2: リリースを準備する

  1. 手順に沿って、リリースを準備して公開します。
  2. リリース トラックを選択すると、[アプリの完全性] セクションに、アプリの Play アプリ署名のステータスが表示されます。
  3. Google が生成したアプリ署名鍵を使用する場合は、App Bundle をアップロードします。[アプリ署名鍵を変更] を選択して、次の方法を利用することもできます。
    • Google が生成したアプリ署名鍵を使用する: 新しいアプリの 90% 以上で Google が生成したアプリ署名鍵が使用されています。Google が生成した鍵を使用すると、紛失や不正使用から保護することができます(この鍵はダウンロードできません)。この方法を選択した場合、他の配布チャネル用に Google が生成した鍵を使って署名された配布用 APK を App Bundle エクスプローラからダウンロードしたり、別の鍵を使用したりできます。
    • 別のアプリ署名鍵を使用する: アプリ署名鍵を選択することで、デベロッパー アカウントの別のアプリと同じ鍵を使用したり、アプリ署名鍵のローカルコピーを保存したりするなど柔軟な使い方ができます。たとえば、一部のデバイスにアプリがプリインストールされているために、すでに鍵が決定されている場合があります。鍵のコピーを Google のサーバーの外部に保存すると、ローカルコピーが不正使用された場合のリスクが高くなります。別の鍵を使用する場合は、次の方法があります。
      • このデベロッパー アカウントの別のアプリと同じアプリ署名鍵を使用する
      • Java Keystore から鍵をエクスポートしてアップロードする
      • 鍵をエクスポートしてアップロードする(Java Keystore は使用しない)
      • Play アプリ署名をオプトアウトする(このオプションは、アプリ署名鍵をアップグレードして Play アプリ署名に登録する予定である場合にのみ選択してください)。
  4. リリースを準備して公開するための残りの手順を行います。

: 手順を続けるには、利用規約に同意して、アプリ署名を有効にする必要があります。

ステップ 3: API プロバイダにアプリ署名鍵を登録する

アプリで API を使用している場合は通常、認証のために、証明書のフィンガープリントを使用してアプリ署名鍵を登録する必要があります。証明書の場所は次のように探します。

  1. Google Play Console を開き、[Play App Signing] ページ([リリース] > [設定] > [アプリの完全性])に移動します。
  2. [アプリ署名鍵の証明書] までスクロールし、アプリ署名証明書のフィンガープリント(MD5、SHA-1、SHA-256)をコピーします。
    • API プロバイダで別のタイプのフィンガープリントが必要な場合、元の証明書を .der 形式でダウンロードし、API プロバイダが要求する変換ツールを使って変更することもできます。

アップロード鍵を作成し、キーストアを更新する

セキュリティを強化するために、アプリ署名鍵ではなく新しいアップロード鍵を使用してアプリに署名することをおすすめします。

アップロード鍵は、Play アプリ署名を有効にするときに作成するか、後で [Play App Signing] ページ([リリース] > [設定] > [アプリの完全性])にアクセスして作成することができます。

アップロード鍵を作成する際は下記をご覧ください。

  1. デベロッパー向け Android サイトの手順に沿ってアップロード鍵を作成します。鍵は安全な場所に保管してください。
  2. アップロード鍵の証明書を PEM 形式でエクスポートします。以下の下線付きの引数を置き換えてください。
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. リリース プロセス中、指示に沿って、証明書をアップロードして Google に登録します。

アップロード鍵を使用すると:

  • アップロード鍵はアプリ作成者の認証の目的でのみ Google に登録されます。
  • この署名はアップロードした APK がユーザーに送信される前に削除されます。

アプリ署名鍵をアップグレードする

このセクションでは、アプリ署名鍵のアップグレードに関する手順を説明します。アップロード鍵を紛失しても、鍵のアップグレードをリクエストする必要はありません。このページの最後にあるアップロード鍵の紛失または不正使用をご覧ください。

状況によっては、アプリ署名鍵のアップグレードをリクエストできます。

アプリ署名鍵のアップグレードをリクエストする理由は次のとおりです。

  • 暗号化を用いたより安全性の高い鍵を使用する必要がある。
  • アプリ署名鍵が不正使用された。

Google Play Console で鍵のアップグレードをリクエストする前に、下記の鍵のアップグレードをリクエストする前の重要な考慮事項をお読みください。鍵のアップグレードをリクエストする方法について詳しくは、下記のその他のセクションを開いてご確認ください。

ベスト プラクティス

  • Google Play 以外でもアプリを配信している、または配信する予定があり、同じ署名鍵を使用したい場合には、次の 2 つのオプションがあります。
    • Google で鍵を生成して(推奨)、署名済みのユニバーサル APK を App Bundle エクスプローラからダウンロードして、Google Play の外部に配布します。
    • または、すべてのアプリストアで使用するアプリ署名鍵を生成し、Play アプリ署名を設定する際に、その鍵のコピーを Google に転送することもできます。
  • アカウントを保護するため、Google Play Console にアクセスできるすべてのアカウントで 2 段階認証プロセスを有効にしてください
  • App Bundle をリリース トラックに公開した後は、App Bundle エクスプローラにアクセスすると、Google が App Bundle から生成したインストール可能な APK にアクセスできます。次のことが可能です。
    • 内部アプリ共有リンクをコピーして共有できます。このリンクを使用すると、Google Play によってさまざまなデバイスで App Bundle からインストールされる内容を 1 回タップするだけでテストできます。
    • 署名済みのユニバーサル APK をダウンロードできます。この単一の APK は Google が保持するアプリ署名鍵で署名されており、アプリがサポートするすべてのデバイスにインストール可能です。
    • 特定のデバイス用のすべての APK を含む ZIP アーカイブをダウンロードできます。この APK は Google が保持するアプリ署名鍵で署名されており、ZIP アーカイブ内の APK は、adb install-multiple *.apk コマンドを使用してデバイスにインストールできます。
  • セキュリティを強化するには、アプリ署名鍵とは異なる新しいアップロード鍵を生成してください。
  • Google API を使用している場合は、Google Cloud Console でアプリのアップロード鍵とアプリ署名鍵の証明書を登録することをおすすめします。
  • Android アプリリンクを使用している場合は、ウェブサイトの対応するデジタル アセット リンクの JSON ファイル内の鍵を更新してください。

アップロード鍵の紛失または不正使用

非公開のアップロード鍵を紛失した場合、または不正使用された場合は、新しい鍵を作成できます。デベロッパー アカウントの所有者は、Google Play Console でキーのリセットを開始できます。

サポートチームによる新しいアップロード鍵の登録が完了すると、アカウント所有者とグローバル管理者に詳細情報が記載された受信トレイ メッセージとメールが届きます。その後、キーストアを更新して API プロバイダに新しい鍵を登録できます。

アカウント所有者は、Google Play Console でリセット リクエストをキャンセルすることもできます。

重要: アップロード鍵をリセットしても、ユーザーに配信する前に Google Play が APK の再署名に使用するアプリ署名鍵には影響はありません。

APK 署名スキーム v4

Android 11 以降のデバイスは、新しい APK 署名スキーム v4 に対応しています。新しいデバイス向けに今後リリースされるパフォーマンス機能にアクセスできるよう、Play アプリ署名は一部のアプリに v4 署名の導入を開始します。デベロッパー様の方でなんらかの措置を講じていただく必要はありません。ユーザーへの影響もありません。

 

この情報は役に立ちましたか?
改善できる点がありましたらお聞かせください。

さらにサポートが必要な場合

問題を迅速に解決できるよう、ログインして追加のサポート オプションをご利用ください。

検索
検索をクリア
検索を終了
メインメニュー
Google アプリ
true
ヘルプセンターを検索
true
true
true
true
true
92637
false
false