Google 시스템 서비스 APK 투명성 로그는 투명성 로그 기술을 활용합니다.
투명성 로그의 유용성은 픽셀 바이너리 투명성 및 인증서 투명성과 같은 프로젝트에서 입증되었습니다.
투명성 로그는 Merkle 트리로 구현됩니다. 이 페이지에서는 Merkle 트리 및 바이너리 투명성에 관한 일반적인 지식을 알고 있다고 가정합니다. 머클 트리의 개요는 검증 가능한 데이터 구조를 참고하고 Android 내 바이너리 투명성 작업의 개요는 기본 페이지를 참고하세요.
로그 구현
Google 시스템 서비스 APK 투명성 로그는 타일 기반 Merkle 트리로 구현됩니다. 타일 콘텐츠의 루트는 https://developers.google.com/android/binary_transparency/google1p/tile/
에서 제공됩니다. 이는 일반 웹페이지가 아닙니다. 하위 디렉터리에 포함된 로그 항목은 브라우저가 아닌 Golang SumDB Tlog 라이브러리를 사용하여 프로그래매틱 방식으로 읽어야 합니다. 명확성을 위해 링크를 여기에 명시합니다.
각 항목에 포함된 내용에 관한 설명은 로그 콘텐츠를 참고하세요.
checkpoint에 포함된 로그의 머클 트리 루트 해시는 체크포인트 형식으로 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
로 식별됩니다.
확인 페이지에서는 로그의 다양한 구성요소가 신고자 모델에서 제기된 소유권 주장을 확인하는 데 어떻게 사용되는지 자세히 설명합니다.