Entenda como o reCAPTCHA usa tokens de acesso privado

Este documento explica o que são tokens de acesso privado (PATs, na sigla em inglês) e como o reCAPTCHA os usa.

O que são tokens de acesso privado?

O reCAPTCHA usa um recurso no iOS e no macOS chamado PAT para reduzir o número de CAPTCHAs mostrados aos usuários humanos.

Um PAT é um token opaco gerado por alguns dispositivos iOS e macOS. O token serve como um atestado de preservação da privacidade da autenticidade e integridade de um dispositivo. Os PATs são uma implementação do protocolo Privacy Pass, que é um tipo de esquema de WWW-Authentication.

Como o reCAPTCHA usa tokens de acesso particular

O reCAPTCHA usa vários fatores para determinar se uma solicitação vem de uma pessoa ou de um bot. A capacidade de um dispositivo gerar um PAT é um desses indicadores. Os dispositivos que não podem gerar um PAT não são penalizados.

O protocolo PAT foi criado para ajudar a preservar a privacidade. O token não contém informações de identificação pessoal que possam ser usadas para identificar um dispositivo ou usuário específico. O reCAPTCHA verifica se o token é válido para confirmar que a solicitação vem de um dispositivo Apple original.

O fluxo de solicitação de token de acesso particular

Você pode receber um erro 401 de um URL do reCAPTCHA que termina em /pat. Esse erro é uma parte esperada do protocolo PAT. Para determinar se um dispositivo pode gerar um PAT, o reCAPTCHA envia um cabeçalho especial em uma resposta que rejeita a solicitação inicial. Em dispositivos Apple compatíveis, esse cabeçalho aciona um fluxo que tenta novamente a solicitação com um PAT.

Esse erro 401 não impede que o reCAPTCHA funcione na página nem causa outros erros. Quando você clica na caixa de seleção ou chama execute, o reCAPTCHA ainda gera um token válido.

A seguir

Para saber mais sobre como a Apple usa os tokens de acesso privado, leia a postagem Apresentando os tokens de acesso privado no blog para desenvolvedores da Apple.