Skip to content

Implementation of two-factor authentication in Node, made simple.

License

Notifications You must be signed in to change notification settings

aaronduce/2fa-plus

Repository files navigation

2fa-plus

Implementation of two-factor authentication in Node, made simple.

NPM Downloads NPM Version NPM License

Credit for original implementation on which this has been abstracted from goes to node-2fa - Jeremy Scalpello.

This has been reworked from the ground up to:

  • Not be reliant on Google Charts for QR code generation, and instead return a base64-png image.
  • Full typescript support.

There are a number of applications which support 2-Factor Authentication, namely

This module uses notp which implements TOTP (RFC 6238) (the Authenticator standard), which is based on HOTP (RFC 4226) to provide codes that are exactly compatible with all other Authenticator apps and services that use them.

Usage

npm install 2fa-plus --save

Generate a new secret

import { generateSecret } from "2fa-plus";

const secret = generateSecret('Name', 'account@demo.com');

// output: { secret, uri, qr }

Generate a token from a secret

import { generateToken } from "2fa-plus";

const token = generateToken(secret.secret);

// output: token

Verify a token

import { verifyToken } from "2fa-plus";

const isValid = verifyToken(secret, token);

// output: true/false

About

Implementation of two-factor authentication in Node, made simple.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published