Por que usar a Assinatura de Apps do Google Play? Além de proteger suas chaves do comprometimento ou da perda permanente, o registro na Assinatura de Apps do Google Play dá acesso a melhorias para seus Android App Bundles (.aab). Ao permitir que o Google assine os APKs de distribuição otimizados gerados nos seus pacotes de apps, você tem acesso a serviços valiosos, como a proteção automática e a tradução automática de strings usando modelos do Gemini. Os jogos ganham acesso a outros serviços automáticos, como o Play Games Sidekick, a capacidade de jogar durante o download e os testes sem custo financeiro de títulos pagos.
Para configurar a Assinatura de Apps do Google Play, você precisa ter a propriedade da conta ou a permissão para Enviar para produção, excluir dispositivos e usar a Assinatura de Apps do Google Play, além de aceitar os Termos de Serviço.
Principais conceitos
Ao usar a Assinatura de Apps do Google Play, você trabalha com duas chaves distintas. Entender os formatos técnicos de cada uma e a diferença entre elas é fundamental para evitar problemas de autenticação com APIs de terceiros.
| Tipo de chave | Quem é responsável? | Detalhes técnicos e finalidade |
|
Chave de upload |
Você (guarde-a com segurança!) |
|
| Chave de assinatura do app |
Google Play |
|
| Protegida contra ataques quânticos | Google Play |
|
Observação: para reforçar a segurança, a chave de upload e a chave de assinatura do app precisam ser diferentes.
Como o Google assina seu app: quando o Google gera e assina seus APKs com a chave de assinatura do app, ele usa o apksigner para adicionar dois selos ao manifesto do app (com.android.stamp.source e com.android.stamp.type). Esses selos garantem que seus APKs sejam rastreáveis com segurança até o signatário original.
Configurar a Assinatura de Apps do Google Play
O processo de configuração é diferente se você estiver publicando um novo app ou se estiver migrando um já existente.
Para novos apps
- Criar um novo app: seu app será registrado automaticamente com chaves geradas pelo Google na assinatura híbrida e protegida contra ataques quânticos. Também geramos uma chave clássica separada para ser usada em blocos de assinatura reconhecidos em dispositivos Android 16 ou mais antigos.
- Criar uma chave de upload: gere um keystore para assinar o pacote de app da versão. Você pode gerá-la no Android Studio ou usar o utilitário Java Keytool na linha de comando.
- Fazer upload do pacote de app: acesse o Play Console e prepare uma nova versão. Por padrão, quando você faz upload do pacote de app, ele é automaticamente registrado com chaves geradas pelo Google na assinatura híbrida protegida contra ataques quânticos.
- Mudar a chave de assinatura do app (opcional): desenvolvedores avançados que precisam gerenciar a própria chave podem mudar esse padrão. Basta clicar em Mudar chave de assinatura na seção "Integridade do app" da versão ou acessar Protegido com o Google Play > Proteção da Google Play Store > Gerencie a Assinatura de Apps do Google Play. Depois, você pode:
- Usar a mesma chave de outro app desta conta de desenvolvedor
- Fornecer uma cópia da chave de assinatura do app (seguindo as instruções)
Para apps atuais
Se você gerencia suas próprias chaves e faz upload de APKs, pode fazer upgrade para a Assinatura de Apps e aproveitar os pacotes de apps e as melhorias do Google Play.
- Acesse Protegido com o Google Play > Proteção da Google Play Store > Acessar a Assinatura de Apps do Google Play no Play Console.
- Aceite os Termos de Serviço, se ainda não tiver feito isso.
- Transferir uma cópia da sua chave original: baixe a ferramenta PEPK e siga as instruções unificadas para criptografar e fazer upload da sua chave atual de assinatura do app, seja qual for o repositório em que ela está.
Registrar-se com provedores de API
Se o app usar APIs (como Google Maps, OAuth ou Login do Facebook), esses serviços vão autenticar o app usando a impressão digital da chave de assinatura do app.
Como o Google assina o APK final, você precisa registrar a impressão digital da chave de assinatura do app mantida pelo Google nos provedores de API, não apenas a chave de upload local.
- Acesse Protegido com o Google Play > Distribuição na Google Play Store > Acessar a Assinatura de Apps do Google Play.
- Role a tela até a seção Chave de assinatura do app.
- Copie as impressões digitais necessárias (SHA-1 ou SHA-256). Se o app usar assinatura híbrida protegida contra ataques quânticos, copie as impressões digitais de três chaves e registre cada uma delas com os provedores de API: as novas chaves clássica e de criptografia pós-quântica (PQC, na sigla em inglês) usadas em dispositivos mais recentes e a chave clássica usada em dispositivos mais antigos.
- Cole as impressões digitais no console do seu provedor de API (por exemplo, o console do Google Cloud).
Dica: atualize o arquivo assetlinks.json com essas impressões digitais se você usa Links do App Android.
Gerenciar suas chaves
Atualizar a chave de assinatura do app
Se a chave de assinatura do app for comprometida ou se você precisar de uma chave criptograficamente mais forte, você pode pedir um upgrade anual para todas as instalações no Android N (nível 24 da API) e versões mais recentes.
Como a aplicação do upgrade funciona em diferentes versões do Android:
- Android T (nível 33 da API) e versões mais recentes: a plataforma Android exige estritamente o uso da chave atualizada.
- Android N (nível 24 da API) a Android S (nível 32 da API): a plataforma Android não impõe o uso da chave atualizada e ainda reconhece a chave de assinatura legada. No entanto, o Google Play Protect oferece validação adicional ao verificar se as atualizações do app são assinadas com a chave atualizada, a menos que isso tenha sido desativado pelo usuário.
Consideração importante:
- Dados compartilhados: como a plataforma não impõe a chave atualizada no Android S (nível 32 da API) e versões anteriores, se você usar a mesma chave em vários apps para compartilhar dados, essas versões mais antigas do Android só vão reconhecer a chave legada para recursos como compartilhamento de permissões personalizadas.
Como fazer upgrade:
- Acesse Protegido com o Google Play > Distribuição na Google Play Store > Acessar a Assinatura de Apps do Google Play.
- Na seção "Chave de assinatura do app", clique em Fazer upgrade da chave.
- Escolha o caminho desejado para o upgrade:
- Permitir que o Google Play gere uma nova chave de assinatura do app (recomendado)
- Usar a mesma chave de assinatura de outro app desta conta de desenvolvedor
- Fornecer uma cópia da chave de assinatura do app (seguindo as instruções)
- Clique em Salvar e registre as novas impressões digitais da chave nos provedores de API.
Pedir uma redefinição da chave de upload
Se você perder a chave de upload ou suspeitar que ela foi comprometida, o acesso ao app não será perdido.
- Crie uma nova chave de upload no Android Studio.
- Exporte o certificado para o formato PEM:
keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
Para mais ajuda com os caminhos de keytool e keystore, consulte o guia de assinatura de apps do Android Studio. - Depois que o arquivo PEM for gerado, envie o pedido de redefinição no Play Console.
- Acesse Protegido com o Google Play > Proteção da Google Play Store > Gerencie a Assinatura de Apps do Google Play.
- Na seção Certificado da chave de upload, clique em Solicitar redefinição da chave de upload.
- Informe o motivo da redefinição.
- Faça upload do arquivo
upload_certificate.peme clique em Solicitar.
Práticas recomendadas e distribuição alternativa
- Segurança: proteja seu acesso ao Play Console aplicando a verificação em duas etapas a todos os usuários.
- Melhorias do Google Play: ao se inscrever na Assinatura de Apps do Google Play, você tem acesso a melhorias para seus pacotes de apps. Para receber as atualizações, primeiro mude o que for necessário ao criar uma nova versão e, em seguida, faça upload do novo pacote de app.
- Distribuição fora do Google Play: se você distribui em outras app stores e quer usar a mesma chave de assinatura em todos os lugares, há duas opções. [1] Você pode deixar o Google gerar sua chave de assinatura de apps e baixar um APK universal e assinado no Play Console ou na API Play Developer para distribuir em outro lugar. Para isso, no Play Console, acesse "Testar e lançar" > Lançamentos e pacotes mais recentes, selecione seu pacote de apps e clique na guia "Downloads". [2] Outra opção é gerar a chave de assinatura do app que você quer usar em todas as app stores e transferir uma cópia dela para o Google ao configurar a Assinatura de Apps do Google Play. Saiba mais sobre como funcionam as atualizações de apps e suas opções para ativar ou desativar atualizações em várias lojas.
- Teste: use o Compartilhamento interno de apps para testar exatamente o que o Google Play vai entregar aos usuários ou baixe APKs específicos do dispositivo no Pesquisador de Pacotes de Apps e instale-os localmente usando adb install-multiple *
.apk. - Esquema de assinatura de APK v4: a Assinatura de Apps do Google Play usa automaticamente a assinatura v4 em apps qualificados para oferecer suporte à distribuição otimizada em dispositivos Android 11 e versões mais recentes. Você não precisa fazer nada. Isso exclui todos os apps que usam a assinatura híbrida protegida contra ataques quânticos, que ainda não é compatível com a assinatura v4. Leia mais sobre os benefícios técnicos na documentação do esquema de assinatura de APK v4.
- Projetos do Google Cloud em hospedagem própria: se você tem requisitos de segurança muito específicos (por exemplo, usar chaves OEM), pode usar a API Play Developer para se inscrever na Assinatura de Apps do Google Play com um projeto do Google Cloud na sua hospedagem própria. Observação: essa é uma configuração não padrão que não é recomendada. Usar um projeto em hospedagem própria significa que você assume total responsabilidade pelas operações de assinatura de apps e impede que o Google Play execute recursos essenciais, como a recuperação de desastres.