@Override protected boolean process() { return poe.isPOEExists(token.getId(), controlTime); }
@Override protected boolean process() { return token.isAttributePresent(); }
@Override protected boolean process() { return token.isDigestValueMatch(); }
if (!isIn(token.getEncryptionAlgoUsedToSignThisToken(), acceptableEncryptionAlgo.getAlgo())) { errorMessage = MessageTag.ASCCM_ANS_1; return false; if (!isIn(token.getDigestAlgoUsedToSignThisToken(), acceptableDigestAlgo.getAlgo())) { errorMessage = MessageTag.ASCCM_ANS_2; return false; String keySize = token.getKeyLengthUsedToSignThisToken(); int tokenKeySize = 0; if (Utils.isStringDigits(keySize)) { tokenKeySize = Integer.parseInt(keySize); int expectedMinimumKeySize = getExpectedKeySize(token.getEncryptionAlgoUsedToSignThisToken(), miniPublicKeySize.getAlgo()); if (tokenKeySize < expectedMinimumKeySize) { errorMessage = MessageTag.ASCCM_ANS_3; Date expirationDate = getExpirationDate(token.getDigestAlgoUsedToSignThisToken(), algoExpirationDate.getAlgo(), algoExpirationDate.getFormat()); if (expirationDate == null) { errorMessage = MessageTag.ASCCM_ANS_4; String algoToFind = token.getEncryptionAlgoUsedToSignThisToken() + token.getKeyLengthUsedToSignThisToken(); expirationDate = getExpirationDate(algoToFind, algoExpirationDate.getAlgo(), algoExpirationDate.getFormat()); if (expirationDate == null) {
@Override protected void initChain() { String signingCertificateId = token.getSigningCertificateId(); Date intervalNotAfter = null; List<XmlChainItem> certificateChain = token.getCertificateChain(); for (XmlChainItem certChainItem : certificateChain) { CertificateWrapper certificate = diagnosticData.getUsedCertificateById(certChainItem.getId()); certificateChain = token.getCertificateChain(); for (XmlChainItem certChainItem : certificateChain) { CertificateWrapper certificate = diagnosticData.getUsedCertificateById(certChainItem.getId());
if (controlTime != null && poe.isPOEExists(token.getId(), controlTime)) { Date bestSignatureTime = poe.getLowestPOE(token.getId(), controlTime); CertificateWrapper signingCertificate = diagnosticData.getUsedCertificateById(token.getSigningCertificateId());
@Override protected boolean process() { String signingCertificateId = token.getSigningCertificateId(); CertificateWrapper certificate = diagnosticData.getUsedCertificateByIdNullSafe(signingCertificateId); return Utils.areStringsEqual(signingCertificateId, certificate.getId()); }
@Override protected void addAdditionalInfo() { super.addAdditionalInfo(); if (token.getCertificateChain() != null) { XmlCertificateChain certificateChain = new XmlCertificateChain(); for (eu.europa.esig.dss.jaxb.diagnostic.XmlChainItem diagnosticChainItem : token.getCertificateChain()) { XmlChainItem chainItem = new XmlChainItem(); chainItem.setId(diagnosticChainItem.getId()); chainItem.setSource(diagnosticChainItem.getSource()); certificateChain.getChainItem().add(chainItem); } result.setCertificateChain(certificateChain); } }
List<XmlDigestMatcher> digestMatchers = token.getDigestMatchers(); if (Utils.isCollectionNotEmpty(digestMatchers)) { for (XmlDigestMatcher digestMatcher : digestMatchers) {
List<String> certificateChainIds = token.getCertificateChainIds(); if (Utils.isCollectionNotEmpty(certificateChainIds)) {
private XmlXCV executeX509CertificateValidation() { if (Context.CERTIFICATE.equals(context)) { CertificateWrapper certificate = (CertificateWrapper) token; X509CertificateValidation xcv = new X509CertificateValidation(diagnosticData, certificate, currentTime, certificate.getNotBefore(), context, policy); return xcv.execute(); } else { CertificateWrapper certificate = diagnosticData.getUsedCertificateById(token.getSigningCertificateId()); if (certificate != null) { if (Context.SIGNATURE.equals(context) || Context.COUNTER_SIGNATURE.equals(context)) { X509CertificateValidation xcv = new X509CertificateValidation(diagnosticData, certificate, currentTime, certificate.getNotBefore(), context, policy); return xcv.execute(); } else if (Context.TIMESTAMP.equals(context)) { X509CertificateValidation xcv = new X509CertificateValidation(diagnosticData, certificate, currentTime, ((TimestampWrapper) token).getProductionTime(), context, policy); return xcv.execute(); } else if (Context.REVOCATION.equals(context)) { X509CertificateValidation xcv = new X509CertificateValidation(diagnosticData, certificate, currentTime, ((RevocationWrapper) token).getProductionDate(), context, policy); return xcv.execute(); } } } return null; }
public XmlBasicBuildingBlocks execute() { XmlBasicBuildingBlocks result = new XmlBasicBuildingBlocks(); result.setId(token.getId()); result.setType(context); result.setConclusion(new XmlConclusion());