Skip to content

Instantly share code, notes, and snippets.

@mattcollier
Created April 17, 2015 12:03
Show Gist options
  • Save mattcollier/3a713b4a076cd65257fe to your computer and use it in GitHub Desktop.
Save mattcollier/3a713b4a076cd65257fe to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html>
<head>
<script>
var atomRemote = require('remote');
var sprintf = require('sprintf-js').sprintf;
</script>
<script src='js/forge.bundle.js'></script>
<script>
var rsa = forge.pki.rsa;
var pki = forge.pki;
keyCount = 0;
keyMax = 100;
var myTimes = [];
function genKey() {
var start = new Date().getTime();
rsa.generateKeyPair({bits: 3072, workers: 2}, function(err, keypair) {
var stop = new Date().getTime();
//console.log(pki.publicKeyToPem(keypair.publicKey));
var timeDiff = (stop - start) / 1000;
console.log(sprintf('%3i] %4.2f', keyCount, timeDiff));
keyCount++;
myTimes.push(timeDiff);
if (keyCount < keyMax) {
genKey();
} else {
console.log('Summary');
console.log(sprintf('Min: %4.2f', Math.min.apply(null, myTimes)));
console.log(sprintf('Max: %4.2f', Math.max.apply(null, myTimes)));
console.log(sprintf('Avg: %4.2f', eval(myTimes.join('+'))/keyMax));
}
});
}
genKey();
document.addEventListener('DOMContentLoaded', function () {
// nothing atm
});
</script>
</head>
<body>
<div id='hereAtStart'>Something</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment