Security API Documentation
Side-channel claim limit. Nothing on this page claims constant-time behaviour or side-channel resistance for any target: the side-channel harness covers nothing (finding A48) and no measurement exists. The Rust and C cores are designed for constant time and unmeasured; managed runtimes (JIT, GC, bounds checks) make no timing claim. Where this page names constant-time or side-channel techniques, in prose or in code, they are design intent or recommendations, not measured properties.
These pages document the security-relevant API of MetaMUI Crypto Primitives across 10 platforms. The release catalog (documents/public-release/catalog.json) lists 49 profiles in 16 algorithm families; some pages below cover algorithms of the source tree that the catalog does not list. The implementations are written with these goals:
- Constant-time operations: design intent only; not claimed (unmeasured, A48)
- Secure memory handling with automatic clearing
- Side-channel resistance: not claimed (unmeasured, A48)
- Input validation to prevent misuse
- Error handling that doesn’t leak information
Algorithm Security APIs
Post-Quantum Algorithms
Digital Signatures
- Ed25519 Security API
- Ed25519-ZIP215 Security API
- Sr25519 Security API
- RSA-2048 Security API ⚠️ TRANSITIONAL - Deprecated 2030
Symmetric Encryption
- AES-256 Security API
- ChaCha20 Security API
- ChaCha20-Poly1305 Security API
- ARIA-256 Security API
- Camellia Security API
Hash Functions
- SHA-256 Security API
- SHA-512 Security API
- Blake2b Security API
- Blake2s Security API
- Blake3 Security API
- SHAKE-256 Security API
Key Derivation
Additional Algorithms
- X25519 Security API
- Poly1305 Security API
- SipHash Security API
- HMAC-DRBG Security API
- Ascon Security API
- Deoxys-II Security API
- FlatHash Security API
- BIP39 Security API
Security Utilities
Security Best Practices
Memory Security
All implementations follow strict memory security practices:
- Sensitive data is cleared immediately after use
- Stack variables containing keys are zeroed
- Heap allocations use secure allocators where available
- No sensitive data in logs or error messages
Timing Attack Prevention
- Constant-time behaviour and side-channel resistance: not claimed — unmeasured for every target (A48)
- No early returns based on secret data
- Consistent execution paths regardless of input
- Constant-time behaviour and side-channel resistance: not claimed — unmeasured for every target (A48)
Input Validation
- All inputs are validated before processing
- Buffer sizes are checked to prevent overflows
- Invalid inputs return consistent error codes
- No information leakage through error messages
Cross-Platform Consistency
- Same security guarantees across all 10 platforms
- Platform-specific optimizations maintain security
- Security review recommended for all implementations
- Comprehensive test vectors including edge cases
Platform-Specific Notes
Native Platform Security (C/C++)
C and C++ implementations provide low-level memory control:
- Direct memory management with secure clearing functions
- Platform-specific secure memory allocation (mlock/VirtualLock)
- Compiler barriers to prevent optimization of clearing operations
- Stack memory protection and secure heap allocators
Managed Platform Security (C#/Java)
C# and Java implementations work within managed runtimes:
- SecureString for sensitive data in C#
- Pinned memory to prevent garbage collection movement
- Explicit zeroing of byte arrays before GC
- Platform cryptography provider integration
Go Platform Security
Go implementations handle memory within the garbage collector:
- Explicit zeroing before deallocation
- Careful handling of string immutability
- Use of byte slices for mutable sensitive data
- Runtime memory barriers for secure clearing
WASM Security
WebAssembly implementations have additional considerations:
- No direct memory access from JavaScript
- Secure random number generation via Web Crypto API
- Memory isolation between instances
- Automatic memory clearing on context destruction
Mobile Platform Security
Swift and Kotlin implementations leverage platform security features:
- Hardware-backed key storage where available
- Secure enclave integration support
- Platform-specific secure random generators
- Memory protection using platform APIs
Threat Models
Comprehensive Threat Analysis
The threat-model pages cover the source tree’s algorithms, not only the catalogued ones:
- Threat Models Overview - Complete threat analysis documentation
- Post-Quantum Threats - Quantum computing threat landscape
- Classical Threats - Traditional cryptographic threats
- Hybrid System Threats - Risks in combined classical/PQC systems
Attack Categories
Additional Resources
- Algorithm Security APIs - Security documentation per algorithm
- Algorithm-Specific Threat Models - Individual threat analysis per algorithm
- Security Best Practices - Implementation guidelines
- Security Implementation Guide - Detailed implementation guide
- Security Testing Guide - Testing security features
For questions about security implementations, please refer to our comprehensive documentation or contact our security team.