Class JadesSignatureContainer
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.jades.JadesSignatureContainer
- All Implemented Interfaces:
SignatureContainer<JadesSignature>, AutoCloseable, Iterable<JadesSignature>, org.bouncycastle.util.Encodable
Esta classe representa um contêiner de assinaturas JAdES.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Base64.Decoderstatic final Base64.EncoderCodificador e decodificador Base64static final Base64.Decoderstatic final Base64.EncoderCodificador e decodificador Base64URLstatic final shortstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final String -
Constructor Summary
ConstructorsConstructorDescriptionJadesSignatureContainer(byte[] target) ConstrutorJadesSignatureContainer(InputStream signatureStream, InputStream detachedStream) ConstrutorJadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature) Construtor de assinatura sem atributos não-assinados.JadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature, boolean isDetached) Construtor de assinatura sem atributos não-assinados.JadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature, org.json.JSONObject unprotectedHeader, boolean isDetached) Construtor de assinatura contendo atributos não-assinados. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSignature(JadesSignature signature) Adiciona uma assinatura na lista de assinaturas do arquivovoidaddSignature(String encodedProtectedHeader, String encodedSignature, org.json.JSONObject unprotectedHeader) Adiciona uma assinatura na lista de assinaturas do arquivovoidCaptura informações iniciais sobre as assinaturasvoidencode(OutputStream outputStream) Escreve a assinatura, já codificada para seu formato, noOutputStreamdesejadoRetorna a mensagem assinada codificadaRetorna a mensagem assinada decodificadagetSignatureAt(int index) Retorna a assinatura no índice dadointRetorna a quantidade de assinaturas no arquivoRetorna as assinaturas no arquivobooleanVerifica se o arquivo possui assinatura com conteúdo destacadobooleanRetorna se a assinatura é ou não destacada@NotNull Iterator<JadesSignature> iterator()voidsetEtsiuEncod(JadesSignature.ContentEncod etsiuEncod) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Iterable
forEach, spliteratorMethods inherited from interface SignatureContainer
close, getEncoded, getFirstSignature, getIndexOfSignature, getLastSignature, isEmpty, stream
-
Field Details
-
COMPACT_SERIALIZATION_PARTS
public static final short COMPACT_SERIALIZATION_PARTS- See Also:
-
NOT_ENOUGH_PARTS
- See Also:
-
COMPACT_SERIALIZATION_SEPARATOR
- See Also:
-
JSON_SERIALIZATION_PAYLOAD
- See Also:
-
JSON_SERIALIZATION_SIGNATURES
- See Also:
-
JSON_SERIALIZATION_PROTECTED
- See Also:
-
JSON_SERIALIZATION_SIGNATURE
- See Also:
-
JSON_SERIALIZATION_HEADER
- See Also:
-
base64Encoder
Codificador e decodificador Base64 -
base64Decoder
-
base64UrlEncoder
Codificador e decodificador Base64URL -
base64UrlDecoder
-
-
Constructor Details
-
JadesSignatureContainer
public JadesSignatureContainer(InputStream signatureStream, InputStream detachedStream) throws SignatureException Construtor- Parameters:
signatureStream- Arquivo de assinaturadetachedStream- Arquivo com o conteúdo assinado- Throws:
SignatureException
-
JadesSignatureContainer
Construtor- Parameters:
target- Stream de bytes do documento assinado- Throws:
VerificationException- Exceção caso os bytes do arquivo sejam inválidosSignatureException
-
JadesSignatureContainer
public JadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature) throws SignatureException, VerificationException Construtor de assinatura sem atributos não-assinados.- Parameters:
encodedProtectedHeader- Protected headers codificadosencodedSignature- A assinatura codificada- Throws:
SignatureExceptionVerificationException
-
JadesSignatureContainer
public JadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature, boolean isDetached) throws SignatureException, VerificationException Construtor de assinatura sem atributos não-assinados.- Parameters:
encodedProtectedHeader- Protected headers codificadosencodedSignature- A assinatura codificada- Throws:
SignatureExceptionVerificationException
-
JadesSignatureContainer
public JadesSignatureContainer(String payload, String encodedProtectedHeader, String encodedSignature, org.json.JSONObject unprotectedHeader, boolean isDetached) throws SignatureException, VerificationException Construtor de assinatura contendo atributos não-assinados.- Parameters:
encodedProtectedHeader- Protected headers codificadosencodedSignature- A assinatura codificadaunprotectedHeader- Unprotected headers- Throws:
SignatureExceptionVerificationException
-
-
Method Details
-
captureInitialSignatureInformation
Description copied from interface:SignatureContainerCaptura informações iniciais sobre as assinaturas- Specified by:
captureInitialSignatureInformationin interfaceSignatureContainer<JadesSignature>- Parameters:
generator- gerador do relatório inicial das assinaturas
-
getSignatures
Retorna as assinaturas no arquivo- Specified by:
getSignaturesin interfaceSignatureContainer<JadesSignature>- Returns:
- As assinaturas no arquivo
-
hasDetachedContent
public boolean hasDetachedContent()Verifica se o arquivo possui assinatura com conteúdo destacado- Specified by:
hasDetachedContentin interfaceSignatureContainer<JadesSignature>- Returns:
- Indica se o arquivo possui conteúdo destacado
-
getPayload
Retorna a mensagem assinada decodificada- Returns:
- A mensagem assinada decodificada
-
getEncodedPayload
Retorna a mensagem assinada codificada- Returns:
- A mensagem assinada codificada
-
addSignature
public void addSignature(String encodedProtectedHeader, String encodedSignature, org.json.JSONObject unprotectedHeader) throws SignatureException Adiciona uma assinatura na lista de assinaturas do arquivo- Parameters:
encodedProtectedHeader- Protected headers codificadosencodedSignature- A assinatura codificadaunprotectedHeader- Unprotected headers- Throws:
SignatureException
-
addSignature
Adiciona uma assinatura na lista de assinaturas do arquivo- Parameters:
signature- Assinatura
-
isDetached
public boolean isDetached()Retorna se a assinatura é ou não destacada -
encode
Escreve a assinatura, já codificada para seu formato, noOutputStreamdesejado- Specified by:
encodein interfaceSignatureContainer<JadesSignature>- Parameters:
outputStream- O stream que conterá a assinatura- Throws:
IOException- Exceção em caso de erro na transformação
-
getSignatureAt
Retorna a assinatura no índice dado- Specified by:
getSignatureAtin interfaceSignatureContainer<JadesSignature>- Parameters:
index- O índice da assinatura- Returns:
- A assinatura do índice dado
-
getSignatureCount
public int getSignatureCount()Retorna a quantidade de assinaturas no arquivo- Specified by:
getSignatureCountin interfaceSignatureContainer<JadesSignature>- Returns:
- A quantidade de assinaturas no arquivo
-
setEtsiuEncod
-
iterator
- Specified by:
iteratorin interfaceIterable<JadesSignature>
-