Merge pull request #685 from twiss/workers-random
Use crypto.getRandomValues in Workers
This commit is contained in:
commit
ce973be6ba
|
@ -28,15 +28,13 @@
|
||||||
* @module worker/worker
|
* @module worker/worker
|
||||||
*/
|
*/
|
||||||
|
|
||||||
self.window = {}; // to make UMD bundles work
|
self.window = self; // to make UMD bundles work
|
||||||
|
|
||||||
importScripts('openpgp.js');
|
importScripts('openpgp.js');
|
||||||
var openpgp = window.openpgp;
|
var openpgp = window.openpgp;
|
||||||
|
|
||||||
var randomQueue = [];
|
var randomQueue = [];
|
||||||
var MIN_SIZE_RANDOM_BUFFER = 40000;
|
|
||||||
var MAX_SIZE_RANDOM_BUFFER = 60000;
|
var MAX_SIZE_RANDOM_BUFFER = 60000;
|
||||||
var MIN_SIZE_RANDOM_REQUEST = 20000;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle random buffer exhaustion by requesting more random bytes from the main window
|
* Handle random buffer exhaustion by requesting more random bytes from the main window
|
||||||
|
@ -132,8 +130,5 @@ function delegate(id, method, options) {
|
||||||
* @param {Object} event Contains event type and data
|
* @param {Object} event Contains event type and data
|
||||||
*/
|
*/
|
||||||
function response(event) {
|
function response(event) {
|
||||||
if (!randomQueue.length && openpgp.crypto.random.randomBuffer.size < MIN_SIZE_RANDOM_BUFFER) {
|
|
||||||
self.postMessage({ event: 'request-seed', amount: MIN_SIZE_RANDOM_REQUEST });
|
|
||||||
}
|
|
||||||
self.postMessage(event, openpgp.util.getTransferables(event.data));
|
self.postMessage(event, openpgp.util.getTransferables(event.data));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user