2fa-plus
v1.0.1
Published
Implementation of two-factor authentication in Node, made simple.
Downloads
98
Maintainers
Readme
2fa-plus
Implementation of two-factor authentication in Node, made simple.
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
- Authy iPhone | Android | Chrome | Linux | OS X
- Google Authenticator iPhone | Android
- Microsoft Authenticator iPhone | Android
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', '[email protected]');
// 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