Get a buffer of random bytes from /dev/urandom file, time or another source

npm install randbytes
8 downloads in the last week
10 downloads in the last month


Get a buffer of random bytes from /dev/urandom (or another) file.



$ npm install randbytes


RandBytes is written on CoffeeScript, first you need install this with npm install coffee-script

$ git clone https://github.com/exos/node-randbytes.git
$ cd node-randbytes
$ coffee -c -o . src/


Reading from /dev/urandom (secure and faster):

var RandBytes = new require('randbytes');

var randomSource = RandBytes.urandom.getInstance();

randomSource.getRandomBytes(100, function (buff) {
    console.log(buff.length, " bytes from /dev/urandom :) ");


var RandBytes = require('randbytes');

RandBytes.getRandomBytes(512, console.log);

Get rand bytes from timestamp

If you are not using a Unix like OS, you can generate random bytes from time:

var randomSource = RandBytes.timeRandom.getInstance();

Using your own file

var randomSource = new RandBytes.urandom({
    filePath: '/home/you/walesongs.wav'

Create a instance of urandom with /dev/random as source

If you need a high randomize source, you can read from /dev/random, but is very slowly.

var randomSource.getHighRandomSource();

randomSource.getRandomBytes(128, function (buff) {
    console.log(buff.length, " from /dev/random file ");
npm loves you