Skip to content

Add CRYPTOGRAPHY.md — crypto primer for contributors#18

Draft
Copilot wants to merge 2 commits intomasterfrom
copilot/add-introduction-to-cryptography
Draft

Add CRYPTOGRAPHY.md — crypto primer for contributors#18
Copilot wants to merge 2 commits intomasterfrom
copilot/add-introduction-to-cryptography

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 2, 2026

Contributors with general programming backgrounds have no single reference explaining the cryptographic concepts and algorithms LoraMesh depends on, making it hard to reason about protocol decisions or safely contribute to crypto-adjacent code.

Changes

  • docs/CRYPTOGRAPHY.md (new, ~520 lines) — programmer-oriented guide covering:

    • Core concepts: symmetric/asymmetric encryption, AEAD, KDFs, digital signatures, ECDH, forward secrecy — each with a minimal code snippet grounded in the actual codebase
    • Every primitive in use (Ed25519, X25519, ChaCha20-Poly1305, XChaCha20-Poly1305, BLAKE2b, Argon2id) with rationale for choosing it over the common alternative
    • Protocol walkthroughs: Noise_IK handshake (step-by-step with diagram) and Double Ratchet (symmetric + DH ratchet, including LoRa out-of-order handling)
    • End-to-end message lifecycle tracing key setup → encryption → decryption
    • Common pitfalls table (nonce reuse, timing side-channels, weak passphrases, key residency)
    • Curated further reading per topic
  • README.md — added CRYPTOGRAPHY.md to the repository structure table

Original prompt

I need to know more about cryptography. I know the basics as a programmer but that's it


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: SkogsErik <92891037+SkogsErik@users.noreply.github.com>
Copilot AI changed the title [WIP] Add introduction to cryptography for programmers Add CRYPTOGRAPHY.md — crypto primer for contributors Mar 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants