Registro de transparência do APK dos serviços do sistema do Google

O Registro de transparência do APK dos serviços do sistema do Google usa a tecnologia de registro de transparência.

Os utilitários de registros de transparência foram comprovados por projetos como Transparência binária de pixel e Transparência de certificados.

Os registros de transparência são implementados com árvores Merkle. Esta página pressupõe conhecimento geral de árvores Merkle e transparência binária. Consulte Estruturas de dados verificáveis para ter uma visão geral das árvores Merkle e a página principal para ter uma visão geral do esforço de transparência binária no Android.

Implementação de registro

O Registro de transparência do APK dos serviços do sistema do Google é implementado como uma árvore Merkle com blocos. A raiz do conteúdo do bloco é exibida em https://developers.google.com/android/binary_transparency/google1p/tile/. Ela não é uma página da Web comum: as entradas de registro contidas nos subdiretórios precisam ser lidas de forma programática com a biblioteca Tlog da SumDB do Golang, e não por um navegador. Declaramos o link aqui para maior clareza.

Consulte Conteúdo do registro para uma descrição do que cada entrada contém.

O hash raiz da árvore Merkle de um registro, contido em um checkpoint, é fornecido em https://developers.google.com/android/binary_transparency/google1p/checkpoint.txt no formato de ponto de verificação. As folhas dessa árvore Merkle são exibidas em https://developers.google.com/android/binary_transparency/google1p/package_info.txt. A assinatura do ponto de verificação pode ser verificada com a chave pública descrita no certificado abaixo.

-----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-----

A mesma chave pública também pode ser encontrada no bloco de chaves públicas PGP do Android Security em https://services.google.com/corporate/publickey.txt, identificada por CFAB31BE8DD7AC42FC721980ECA5C68599F17322 se você preferir o PGP.

A página de verificação descreve em mais detalhes como os vários componentes do registro são usados para verificar as reivindicações feitas no modelo de reclamante.