/** * This method returns the first signature id. * * @return */ public String getFirstSignatureId() { final List<String> signatureIdList = getSignatureIdList(); if (signatureIdList.size() > 0) { return signatureIdList.get(0); } return null; }
private boolean validateTslSignature(final List<X509Certificate> signingCertList, final byte[] bytes) { boolean coreValidity = false; if (signingCertList != null) { final XMLDocumentValidator xmlDocumentValidator = prepareSignatureValidation(signingCertList, bytes); final List<AdvancedSignature> signatures = xmlDocumentValidator.getSignatures(); if (signatures.size() == 0) { throw new DSSException("Not ETSI compliant signature. The Xml is not signed."); } final Reports reports = xmlDocumentValidator.validateDocument(); final SimpleReport simpleReport = reports.getSimpleReport(); final List<String> signatureIdList = simpleReport.getSignatureIdList(); final String signatureId = signatureIdList.get(0); final String indication = simpleReport.getIndication(signatureId); coreValidity = Indication.VALID.equals(indication); LOG.info("The TSL signature validity: " + coreValidity); if (!coreValidity) { LOG.info("The TSL signature validity details:\n" + simpleReport); throw new DSSException("Not ETSI compliant signature. The signature is not valid."); } } return coreValidity; }