Skip to main content

Agent Architecture

ACA-Py Agent Structure

The platform uses a multi-agent architecture built on Hyperledger Aries Cloud Agent Python (ACA-Py) 1.1.1. Each agent operates independently and communicates via the DIDComm protocol.

Agent Components:

  • Admin API: REST interface for agent management
  • HTTP Endpoint: DIDComm messaging endpoint
  • Wallet: Secure storage for cryptographic keys and credentials
  • Protocol Handlers: DIDComm protocol processors

Agent Roles

AgentRolePortResponsibilities
IssuerIssuer8020/8021Schema creation, Credential issuance
HolderHolder8030/8031Credential storage, Proof presentation
MediatorRouter3000/3001Message routing, Offline support

DID Types and Usage

DID MethodUsageFeaturesStorage
did:peer:2Private P2P connectionsNot recorded on ledger, only parties know, unique per connectionLocal Wallet
did:sovPublic DID, Schema, CredDefRecorded on ledger, anyone can resolve, proves issuer identityIndy Ledger + Wallet
DID Selection
  • Connection establishment: Use did:peer:2 (privacy)
  • Publishing Schema/CredDef: Use did:sov (public access)

Protocol Support

ProtocolVersionUsage
DIDCommv2Agent-to-agent messaging
Issue Credentialv2.0Credential issuance
Present Proofv2.0Proof presentation
Connectionsv1.0Connection establishment
Out-of-Bandv1.1OOB invitations

Wallet Structure

Aries Askar is the wallet implementation that securely stores all sensitive data of agents. All data is encrypted with AES-256 and Argon2id is used for key derivation.

Stored DataDescription
KeysEd25519 (signing), X25519 (encryption) key pairs
DIDsdid:peer and did:sov records
CredentialsReceived credentials and metadata
ConnectionsActive connection information and states
ProofsProof exchange records