Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
s2 f7e565bcc7 1.1.3 3 meses atrás
lib throw exception if string is not selected length 3 meses atrás
.gitignore initial commit 5 anos atrás
.jscsrc add jscsrc file so it's easier to contribute code 2 anos atrás
CHANGELOG.md 1.1.0 changelog 2 anos atrás
README.md Clarify that the default char set returned is base64 encoded 1 ano atrás
package.json 1.1.3 3 meses atrás
tests.js add one more test 2 anos atrás



Node.js module that generates a cryptographically secure random string with a given length


var srs = require('secure-random-string');

Default behavior: Generate a random Base64 encoded string 32 characters long.

This may include alphanumeric characters as well as the following characters: +, /, =.

// Sync
var result = srs();

// Async
srs(function(err, sr) {

Options: length

Optionally, you can specify a ‘length’ option to specify a length.

// sync
var result = srs({length: 256});

// async
srs({length: 256}, function(err, sr) {

Options: alphanumeric

Optionally, you can specify a ‘alphanumeric’ option to get a alphanumerical chars only.

// sync
var result = srs({alphanumeric: true});

// async
srs({alphanumeric: true}, function(err, sr) {

Error handling

An error is possible if there is not enough accumulated entropy to generate cryptographically strong data. In other words, this will not block even if all entropy sources are drained. Note that the sync API throws an exception, while the async API returns the error to the callback.


Simon Santoro


Mark Stosberg
Sandro Gomez