Documentation
Welcome to the technical documentation of iKeePass. Here you will find all information about usage and supported formats.
Documentation Overview
KDBX 3.x - Fully Supported
| Component |
Status |
| Encryption |
AES-256-CBC |
| KDF |
AES-KDF |
| Compression |
GZIP |
| Password |
Supported |
| Keyfile |
Supported |
KDBX 4.x - Supported
| Component |
Status |
| Encryption |
AES-256-CBC, ChaCha20 |
| KDF |
AES-KDF, Argon2d, Argon2id |
| Compression |
GZIP |
| HMAC Authentication |
Supported |
Security Architecture
Encryption Pipeline
+-----------------+
| KDBX File |
+--------+--------+
v
+-----------------+
| Header Parse | <- Field IDs: 0-10
+--------+--------+
v
+-----------------+
| Key Derivation | <- AES-KDF / Argon2
+--------+--------+
v
+-----------------+
| AES Decrypt | <- AES-256-CBC / ChaCha20
+--------+--------+
v
+-----------------+
| Block Stream | <- SHA-256 verified
+--------+--------+
v
+-----------------+
| GZIP Decompress |
+--------+--------+
v
+-----------------+
| XML Parse | <- KeePassFile
+-----------------+
Key Derivation Functions
AES-KDF
- Standard KDF for KDBX 3.x
- Configurable number of rounds
- Typical: 6,000 - 60,000 rounds
Argon2d
- Memory-hard KDF
- Resistant to GPU/ASIC attacks
- Parameters: Memory, Iterations, Parallelism
Argon2id
- Hybrid of Argon2d and Argon2i
- Best balance of security and performance
- Recommended for new databases
Cloud Storage (iOS)
iKeePass iOS uses the native iOS Files dialog to store your database in various cloud services:
| Cloud Service |
Status |
| Apple iCloud Drive |
Natively integrated |
| Nextcloud |
Supported |
| Google Drive |
Supported |
| Microsoft OneDrive |
Supported |
| Dropbox |
Supported |
How It Works
- Install the cloud app (e.g., Nextcloud, Google Drive)
- Enable the service in the iOS “Files” app
- Select the cloud location when saving/opening in iKeePass
Complete Cloud Storage Guide
macOS (iKeePass)
| Component |
Technology |
| Language |
Swift 6.0 |
| UI Framework |
SwiftUI |
| Min. OS |
macOS 14.0 (Sonoma) |
| State |
@Observable |
| Layout |
NavigationSplitView |
iOS (iKeePassIOS)
| Component |
Technology |
| Language |
Swift 5.9 |
| UI Framework |
SwiftUI |
| Min. OS |
iOS 17.0 |
| State |
@Observable |
| Navigation |
TabView + NavigationStack |
| Biometrics |
LocalAuthentication |
KeePass Compatibility
iKeePass is fully compatible with:
- KeePass 2.x (Windows)
- KeePassXC (Cross-Platform)
- KeePassium (iOS/macOS)
- KeePass2Android (Android)
- MacPass (macOS)
Tested Databases
| Format |
Version |
Status |
| KDBX |
3.1 |
Fully supported |
| KDBX |
4.0 |
Fully supported |
| KDBX |
4.1 |
Fully supported |
| KDB |
1.x |
Planned |
Features in Detail
Security Dashboard
The integrated dashboard analyzes your passwords:
| Analysis |
Description |
| Security Score |
Overall rating 0-100% |
| Weak Passwords |
Short, simple, no special characters |
| Duplicate Passwords |
Same passwords used multiple times |
| Old Passwords |
Not changed for >90 days |
TOTP/OTP Support
Integrated two-factor authentication:
- TOTP (Time-based One-Time Password)
- RFC 6238 compatible
- 30-second intervals
- 6-digit codes (standard)
Architecture
+---------------------------------------------+
| Views |
| (SwiftUI - ContentView, EntryDetailView) |
+---------------------+-----------------------+
|
+---------------------v-----------------------+
| AppState |
| (@Observable, @MainActor) |
+---------------------+-----------------------+
|
+---------------------v-----------------------+
| KeePassDatabaseService |
| (CRUD, Encryption, Decryption) |
+---------------------+-----------------------+
|
+---------------------v-----------------------+
| KeePassModels |
| (iKeePassDatabase, iKeePassEntry, etc.) |
+---------------------------------------------+
Dependencies
- CommonCrypto - AES encryption
- CryptoKit - SHA-256, HMAC
- zlib - GZIP compression
- Argon2 - Key Derivation (external)