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 booleanclear()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.CertPathgetCertPath(Certificate certificate)ComponentgetComponent()byte[]getContainerBytes()List<String>getMandatedAttributes()X509CertificategetSigningCertificateSigReport(SignatureReport sigReport)Busca certificado do assinante de um relatório de assinaturabooleanhasSignedData()booleanneedSignedContent()voidreport(Report report, SignatureWrapper wrapper)voidselectTarget(SignatureWrapper wrapper)Seleciona e valida os bytes da assinatura a serem verificados.booleansignatureContainerChanged()Verifica se o container de assinatura foi alterado para verificaçãobooleansupports(byte[] signature, byte[] detached)Methods inherited from class br.ufsc.labsec.signature.conformanceVerifier.validationService.CertificateValidationService
createCertStore, createCertStoreVariable, generateCertPath, generateCertPath, generateCertPath, generateCertPath, getCertPathOCSPResponses, getCRLFromCertificateAndIssuer, getCRLFromCertificateAndSelector, getCRLFromSelector, getCRLIssuer, getCRLIssuerCertificate, getCRLsFromCertificate, getCRLsFromSelector, getIssuerCertificate, getOCSPResponse, postValidate, validate, validate, validate, validateAttributeCertificate, validateAttributeCertificate, validateAttributeCertificateWithReport, validateCertificateAlgorithm, validateCertificateKey, validateWithReportMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface br.ufsc.labsec.signature.CertificateValidation
getCRLFromCertificateAndIssuer, getCRLFromCertificateAndSelector, getCRLFromCertificateWithoutIssuer, getCRLFromCertificateWithoutIssuer, getCRLFromSelector, getCRLsFromSelectorMethods inherited from interface br.ufsc.labsec.signature.Verifier
checkLastCertificateName, 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, SignatureWrapper wrapper) throws VerificationException, InterruptedException- Specified by:
 reportin interfaceVerifier- Throws:
 VerificationExceptionInterruptedException
 - 
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:
 getComponentin interfaceVerifier
 - 
getAvailableAttributes
Description copied from interface:VerifierObtém uma lista dos atributos que podem ser inseridos na assinatura selecionada- Specified by:
 getAvailableAttributesin interfaceVerifier
 - 
getSigningCertificateSigReport
Description copied from interface:VerifierBusca certificado do assinante de um relatório de assinatura- Specified by:
 getSigningCertificateSigReportin interfaceVerifier- Parameters:
 sigReport- Relatório da assinatura que deseja descobrir o assinante- Returns:
 - Certificado do assinate
 
 - 
clear
public boolean clear()Description copied from interface:VerifierLimpa os estados do verificador para que este esteja pronto para uma nova verificação - 
getMandatedAttributes
- Specified by:
 getMandatedAttributesin interfaceVerifier
 - 
supports
- Specified by:
 supportsin interfaceVerifier- Throws:
 SignatureNotICPBrException
 - 
needSignedContent
public boolean needSignedContent()- Specified by:
 needSignedContentin interfaceVerifier
 - 
hasSignedData
public boolean hasSignedData()- Specified by:
 hasSignedDatain interfaceVerifier
 - 
getCertPath
- Specified by:
 getCertPathin interfaceVerifier
 - 
getContainerBytes
public byte[] getContainerBytes()- Specified by:
 getContainerBytesin interfaceVerifier
 - 
signatureContainerChanged
public boolean signatureContainerChanged()Description copied from interface:VerifierVerifica se o container de assinatura foi alterado para verificação- Specified by:
 signatureContainerChangedin interfaceVerifier- Returns:
 - true se o container de assinatura foi alterado, false caso contrário
 
 
 -