Fix config.use_native

This commit is contained in:
Daniel Huigens 2018-04-10 14:23:37 +02:00
parent 53d6f20b72
commit d5d4c97228
4 changed files with 12 additions and 12 deletions

View File

@ -137,9 +137,9 @@ function concat(...arrays) {
}
function CTR(plaintext, key, iv) {
if (webCrypto && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
if (util.getWebCryptoAll() && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
return webCtr(plaintext, key, iv);
} else if (nodeCrypto) { // Node crypto library
} else if (util.getNodeCrypto()) { // Node crypto library
return nodeCtr(plaintext, key, iv);
} // asm.js fallback
return Promise.resolve(AES_CTR.encrypt(plaintext, key, iv));

View File

@ -49,9 +49,9 @@ function encrypt(cipher, plaintext, key, iv) {
return Promise.reject(new Error('GCM mode supports only AES cipher'));
}
if (webCrypto && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
if (util.getWebCrypto() && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
return webEncrypt(plaintext, key, iv);
} else if (nodeCrypto) { // Node crypto library
} else if (util.getNodeCrypto()) { // Node crypto library
return nodeEncrypt(plaintext, key, iv);
} // asm.js fallback
return Promise.resolve(AES_GCM.encrypt(plaintext, key, iv));
@ -70,9 +70,9 @@ function decrypt(cipher, ciphertext, key, iv) {
return Promise.reject(new Error('GCM mode supports only AES cipher'));
}
if (webCrypto && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
if (util.getWebCrypto() && key.length !== 24) { // WebCrypto (no 192 bit support) see: https://www.chromium.org/blink/webcrypto#TOC-AES-support
return webDecrypt(ciphertext, key, iv);
} else if (nodeCrypto) { // Node crypto library
} else if (util.getNodeCrypto()) { // Node crypto library
return nodeDecrypt(ciphertext, key, iv);
} // asm.js fallback
return Promise.resolve(AES_GCM.decrypt(ciphertext, key, iv));

View File

@ -182,14 +182,14 @@ Curve.prototype.keyFromPublic = function (pub) {
Curve.prototype.genKeyPair = async function () {
let keyPair;
if (webCrypto && this.web) {
if (this.web && util.getWebCrypto()) {
// If browser doesn't support a curve, we'll catch it
try {
keyPair = await webGenKeyPair(this.name);
} catch (err) {
util.print_debug("Browser did not support signing: " + err.message);
}
} else if (nodeCrypto && this.node) {
} else if (this.node && util.getNodeCrypto()) {
keyPair = await nodeGenKeyPair(this.name);
}

View File

@ -45,7 +45,7 @@ function KeyPair(curve, options) {
}
KeyPair.prototype.sign = async function (message, hash_algo) {
if (webCrypto && this.curve.web) {
if (this.curve.web && util.getWebCrypto()) {
// If browser doesn't support a curve, we'll catch it
try {
// need to await to make sure browser succeeds
@ -54,7 +54,7 @@ KeyPair.prototype.sign = async function (message, hash_algo) {
} catch (err) {
util.print_debug("Browser did not support signing: " + err.message);
}
} else if (nodeCrypto && this.curve.node) {
} else if (this.curve.node && util.getNodeCrypto()) {
return nodeSign(this.curve, hash_algo, message, this.keyPair);
}
const digest = (typeof hash_algo === 'undefined') ? message : hash.digest(hash_algo, message);
@ -62,7 +62,7 @@ KeyPair.prototype.sign = async function (message, hash_algo) {
};
KeyPair.prototype.verify = async function (message, signature, hash_algo) {
if (webCrypto && this.curve.web) {
if (this.curve.web && util.getWebCrypto()) {
// If browser doesn't support a curve, we'll catch it
try {
// need to await to make sure browser succeeds
@ -71,7 +71,7 @@ KeyPair.prototype.verify = async function (message, signature, hash_algo) {
} catch (err) {
util.print_debug("Browser did not support signing: " + err.message);
}
} else if (nodeCrypto && this.curve.node) {
} else if (this.curve.node && util.getNodeCrypto()) {
return nodeVerify(this.curve, hash_algo, signature, message, this.keyPair.getPublic());
}
const digest = (typeof hash_algo === 'undefined') ? message : hash.digest(hash_algo, message);