tanx updates
This commit is contained in:
parent
e8465350fc
commit
2a89baa837
|
@ -140,17 +140,6 @@ function RSA() {
|
||||||
// Native RSA keygen using Web Crypto
|
// Native RSA keygen using Web Crypto
|
||||||
//
|
//
|
||||||
|
|
||||||
function convertKeyOperation(keyop, errmsg) {
|
|
||||||
return new Promise(function(resolve, reject) {
|
|
||||||
keyop.onerror = function (err) {
|
|
||||||
reject(new Error(errmsg));
|
|
||||||
}
|
|
||||||
keyop.oncomplete = function (e) {
|
|
||||||
resolve(e.target.result);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (webCrypto) {
|
if (webCrypto) {
|
||||||
var Euint32 = new Uint32Array([parseInt(E, 16)]); // get integer of exponent
|
var Euint32 = new Uint32Array([parseInt(E, 16)]); // get integer of exponent
|
||||||
var Euint8 = new Uint8Array(Euint32.buffer); // get bytes of exponent
|
var Euint8 = new Uint8Array(Euint32.buffer); // get bytes of exponent
|
||||||
|
@ -195,8 +184,8 @@ function RSA() {
|
||||||
function exportKey(keypair) {
|
function exportKey(keypair) {
|
||||||
// export the generated keys as JsonWebKey (JWK)
|
// export the generated keys as JsonWebKey (JWK)
|
||||||
// https://tools.ietf.org/html/draft-ietf-jose-json-web-key-33
|
// https://tools.ietf.org/html/draft-ietf-jose-json-web-key-33
|
||||||
key = webCrypto.exportKey('jwk', keypair.privateKey);
|
var key = webCrypto.exportKey('jwk', keypair.privateKey);
|
||||||
if(!(key instanceof Promise)) { // IE11 KeyOperation
|
if (!(key instanceof Promise)) { // IE11 KeyOperation
|
||||||
key = convertKeyOperation(key, 'Error exporting RSA key pair.');
|
key = convertKeyOperation(key, 'Error exporting RSA key pair.');
|
||||||
}
|
}
|
||||||
return key;
|
return key;
|
||||||
|
@ -221,6 +210,17 @@ function RSA() {
|
||||||
return key;
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function convertKeyOperation(keyop, errmsg) {
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
keyop.onerror = function (err) {
|
||||||
|
reject(new Error(errmsg));
|
||||||
|
}
|
||||||
|
keyop.oncomplete = function (e) {
|
||||||
|
resolve(e.target.result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// JS code
|
// JS code
|
||||||
//
|
//
|
||||||
|
|
|
@ -321,10 +321,10 @@ module.exports = {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof window !== 'undefined') {
|
if (typeof window !== 'undefined') {
|
||||||
if(window.crypto) {
|
if (window.crypto) {
|
||||||
return window.crypto.subtle || window.crypto.webkitSubtle;
|
return window.crypto.subtle || window.crypto.webkitSubtle;
|
||||||
}
|
}
|
||||||
if(window.msCrypto) {
|
if (window.msCrypto) {
|
||||||
return window.msCrypto.subtle;
|
return window.msCrypto.subtle;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user