|
|
@ -122,7 +122,24 @@ PayPro.prototype.x509Verify = function(returnTrust) { |
|
|
|
return verified; |
|
|
|
} |
|
|
|
|
|
|
|
var chainVerified = chain.every(function(cert, i) { |
|
|
|
var chainVerified = PayPro.verifyCertChain(chain, type); |
|
|
|
|
|
|
|
if (returnTrust) { |
|
|
|
return { |
|
|
|
selfSigned: 0, // no
|
|
|
|
isChain: true, |
|
|
|
verified: verified, |
|
|
|
caTrusted: !!caName, |
|
|
|
caName: caName || null, |
|
|
|
chainVerified: chainVerified |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
return verified && chainVerified; |
|
|
|
}; |
|
|
|
|
|
|
|
PayPro.verifyCertChain = function(chain, type) { |
|
|
|
return chain.every(function(cert, i) { |
|
|
|
var der = cert.toString('hex'); |
|
|
|
// var pem = self._DERtoPEM(der, 'CERTIFICATE');
|
|
|
|
var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex(der, 'CERTIFICATE'); |
|
|
@ -200,19 +217,6 @@ PayPro.prototype.x509Verify = function(returnTrust) { |
|
|
|
&& issuerVerified |
|
|
|
&& sigVerified; |
|
|
|
}); |
|
|
|
|
|
|
|
if (returnTrust) { |
|
|
|
return { |
|
|
|
selfSigned: 0, // no
|
|
|
|
isChain: true, |
|
|
|
verified: verified, |
|
|
|
caTrusted: !!caName, |
|
|
|
caName: caName || null, |
|
|
|
chainVerified: chainVerified |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
return verified && chainVerified; |
|
|
|
}; |
|
|
|
|
|
|
|
module.exports = PayPro; |
|
|
|