All Projects → luisgoncalves → xades4j

luisgoncalves / xades4j

Licence: LGPL-3.0 License
A Java library for XAdES signature services

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to xades4j

SignNowNodeSDK
The Official SignNow Node.js Client Library for interacting with SignNow REST API. Sign documents, request e-signatures, and build role-based workflows with multiple signers using this client.
Stars: ✭ 14 (-83.53%)
Mutual labels:  electronic-signatures
docusign-bundle
Symfony bundle to create electronic signatures with DocuSign
Stars: ✭ 27 (-68.24%)
Mutual labels:  electronic-signatures
tl-create
tl-create is a cross-platform command line tool to create a X.509 trust list from various trust stores. (Keywords: CABFORUM, eIDAS, WebPKI)
Stars: ✭ 32 (-62.35%)
Mutual labels:  xades
libdigidocpp
Libdigidocpp library offers creating, signing and verification of digitally signed documents, according to XAdES and XML-DSIG standards. Documentation http://open-eid.github.io/libdigidocpp
Stars: ✭ 80 (-5.88%)
Mutual labels:  xades
AdES
An Implementation of CAdES, XAdES, PAdES and ASiC for Windows in C++
Stars: ✭ 29 (-65.88%)
Mutual labels:  xades
docusign-esign-csharp-client
The Official DocuSign C# Client Library used to interact with the eSignature REST API. Send, sign, and approve documents using this client.
Stars: ✭ 112 (+31.76%)
Mutual labels:  electronic-signatures
docusign-esign-node-client
The Official DocuSign Node.js Client Library used to interact with the eSign REST API. Send, sign, and approve documents using this client.
Stars: ✭ 129 (+51.76%)
Mutual labels:  electronic-signatures
alfresco-esign-cert
Alfresco client certificate signature (including Chrome)
Stars: ✭ 27 (-68.24%)
Mutual labels:  electronic-signatures

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].