セキュリティ上の考慮事項

Push Provisioning API には、多くのセキュリティ機能が組み込まれています。これらの機能が、アプリ内のほかのセキュリティ機能をどのように補完するのかを考慮することが重要です。

ルート権限を取得したスマートフォンのセキュリティ

Google Pay は API 経由での呼び出し時に認証チェックを行います。デバイスが root 権限を取得している場合、このチェックは失敗します。Google Pay セキュリティ モデルについて詳しくは、カード発行会社のオンボーディング ドキュメントのセキュリティに関するページをご覧ください。

Google Pay が認証チェックを行いますが、OPC などの機密情報をアプリに渡す前に、独自の SafetyNet 認証チェックを行うこともできます。このチェックを行うことで、Android アプリ サンドボックスが適切に動作し、ご自分のアプリが悪意のあるアプリから保護されていることを確認できます。

Google Play 開発者サービスの整合性の確認

API クライアントの設定ページに記載されているように、GoogleApiClient がデバイス上の Google Play 開発者サービスのパッケージ名とフィンガープリントを確認します。セキュリティ チェックが失敗した場合、GoogleApiClient が接続エラーを報告します。

OPC のセキュリティ

OPC は Google に対して不透明になるように設計されているため、Google はその機密情報を読み取ることができません。これは、Push Provisioning API に渡されるペイロードがデバイス上で暗号化されたままになり、悪意のあるアプリから十分に保護されることも意味します。カード発行会社は、TSP のみと交換される鍵を使って OPC データを暗号化します。その結果、OPC の暗号化されたコンテンツを把握できるのはカード発行会社と TSP のみになります。