# Install xmlsectool with Homebrew

Check schema validity and signature of an XML document. Version 4.0.0 via Homebrew; verified 2026-06-22.

## Install

```sh
sudo av install brew:xmlsectool
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install xmlsectool
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:xmlsectool
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/xmlsectool>
- **Version:** 4.0.0
- **Source summary:** Check schema validity and signature of an XML document
- **Homepage:** <https://wiki.shibboleth.net/confluence/display/XSTJ3/xmlsectool+V3+Home>
- **Repository:** <https://git.shibboleth.net/git/xmlsectool>
- **Upstream docs:** <https://shibboleth.atlassian.net/wiki/spaces/XSTJ4/overview>
- **License:** Apache-2.0
- **Source archive:** <https://shibboleth.net/downloads/tools/xmlsectool/4.0.0/xmlsectool-4.0.0-bin.zip>
- **Last updated:** 2026-06-22T14:06:42-07:00
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- xmlsectool (cli)
- xmlsectool (alias)

## Dependencies

- openjdk

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 4.0.0
- Package-manager updated: 2026-06-22
- Local data: ok
- Upstream repository: https://wiki.shibboleth.net/confluence/display/XSTJ3/xmlsectool+V3+Home
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

xmlsectool is a Shibboleth Java command-line tool for downloading XML, checking well-formedness and schema validity, verifying XML signatures, and creating enveloped XML signatures. Its main cultural home is SAML metadata operations rather than generic XML editing.

### Project history

The tool grew inside the Shibboleth ecosystem as a deployer utility for XML security work. Its documentation is organized by major supported series, with V3 now archived and V4 identified as the current supported line.

Version 2.0.0 was announced in June 2016 as a new stable release based on the Shibboleth v3 Identity Provider software stack. That release was intended as a drop-in replacement for most 1.2.0 users, while moving the tool to Java 7 or later, making SHA-256 the default signing digest, and blacklisting SHA-1 by default.

Version 4.0.0 was released on 2025-04-16. The V4 documentation states that V4 is the only supported release line, requires Java 17, removes options deprecated in V3, and adds a --version option.

### Adoption history

xmlsectool's adoption follows Shibboleth and SAML federation operations: operators need to validate and sign metadata, verify downloaded metadata, and sometimes use token-backed signing credentials. Its presence in the Shibboleth announcement channel and deployer documentation shows it is maintained as operational security tooling, not just an example program.

### How it is used

Typical use cases include validating SAML metadata schemas, verifying XML signatures before trusting metadata, signing SAML 2.0 metadata with explicit reference ID handling, selecting digest and signature algorithms, and using PKCS#11-backed credentials through Java security providers.

### Why package nerds care

xmlsectool is the kind of security package that package nerds care about because it turns a hard-to-compose Java XML security stack into one auditable command. The package boundary is useful: a CLI can be pinned, upgraded, scripted, and documented independently of an identity provider deployment.

### Timeline

- 2016-06-28: Shibboleth announced xmlsectool 2.0.0 and the end of 1.x support.
- 2025-04-16: xmlsectool 4.0.0 was released as the current stable release.
- 2025-04-16: Security maintenance for xmlsectool 3.0.0 and earlier ceased, making V4 the only supported release.

### Related projects

- Related projects and technologies include Shibboleth Identity Provider, Shibboleth Service Provider, SAML 2.0 metadata, XML Signature, Apache Santuario-style XML security libraries, Java security providers, and PKCS#11 hardware tokens.

### Sources

- <https://shibboleth.atlassian.net/wiki/spaces/XSTJ4/overview>
- <https://shibboleth.atlassian.net/wiki/spaces/XSTJ4/pages/4227465285>
- <https://shibboleth.atlassian.net/wiki/spaces/XSTJ4/pages/4227465345>
- <https://shibboleth.atlassian.net/wiki/spaces/XSTJ4/pages/4227465365>
- <https://shibboleth.net/pipermail/announce/2016-June/000148.html>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** xmlsectool
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [xml-security-c](https://www.automicvault.com/pkg/brew/xml-security-c/) - Shares av.db curated category or tags: cli, security, xml, xml-security.
- [opensaml](https://www.automicvault.com/pkg/brew/opensaml/) - Shares av.db curated category or tags: cli, saml, security.
- [aide](https://www.automicvault.com/pkg/brew/aide/) - Shares av.db curated category or tags: cli, security.
- [aircrack-ng](https://www.automicvault.com/pkg/brew/aircrack-ng/) - Shares av.db curated category or tags: cli, security.
- [amass](https://www.automicvault.com/pkg/brew/amass/) - Shares av.db curated category or tags: cli, security.
- [anubis](https://www.automicvault.com/pkg/brew/anubis/) - Shares av.db curated category or tags: cli, security.
- [authoscope](https://www.automicvault.com/pkg/brew/authoscope/) - Shares av.db curated category or tags: cli, security.
- [azurehound](https://www.automicvault.com/pkg/brew/azurehound/) - Shares av.db curated category or tags: cli, security.
- [shibboleth-sp](https://www.automicvault.com/pkg/brew/shibboleth-sp/) - Both packages work with overlapping file formats or content types. Shared terms: cli, saml, security, xml.

## Combined YAML source

View the package source record on GitHub. [combined/xmlsectool.yml](https://github.com/automic-vault/db/blob/main/combined/xmlsectool.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- cross-ecosystem install command graph
