Class XadesContainerGenerator
java.lang.Object
br.ufsc.labsec.signature.signer.CompleteContainerGenerator<XadesInformation,Element,XadesSignature>
br.ufsc.labsec.signature.conformanceVerifier.xades.XadesContainerGenerator
- All Implemented Interfaces:
ContainerGenerator<XadesInformation,XadesSignature>
- Direct Known Subclasses:
CounterSignatureGenerator
public class XadesContainerGenerator extends CompleteContainerGenerator<XadesInformation,Element,XadesSignature>
Esta classe é utilizada apenas pela classe
ContainerGenerator
. Não deve ser utilizada pelo usuário.
Implementa ContainerGenerator
.-
Constructor Summary
Constructors Constructor Description XadesContainerGenerator(XadesSignatureComponent component)
Constrói umXadesContainerGenerator
a partir da Política de Assinatura usada na assinatura -
Method Summary
Modifier and Type Method Description static DigestMethod
digestMethodFromSuite(String suite)
static KeyPair
generateBogusKeyPair(PublicKey publicKey)
protected String
generateNewId()
Gera um número aleatório para ser usado como ID.protected SignatureContainer<XadesSignature>
generateSignature(FileToBeSigned<? extends XadesInformation> fileToBeSigned, List<SignatureAttribute<Element>> signedAttributes)
protected XMLSignatureFactory
getFactory()
Retorna umXMLSignatureFactory
que será usado na criação e montagem da assinatura.protected XMLObject
getQualifyingPropertiesObject(Document documentToSign, List<SignatureAttribute<Element>> signedAttributes)
protected DOMSignContext
getSignatureContext(FileToBeSigned<? extends XadesInformation> fileToBeSigned, Document documentToWriteSignature, PrivateKey privateKey)
Instancia um novo contexto de assinatura(DOMSignContext
), que é necessário para indicar, por exemplo, onde está o documento que vai ser assinadoprotected String
getSignatureId()
Retorna o identificador da assinaturaprotected String
getSignedAttributeId()
Retorna o identificados de atributo assinadoprotected XMLSignature
getXmlSignature(FileToBeSigned<? extends XadesInformation> fileToBeSigned, Document documentToSign, List<SignatureAttribute<Element>> signedAttributes)
Instancia uma novaXMLSignature
que é capaz de assinar documentos conforme o que está previsto na política de assinaturas AD-RBstatic SignatureMethod
signatureMethodFromSuite(String suite)
Methods inherited from class br.ufsc.labsec.signature.signer.CompleteContainerGenerator
generate
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.signer.ContainerGenerator
in, notIn
-
Constructor Details
-
XadesContainerGenerator
Constrói umXadesContainerGenerator
a partir da Política de Assinatura usada na assinatura- Parameters:
component
- Componente de assinatura XAdES
-
-
Method Details
-
generateSignature
protected SignatureContainer<XadesSignature> generateSignature(FileToBeSigned<? extends XadesInformation> fileToBeSigned, List<SignatureAttribute<Element>> signedAttributes) throws SignerException- Specified by:
generateSignature
in classCompleteContainerGenerator<XadesInformation,Element,XadesSignature>
- Throws:
SignerException
-
generateBogusKeyPair
public static KeyPair generateBogusKeyPair(PublicKey publicKey) throws NoSuchAlgorithmException, PscCertificateException -
getXmlSignature
protected XMLSignature getXmlSignature(FileToBeSigned<? extends XadesInformation> fileToBeSigned, Document documentToSign, List<SignatureAttribute<Element>> signedAttributes) throws SignatureAttributeException, AlgorithmException, CanonicalizationException, NoSuchAlgorithmException, TransformerExceptionInstancia uma novaXMLSignature
que é capaz de assinar documentos conforme o que está previsto na política de assinaturas AD-RB- Returns:
- Uma nova assinatura XML
- Throws:
SignatureAttributeException
- Exceção em caso de erro na busca dos atributos da assinaturaAlgorithmException
- Exceção caso o algoritmo de assinatura da PA seja inválidoXmlProcessingException
- Exceção em caso de erro na manipulação da estrutura XMLSignatureModeException
- Exceção em caso de modo de assinatura inválidoToBeSignedException
- Exceção em caso de erro na manipulação dos dados a serem assinadosXadesSignatureException
- Exceção em caso de erro na manipulação da assinatura XAdESCanonicalizationException
NoSuchAlgorithmException
TransformerException
-
getSignatureContext
protected DOMSignContext getSignatureContext(FileToBeSigned<? extends XadesInformation> fileToBeSigned, Document documentToWriteSignature, PrivateKey privateKey)Instancia um novo contexto de assinatura(DOMSignContext
), que é necessário para indicar, por exemplo, onde está o documento que vai ser assinado- Returns:
- O contexto de assinatura criado
-
digestMethodFromSuite
public static DigestMethod digestMethodFromSuite(String suite) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException -
signatureMethodFromSuite
public static SignatureMethod signatureMethodFromSuite(String suite) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException -
getQualifyingPropertiesObject
protected XMLObject getQualifyingPropertiesObject(Document documentToSign, List<SignatureAttribute<Element>> signedAttributes) throws SignatureAttributeExceptionTranforma o tipoDocument
, que representa a estrutura "QualyfiyingProperties" da assinatura que será gerada, em umXMLObject
para ser usado na API xml.cripto.dsig.- Returns:
- O
XMLObject
gerado - Throws:
SignatureAttributeException
- Exceção em caso de erro na busca dos atributos da assinaturaXmlProcessingException
- Exceção em caso de erro na manipulação da estrutura XMLXadesSignatureException
- Exceção em caso de erro na manipulação da assinatura XAdES
-
generateNewId
Gera um número aleatório para ser usado como ID. O alcance dessa aleatoriedade precisa ser grande para assegurar a não repetição do ID dentro da assinatura.- Returns:
- O identificador gerado
-
getSignatureId
Retorna o identificador da assinatura- Returns:
- O identificador da assinatura
-
getFactory
Retorna umXMLSignatureFactory
que será usado na criação e montagem da assinatura.- Returns:
- A instância do
XMLSignatureFactory
-
getSignedAttributeId
Retorna o identificados de atributo assinado- Returns:
- O identificador de atributo
-