Proteção de integridade para o Google Play Games no PC para PC

O Google Play Games no PC para PC oferece suporte à proteção de integridade com a API Play Integrity e vários outros recursos do Google Play para garantir que o jogo não seja adulterado ou instalado de uma origem não confiável.

API Play Integrity

A API Play Integrity protege seus jogos contra interações possivelmente arriscadas e fraudulentas. Ela permite reduzir ataques e abusos, como fraudes, trapaças e acessos não autorizados. A API Play Integrity substitui a API SafetyNet Attestation (SNAA) e a API Play App Licencing. A SNAA não funciona com o Google Play Games no PC.

Campo de integridade do dispositivo

O campo deviceRecognitionVerdict contém um único valor, deviceRecognitionVerdict, que representa a forma como um dispositivo pode garantir a integridade do app. Por padrão, deviceRecognitionVerdict pode ter um destes valores:

  • MEETS_DEVICE_INTEGRITY: o app está em execução em um dispositivo Android com o Google Play Services. O dispositivo foi aprovado nas verificações de integridade do sistema e atende aos requisitos de compatibilidade do Android.
  • MEETS_VIRTUAL_INTEGRITY: o app está em execução em um ambiente virtual do Android com o Google Play Services, no momento limitado ao Google Play Games no PC. O ambiente atende aos principais requisitos de compatibilidade do Android e foi aprovado nas verificações de integridade do Google Play.
  • Valor em branco: o app está em execução em um dispositivo que tem sinais de ataque (como hook de API) ou comprometimento do sistema (como acesso root), ou então o app está em execução em um dispositivo não físico (como um emulador) que não foi aprovado nas verificações de integridade do Google Play.

A API Play Integrity usa o valor MEETS_VIRTUAL_INTEGRITY de deviceRecognitionVerdict para indicar que o jogo está sendo executado no Google Play Games no PC. Confira um exemplo de resposta de aprovação da API Play Integrity:

deviceIntegrity: {
    // "MEETS_VIRTUAL_INTEGRITY" indicates the game is running on Google Play Games on PC
    deviceRecognitionVerdict: ["MEETS_VIRTUAL_INTEGRITY"]
}

Se você tiver um jogo multiplataforma disponível em dispositivos móveis e no Google Play Games no PC para PC, confira se a lógica de validação verifica se há MEETS_VIRTUAL_INTEGRITY e MEETS_DEVICE_INTEGRITY.

Proteção automática da integridade

A Proteção automática da integridade é uma verificação de execução adicionada pelo Google Play toda vez que o jogo é aberto. Se o jogo for adulterado ou não for instalado pelo Google Play, a Proteção automática da integridade poderá impedir a execução dele. A Proteção automática da integridade não verifica o dispositivo. É necessário usar a API Play Integrity para conferir o status de integridade do dispositivo.

A Proteção automática da integridade ajuda a proteger a integridade com estes recursos:

  • Exigir instalação do Google Play: adiciona uma verificação para confirmar se o app foi instalado do Google Play. Se essa verificação falhar, será solicitado que o usuário faça o download do app no Google Play. Este recurso está ativado por padrão, mas pode ser desativado, o que desativa automaticamente a proteção contra pirataria para apps pagos.
  • Restringir modificações: adiciona uma verificação para confirmar se o app não sofreu modificações. Se essa verificação falhar, o app não vai ser executado. Este recurso está sempre ativo e não é possível desativá-lo.
  • Restringir engenharia reversa: adiciona ofuscação e outras técnicas avançadas para dificultar a remoção de verificações durante a execução. Este recurso está sempre ativo e não é possível desativá-lo.

A Proteção automática da integridade exige que o desenvolvedor ative esse recurso. Não são necessárias mudanças no código nem no trabalho do desenvolvedor.

As proteções funcionam com ou sem uma conexão de dados ou de Internet. Não são necessários componentes do lado do servidor. A verificação "Exigir instalação do Google Play" vai solicitar periodicamente uma conexão de dados se o app Play Store no dispositivo ficar off-line por um período prolongado.