Class PadesSignature
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.pades.PadesSignature
- All Implemented Interfaces:
 Signature<Object>,SignatureObject
public class PadesSignature extends Object implements Signature<Object>
Esta classe representa uma assinatura PAdES.
- 
Constructor Summary
Constructors Constructor Description PadesSignature(org.apache.pdfbox.pdmodel.PDDocument document, org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, byte[] pdfBytes)Construtor - 
Method Summary
Modifier and Type Method Description voidaddDocTimestamp(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature timestamp)voidaddUnsignedAttribute(SignatureAttribute<Object> attribute)Adiciona um atributo não-assinadobooleanequals(Object obj)StringgetAlgorithmOid()List<String>getAttributeList()Retorna a lista de atributos da assinaturaCadesSignatureContainergetCadesContainer()CadesSignaturegetCadesSignature()List<? extends Signature<Object>>getCounterSignatures()List<org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature>getDocTimestamps()org.apache.pdfbox.pdmodel.PDDocumentgetDocument()Retorna o documento assinadoorg.apache.pdfbox.cos.COSDictionarygetDssDictionary()Retorna Encontra na estrutura do pdf o dicionário de DSS da assinaturaorg.apache.pdfbox.cos.COSDictionarygetEncodedAttribute(String identifier, Integer index)Retorna o atributo correspondente ao identificador ou índice dadoFileFormatgetFormat()List<String>getPadesAttributes()byte[]getPdfBytes()Retorna os bytes da documento assinadoorg.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignaturegetSignatureObject()StringgetSignatureType()Retorna o tipo da assinaturaList<String>getSignedAttributeList()Retorna a lista de atributos assinadosList<String>getUnsignedAttributeList()Retorna a lista de atributos não-assinadosinthashCode()voidreload(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, org.apache.pdfbox.pdmodel.PDDocument document, byte[] pdfBytes, List<org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature> pdSignatures)voidreplaceUnsignedAttribute(SignatureAttribute<Object> attribute, int index)Substitui um atributo não-assinadovoidsetDssDictionary(org.apache.pdfbox.pdmodel.PDDocument pdDocument)Encontra na estrutura do pdf o dicionário de DSS da assinatura e atribui à variáveldssDictionaryvoidupdateCadesContainer()Atualiza o conteúdo do container CAdES com os bytes do PDF. 
- 
Constructor Details
- 
PadesSignature
public PadesSignature(org.apache.pdfbox.pdmodel.PDDocument document, org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, byte[] pdfBytes) throws VerificationExceptionConstrutor- Parameters:
 document- O documento assinadosignature- A assinatura PAdESpdfBytes- Bytes do documento- Throws:
 VerificationException
 
 - 
 - 
Method Details
- 
updateCadesContainer
Atualiza o conteúdo do container CAdES com os bytes do PDF. Essa função deve ser chamada antes da assinatura ser verificada peloCadesVerifier- Throws:
 PbadException- Se ocorrer um erro ao atualizar o container CAdES
 - 
addDocTimestamp
public void addDocTimestamp(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature timestamp) - 
getCadesContainer
 - 
getCadesSignature
 - 
getDssDictionary
public org.apache.pdfbox.cos.COSDictionary getDssDictionary()Retorna Encontra na estrutura do pdf o dicionário de DSS da assinatura- Returns:
 COSDictionaryde DSS da assinatura
 - 
setDssDictionary
public void setDssDictionary(org.apache.pdfbox.pdmodel.PDDocument pdDocument)Encontra na estrutura do pdf o dicionário de DSS da assinatura e atribui à variáveldssDictionary- Parameters:
 pdDocument- Indica o documento onde deve ser retirado o dicionário
 - 
addUnsignedAttribute
public void addUnsignedAttribute(SignatureAttribute<Object> attribute) throws SignatureAttributeExceptionDescription copied from interface:SignatureAdiciona um atributo não-assinado- Specified by:
 addUnsignedAttributein interfaceSignature<Object>- Parameters:
 attribute- atributo a ser adicionado na assintura- Throws:
 SignatureAttributeException
 - 
replaceUnsignedAttribute
public void replaceUnsignedAttribute(SignatureAttribute<Object> attribute, int index) throws SignatureAttributeExceptionDescription copied from interface:SignatureSubstitui um atributo não-assinado- Specified by:
 replaceUnsignedAttributein interfaceSignature<Object>- Parameters:
 attribute- atributo a ser substituídoindex- índice do atributo a ser substituído- Throws:
 SignatureAttributeException
 - 
getAttributeList
Retorna a lista de atributos da assinatura- Specified by:
 getAttributeListin interfaceSignature<Object>- Returns:
 - A lista de atributos da assinatura
 
 - 
getSignedAttributeList
Description copied from interface:SignatureRetorna a lista de atributos assinados- Specified by:
 getSignedAttributeListin interfaceSignature<Object>- Returns:
 - lista de atributos assinados
 
 - 
getUnsignedAttributeList
Description copied from interface:SignatureRetorna a lista de atributos não-assinados- Specified by:
 getUnsignedAttributeListin interfaceSignature<Object>- Returns:
 - lista de atributos não-assinados
 
 - 
getPadesAttributes
 - 
getCounterSignatures
- Specified by:
 getCounterSignaturesin interfaceSignature<Object>
 - 
getEncodedAttribute
public org.apache.pdfbox.cos.COSDictionary getEncodedAttribute(String identifier, Integer index) throws SignatureAttributeNotFoundExceptionDescription copied from interface:SignatureRetorna o atributo correspondente ao identificador ou índice dado- Specified by:
 getEncodedAttributein interfaceSignature<Object>- Parameters:
 identifier- o identificador do atributoindex- o índice do atributo- Returns:
 - o elemento XML do atributo na assinatura
 - Throws:
 SignatureAttributeNotFoundException
 - 
getFormat
 - 
getAlgorithmOid
- Specified by:
 getAlgorithmOidin interfaceSignature<Object>
 - 
getPdfBytes
public byte[] getPdfBytes()Retorna os bytes da documento assinado- Returns:
 - Os bytes do documento
 
 - 
getSignatureType
Retorna o tipo da assinatura- Returns:
 - O tipo da assinatura
 
 - 
getDocTimestamps
 - 
getDocument
public org.apache.pdfbox.pdmodel.PDDocument getDocument()Retorna o documento assinado- Returns:
 - O documento assinado
 
 - 
getSignatureObject
public org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature getSignatureObject() - 
equals
 - 
hashCode
public int hashCode() - 
reload
public void reload(org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature signature, org.apache.pdfbox.pdmodel.PDDocument document, byte[] pdfBytes, List<org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature> pdSignatures) throws IOException, PbadException- Throws:
 IOExceptionPbadException
 
 -