Overview
Aries Askar provides:- Secure storage - Encrypted database storage for credentials, keys, and records
- Key management - Hardware-backed and software cryptographic operations
- Multi-tenancy support - Efficient multi-tenant storage with profiles or separate databases
- Cross-platform - Works on Node.js, React Native, and browsers (with limitations)
- Performance - Optimized for high-throughput credential operations
Installation
Node.js
React Native
Registration
Configuration Options
Database Schemes
Storage Backend
Askar supports multiple storage backends:SQLite (Default)
PostgreSQL
In-Memory (Testing)
Key Management
Askar provides cryptographic key management capabilities.Supported Key Types
- Ed25519 - EdDSA signatures (default for DIDs)
- X25519 - ECDH key agreement
- P-256 (secp256r1) - NIST curve
- P-384 (secp384r1) - NIST curve
- P-521 (secp521r1) - NIST curve
- K-256 (secp256k1) - Bitcoin/Ethereum curve
- BLS12-381 - Pairing-based cryptography
Creating Keys
Signing and Verification
Askar handles signing operations transparently:Multi-Tenancy
Askar is optimized for multi-tenant deployments.Profile Per Wallet (Recommended)
- Single database connection
- Lower resource usage
- Easier backups and migrations
Database Per Wallet
- Complete tenant isolation
- Independent database scaling
- Per-tenant encryption keys
Advanced Configuration
Custom Storage Path
Using Only KMS or Storage
Migration
Migrating from Indy SDK
If migrating fromindy-sdk wallets:
Wallet Operations
Export Wallet
Import Wallet
Performance Optimization
Connection Pooling (PostgreSQL)
Security Considerations
Wallet Key Strength
Use strong wallet keys:Key Derivation
Askar uses Argon2 for key derivation from wallet passwords:Platform Support
Node.js
Fully supported with native bindings:React Native
Supported via React Native bindings:Browser
Limited support via WASM (coming soon).API Reference
Askar implements standard Credo interfaces:StorageService- Record storage operationsKeyManagementService- Cryptographic operations
agent.wallet.*- Wallet operations- Storage is transparent via repositories