From 08cb02c644e9e7e89ad5e03364b0fc398e3d6229 Mon Sep 17 00:00:00 2001 From: Ilya Kreymer Date: Sun, 20 Mar 2016 18:50:45 -0700 Subject: [PATCH] wombat: override window.crypto.getRandomValues() with seeded random --- pywb/static/wombat.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pywb/static/wombat.js b/pywb/static/wombat.js index f3fb754a..a0498ebf 100644 --- a/pywb/static/wombat.js +++ b/pywb/static/wombat.js @@ -678,6 +678,20 @@ var wombat_internal = function($wbwindow) { Math.random = seeded_random; } + function init_crypto_random() { + var orig_getrandom = $wbwindow.Crypto.prototype.getRandomValues; + + var new_getrandom = function(array) { + for (i = 0; i < array.length; i++) { + array[i] = parseInt(Math.random() * 65535); + } + return array; + } + + $wbwindow.Crypto.prototype.getRandomValues = new_getrandom; + $wbwindow.crypto.getRandomValues = new_getrandom; + } + //============================================ function override_history_func(func_name) { if (!$wbwindow.history) { @@ -2177,6 +2191,9 @@ var wombat_internal = function($wbwindow) { // Random init_seeded_random(wbinfo.wombat_sec); + // Crypto Random + init_crypto_random(); + // Date init_date_override(wbinfo.wombat_sec);