/** * This method returns the serial number of the given dss certificate identifier. * * @param dssCertificateId * DSS certificate identifier to be checked * @return serial number */ public String getCertificateSerialNumber(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); return certificate.getSerialNumber(); }
/** * This method returns the subject distinguished name for the given dss certificate identifier. * * @param dssCertificateId * DSS certificate identifier to be checked * @return subject distinguished name */ public String getCertificateDN(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); return certificate.getCertificateDN(); }
/** * This method indicates if the certificate signature is valid and the revocation status is valid. * * @param dssCertificateId * DSS certificate identifier to be checked * @return certificate validity */ public boolean isValidCertificate(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); return certificate.isValidCertificate(); }
/** * This method returns the issuer distinguished name for the given dss certificate identifier. * * @param dssCertificateId * DSS certificate identifier to be checked * @return issuer distinguished name */ public String getCertificateIssuerDN(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); return certificate.getCertificateIssuerDN(); }
@Override protected boolean process() { String signingCertificateId = token.getSigningCertificateId(); CertificateWrapper certificate = diagnosticData.getUsedCertificateByIdNullSafe(signingCertificateId); return Utils.areStringsEqual(signingCertificateId, certificate.getId()); }
/** * This method returns the revocation status for the given certificate. * * @param dssCertificateId * DSS certificate identifier to be checked * @return revocation status */ public boolean getCertificateRevocationStatus(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); if (certificate.isRevocationDataAvailable()) { return certificate.getLatestRevocationData().isStatus(); } return false; }
/** * This method returns the revocation source for the given certificate. * * @param dssCertificateId * DSS certificate identifier to be checked * @return revocation source */ public String getCertificateRevocationSource(final String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); if (certificate.isRevocationDataAvailable()) { return certificate.getLatestRevocationData().getSource(); } return Utils.EMPTY_STRING; }
/** * This method returns the revocation reason for the given certificate. * * @param dssCertificateId * DSS certificate identifier to be checked * @return revocation reason */ public String getCertificateRevocationReason(String dssCertificateId) { CertificateWrapper certificate = getUsedCertificateByIdNullSafe(dssCertificateId); if (certificate.isRevocationDataAvailable()) { return certificate.getLatestRevocationData().getReason(); } return Utils.EMPTY_STRING; }
@Override protected void initChain() { ChainItem<XmlXCV> item = firstItem = prospectiveCertificateChain(); if (currentCertificate.isTrusted() || currentCertificate.isTrustedChain()) { item = item.setNextItem(trustedServiceWithExpectedTypeIdentifier()); item = item.setNextItem(trustedServiceWithExpectedStatus()); SubX509CertificateValidation certificateValidation = new SubX509CertificateValidation(currentCertificate, validationDate, context, SubContext.SIGNING_CERT, validationPolicy); XmlSubXCV subXCV = certificateValidation.execute(); result.getSubXCV().add(subXCV); boolean trustAnchorReached = currentCertificate.isTrusted(); // Check CA_CERTIFICATEs List<XmlChainItem> certificateChainList = currentCertificate.getCertificateChain(); if (Utils.isCollectionNotEmpty(certificateChainList)) { for (XmlChainItem chainCertificate : certificateChainList) { if (!trustAnchorReached) { CertificateWrapper certificate = diagnosticData.getUsedCertificateByIdNullSafe(chainCertificate.getId()); certificateValidation = new SubX509CertificateValidation(certificate, validationDate, context, SubContext.CA_CERTIFICATE, validationPolicy); subXCV = certificateValidation.execute(); result.getSubXCV().add(subXCV); trustAnchorReached = certificate.isTrusted(); } } } for (XmlSubXCV subXCVresult : result.getSubXCV()) { item = item.setNextItem(checkSubXCVResult(subXCVresult)); } } }