|
|
@ -29,14 +29,13 @@ PayPro.sign = function(key) { |
|
|
|
var type = pki_type.split('+')[1].toUpperCase(); |
|
|
|
var buf = this.serializeForSig(); |
|
|
|
|
|
|
|
pki_data = pki_data && pki_data.unshift |
|
|
|
? pki_data[0] |
|
|
|
: pki_data; |
|
|
|
|
|
|
|
var der = pki_data.toString('hex'); |
|
|
|
var trusted = [].concat(pki_data).every(function(cert) { |
|
|
|
var der = cert.toString('hex'); |
|
|
|
var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex(der, 'CERTIFICATE'); |
|
|
|
return !!Trusted[pem.replace(/\s+/g, '')]; |
|
|
|
}); |
|
|
|
|
|
|
|
if (!Trusted[pem.replace(/\s+/g, '')]) { |
|
|
|
if (!trusted) { |
|
|
|
// throw new Error('Unstrusted certificate.');
|
|
|
|
} |
|
|
|
|
|
|
@ -79,11 +78,8 @@ PayPro.verify = function() { |
|
|
|
prov: 'cryptojs/jsrsa' |
|
|
|
}); |
|
|
|
|
|
|
|
pki_data = pki_data && pki_data.unshift |
|
|
|
? pki_data[0] |
|
|
|
: pki_data; |
|
|
|
|
|
|
|
var der = pki_data.toString('hex'); |
|
|
|
return [].concat(pki_data).every(function(cert) { |
|
|
|
var der = cert.toString('hex'); |
|
|
|
var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex(der, 'CERTIFICATE'); |
|
|
|
|
|
|
|
if (!Trusted[pem.replace(/\s+/g, '')]) { |
|
|
@ -94,9 +90,8 @@ PayPro.verify = function() { |
|
|
|
|
|
|
|
jsrsaSig.updateHex(buf.toString('hex')); |
|
|
|
|
|
|
|
var result = jsrsaSig.verify(sig.toString('hex')); |
|
|
|
|
|
|
|
return result; |
|
|
|
return jsrsaSig.verify(sig.toString('hex')); |
|
|
|
}); |
|
|
|
} else if (pki_type === 'none') { |
|
|
|
return true; |
|
|
|
} |
|
|
|