Skip to content

XML Digital Signatures

Last Updated: July 2026 | Version: 1.10.0

Note (Phase 10c): The standalone Signature tab has been retired. Signing, signature validation (including detailed and PKIX trust/chain/revocation/timestamp validation) and self-signed certificate creation now live in the Unified Shell's Signature activity panel. The capabilities below are unchanged; they are reached through the shell rather than a dedicated sidebar tab.

This tool lets you digitally sign XML documents and verify signatures. A digital signature proves that a document is authentic and hasn't been changed.


Overview

Signature activity in the Unified Shell Signing, validation and certificate creation now live in the Unified Shell's Signature activity panel

What Can You Do?

In the Unified Shell, open the Signature activity from the activity bar. The top of the panel is an action nav of four buttons (updated July 2026: the actions render as raised, bordered buttons so they are recognizable as clickable) - selecting one shows the matching form below the shared KEYSTORE section (keystore file, alias, passwords):

Action Description
Create Certificate Generate your own digital ID (keystore)
Sign XML File Opens the Sign XML Document card in the editor area (default)
Validate Signature Check if the signed document is valid (plus a detailed report)
Expert Mode PKIX trust validation against a trust store, with optional revocation check

Toolbar

Button Shortcut Description
Add Favorite Ctrl+D Add current file to favorites
Favorites Ctrl+Shift+D Toggle favorites panel
Help F1 Show help

1. Create a Certificate

Before signing documents, you need a digital certificate (like a digital ID card).

Create Certificate Certificate creation form with DN details

Certificate Details (Distinguished Name)

Field Description Example
Common Name (CN) Your name or the certificate name John Smith
Organization (O) Your company or organization Acme Corp
Organizational Unit (OU) Your department IT Security
Locality (L) Your city Vienna
State (ST) Your state or province Vienna
Country (C) Two-letter country code AT

Keystore Security

Field Description
Keystore Password Password to protect the keystore file
Key Password Password to protect the private key (can be same as keystore)

How to Create a Certificate

  1. In the Signature panel, choose Create Certificate
  2. Fill in the Distinguished Name fields
  3. Set passwords for the keystore and key
  4. Click "Create Certificate"
  5. Choose where to save the keystore file (.jks)
  6. Keep the keystore file and passwords safe!

Important: Remember your passwords! They cannot be recovered.

Tip (July 2026): If you leave the alias or a password blank, the field is highlighted in red when you click Create Certificate. The highlight clears as soon as you start typing.


2. Sign an XML Document

Sign Document Document signing interface

Input Files

Field Description
XML File The document you want to sign
Keystore File Your certificate keystore (.jks)

Keystore Credentials

Field Description
Keystore Password Password for the keystore file
Key Password Password for the private key
Key Alias Name of the key in the keystore

Output Settings

Field Description
Output File Where to save the signed XML

How to Sign a Document

  1. In the Signature panel, choose Sign XML File
  2. Click "Browse" to select your XML file
  3. Click "Browse" to select your keystore file - or (new in July 2026) pick a favorited keystore from the star menu next to the keystore row (see Favorites Integration below)
  4. Enter your keystore password and key password
  5. Select the key alias (if multiple keys exist)
  6. Choose where to save the signed output
  7. Click "Sign"

The signed file includes the original content plus a digital signature block.

Tip (July 2026): Missing inputs are highlighted in red when you click Sign: signing without a keystore marks the keystore entry, and a blank alias or password marks that field. The highlight disappears as soon as you start typing.


3. Verify a Signature

Verify Signature Verifying a signed document

How to Verify a Signature

  1. Open the signed XML file in the editor (it becomes the active document)
  2. In the Signature panel, choose the Validate Signature action
  3. Click the Validate Signature button
  4. See the result in the status area (failures additionally open an explanatory dialog)

For a detailed report (validity plus signing-certificate details), use the outlined Validate (Details) button instead.

Validation Results

Updated July 2026: Validation no longer answers with a vague "Signature invalid / none". Each outcome now explains in plain language what happened and what to do about it.

Result Meaning
Valid (green status) The signature is authentic and the document is unchanged
No signature found (red hint) The document doesn't contain a signature - sign it first
Invalid signature (error dialog) The document was modified after signing. The dialog names what failed: the signature value itself or a specific reference
Certificate cannot be used (dialog) The signature does not embed an X.509 certificate, only references it, or uses an unsupported algorithm. Ask the sender for a signature that embeds an RSA X.509 certificate, or use Validate (Details)
Weak algorithm (rejected) The signature uses SHA-1, which is rejected for security reasons. Re-sign the document with SHA-256 or SHA-512
Error (dialog) Something else went wrong - the dialog includes collapsible technical details

What the Verification Checks

Check What It Means
Authenticity The signature was created by the certificate holder
Integrity The document hasn't been changed since signing
Certificate The signing certificate is valid

3b. Trust Validation

