A Confirmação de Pagamento Seguro (SPC, na sigla em inglês) é um padrão da Web proposto que permite que os clientes façam a autenticação com um emissor de cartão de crédito, banco ou outro provedor de serviços de pagamento usando um autenticador de plataforma:
- Recurso de desbloqueio com o Touch ID em um dispositivo macOS
- Windows Hello em um dispositivo Windows
Com o SPC, os comerciantes podem permitir que os clientes autentiquem as compras de forma rápida e simples, enquanto os bancos emissores protegem os clientes contra fraudes.
O SPC tem duas etapas: registro e autenticação.
- Registro: o pagador vincula o dispositivo a uma parte confiável (RP). A parte confiável pode ser um emissor de cartão de crédito, um banco ou outro provedor de serviços de pagamento.
- Autenticação: o pagador usa o dispositivo registrado para confirmar a identidade com o RP diretamente na plataforma do comerciante antes de confirmar os pagamentos.
Autenticação para prevenção de fraudes
A autenticação desempenha um papel importante na prevenção de fraudes de pagamento. No entanto, esse processo de verificação geralmente depende de mecanismos fracos, como uma combinação do número do cartão de crédito e o nome do proprietário do cartão ou um código CVC adicional escrito no verso do cartão. Esses mecanismos são facilmente comprometidos e falsificados se as informações do cartão forem vazadas devido a violações de segurança de dados, como invasões de conta ou ataques de phishing.
Outros mecanismos de prevenção contra fraudes foram introduzidos, como o EMV® 3-D Secure, em que o pagador pode ser solicitado a fazer a autenticação no emissor do cartão ou no banco. Para fazer a autenticação, o usuário faz login com um nome de usuário e uma senha ou uma senha única (OTP) enviada ao telefone do pagador por SMS. Isso serve para proteger os clientes contra fraudes, mas pode se tornar uma barreira para que alguns clientes válidos concluam o pagamento. O objetivo do SPC é reduzir o atrito na autenticação, reduzindo o abandono do carrinho.
Enquanto isso, um novo padrão de autenticação está em ascensão, chamado WebAuthn.
O que é o WebAuthn?
A Web Authentication (abreviada como WebAuthn) é um padrão da Web que permite que os servidores de partes confiáveis (RPs, na sigla em inglês) registrem e autentiquem usuários no navegador usando criptografia de chave pública em vez de uma senha.
Os RPs dependem de autenticadores físicos, como uma chave de segurança. As RPs solicitam a chave de segurança para gerar um par de chaves públicas/privadas e, em seguida, armazenam a chave pública no servidor (registro). Essas chaves geradas são exclusivas do dispositivo, o que impede que invasores se passem pelo usuário. Esse padrão é Resistente a phishing porque o par de chaves está vinculado à origem.
A A FIDO Alliance padroniza o comportamento do autenticador. Alguns autenticadores oferecem suporte à verificação de usuário local com um fator biométrico (como impressão digital ou reconhecimento facial) ou um fator de conhecimento (como um PIN). Muitos são integrados a dispositivos de computação, como laptops ou smartphones, conhecidos como autenticadores de plataforma. O WebAuthn tem suporte de todos os principais navegadores (computadores e dispositivos móveis), e os autenticadores estão disponíveis em bilhões de dispositivos. Os usuários podem se registrar e se autenticar verificando a identidade localmente na plataforma.
O SPC foi projetado para funcionar com autenticadores de plataforma de verificação do usuário (UVPA).
Como funciona a Confirmação de pagamento segura?
A confirmação de pagamento seguro (SPC, na sigla em inglês) é baseada na WebAuthn e foi projetada especificamente para pagamentos. Como as credenciais do WebAuthn são registradas para domínios específicos, elas não podem ser usadas para autenticação em sites não registrados que podem estar falsificando a identidade de um comerciante. Esse recurso torna o WebAuthn eficaz contra ataques de phishing.
O SPC adiciona uma camada de informações de pagamento à WebAuthn para que o emissor do cartão ou o banco possa oferecer uma experiência de pagamento consistente. Depois que um pagador registra um autenticador com a parte confiável, ele pode ser usado para autenticação em diferentes sites de comerciantes. A parte confiável também pode usar a credencial de pagamento como uma credencial de WebAuthn normal.
A Stripe fez um experimento com o SPC no ambiente de produção, como parte dos testes de origem do Chrome. Nesse experimento, a Stripe alcançou uma taxa de conversão 8% melhor e a taxa de finalização de compra foi três vezes mais rápida. Leia sobre os resultados no relatório do SPC no grupo de trabalho de pagamentos da Web do W3C (em inglês).
Como os usuários percebem o SPC?
O front-end do SPC consiste em duas etapas: registro e autenticação.
Primeiro, o cliente precisa registrar o dispositivo usando o autenticador de plataforma de verificação do usuário (UVPA, na sigla em inglês). Depois que o dispositivo é registrado, ele pode ser usado para autenticar o usuário e confirmar pagamentos sempre que o SPC é realizado no site de um comerciante.
Registro
Os usuários podem se registrar para o SPC de duas maneiras:
- Registre-se diretamente no site da parte restrita.
- Fazer o registro indireto em um site do comerciante.
Registro no site do RP
No site do RP, o registro do SPC não é diferente do registro da WebAuthn. Nossa recomendação é que a parte restrita peça ao cliente para registrar o UVPA como parte de um fluxo de login.
Um cenário típico pode ser assim:
- Um cliente faz login no site do seu banco usando um nome de usuário, uma senha e uma etapa de verificação adicional (geralmente uma senha única ou OTP).
- Após uma autenticação bem-sucedida, mostre uma solicitação de permissão que peça ao cliente para registrar o dispositivo (UVPA).
- Depois que a permissão é concedida, o navegador mostra uma caixa de diálogo de registro da WebAuthn.
- O cliente consente em registrar o dispositivo fazendo uma autenticação biométrica.
- Agora o cliente pode fazer login e pagar com segurança usando o dispositivo.
Com a reautenticação, um usuário já faz login, mas precisa fazer a autenticação novamente para garantir que o mesmo usuário ainda esteja presente. Esse design é normalmente usado em uma operação de segurança crítica, como uma solicitação para alterar uma senha ou ao fazer um pagamento. Com uma UVPA do WebAuthn, a reautenticação é muito mais rápida e segura do que o uso de senhas.
Aprenda a criar um fluxo de registro e autenticação do WebAuthn para reautenticação em Criar seu primeiro app do WebAuthn.
Registro no site de um comerciante durante o pagamento
Se o cliente não registrar o dispositivo no site do emissor do pagamento, ele poderá fazer isso diretamente no site do comerciante. A interface é a mesma, mas o registro do usuário é iniciado pelo código do RP.
Isso é ideal quando os clientes não acessam o site da parte restrita com frequência, mas ela ainda quer oferecer a opção de autenticação.
Autenticação (confirmação de pagamento)
A autenticação é necessária quando um pagador fornece uma credencial de pagamento durante uma transação.
- O pagador fornece uma credencial de pagamento (como informações do cartão de crédito).
- O comerciante verifica se o navegador oferece suporte à confirmação de pagamento seguro.
- Se o navegador for compatível com SPC, chame a API Payment Request com a SPC como forma de pagamento. Caso contrário, use o método de autenticação atual.
- O pagador confirma os detalhes da transação e conclui a autenticação, por exemplo, tocando no autenticador da plataforma biométrica.
Plataformas compatíveis
No momento, a Confirmação de pagamento segura é compatível com o Google Chrome no macOS e no Windows. Outras plataformas, incluindo Android, iOS e ChromeOS, não têm suporte a partir de maio de 2022.