|
@@ -97,11 +97,11 @@ namespace CAUtilLib
|
|
|
|
|
|
public static bool ValidateCertificateChain(List<X509Certificate> certificates)
|
|
public static bool ValidateCertificateChain(List<X509Certificate> certificates)
|
|
{
|
|
{
|
|
- for (int index = certificates.Count - 1; index > 0; index--)
|
|
|
|
|
|
+ for (int index = 0; index < certificates.Count - 1; index++)
|
|
{
|
|
{
|
|
- var signedCertificate = certificates[index];
|
|
|
|
- var sourceCertificate = certificates[index - 1];
|
|
|
|
- if (!ValidateCert(signedCertificate, sourceCertificate.GetPublicKey()))
|
|
|
|
|
|
+ var validateCertificate = certificates[index];
|
|
|
|
+ var sourceCertificate = certificates[index + 1];
|
|
|
|
+ if (!ValidateCert(validateCertificate, sourceCertificate.GetPublicKey()))
|
|
{
|
|
{
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
@@ -116,11 +116,11 @@ namespace CAUtilLib
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
- for (int index = certChain.Count - 1; index > -1; index--)
|
|
|
|
|
|
+ for (int index = 0; index < certChain.Count; index++)
|
|
{
|
|
{
|
|
- var signedCertificate = cert;
|
|
|
|
|
|
+ var validateCertificate = cert;
|
|
var sourceCertificate = certChain[index];
|
|
var sourceCertificate = certChain[index];
|
|
- if (ValidateCert(signedCertificate, sourceCertificate.GetPublicKey()))
|
|
|
|
|
|
+ if (ValidateCert(validateCertificate, sourceCertificate.GetPublicKey()))
|
|
{
|
|
{
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|