be.fedict.eid.applet.service.signer.facets
Class XAdESXLSignatureFacet
java.lang.Object
be.fedict.eid.applet.service.signer.facets.XAdESXLSignatureFacet
- All Implemented Interfaces:
- SignatureFacet
public class XAdESXLSignatureFacet
- extends Object
- implements SignatureFacet
XAdES-X-L v1.4.1 signature facet. This signature facet implementation will
upgrade a given XAdES-BES/EPES signature to XAdES-X-L.
We don't inherit from XAdESSignatureFacet as we also want to be able to use
this facet out of the context of a signature creation. This signature facet
assumes that the signature is already XAdES-BES/EPES compliant.
This implementation has been tested against an implementation that
participated multiple ETSI XAdES plugtests.
- Author:
- Frank Cornelis
- See Also:
XAdESSignatureFacet
Method Summary |
static Element |
createNamespaceElement(Node documentNode)
|
static be.fedict.eid.applet.service.signer.jaxb.xades132.XAdESTimeStampType |
createXAdESTimeStamp(byte[] data,
RevocationData revocationData,
String c14nAlgoId,
TimeStampService timeStampService,
be.fedict.eid.applet.service.signer.jaxb.xades132.ObjectFactory objectFactory,
be.fedict.eid.applet.service.signer.jaxb.xmldsig.ObjectFactory xmldsigObjectFactory)
|
static be.fedict.eid.applet.service.signer.jaxb.xades132.XAdESTimeStampType |
createXAdESTimeStamp(List<Node> nodeList,
RevocationData revocationData,
String c14nAlgoId,
TimeStampService timeStampService,
be.fedict.eid.applet.service.signer.jaxb.xades132.ObjectFactory objectFactory,
be.fedict.eid.applet.service.signer.jaxb.xmldsig.ObjectFactory xmldsigObjectFactory)
|
static Node |
findSingleNode(Node baseNode,
String xpathExpression,
Element nsElement)
|
static byte[] |
getC14nValue(List<Node> nodeList,
String c14nAlgoId)
|
static NodeList |
getNodes(Node baseNode,
String xpathExpression,
Element nsElement)
|
void |
postSign(Element signatureElement,
List<X509Certificate> signingCertificateChain)
This method is being invoked by the XML signature service engine during
the post-sign phase. |
void |
preSign(XMLSignatureFactory signatureFactory,
Document document,
String signatureId,
List<X509Certificate> signingCertificateChain,
List<Reference> references,
List<XMLObject> objects)
This method is being invoked by the XML signature service engine during
pre-sign phase. |
void |
setCanonicalizerAlgorithm(String c14nAlgoId)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
XADES_NAMESPACE
public static final String XADES_NAMESPACE
- See Also:
- Constant Field Values
XADES141_NAMESPACE
public static final String XADES141_NAMESPACE
- See Also:
- Constant Field Values
XAdESXLSignatureFacet
public XAdESXLSignatureFacet(TimeStampService timeStampService,
RevocationDataService revocationDataService)
- Convenience constructor.
- Parameters:
timeStampService
- the time-stamp service used for XAdES-T and XAdES-X.revocationDataService
- the optional revocation data service used for XAdES-C and
XAdES-X-L. When null
the signature will be
limited to XAdES-T only.
XAdESXLSignatureFacet
public XAdESXLSignatureFacet(TimeStampService timeStampService,
RevocationDataService revocationDataService,
String digestAlgorithm)
- Main constructor.
- Parameters:
timeStampService
- the time-stamp service used for XAdES-T and XAdES-X.revocationDataService
- the optional revocation data service used for XAdES-C and
XAdES-X-L. When null
the signature will be
limited to XAdES-T only.digestAlgorithm
- the digest algorithm to be used for construction of the
XAdES-X-L elements.
setCanonicalizerAlgorithm
public void setCanonicalizerAlgorithm(String c14nAlgoId)
findSingleNode
public static Node findSingleNode(Node baseNode,
String xpathExpression,
Element nsElement)
getNodes
public static NodeList getNodes(Node baseNode,
String xpathExpression,
Element nsElement)
postSign
public void postSign(Element signatureElement,
List<X509Certificate> signingCertificateChain)
- Description copied from interface:
SignatureFacet
- This method is being invoked by the XML signature service engine during
the post-sign phase. Via this method a signature facet can extend the XML
signatures with for example key information.
- Specified by:
postSign
in interface SignatureFacet
getC14nValue
public static byte[] getC14nValue(List<Node> nodeList,
String c14nAlgoId)
createNamespaceElement
public static Element createNamespaceElement(Node documentNode)
preSign
public void preSign(XMLSignatureFactory signatureFactory,
Document document,
String signatureId,
List<X509Certificate> signingCertificateChain,
List<Reference> references,
List<XMLObject> objects)
throws NoSuchAlgorithmException,
InvalidAlgorithmParameterException
- Description copied from interface:
SignatureFacet
- This method is being invoked by the XML signature service engine during
pre-sign phase. Via this method a signature facet implementation can add
signature facets to an XML signature.
- Specified by:
preSign
in interface SignatureFacet
signingCertificateChain
- the optional signing certificate chain
- Throws:
NoSuchAlgorithmException
InvalidAlgorithmParameterException
createXAdESTimeStamp
public static be.fedict.eid.applet.service.signer.jaxb.xades132.XAdESTimeStampType createXAdESTimeStamp(List<Node> nodeList,
RevocationData revocationData,
String c14nAlgoId,
TimeStampService timeStampService,
be.fedict.eid.applet.service.signer.jaxb.xades132.ObjectFactory objectFactory,
be.fedict.eid.applet.service.signer.jaxb.xmldsig.ObjectFactory xmldsigObjectFactory)
createXAdESTimeStamp
public static be.fedict.eid.applet.service.signer.jaxb.xades132.XAdESTimeStampType createXAdESTimeStamp(byte[] data,
RevocationData revocationData,
String c14nAlgoId,
TimeStampService timeStampService,
be.fedict.eid.applet.service.signer.jaxb.xades132.ObjectFactory objectFactory,
be.fedict.eid.applet.service.signer.jaxb.xmldsig.ObjectFactory xmldsigObjectFactory)
Copyright © 2008-2010 FedICT. All Rights Reserved.