add fallback to browser is secp256k1

This commit is contained in:
Chad Engler 2015-05-27 08:29:18 -07:00
parent 1cbc1bdd9f
commit 0ebe1f0be6
2 changed files with 8 additions and 5 deletions

View File

@ -7,7 +7,7 @@
var EC = require("elliptic").ec;
var ec = new EC("secp256k1");
var cryptoObj = window.crypto || window.msCrypto || {};
var cryptoObj = global.crypto || global.msCrypto || {};
var subtle = cryptoObj.subtle || cryptoObj.webkitSubtle;
function assert(condition, message) {
@ -18,7 +18,7 @@ function assert(condition, message) {
function randomBytes(size) {
var arr = new Uint8Array(size);
window.crypto.getRandomValues(arr);
global.crypto.getRandomValues(arr);
return new Buffer(arr);
}

View File

@ -9,9 +9,12 @@ var promise = typeof Promise === "undefined" ?
require("es6-promise").Promise :
Promise;
var crypto = require("crypto");
// TODO(Kagami): We may fallback to pure JS implementation
// (`browser.js`) if this modules are failed to load.
var secp256k1 = require("secp256k1");
// try to use secp256k1, fallback to browser implementation
try {
var secp256k1 = require("secp256k1");
} catch (e) {
return module.exports = require("./browser");
}
var ecdh = require("./build/Release/ecdh");
function assert(condition, message) {