crypto-browserify
Advanced tools
Comparing version 3.2.4 to 3.2.5
@@ -5,3 +5,3 @@ { | ||
"description": "partial implementation of crypto for the browser", | ||
"version": "3.2.4", | ||
"version": "3.2.5", | ||
"homepage": "https://github.com/dominictarr/crypto-browserify", | ||
@@ -28,3 +28,3 @@ "repository": { | ||
"testling": { | ||
"files": "test/*.js-", | ||
"files": "test/*.js", | ||
"browsers": [ | ||
@@ -31,0 +31,0 @@ "ie/latest", |
@@ -7,7 +7,7 @@ var test = require('tape') | ||
t.equal(crypto.randomBytes(10).length, 10); | ||
t.ok(crypto.randomBytes(10) instanceof Buffer); | ||
t.ok(Buffer.isBuffer(crypto.randomBytes(10))) | ||
crypto.randomBytes(10, function(ex, bytes) { | ||
t.error(ex); | ||
t.equal(bytes.length, 10); | ||
t.ok(bytes instanceof Buffer); | ||
t.ok(Buffer.isBuffer(bytes)) | ||
t.end(); | ||
@@ -17,2 +17,27 @@ }); | ||
test('randomBytes seem random', function (t) { | ||
var L = 1000 | ||
var b = crypto.randomBytes(L) | ||
var mean = [].reduce.call(b, function (a, b) { return a + b}, 0) / L | ||
// test that the random numbers are plausably random. | ||
// Math.random() will pass this, but this will catch | ||
// terrible mistakes such as this blunder: | ||
// https://github.com/dominictarr/crypto-browserify/commit/3267955e1df7edd1680e52aeede9a89506ed2464#commitcomment-7916835 | ||
// this doesn't check that the bytes are in a random *order* | ||
// but it's better than nothing. | ||
var expected = 256/2 | ||
var smean = Math.sqrt(mean) | ||
console.log(expected - smean, mean, expected + smean) | ||
t.ok(mean < expected + smean) | ||
t.ok(mean > expected - smean) | ||
t.end() | ||
}) | ||
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
34781
943