New in June 2026 - In addition to checking that a signature is mathematically valid, you can now check whether the signing certificate is actually trusted.

Basic validation confirms that a signature is intact and matches its certificate. Trust validation goes further: it checks the signing certificate's chain against a trust store - a collection of certificate authorities you trust - to decide whether the certificate really comes from a trusted source.

In the Unified Shell's Signature panel, the action is Validate (Trust).

How to Run Trust Validation

  1. Open the signed XML document.
  2. (Optional) Click Trust store… to choose the trust store to validate against - or (new in July 2026) pick a favorited keystore from the star menu next to the trust store row. By default the application uses the JVM's built-in cacerts store, which contains well-known public certificate authorities.
  3. (Optional) Tick Check revocation (OCSP/CRL) to also verify that the certificate has not been revoked.
  4. Click Validate (Trust).
  5. A trust report opens in a new tab.

What the Trust Report Tells You

Item What It Means
Trusted Whether the signing certificate chains up to a certificate in the trust store
Trust anchor The trusted certificate (certificate authority) at the top of the chain
Revocation Whether the certificate has been revoked (only when revocation checking is on)
Timestamp Timestamp information found with the signature, if any

Note: A signature can be mathematically valid but not trusted if its certificate is self-signed or issued by an authority that is not in your trust store. Trust validation is the step that tells the two situations apart.


4. Expert Mode

For users who need more control over the signing process.

Expert Mode Expert mode with advanced options

Key Generation Options

Option Values Description
Key Algorithm RSA, DSA, EC Cryptographic algorithm for the key pair
Key Size 2048, 3072, 4096 (bits) Larger = more secure but slower

Signature Options

Option Values Description
Signature Algorithm SHA256withRSA, SHA384withRSA, SHA512withRSA, etc. Hash and signing algorithm combination

Certificate Options

Option Description
Validity (Days) How long the certificate is valid (e.g., 365 days)
Subject Alternative Names Additional identities (email, DNS, IP)

When to Use Expert Mode

  • Higher Security: Use larger key sizes (4096-bit) or stronger algorithms
  • Compliance: Meet specific security standards (e.g., government, financial)
  • Extended Validity: Create certificates valid for longer periods
  • Alternative Names: Include email addresses or domain names in certificate

Favorites Integration

Save frequently used files for quick access:

  • Add Favorite (Ctrl+D) - Add current file to favorites
  • Favorites (Ctrl+Shift+D) - Show/hide the favorites panel

The favorites panel appears on the right side and provides quick access to your saved keystores, XML files, and signed documents.

Updated July 2026: Keystore and trust store files (.jks, .p12, .pfx, .keystore) are now their own Keystore favorite type with a lock icon, instead of being grouped under Other. In the Signature panel, the keystore row (KEYSTORE section) and the trust store row (Expert Mode) each carry a star menu listing your keystore favorites - pick one to select it without browsing the file system. See Favorites System for details.


Keyboard Shortcuts

Shortcut Action
Ctrl+D Add to favorites
Ctrl+Shift+D Toggle favorites
F1 Help

Tips

  • Keep your keystore safe - It's your digital identity
  • Remember your passwords - They cannot be recovered
  • Signed files are new files - The original is not modified
  • Use strong passwords - At least 12 characters with mixed case, numbers, symbols
  • Backup your keystore - Store copies in secure locations
  • Check validity regularly - Certificates expire after the validity period

Troubleshooting

Problem Solution
Wrong password Double-check keystore and key passwords
A field is highlighted in red The input is missing - select a keystore or fill in the alias/password; the highlight clears while you type
Key not found Verify the key alias exists in the keystore
Validation fails The error dialog names what changed - the document was modified after signing
"Certificate cannot be used" The signature doesn't embed an RSA X.509 certificate - ask the sender to re-sign with the certificate embedded, or use Validate (Details)
"Weak algorithm" (SHA-1) SHA-1 signatures are rejected for security - re-sign the document with SHA-256 or SHA-512
Certificate expired Create a new certificate with Expert Mode

Supported Formats

Type Formats
Input XML files (.xml)
Keystores Java Keystore (.jks)
Output Signed XML with embedded signature

Common Questions

What if I lose my password?

Unfortunately, passwords cannot be recovered. You'll need to create a new certificate.

Can I sign multiple files at once?

Currently, files must be signed one at a time.

What signature type is used?

The tool creates enveloped XML signatures (XMLDSig) where the signature is embedded within the XML document.

Can I sign PDFs?

No, this tool is specifically for XML documents. Use the PDF Generator for PDF-related tasks.


Previous Home Next
PDF Generator (FOP) Home Auto-Completion

All Pages: Unified Shell | XML Editor | XML Features | JSON Editor | XSD Tools | Profiled XML Generation | XSD Validation | XSLT Viewer | XSLT Developer | FOP/PDF | Signatures | IntelliSense | Schematron | FundsXML Extensions | Favorites | Templates | Tech Stack | Security | Licenses