test key support BEFORE creating keys

This commit is contained in:
AJ ONeal 2018-11-10 18:50:05 +00:00
parent df964d76c6
commit 8a0ccfa55f
1 changed files with 23 additions and 18 deletions

View File

@ -48,7 +48,8 @@
}); });
}); });
} }
testEcdsaSupport().then(function () { function testKeypairSupport() {
return testEcdsaSupport().then(function () {
console.info("[crypto] ECDSA is supported"); console.info("[crypto] ECDSA is supported");
BROWSER_SUPPORTS_ECDSA = true; BROWSER_SUPPORTS_ECDSA = true;
localStorage.setItem('version', '1'); localStorage.setItem('version', '1');
@ -60,20 +61,24 @@
// fix previous firefox browsers // fix previous firefox browsers
if (!localStorage.getItem('version')) { if (!localStorage.getItem('version')) {
localStorage.clear(); localStorage.clear();
localStorage.getItem('version', '1'); localStorage.setItem('version', '1');
} }
// DO NOT RETURN HERE return false;
testRsaSupport().then(function () { });
}
testKeypairSupport().then(function (ecdsaSupport) {
if (ecdsaSupport) {
return true;
}
return testRsaSupport().then(function () {
console.info('[crypto] RSA is supported'); console.info('[crypto] RSA is supported');
}).catch(function (err) { }).catch(function (err) {
console.error('[crypto] could not use either EC nor RSA.'); console.error('[crypto] could not use either EC nor RSA.');
console.error(err); console.error(err);
window.alert("Your browser is cryptography support (neither RSA or EC is usable). Please use Chrome, Firefox, or Safari."); window.alert("Your browser is cryptography support (neither RSA or EC is usable). Please use Chrome, Firefox, or Safari.");
}); });
// RETURN HERE
return false;
}); });
var apiUrl = 'https://acme-{{env}}.api.letsencrypt.org/directory'; var apiUrl = 'https://acme-{{env}}.api.letsencrypt.org/directory';
@ -238,7 +243,7 @@
if (jwk) { if (jwk) {
p = PromiseA.resolve(jwk); p = PromiseA.resolve(jwk);
} else { } else {
p = createKeypair(); p = testKeypairSupport().then(createKeypair);
} }
function createAccount(jwk) { function createAccount(jwk) {