35 lines
1.5 KiB
ReStructuredText
35 lines
1.5 KiB
ReStructuredText
========================================
|
|
Copius Cipher Chain Cryptography Library
|
|
========================================
|
|
|
|
Overview
|
|
========
|
|
|
|
This document describes the architecture for the **CCC Rust Crypto Provider**,
|
|
the first of three milestones in delivering hardware-grade cryptography to the
|
|
LetUsMsg application.
|
|
|
|
=================================== ========================== ===========================
|
|
Repository What ships Depends on
|
|
=================================== ========================== ===========================
|
|
``ccc_rust`` Pure Rust crypto library wolfSSL (vendored)
|
|
``ccc_dart_plugin`` Flutter plugin + Dart API ``ccc_rust`` (git/semver)
|
|
``letusmsg`` (existing app) App integration ``ccc_dart_plugin`` package
|
|
=================================== ========================== ===========================
|
|
|
|
|
|
Guiding Principles
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
1. Every provider reports its own capabilities at runtime — no compile-time
|
|
hard-coding of ``available: true/false``.
|
|
2. Algorithm IDs in Rust map 1-to-1 to the integer constants in
|
|
``cipher_constants.dart`` — zero Dart changes needed when wiring up.
|
|
3. Key material is zeroed on drop (``zeroize`` crate) everywhere.
|
|
4. A conformance test suite validates NIST/RFC vectors for every algorithm
|
|
before any provider is marked ``available``.
|
|
5. The library has no runtime dependency on Flutter; it is consumable by any
|
|
FFI host (Flutter plugin, Python tests, CLI tools).
|
|
|
|
|