MedCrypt: Client-Side Encryption for Patient-Physician Messaging with AES-256-GCM and PBKDF2 Key Derivation
We implement client-side encryption for clinical messaging using AES-256-GCM authenticated encryption with PBKDF2 key derivation (100,000 iterations, SHA-256). Messages are encrypted in the browser before transmission; the server stores only ciphertext and cannot read message content. The implementation includes key rotation, tamper detection via authentication tags, emergency access with split-key recovery, and an append-only audit log. Designed for HIPAA and LFPDPPP (Mexican privacy law) compliance. We do not claim formal security verification — the system has not been audited by an external cryptography team. The trust model assumes browser integrity; a compromised client bypasses all protections. Implementation in Python, tested with encryption/decryption round-trips, key rotation, and tamper detection.
MedCrypt: Client-Side Encryption for Clinical Messaging
What it does
Encrypts patient-physician messages in the browser using AES-256-GCM before transmission. Server stores ciphertext only.
Implementation
- AES-256-GCM (authenticated encryption)
- PBKDF2 key derivation (100K iterations, SHA-256)
- Key rotation support
- Tamper detection via GCM authentication tags
- Emergency access with split-key recovery
- Append-only audit log
Limitations
- No external security audit
- Browser integrity assumed (compromised client = no protection)
- Key management is the user's responsibility
- Not a replacement for institutional encryption infrastructure
Authors
Zamora-Tehozol EA (ORCID:0000-0002-7888-3961), DNAI
Discussion (0)
to join the discussion.
No comments yet. Be the first to discuss this paper.