Google System Services APK の透明性ログは、透明性ログ テクノロジーを活用しています。
透明性ログの有用性は、Pixel Binary Transparency や Certificate Transparency などのプロジェクトで実証されています。
透明性ログは Merkle ツリーで実装されています。このページでは、Merkle ツリーとバイナリ透明性に関する一般的な知識があることを前提としています。Merkle ツリーの概要については、検証可能なデータ構造をご覧ください。Android 内のバイナリ透明性に関する取り組みの概要については、メインページをご覧ください。
ログの実装
Google System Services APK の透明性ログは、タイルベースの Merkle ツリーとして実装されています。タイル コンテンツのルートは https://developers.google.com/android/binary_transparency/google1p/tile/
で提供されます。これは通常のウェブページではありません。サブディレクトリに含まれるログエントリは、ブラウザではなく、Golang SumDB の Tlog ライブラリを使用してプログラムで読み取る必要があります。わかりやすくするために、リンクをここに記載しています。
各エントリの内容については、ログの内容をご覧ください。
checkpointに含まれるログの Merkle ツリールートハッシュは、https://developers.google.com/android/binary_transparency/google1p/checkpoint.txt でチェックポイント形式で提供されます。この Merkle ツリーのリーフは、https://developers.google.com/android/binary_transparency/google1p/package_info.txt で提供されています。チェックポイントの署名は、次の証明書に記載されている公開鍵で検証できます。
-----BEGIN CERTIFICATE-----
MIICPzCCAeWgAwIBAgIUAV4UWNut89Vj0EIwMTUlOYclCMMwCgYIKoZIzj0EAwIw
dDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDU1v
dW50YWluIFZpZXcxFDASBgNVBAoMC0dvb2dsZSBJbmMuMRAwDgYDVQQLDAdBbmRy
b2lkMRAwDgYDVQQDDAdBbmRyb2lkMCAXDTI0MDkyNTIzNTYwOVoYDzIwNTQwOTE4
MjM1NjA5WjB0MQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTEWMBQG
A1UEBwwNTW91bnRhaW4gVmlldzEUMBIGA1UECgwLR29vZ2xlIEluYy4xEDAOBgNV
BAsMB0FuZHJvaWQxEDAOBgNVBAMMB0FuZHJvaWQwWTATBgcqhkjOPQIBBggqhkjO
PQMBBwNCAASofcYuVig/lsWwIfwMfLk22mMltFDDd8k1IBNKajw6VdQynSh7XapH
Ace10/uT1ceUmwJinyOPR1Bpj431+18vo1MwUTAdBgNVHQ4EFgQUwHSDZ/iAB8Go
Rt1oDkVktxyizhYwHwYDVR0jBBgwFoAUwHSDZ/iAB8GoRt1oDkVktxyizhYwDwYD
VR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAgNIADBFAiEAleFB+Arfv1KW0r6TbSEX
EfvBnJMPqRNAIVPd8LrVhw0CIAX56Txqs8H5XWdMoNF21w8Z0PmUNvLLtZtM+25O
wjq8
-----END CERTIFICATE-----
同じ公開鍵は、Android セキュリティの PGP 公開鍵ブロック(https://services.google.com/corporate/publickey.txt)でも確認できます。PGP の場合は CFAB31BE8DD7AC42FC721980ECA5C68599F17322
で識別されます。
確認ページでは、ログのさまざまなコンポーネントを使用して 申立人モデルで行われた申し立てを確認する方法について詳しく説明しています。