Integration Modules
TrustWeave ships optional integration modules that plug providers into the SPI
and trust/runtime layers. They can now share infrastructure exposed by
TrustWeave-common (which includes SPI interfaces) and TrustWeave-trust.
📋 Quick Reference: For a comprehensive table view of all supported plugins, see the Supported Plugins page.
Add an integration when you need a concrete provider:
1
2
3
4
5
6
7
8
9
10
dependencies {
// Chain plugins use hierarchical group IDs
implementation("com.trustweave.chains:algorand:1.0.0-SNAPSHOT")
// DID plugins use hierarchical group IDs
implementation("com.trustweave.did:key:1.0.0-SNAPSHOT")
// KMS plugins use hierarchical group IDs
implementation("com.trustweave.kms:aws:1.0.0-SNAPSHOT")
}
Result: Gradle brings in the Algorand client plus its SPI adapter so your application can anchor digests on Algorand networks with zero additional wiring.
Blockchain Anchor Integrations
All blockchain clients adopt the shared SPI abstractions. These modules enable anchoring credential digests to various blockchain networks.
| Plugin | Module ID | Networks | Documentation | Description |
|---|---|---|---|---|
| Algorand | com.trustweave.chains:algorand |
Mainnet, Testnet | Algorand Guide | Production-ready anchoring for Algorand mainnet/testnet |
| Ethereum | com.trustweave.chains:ethereum |
Mainnet, Sepolia | Ethereum Anchor Guide | Ethereum mainnet anchoring with Sepolia testnet support |
| Base | com.trustweave.chains:base |
Mainnet, Sepolia | Base Anchor Guide | Base (Coinbase L2) anchoring with fast confirmations and lower fees |
| Arbitrum | com.trustweave.chains:arbitrum |
Mainnet, Sepolia | Arbitrum Anchor Guide | Arbitrum One (largest L2 by TVL) anchoring with EVM compatibility |
| Polygon | com.trustweave.chains:polygon |
Mainnet, Mumbai | Polygon DID Guide | Polygon PoS anchoring with the shared SPI plumbing |
| Optimism | com.trustweave.chains:optimism |
Mainnet, Sepolia | Documentation coming soon | Optimism L2 anchoring with Web3j integration |
| zkSync Era | com.trustweave.chains:zksync |
Mainnet, Sepolia | Documentation coming soon | zkSync Era L2 anchoring with Web3j integration |
| Bitcoin | com.trustweave.chains:bitcoin |
Mainnet, Testnet | Documentation coming soon | Bitcoin blockchain anchoring with OP_RETURN support via RPC |
| Ganache | com.trustweave.chains:ganache |
Local | Integration Modules | Local developer anchoring using Ganache/Testcontainers for testing |
These modules will be consolidated over time into a single
anchor-integrations family that reuses common adapter plumbing.
DID Method Integrations
TrustWeave provides comprehensive DID method implementations following the W3C DID specification. All DID method plugins implement the DidMethodService interface.
| Plugin | Module ID | Documentation | Description |
|---|---|---|---|
| did:key | com.trustweave.did:key |
Key DID Guide | Native did:key implementation, the most widely-used DID method. Zero external dependencies, portable public key-based DIDs |
| did:web | com.trustweave.did:web |
Web DID Guide | Web DID method for HTTP/HTTPS-based resolution. Full W3C spec compliance with domain and path-based identifiers |
| did:ethr | com.trustweave.did:ethr |
Ethereum DID Guide | Ethereum DID method with blockchain anchoring support. Integrates with Ethereum mainnet and testnets (Sepolia) |
| did:ion | com.trustweave.did:ion |
ION DID Guide | Microsoft ION DID method using Sidetree protocol. Bitcoin-anchored DIDs with ION node integration |
| did:polygon | com.trustweave.did:polygon |
Polygon DID Guide | Polygon DID method reusing Ethereum registry pattern. Lower transaction costs than Ethereum mainnet |
| did:sol | com.trustweave.did:sol |
Solana DID Guide | Solana DID method with program integration. Account-based storage on Solana blockchain |
| did:peer | com.trustweave.did:peer |
Peer DID Guide | Peer-to-peer DID method. No external registry required, supports numalgo 0, 1, and 2 |
| did:jwk | com.trustweave.did:jwk |
JWK DID Guide | W3C-standard did:jwk method using JSON Web Keys directly. Standardized approach with JWK format |
| did:ens | com.trustweave.did:ens |
ENS DID Guide | Ethereum Name Service (ENS) resolver integration. Human-readable DID identifiers mapped to Ethereum addresses |
| did:plc | com.trustweave.did:plc |
PLC DID Guide | Personal Linked Container (PLC) DID method for AT Protocol. Distributed registry with HTTP-based resolution |
| did:cheqd | com.trustweave.did:cheqd |
Cheqd DID Guide | Cheqd network DID method with payment-enabled features. Cosmos-based blockchain for identity and credentials |
Key Management Service (KMS) Integrations
KMS integrations enable TrustWeave to use various key management services for secure key generation, storage, and signing operations. All KMS plugins implement the KeyManagementService interface.
| Plugin | Module ID | Documentation | Key Features |
|---|---|---|---|
| AWS KMS | com.trustweave.kms:aws |
AWS KMS Guide | Full algorithm support (Ed25519, secp256k1, P-256/P-384/P-521, RSA). FIPS 140-3 Level 3 compliance |
| Azure Key Vault | com.trustweave.kms:azure |
Azure KMS Guide | Algorithm support (secp256k1, P-256/P-384/P-521, RSA). Managed Identity and Service Principal authentication |
| Google Cloud KMS | com.trustweave.kms:google |
Google KMS Guide | Algorithm support (secp256k1, P-256/P-384, RSA). Application Default Credentials and service account authentication |
| HashiCorp Vault | com.trustweave.kms:hashicorp |
HashiCorp Vault Guide | Transit engine integration with algorithm support (Ed25519, secp256k1, P-256/P-384/P-521, RSA). Token and AppRole authentication |
| IBM Key Protect | com.trustweave.kms:ibm |
Documentation coming soon | IBM Cloud Key Protect integration with full REST API support |
| Thales CipherTrust | com.trustweave.kms:thales |
Documentation coming soon | Thales CipherTrust Manager integration with OAuth2 authentication |
| CyberArk Conjur | com.trustweave.kms:cyberark |
Documentation coming soon | CyberArk Conjur integration with secrets management |
| Fortanix DSM | com.trustweave.kms:fortanix |
Documentation coming soon | Fortanix DSM multi-cloud key management integration |
Proof Generator Integrations
TrustWeave provides multiple proof generation methods for creating cryptographic proofs on verifiable credentials. All proof generators implement the ProofGenerator interface.
| Plugin | Module ID | Documentation | Description |
|---|---|---|---|
| JWT Proof Generator | com.trustweave.core:jwt-proof |
Documentation coming soon | JWT-based proofs using nimbus-jose-jwt. Supports Ed25519, ECDSA, and RSA algorithms |
| BBS+ Proof Generator | com.trustweave.core:bbs-proof |
Documentation coming soon | BBS+ signature proofs for selective disclosure. Uses JSON-LD canonicalization |
| LD-Proof Generator | com.trustweave.core:ld-proof |
Documentation coming soon | Linked Data Proofs using JSON-LD signatures. Supports multiple signature suites |
Wallet Factory Integrations
Wallet factories enable creation of different wallet storage backends for credential management. All wallet factories implement the WalletFactory interface.
| Plugin | Module ID | Documentation | Description |
|---|---|---|---|
| Database Wallet | com.trustweave.core:database-wallet |
Documentation coming soon | Database-backed wallet with full CredentialStorage implementation. Supports PostgreSQL, MySQL, H2, and other JDBC-compatible databases |
| File Wallet | com.trustweave.core:file-wallet |
Documentation coming soon | File-based wallet with local filesystem storage. Optional AES encryption support |
| Cloud Wallet | com.trustweave.core:cloud-wallet |
Documentation coming soon | Abstract base for cloud storage wallets. Supports AWS S3, Azure Blob Storage, and Google Cloud Storage |
Other Integrations
Additional integrations that provide bridges to other identity ecosystems or combined functionality.
| Plugin | Module ID | Documentation | Description |
|---|---|---|---|
| GoDiddy | com.trustweave.did:godiddy |
GoDiddy Guide | HTTP bridge to DID/VC services exposed by the GoDiddy stack |
| walt.id | com.trustweave.kms:waltid |
walt.id Guide | DID and KMS providers from the walt.id ecosystem |
Each module implements the SPI interfaces (DidMethodService, KmsService,
etc.) supplied by TrustWeave-common (which includes SPI interfaces).
Next Steps
- When authoring a new integration, depend on
TrustWeave-common(which includes SPI interfaces) and expose providers via the adapter loader. - Trust registries should target
TrustWeave-trustand optionally wrap themselves usingTrustRegistryServiceAdapter. - Future work will introduce a shared
TrustWeave-anchor-integrationsmodule to reduce duplicate registration logic across blockchain clients.
Related Documentation
- Supported Plugins - Comprehensive table view of all supported plugins organized by category
- Plugin Implementation Status - Current implementation status and roadmap for all plugins
- Plugin Lifecycle - Managing plugin initialization, startup, and shutdown
Creating Custom Plugins
For detailed guidance on implementing custom plugins, see:
- Creating Plugins Guide - Complete guide with examples for all plugin interfaces
- DID methods
- Blockchain anchor clients
- Proof generators (JWT, BBS+, LD-Proof)
- Key management services
- Credential services
- Wallet factories (Database, File, Cloud)