Skip to content

Commit 688aa81

Browse files
authored
Merge pull request #8 from github/dg/secure-random
Use crypto api for uuid generation
2 parents f1a9375 + 37ce07d commit 688aa81

2 files changed

Lines changed: 17 additions & 4 deletions

File tree

package-lock.json

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

target/braintree-1.3.10.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3734,7 +3734,7 @@ function isArray(value) {
37343734

37353735
function generateUUID() { // RFC 4122 v4 (pseudo-random) UUID without hyphens
37363736
return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (xORy) {
3737-
var randomHex = Math.floor(Math.random() * 16);
3737+
var randomHex = crypto.getRandomValues(new Uint8Array(1))[0] % 16;
37383738
var uuidHex = xORy === 'x' ? randomHex : randomHex & 0x3 | 0x8; // jshint ignore:line
37393739
return uuidHex.toString(16);
37403740
});
@@ -4786,7 +4786,7 @@ module.exports = {
47864786
// RFC 4122 v4 (pseudo-random) UUID
47874787
function generate() {
47884788
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
4789-
var r = Math.random() * 16 | 0;
4789+
var r = crypto.getRandomValues(new Uint8Array(1))[0] % 16;
47904790
var v = c === 'x' ? r : r & 0x3 | 0x8;
47914791
return v.toString(16);
47924792
});
@@ -6127,7 +6127,7 @@ module.exports = eventEnum;
61276127

61286128
function _uuid() {
61296129
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
6130-
var r = Math.random() * 16 | 0;
6130+
var r = crypto.getRandomValues(new Uint8Array(1))[0] % 16;
61316131
var v = c === 'x' ? r : r & 0x3 | 0x8;
61326132
return v.toString(16);
61336133
});
@@ -10773,7 +10773,7 @@ function generateUid() {
1077310773
var uid = '';
1077410774

1077510775
for (i = 0; i < 32; i++) {
10776-
r = Math.floor(Math.random() * 16);
10776+
r = crypto.getRandomValues(new Uint8Array(1))[0] % 16;
1077710777
uid += r.toString(16);
1077810778
}
1077910779

0 commit comments

Comments
 (0)