Skip to content

A Java library for XAdES signature services

License

Notifications You must be signed in to change notification settings

jhuamanchumo/xades4j

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

XAdES4j is an high-level, configurable and extensible Java implementation of XML Advanced Electronic Signatures (XAdES 1.3.2 and 1.4.1). It enables producing, verifying and extending signatures in the main XAdES forms: XAdES-BES, XAdES-EPES, XAdES-T and XAdES-C. Also, extended forms are supported through the enrichment of an existing signature.

The API provides an high level of abstraction, handling all the structural details of XAdES. The library relies on Apache XML Security for the core XML-DSIG processing and uses Guice to assemble the different configurable components.

Package

The library is available on Maven.

<dependency>
  <groupId>com.googlecode.xades4j</groupId>
  <artifactId>xades4j</artifactId>
  <version>{version}</version>
</dependency>

Example

Document doc = /* parse XML document */;
// Define the signing key/certificate
KeyingDataProvider kp = FileSystemKeyStoreKeyingDataProvider
        .builder(/* key store location and type */)
        .build();
// Define the signed object
DataObjectDesc obj = new DataObjectReference("")
        .withTransform(new EnvelopedSignatureTransform())
        .withDataObjectFormat(new DataObjectFormatProperty("text/xml"));
// Create the signature
XadesSigner signer = new XadesBesSigningProfile(kp).newSigner();
signer.sign(new SignedDataObjects(obj), doc.getDocumentElement());

Docs and Q&A

  • General usage documentation can be found on the project's wiki.
  • Javadocs for the latest version can be found here.
  • Unit tests in the source code illustrate all the features.
  • Overview of the architecture and implementation on the XAdES4j Prezi.
  • xades4j tag on Stack Overflow.

If XAdES4j has been useful to you, consider supporting it!

Buy Me A Coffee

About

A Java library for XAdES signature services

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%