drbg.js

1.0.1 • Public • Published

drbg.js

NPM Package Build Status Dependency status

js-standard-style

Deterministic Random Bits Generators

Based on NIST Recommended DRBG from NIST SP800-90A with the following properties:

  • CTR DRBG with DF with AES-128, AES-192, AES-256 cores see issue #1
  • Hash DRBG with DF with SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 cores
  • HMAC DRBG with SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 cores
  • with and without prediction resistance

Installation

npm install drbg.js

Usage

var drbgs = require('drbg.js') // import HashDRBG and HmacDRBG
var HashDRBG = drbgs.HashDRBG // or require('drbg.js/hash')
var HmacDRBG = drbgs.HmacDRBG // or require('drbg.js/hmac')
 
var drbg2 = new HashDRBG('sha256', entropy, nonce, personalization_data)
drbg2.generate(5, additional_data) // <Buffer qq qq qq qq qq>
drbg2.reseed(entropy, personalization_data)
drbg2.generate(5, additional_data) // <Buffer ww ww ww ww ww>
 
var drbg3 = new HmacDRBG('sha256', entropy, nonce, personalization_data)
drbg3.generate(5, additional_data) // <Buffer ee ee ee ee ee>
drbg3.reseed(entropy, personalization_data)
drbg3.generate(5, additional_data) // <Buffer rr rr rr rr rr>

LICENSE

This library is free and open-source software released under the MIT license.

Package Sidebar

Install

npm i drbg.js

Weekly Downloads

113,678

Version

1.0.1

License

MIT

Last publish

Collaborators

  • fanatid
  • null_radix