public bool isValidCertificate(ECertificate certificate) { try { ValidationPolicy validationPolicy = CertValidationPolicyManager.getInstance().getValidationPolicy(); ValidationSystem vs = CertificateValidation.createValidationSystem(validationPolicy); vs.setBaseValidationTime(DateTime.UtcNow); CertificateStatusInfo csi = CertificateValidation.validateCertificate(vs, certificate); CertificateStatus certificateStatus = csi.getCertificateStatus(); string statusText = certificateStatus.textAl(); //System.Console.WriteLine("Doğrulama Sonucu"); //System.Console.WriteLine(statusText); //System.Console.WriteLine(csi.checkResultsToString()); //System.Console.WriteLine(csi.getDetailedMessage()); Program.HataMesaji = "\n\r" + csi.checkResultsToString() + "\n\r" + csi.getDetailedMessage(); return(certificateStatus == CertificateStatus.VALID); } catch (Exception exc) { // System.Console.WriteLine(exc.Message); Program.HataMesaji = exc.Message; return(false); } }
/** * Validates given certificate */ public static Boolean validateCertificate(ECertificate certificate) { try { ValidationSystem vs; // generate policy which going to be used in validation if (certificate.isMaliMuhurCertificate()) { ValidationPolicy policy = new ValidationPolicy(); String policyPath = Conn.ROOT_DIR + "efatura\\config\\certval-policy-malimuhur.xml"; policy = PolicyReader.readValidationPolicy(policyPath); vs = CertificateValidation.createValidationSystem(policy); } else { ValidationPolicy policy = new ValidationPolicy(); String policyPath = Conn.ROOT_DIR + "efatura\\config\\certval-policy.xml"; policy = PolicyReader.readValidationPolicy(policyPath); vs = CertificateValidation.createValidationSystem(policy); } vs.setBaseValidationTime(DateTime.UtcNow); // validate certificate CertificateStatusInfo csi = CertificateValidation.validateCertificate(vs, certificate); // return true if certificate is valid, false otherwise if (csi.getCertificateStatus() != CertificateStatus.VALID) { return(false); } else if (csi.getCertificateStatus() == CertificateStatus.VALID) { return(true); } } catch (Exception e) { throw new Exception("An error occured while validating certificate", e); } return(false); }