Overview
What this challenge is about.
Read the Signal protocol specifications (X3DH, Double Ratchet) and the team's current architecture (server-stored unencrypted messages). Design an E2EE protocol covering: identity-key registration, prekey publishing, X3DH handshake, Double Ratchet for messages, multi-device key sync via sealed-sender, and group chats up to 20 participants. Prototype X3DH + first ratchet step in Rust with the RustCrypto crates. Write a 12-page protocol spec covering threat model, security properties (confidentiality, forward secrecy, post-compromise security), and known limitations. Deliver Rust code, the spec, and a 30-minute architecture-review deck.
The Brief
What you'll do, and what you'll demonstrate.
Design an E2EE messaging protocol for clinicians with forward secrecy and multi-device support, prototype the core handshake, and produce a security-review-ready spec.
Earning criteria — what you'll demonstrate
- Compose standard cryptographic primitives into a real protocol
- Analyze security properties (forward secrecy, post-compromise security)
- Reason about multi-device key sync without weakening guarantees
- Communicate a cryptographic design to a non-crypto audience
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
Careers
Roles this prepares you for.
Real titles. Real skill bridges. Pick the one closest to your trajectory.
Career mappings coming soon.