Argon2id: a memory-hard password key derivation function
A KDF (key derivation function) turns your master password into cryptographic keys. “Memory-hard” means the algorithm is deliberately expensive in RAM, not just CPU cycles. That slows down attackers who try billions of password guesses on GPUs or custom hardware — each guess must allocate a large memory buffer, which is costly at scale.
AzAd Vault uses Argon2id with approximately 64 MB of memory, 3 iterations, and parallelism 4. In practice: unlocking is still comfortable on a phone or PC, but offline cracking of a stolen encrypted vault is far harder than with older password hashes that were cheap to parallelize. Argon2id mixes the strengths of Argon2i and Argon2d variants and is widely recommended for password hashing and key derivation.
AES-256-GCM and nonces
AES-256-GCM is authenticated encryption: it encrypts your data and also produces a tag that detects modification. The “256” means a 256-bit key. GCM (Galois/Counter Mode) is a standard mode used across modern apps and browsers.
A nonce (number used once) is a unique value paired with each encryption operation so that encrypting the same password twice does not produce identical ciphertext patterns an attacker could exploit. AzAd Vault uses unique nonces per field encryption. Reusing a nonce with the same key would be dangerous; the design avoids that class of mistake by generating fresh nonces for each sealed field.
HMAC-SHA256 on backups
An HMAC is a keyed integrity check. When you create an encrypted .azvault backup, HMAC-SHA256 lets the app verify that the file was not truncated, corrupted, or quietly altered before restore. If the master password is wrong or the file is damaged, unlock fails immediately instead of loading garbage. That pairs confidentiality (AES-GCM) with integrity (HMAC) for portable backups you might copy to USB, NAS, or another cloud.
DPAPI and platform secure storage
On Windows, session material is protected with DPAPI (Data Protection API) — OS-level encryption tied to your Windows user profile. On Android, Keystore-backed storage protects session keys similarly. These mechanisms reduce the chance that a casually copied app folder yields an unlocked vault; they do not replace the master password for restoring encrypted backups on a new device.