SDK do navegador

O pacote mora neste monorepo como @atestus/sdk. Ele corre no navegador, com a chave pública pk_. Duas chamadas importam: cadastrar o dispositivo e confirmar uma intent.

Cadastrar o dispositivo

const dispositivo = await atestus.enroll(enrollmentToken);

Acontece no carregamento da página, sem gesto do usuário. O SDK gera uma chave ECDSA P-256 não exportável, guarda no IndexedDB e prova posse dela com DPoP. O deviceId é o thumbprint RFC 7638 dessa chave pública, e de mais nada.

O cadastro é idempotente: reapresentar o mesmo dispositivo devolve o registro existente. Leia dispositivo.persistence. Quando vier "session", não houve armazenamento — janela privada, por exemplo — e o dispositivo será visto como novo na próxima visita.

Confirmar a intent

await atestus.confirm(intentHandle);

Não devolve veredito, e a ausência é o ponto. Se devolvesse, quem controla a página diria “permitido” e o seu backend acreditaria.

Rotas de servidor · Protocolo · Documentação