Skip to content

Aegis

Post-quantum messaging, in the open.

Aegis is an iOS messenger that uses NIST-standardised post-quantum cryptography by default and ships every line of cryptographic code as open source. It is built for people who want to understand the security of the tools they trust — not just be told it's there.

This is an unusual messenger. We will tell you what we don't protect against (see THREAT-MODEL.md). We will tell you when another tool is a better fit for your situation (in onboarding). We will publish our security audits, our governance decisions, and a monthly warrant canary. Trust here is earned by transparency, not asserted.

Status

This project is in early development. Current version: pre-0.1 (library only — no installable app yet).

Milestone Status
Foundational documents v0.0.1-foundation
Maintainer PGP identity + signed warrant canary v0.0.2.2-pgp
Cryptographic core: AES-256-GCM v0.0.2-sprint-1
Cryptographic core: PQ hybrid KEM (X-Wing / ML-KEM-768 + X25519) v0.0.3-sprint-2
Cryptographic core: PQ signatures (ML-DSA-65) v0.0.4-sprint-3
PQXDH key exchange + safety numbers v0.0.5-sprint-4
Forward secrecy / Double Ratchet v0.0.6-sprint-5
iOS app shell + Keychain identity (macOS demo runs today) v0.0.7-sprint-6
iOS distribution (Xcode project + IPA + TestFlight) 📋 Sprint 7
Persistence + local conversations 📋 Sprint 8
Networking 📋 Sprint 9
v0.1 alpha (external testers) 📋 Sprint 10
External security audit 📋 v1.0
Initial Security Council 🚧 Recruiting (see GOVERNANCE.md)

Detailed per-sprint roadmap: docs/STAGES.md.

What Aegis is, in one paragraph

A native iOS messenger using ML-KEM-768 (post-quantum key encapsulation) hybridised with X25519 for key exchange, AES-256-GCM for message confidentiality, and ML-DSA-65 for identity signatures. All cryptographic primitives are NIST or IETF standards. A separate sandbox tier ("Aegis Lab") allows researchers and students to contribute and study novel algorithms, clearly marked as unaudited and never used by default.

What Aegis is NOT

A Signal or iMessage replacement for the general public. We don't have the resources to win at billion-user scale. We're a credible niche tool — for journalists, lawyers, academics, security researchers, and privacy-conscious individuals — not a mass-market app. See MISSION.md for the full statement.

Documents to read before contributing

In order:

  1. MISSION.md — what we're trying to do
  2. THREAT-MODEL.md — what we protect against and what we don't
  3. GOVERNANCE.md — who decides what, and how
  4. ALGORITHM-SUBMISSION.md — how new cryptography enters Aegis
  5. CONTRIBUTING.md — code, docs, and process
  6. CODE_OF_CONDUCT.md — community standards
  7. CLA.md — required for code contributions
  8. SECURITY.md — how to report a vulnerability

Build and run

AegisCrypto (primitives + protocols) plus AegisStorage (Keychain wrappers) plus AegisApp (SwiftUI views) build and test with stock SwiftPM today. A tiny macOS executable target hosts the SwiftUI surface so you can run the app right now.

# Library + tests — runs today.
swift build
swift test
# Expected at v0.0.7-sprint-6: 224 tests passing, 3 skipped, 0 failures.

# Launch the SwiftUI demo on macOS — runs today.
swift run aegis-demo
# Onboarding flow → identity setup → encrypt/decrypt demo +
# Settings → Security with the live capability table.

# iOS distribution (Xcode project, IPA, TestFlight) lands at
# Sprint 7. The SwiftUI views in AegisApp are already iOS-ready;
# Sprint 7 just adds the .xcodeproj wrapper and signing.

Requires Xcode 26 / Swift 6.2+ on macOS 26 — Apple's native post-quantum CryptoKit primitives (MLKEM768, MLKEM1024, MLDSA65, XWingMLKEM768X25519) are gated @available(iOS 26.0, macOS 26.0, ...), so the SwiftPM platform floor follows them.

Run on iOS

The iOS app target ships in this repo as Aegis.xcodeproj (generated from project.yml via XcodeGen). Run it on the iOS Simulator or a connected iPhone with a free Apple ID — full step-by-step in docs/IOS-RUNBOOK.md.

open Aegis.xcodeproj
# In Xcode: pick the Aegis scheme → pick an iPhone simulator
# or your physical iPhone → ⌘R

For the iOS distribution / TestFlight side (Apple Developer Program enrolment, App Store Connect record, signing certificates, archive + upload), see docs/IOS-DISTRIBUTION-RUNBOOK.md.

License

Aegis is licensed under AGPL v3. The cryptographic core library, when extracted as a separate sub-package (planned for Year 2), will be additionally available under Apache 2.0 to enable embedding in other applications.

The name "Aegis" and the project's logo are trademarks held by the project maintainer, Datta Sai Krishna N, in trust for the project. Forks must use a different name.

Maintainer

Datta Sai Krishna N (@DemigodDSK)

A Security Council is being recruited during Year 1 — see GOVERNANCE.md. If you have applied-cryptography or secure-systems-engineering experience and would consider serving, please open an issue with the council-interest label.

Funding

Aegis is independently developed. We have not received funding from any government, corporation, or other organisation.

If we receive funding in the future, the source and amount will be disclosed publicly. Funding will not influence the project's mission, governance, or security commitments.

A note about Signal

If your safety, freedom, or life depends on the privacy of your communications, use Signal, not Aegis. Signal is more mature, more audited, and protects more metadata than Aegis currently does. We will tell you in our app's onboarding when Aegis is ready for high-stakes use. We expect this will be true at v2.0 at the earliest, after at least one external audit. Until then, we will not pretend otherwise.

About

Post-quantum messaging, in the open. An open-source iOS messenger using NIST-standardised post-quantum cryptography by default, with a sandboxed cryptography laboratory for studying novel algorithms.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages