Class CertificateVerifier
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.validationService.CertificateValidationService
br.ufsc.labsec.signature.conformanceVerifier.certificate.CertificateVerifier
- All Implemented Interfaces:
CertificateValidation
,Verifier
public class CertificateVerifier extends CertificateValidationService implements Verifier
Implementa a verificação de certificados, responsável por validar um certificado
e criar relatórios detalhados sobre seu status.
Estende o serviço de validação de certificados e implementa a interface Verifier.
-
Nested Class Summary
Nested classes/interfaces inherited from interface br.ufsc.labsec.signature.CertificateValidation
CertificateValidation.Validate
-
Field Summary
Fields inherited from class br.ufsc.labsec.signature.conformanceVerifier.validationService.CertificateValidationService
SKIP_OLD_TIME_REFERENCES_WITH_NO_CACHE, vsRepository
-
Constructor Summary
Constructors Constructor Description CertificateVerifier(Application app)
Construtor do verificador de certificados. -
Method Summary
Modifier and Type Method Description boolean
clear()
Limpa os estados do verificador para que este esteja pronto para uma nova verificaçãoList<String>
getAvailableAttributes()
Obtém uma lista dos atributos que podem ser inseridos na assinatura selecionadaLinkedList<X509Certificate>
getCertificatesFromPath(CertPath certPath, X509Certificate x509Certificate)
Extrai a lista de certificados X.509 de um caminho de certificação.CertPath
getCertPath(Certificate certificate)
Component
getComponent()
List<String>
getMandatedAttributes()
X509Certificate
getSigningCertificateSigReport(SignatureReport sigReport)
Busca certificado do assinante de um relatório de assinaturaboolean
hasSignedData()
boolean
needSignedContent()
void
report(Report report, SignatureBytesWrapper wrapper)
void
selectTarget(SignatureBytesWrapper wrapper)
Seleciona e valida os bytes da assinatura a serem verificados.boolean
supports(byte[] signature, byte[] detached)
Methods inherited from class br.ufsc.labsec.signature.conformanceVerifier.validationService.CertificateValidationService
createCertStore, generateCertPath, generateCertPath, generateCertPath, generateCertPath, getCertPathOCSPResponses, getCRLFromCertificateAndIssuer, getCRLFromCertificateAndSelector, getCRLFromSelector, getCRLIssuer, getCRLIssuerCertificate, getCRLsFromCertificate, getCRLsFromSelector, getIssuerCertificate, getOCSPResponse, postValidate, validate, validate, validate, validateAttributeCertificate, validateAttributeCertificate, validateAttributeCertificateWithReport, validateCertificateAlgorithm, validateCertificateKey, validateWithReport
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface br.ufsc.labsec.signature.CertificateValidation
getCRLFromCertificateAndIssuer, getCRLFromCertificateAndSelector, getCRLFromCertificateWithoutIssuer, getCRLFromCertificateWithoutIssuer, getCRLFromSelector, getCRLsFromSelector
Methods inherited from interface br.ufsc.labsec.signature.Verifier
checkLastCertificateName, getUpdatedSignatureBytes, isAnchored, isGovBr, isICPBr
-
Constructor Details
-
CertificateVerifier
Construtor do verificador de certificados.- Parameters:
app
- A aplicação que contém os componentes necessários
-
-
Method Details
-
report
public void report(Report report, SignatureBytesWrapper wrapper) throws VerificationException, InterruptedException- Specified by:
report
in interfaceVerifier
- Throws:
VerificationException
InterruptedException
-
selectTarget
Seleciona e valida os bytes da assinatura a serem verificados.- Parameters:
wrapper
- Invólucro contendo os bytes da assinatura- Throws:
VerificationException
- Se não for possível obter a assinatura
-
getCertificatesFromPath
public LinkedList<X509Certificate> getCertificatesFromPath(CertPath certPath, X509Certificate x509Certificate)Extrai a lista de certificados X.509 de um caminho de certificação. Quando necessário, adiciona o ponto de confiança ao final da lista.- Parameters:
certPath
- O caminho de certificaçãox509Certificate
- O certificado do assinante- Returns:
- Lista encadeada contendo os certificados do caminho
-
getComponent
- Specified by:
getComponent
in interfaceVerifier
-
getAvailableAttributes
Description copied from interface:Verifier
Obtém uma lista dos atributos que podem ser inseridos na assinatura selecionada- Specified by:
getAvailableAttributes
in interfaceVerifier
-
getSigningCertificateSigReport
Description copied from interface:Verifier
Busca certificado do assinante de um relatório de assinatura- Specified by:
getSigningCertificateSigReport
in interfaceVerifier
- Parameters:
sigReport
- Relatório da assinatura que deseja descobrir o assinante- Returns:
- Certificado do assinate
-
clear
public boolean clear()Description copied from interface:Verifier
Limpa os estados do verificador para que este esteja pronto para uma nova verificação -
getMandatedAttributes
- Specified by:
getMandatedAttributes
in interfaceVerifier
-
supports
- Specified by:
supports
in interfaceVerifier
- Throws:
SignatureNotICPBrException
-
needSignedContent
public boolean needSignedContent()- Specified by:
needSignedContent
in interfaceVerifier
-
hasSignedData
public boolean hasSignedData()- Specified by:
hasSignedData
in interfaceVerifier
-
getCertPath
- Specified by:
getCertPath
in interfaceVerifier
-