Security
Axion employs a client-side zero-knowledge architecture with industry-standard cryptography.Encryption
| Component | Implementation |
|---|---|
| Encryption | AES-256-GCM (authenticated encryption) |
| Key Derivation | Argon2id (64 MiB memory, 3 iterations, 4 parallelism) |
| Project Key | 128-bit random key |
| Salt | 256-bit random salt per encryption |
| IV | 128-bit random IV per encryption |
| Format | Versioned for future algorithm upgrades |
How It Works
Key Storage
Your project key is stored at:Protected Keys
Configure write-only secrets inaxion.config.yaml:
- Can be set but not revealed
- Cannot be exported
- Cannot be viewed with
--reveal
Validation Patterns
Enforce secret formats:Key Rotation
Rotate your encryption key:- Generates a new key
- Re-encrypts all secrets
- Invalidates the old key
Key Recovery
Set up recovery before you need it:Audit Logs
Track all secret access (Pro/Business):- Who accessed secrets
- When and from where
- What operations were performed
Best Practices
Gitignore
Add
.dotset/axion/key to .gitignoreBackup
Back up your key to a password manager
Rotate
Rotate keys periodically or after team changes
Protect
Mark sensitive keys as protected