public final class AOODFSigner extends java.lang.Object implements AOSigner
Constructor and Description |
---|
AOODFSigner() |
Modifier and Type | Method and Description |
---|---|
byte[] |
cosign(byte[] data,
byte[] sign,
java.lang.String algorithm,
java.security.PrivateKey key,
java.security.cert.Certificate[] certChain,
java.util.Properties extraParams)
Añade una firma electrónica a un documento ODF.
|
byte[] |
cosign(byte[] sign,
java.lang.String algorithm,
java.security.PrivateKey key,
java.security.cert.Certificate[] certChain,
java.util.Properties extraParams)
Añade una firma electrónica a un documento ODF.
|
byte[] |
countersign(byte[] sign,
java.lang.String algorithm,
CounterSignTarget targetType,
java.lang.Object[] targets,
java.security.PrivateKey key,
java.security.cert.Certificate[] certChain,
java.util.Properties extraParams)
Método no implementado.
|
byte[] |
getData(byte[] signData)
Si la entrada es un documento ODF, devuelve el mismo documento sin ninguna modificación.
|
java.lang.String |
getSignedName(java.lang.String originalName,
java.lang.String inText)
Devuelve el nombre de fichero de firma recomendado para el resultado de firmar un fichero
con el nombre proporcionado.
|
AOTreeModel |
getSignersStructure(byte[] sign,
boolean asSimpleSignInfo)
Recupera el árbol de nodos de firma de una firma electrónica.
|
AOSignInfo |
getSignInfo(byte[] signData)
Obtiene la información general de un objeto de firma.
|
boolean |
isSign(byte[] signData)
Indica si los datos indicados son un documento ODF susceptible de contener una firma
electrónica.
|
boolean |
isValidDataFile(byte[] data)
Indica si los datos son un documento ODF susceptible de ser firmado.
|
byte[] |
sign(byte[] data,
java.lang.String algorithm,
java.security.PrivateKey key,
java.security.cert.Certificate[] certChain,
java.util.Properties xParams)
Añade una firma electrónica a un documento ODF.
|
public byte[] sign(byte[] data, java.lang.String algorithm, java.security.PrivateKey key, java.security.cert.Certificate[] certChain, java.util.Properties xParams) throws AOException
sign
in interface AOSimpleSigner
data
- Documento ODF a firmaralgorithm
- Se ignora el valor de este parámetro, se utiliza siempre el algoritmo SHA1withRSAkey
- Clave privada a usar para firmarcertChain
- Cadena de certificados del firmantexParams
- Parámetros adicionales para la firma.
Se aceptan los siguientes valores en el parámetro xParams
:
true
fuerza la generación de firmas en formato OpenOffice.org 3.1. Las firmas en formato
OpenOffice.org 3.1 no son compatibles ni con versiones anteriores ni con posteriores, incluyendo LibreOffice.
AOException
- Cuando ocurre cualquier problema durante el procesopublic byte[] cosign(byte[] data, byte[] sign, java.lang.String algorithm, java.security.PrivateKey key, java.security.cert.Certificate[] certChain, java.util.Properties extraParams) throws AOException, java.io.IOException
sign(byte[], String, PrivateKeyEntry, Properties)
.cosign
in interface AOCoSigner
data
- No usado, se ignora el valor de este parámetrosign
- Documento ODF a firmaralgorithm
- Se ignora el valor de este parámetro, se utiliza siempre el algoritmo SHA1withRSAkey
- Clave privada a usar para firmarcertChain
- Cadena de certificados del firmanteextraParams
- Parámetros adicionales para la firma.
Se aceptan los siguientes valores en el parámetro xParams
:
true
fuerza la generación de firmas en formato OpenOffice.org 3.1. Las firmas en formato
OpenOffice.org 3.1 no son compatibles ni con versiones anteriores ni con posteriores, incluyendo LibreOffice.
AOException
- Cuando ocurre cualquier problema durante el procesojava.io.IOException
- Cuando hay errores de entrada / salidapublic byte[] cosign(byte[] sign, java.lang.String algorithm, java.security.PrivateKey key, java.security.cert.Certificate[] certChain, java.util.Properties extraParams) throws AOException, java.io.IOException
sign(byte[], String, PrivateKeyEntry, Properties)
.cosign
in interface AOCoSigner
sign
- Documento ODF a firmaralgorithm
- Se ignora el valor de este parámetro, se utiliza siempre el algoritmo SHA1withRSAkey
- Clave privada a usar para firmarcertChain
- Cadena de certificados del firmanteextraParams
- Parámetros adicionales para la firma.
Se aceptan los siguientes valores en el parámetro xParams
:
true
fuerza la generación de firmas en formato OpenOffice.org 3.1. Las firmas en formato
OpenOffice.org 3.1 no son compatibles ni con versiones anteriores ni con posteriores, incluyendo LibreOffice.
AOException
- Cuando ocurre cualquier problema durante el procesojava.io.IOException
- Cuando hay errores de entrada / salidapublic byte[] countersign(byte[] sign, java.lang.String algorithm, CounterSignTarget targetType, java.lang.Object[] targets, java.security.PrivateKey key, java.security.cert.Certificate[] certChain, java.util.Properties extraParams) throws AOException
UnsupportedOperationException
.countersign
in interface AOCounterSigner
sign
- Flujo de lectura de los datos a firmar.algorithm
- Algoritmo a usar para la firma (SHA1withRSA, SHA512withRSA, etc.).targetType
- Tipo de objetivo de la contrafirma.targets
- Información complementaria según el tipo de objetivo de la contrafirma.key
- Clave privada a usar para firmar.certChain
- Cadena de certificados del firmante.extraParams
- Parámetros adicionales para la contrafirma.AOException
- Cuando ocurre cualquier problema durante el proceso.public AOTreeModel getSignersStructure(byte[] sign, boolean asSimpleSignInfo) throws AOInvalidFormatException, java.io.IOException
AOSimpleSignInfo
con la
información básica de las firmas individuales, según
el valor del parámetro asSimpleSignInfo
. Los nodos se
mostrarán en el mismo orden y con la misma estructura con el que
aparecen en la firma electrónica.getSignersStructure
in interface AOSigner
sign
- Firma electrónica de la que se desea obtener la estructura.asSimpleSignInfo
- Si es true
se devuelve un árbol con la
información básica de cada firma individual
mediante objetos AOSimpleSignInfo
, si es false
un árbol con los nombres (CN X.500) de los
titulares de los certificados.null
en caso de error.AOInvalidFormatException
- Si no se ha introducido un fichero de firma válido del formato correspondiente.java.io.IOException
- Si ocurren problemas relacionados con la lectura de la firmapublic boolean isSign(byte[] signData) throws java.io.IOException
isSign
in interface AOSigner
signData
- Datos que deseamos comprobar.true
si los datos indicados son un documento ODF susceptible de contener una firma
electrónica, false
en caso contrario.java.io.IOException
- Si ocurren problemas durante la lectura de la firmapublic boolean isValidDataFile(byte[] data)
isValidDataFile
in interface AOSigner
data
- Datos a comprobartrue
si los datos son un documento ODF susceptible de ser firmado, false
en caso contrariopublic java.lang.String getSignedName(java.lang.String originalName, java.lang.String inText)
getSignedName
in interface AOSigner
originalName
- Nombre del fichero original que se firmainText
- Partícula intermedia que agregar al nombre del fichero de
firma.public byte[] getData(byte[] signData) throws AOInvalidFormatException, java.io.IOException
getData
in interface AOSigner
signData
- Documento ODFnull
en cualquier otro casojava.io.IOException
- Si ocurren problemas al leer la firmaAOInvalidFormatException
- Si no se ha introducido un fichero de firma válido o no
ha podido leerse la firma.public AOSignInfo getSignInfo(byte[] signData) throws AOException, java.io.IOException
getSignInfo
in interface AOSigner
signData
- Firma que se desea analizar.AOInvalidFormatException
- Cuando la firma introducida no es un objeto de firma
reconocido por este manejador.AOException
- Ocurrió un error durante la recuperación de los
datos.java.io.IOException
- Si ocurren problemas relacionados con la lectura de la firma.