Backend · Segurança

Autenticação 2FA (TOTP)

Dois fatores com Google Authenticator, Authy e Microsoft Authenticator: segredo, URI do QR Code e verificação com janela e anti-reuso. Conta de cliente protegida contra senha vazada.

2FA · TOTP · RFC 6238 · 8 testes automatizados · Licença MIT · Criado por FlowCore Soluções LTDA

Como instalar

  1. Funciona onde você já roda Node 18+, Cloudflare Workers, Deno, Bun, Vercel e Netlify Functions. Zero dependência: só fetch e Web Crypto, que já vêm no runtime.
  2. Crie src/lib/totp.ts Cole o código da aba Código.
  3. Use
    const segredo = gerarSegredo();
    const uri = uriOtpauth({ segredo, conta: "[email protected]", emissor: "Minha Empresa" });
    // mostre o QR Code da uri; no login:
    const r = await verificarTotp(codigoDigitado, segredo, { ultimoContador: usuario.ultimoTotp });
  4. Rode o teste junto O arquivo de teste (aba Teste) cobre 8 cenários. Copie para src/lib/ ao lado e rode:
    npm install -D vitest
    npx vitest run src/lib

Código no GitHub · Biblioteca de códigos

Mais em Segurança