Documentation

Welcome to the technical documentation of iKeePass. Here you will find all information about usage and supported formats.


Documentation Overview

Topic Description
📱 iOS App Features All features of the iPhone & iPad App
🖥️ macOS App Features All features of the Mac App
AutoType Automatically type login credentials (macOS)
AutoFill Automatically fill passwords (iOS/iPadOS)
AutoFill Guide Step-by-step: Setup, Testing, Multi-Provider
Cloud Storage Store database in the cloud (iOS)

Supported Formats

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

  1. Install the cloud app (e.g., Nextcloud, Google Drive)
  2. Enable the service in the iOS “Files” app
  3. Select the cloud location when saving/opening in iKeePass

Complete Cloud Storage Guide


Platform Specifics

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)

Developer Information

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)