Skip to content

One-time passcode generator (HOTP/TOTP) with URL generation for Google Authenticator

License

Notifications You must be signed in to change notification settings

mikepb/passcode

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Passcode has been merged into Speakeasy 2.0! Please update to Speakeasy for continuing support and updates. Speakeasy incorporates the following API changes from Passcode:

  • options.time and options.epoch are now specified in seconds instead of milliseconds.
  • url() has been renamed to otpauthURL()
  • .verify() functions now return true on valid and false otherwise; use .verifyDelta() to retrieve the delta from verification.

Passcode

Passcode implements one-time passcode generators as standardized by the Initiative for Open Authentication (OATH). The HMAC-Based One-time Password (HOTP) algorithm defined by RFC 4226 and the Time-based One-time Password (TOTP) algorithm defined in RFC 6238 are supported.

Passcode is a heavily modified version of speakeasy incorporating the verification functions of notp.

Install

npm install --save passcode

Usage

var passcode = require("passcode");
var token = passcode.hotp({
  secret: "xyzzy",
  counter: 123
});
// token = "378764"

var ok = passcode.hotp.verify({
  secret: "xyzzy",
  token: token,
  counter: 123
});
// ok = {delta: 0}

Documentation

Full documentation at http://mikepb.github.io/passcode/

License

This project incorporates code from speakeasy and notp, both of which are licensed under MIT. Please see the LICENSE file for the full combined license.

About

One-time passcode generator (HOTP/TOTP) with URL generation for Google Authenticator

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%