internal static OCSPStatus Test() { X509Certificate main = Utility.GetCertificateFromString(File.ReadAllText(@"C:\Users\abrar\Desktop\BCC-CA-XMLSignVerifierService\Test\CertCode\c.pem")); X509Certificate issuer = Utility.GetCertificateFromString(File.ReadAllText(@"C:\Users\abrar\Desktop\BCC-CA-XMLSignVerifierService\Test\CertCode\issuer.pem")); OCSPStatus status = OCSP.CheckOCSP(main, issuer); return(status); }
private static OCSPStatus ProcessOcspResponse(X509Certificate eeCert, X509Certificate issuerCert, byte[] binaryResp) { OcspResp r = new OcspResp(binaryResp); OCSPStatus cStatus = OCSPStatus.Unknown; switch (r.Status) { case OcspRespStatus.Successful: BasicOcspResp or = (BasicOcspResp)r.GetResponseObject(); //ValidateResponse(or, issuerCert); if (or.Responses.Length == 1) { SingleResp resp = or.Responses[0]; ValidateCertificateId(issuerCert, eeCert, resp.GetCertID()); //ValidateThisUpdate(resp); //ValidateNextUpdate(resp); Object certificateStatus = resp.GetCertStatus(); if (certificateStatus == CertificateStatus.Good) { cStatus = OCSPStatus.Good; } else if (certificateStatus is RevokedStatus) { cStatus = OCSPStatus.Revoked; } else if (certificateStatus is UnknownStatus) { cStatus = OCSPStatus.Unknown; } } break; default: throw new Exception("Unknow status '" + r.Status + "'."); } return(cStatus); }