Browse Source

paypro: add PayPro.verifyCertChain.

patch-2
Christopher Jeffrey 11 years ago
parent
commit
a73699ba64
  1. 32
      lib/PayPro.js
  2. 32
      lib/browser/PayPro.js

32
lib/PayPro.js

@ -107,7 +107,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 = PayPro.DERtoPEM(der, 'CERTIFICATE');
var name = RootCerts.getTrusted(pem);
@ -168,19 +185,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;

32
lib/browser/PayPro.js

@ -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;

Loading…
Cancel
Save