Wire-speed Resilient Authenticated Invisible Transfer Handler
A decentralized secure file transfer protocol optimized for high-throughput, low-latency operation with strong security guarantees and traffic analysis resistance.
Version: 1.6.0 Mobile Clients & WRAITH-Chat | Development Phase: Phase 16 Complete
WRAITH Protocol is production-ready with desktop, mobile, and messaging applications. Phase 16 delivers Android and iOS mobile clients with native UIs (Kotlin/Jetpack Compose, Swift/SwiftUI), plus WRAITH-Chat, a secure E2EE messaging application with Signal Protocol Double Ratchet encryption, SQLCipher encrypted storage, and React 18 frontend. v1.6.0 adds mobile platform support, end-to-end encrypted messaging, and comprehensive client ecosystem expansion.
Project Metrics (2025-12-11):
- Code Volume: ~57,400 lines of Rust code across protocol crates + ~4,000 lines in client applications (Kotlin/Swift/TypeScript)
- Test Coverage: 1,626 total tests - 100% pass rate on active tests (1,280 passing, 23 ignored in protocol, 323 in integration tests)
- Documentation: 111 markdown files, ~63,000+ lines of comprehensive documentation
- Dependencies: 286 audited packages (zero vulnerabilities via cargo-audit)
- Security: Grade A+ (EXCELLENT), zero vulnerabilities, comprehensive DPI evasion validation
- Quality: Code quality 98/100, zero compiler/clippy warnings, 3.8% technical debt ratio, production-ready codebase
- Client Applications: 4 production-ready applications (WRAITH-Transfer desktop, WRAITH-Android, WRAITH-iOS, WRAITH-Chat)
For detailed development history and phase accomplishments, see Protocol Development History.
High-Performance Transport:
- Wire-speed transfers (10+ Gbps with AF_XDP kernel bypass)
- Sub-millisecond latency (<1ms packet processing with io_uring)
- Zero-copy I/O via AF_XDP UMEM and io_uring registered buffers
- BBR congestion control with optimal bandwidth utilization
- Async file I/O with io_uring
Security & Privacy:
- End-to-end encryption (XChaCha20-Poly1305 AEAD)
- Perfect forward secrecy (Double Ratchet with DH and symmetric ratcheting)
- Mutual authentication (Noise_XX handshake pattern)
- Ed25519 digital signatures for identity verification
- BLAKE3 cryptographic hashing
- Traffic analysis resistance (Elligator2 key encoding)
- Replay protection (64-bit sliding window)
- Key commitment for AEAD (prevents multi-key attacks)
Traffic Obfuscation:
- Packet padding (5 modes: PowerOfTwo, SizeClasses, ConstantRate, Statistical)
- Timing obfuscation (5 distributions: Fixed, Uniform, Normal, Exponential)
- Protocol mimicry (TLS 1.3, WebSocket, DNS-over-HTTPS)
- Cover traffic generation (Constant, Poisson, Uniform distributions)
- Adaptive threat-level profiles (Low, Medium, High, Paranoid)
Decentralized Discovery:
- Privacy-enhanced Kademlia DHT with BLAKE3 NodeIds
- S/Kademlia Sybil resistance (crypto puzzle-based NodeId generation)
- NAT traversal (STUN client, ICE-lite UDP hole punching)
- DERP-style relay infrastructure with automatic fallback
- Connection migration with PATH_CHALLENGE/PATH_RESPONSE
File Transfer:
- Chunked file transfer with BLAKE3 tree hashing
- Multi-peer downloads with parallel chunk fetching
- Resume support with missing chunks detection
- Real-time progress tracking (bytes, speed, ETA)
- Chunk verification (<1ÎĽs per chunk)
Node API:
- High-level protocol orchestration layer
- Lifecycle management (start/stop)
- Session management (Noise_XX handshake)
- File transfer coordination
- DHT integration (peer discovery, announcements)
- NAT traversal integration
- Health monitoring with failed ping detection
- Connection migration (PATH_CHALLENGE/PATH_RESPONSE)
- Lock-free ring buffers (SPSC/MPSC) for packet processing
- Comprehensive configuration system (6 subsystems)
Client Applications (Phase 15-16):
WRAITH-Transfer (Desktop):
- Cross-platform GUI (Windows, macOS, Linux with X11/Wayland support)
- Tauri 2.0 backend with full wraith-core integration
- React 18 + TypeScript frontend with Vite bundling
- Tailwind CSS v4 with WRAITH brand colors (#FF5722 primary, #4A148C secondary)
- Intuitive file transfer interface with drag-and-drop support
- Real-time session and transfer monitoring
- Thread-safe state management (Arc<RwLock>)
- 10 IPC commands for node/session/transfer control
- Zustand state management (nodeStore, transferStore, sessionStore)
- Production-ready packaging for all platforms
- v1.5.8: Wayland compatibility fix (resolves KDE Plasma 6 crashes)
WRAITH-Android (Mobile):
- Native Android application with Kotlin/Jetpack Compose Material Design 3 UI
- JNI bindings to wraith-ffi for full protocol integration
- Multi-architecture support (arm64, arm, x86_64, x86) via cargo-ndk
- Background foreground service for continuous transfers
- Storage permissions handling for Android 8.0+
- Coroutine-based async operations with high-level Kotlin API
- ProGuard/R8 optimization for production builds
- ~2,800 lines (800 Rust, 1,800 Kotlin, 200 Gradle)
WRAITH-iOS (Mobile):
- Native iOS application with SwiftUI (iOS 16.0+)
- UniFFI bindings for automatic Swift interface generation
- Tab-based navigation (Home, Transfers, Sessions, Settings)
- MVVM architecture with ObservableObject state management
- Swift Package Manager integration
- Background task support for iOS lifecycle management
- Native iOS design patterns and accessibility features
- ~1,650 lines (450 Rust, 1,200 Swift)
WRAITH-Chat (Desktop Messaging):
- Secure E2EE messaging application (Tauri 2.0 + React 18)
- Signal Protocol Double Ratchet implementation (forward secrecy + post-compromise security)
- SQLCipher encrypted database (AES-256, PBKDF2-HMAC-SHA512, 64,000 iterations)
- X25519 DH key exchange with Elligator2 encoding
- ChaCha20-Poly1305 AEAD encryption with 192-bit nonce
- Out-of-order message handling with skipped key storage (max 1,000)
- Contact management with safety number verification (SHA-256)
- React frontend with Zustand state management and dark theme
- Real-time message synchronization with infinite scroll
- ~2,650 lines (1,250 Rust backend, 1,400 TypeScript/React frontend)
- 10 IPC commands for contacts, conversations, messages, and node operations
Download pre-built binaries for your platform from the releases page:
Supported Platforms:
- Linux x86_64 (glibc and musl)
- Linux aarch64
- macOS x86_64 (Intel)
- macOS aarch64 (Apple Silicon)
- Windows x86_64
# Linux/macOS
tar xzf wraith-<platform>.tar.gz
chmod +x wraith
./wraith --version
# Windows (PowerShell)
Expand-Archive wraith-x86_64-windows.zip
.\wraith.exe --versionAll release artifacts include SHA256 checksums for verification.
Prerequisites:
- Rust 1.85+ (Rust 2024 edition)
- Linux 6.2+ (recommended for AF_XDP and io_uring support)
- x86_64 or aarch64 architecture
# Clone the repository
git clone https://github.com/doublegate/WRAITH-Protocol.git
cd WRAITH-Protocol
# Build all crates
cargo build --release
# Run tests
cargo test --workspace
# The wraith binary will be in target/release/wraith
./target/release/wraith --versionNote: WRAITH Protocol v1.6.0 features a complete Node API and protocol implementation with fully integrated CLI commands. The wraith-cli binary provides production-ready command-line access to all protocol features including ping for connectivity testing and config for runtime configuration.
# Generate identity keypair
wraith keygen --output ~/.wraith/identity.key
# Send a file to peer
wraith send document.pdf <peer-id>
# Receive files
wraith receive --output ./downloads
# Run as background daemon
wraith daemon --bind 0.0.0.0:0
# Check node status
wraith status
# List discovered peers and sessions
wraith peers
# Manage configuration
wraith config --showFor detailed usage, see User Guide and Tutorial.
WRAITH-Protocol/
├── crates/ # Rust workspace crates
│ ├── wraith-core/ # Frame encoding, sessions, congestion control
│ ├── wraith-crypto/ # Noise handshake, AEAD, Elligator2, ratcheting
│ ├── wraith-transport/ # AF_XDP, io_uring, UDP sockets
│ ├── wraith-obfuscation/ # Padding, timing, cover traffic, mimicry
│ ├── wraith-discovery/ # DHT, relay, NAT traversal
│ ├── wraith-files/ # Chunking, integrity, transfer state
│ ├── wraith-cli/ # Command-line interface
│ ├── wraith-ffi/ # Foreign function interface (C/JNI bindings)
│ └── wraith-xdp/ # eBPF/XDP programs (Linux-only, excluded)
├── clients/ # Client applications
│ ├── wraith-transfer/ # Desktop file transfer (Tauri 2.0 + React 18)
│ ├── wraith-android/ # Android mobile client (Kotlin + Jetpack Compose)
│ ├── wraith-ios/ # iOS mobile client (Swift + SwiftUI)
│ └── wraith-chat/ # E2EE messaging (Tauri 2.0 + React 18 + SQLCipher)
├── docs/ # Comprehensive documentation
│ ├── archive/ # Archived documentation and development history
│ ├── architecture/ # Protocol design (5 docs)
│ ├── engineering/ # Development guides (4 docs)
│ ├── integration/ # Embedding & platform support (3 docs)
│ ├── testing/ # Testing strategies (3 docs)
│ ├── operations/ # Deployment & monitoring (3 docs)
│ └── clients/ # Client application docs (37 docs)
├── to-dos/ # Sprint planning
│ ├── protocol/ # Implementation phases
│ ├── clients/ # Client application sprints
│ ├── ROADMAP.md # Project roadmap
│ └── ROADMAP-clients.md # Client roadmap
├── ref-docs/ # Technical specifications
├── tests/ # Integration tests and benchmarks
└── xtask/ # Build automation
| Crate | Description | Tests | Status |
|---|---|---|---|
| wraith-core | Frame parsing (SIMD), sessions, congestion control, ring buffers, Node API | 420 | âś… Complete |
| wraith-crypto | Ed25519, X25519+Elligator2, AEAD, Noise_XX, Double Ratchet | 179 | âś… Complete |
| wraith-discovery | Kademlia DHT, STUN, ICE, relay infrastructure | 292 | âś… Complete |
| wraith-transport | AF_XDP, io_uring, UDP sockets, worker pools, NUMA-aware allocation | 174 | âś… Complete |
| wraith-obfuscation | Padding (5 modes), timing (5 distributions), protocol mimicry (TLS/WS/DoH) | 167 | âś… Complete |
| wraith-files | File chunking, BLAKE3 tree hashing, reassembly with io_uring | 44 | âś… Complete |
| wraith-cli | Command-line interface with full Node API integration | 87 | âś… Complete |
| wraith-ffi | Foreign function interface (C-compatible API, JNI bindings) | 111 | âś… Complete |
| wraith-xdp | eBPF/XDP programs (requires eBPF toolchain, excluded from default build) | 0 | đź“‹ Planned |
Total Protocol: 1,474 tests across 8 active crates
| Application | Description | Platform | Tests | Status |
|---|---|---|---|---|
| wraith-transfer | P2P file transfer with drag-and-drop GUI (Tauri 2.0 + React 18 + TypeScript) | Desktop | 6 | âś… v1.5.0 |
| wraith-android | Mobile client (Kotlin + Jetpack Compose + JNI bindings) | Android | - | âś… v1.6.0 |
| wraith-ios | Mobile client (Swift + SwiftUI + UniFFI bindings) | iOS | - | âś… v1.6.0 |
| wraith-chat | E2EE messaging (Tauri 2.0 + React 18 + Double Ratchet + SQLCipher) | Desktop | 3 | âś… v1.6.0 |
Total Clients: 9 tests, 4 production applications (~7,100 lines: 2,500 Rust, 1,800 Kotlin, 1,200 Swift, 1,600 TypeScript/React)
| Component | Tests | Purpose |
|---|---|---|
| Integration Tests | 323 | Cross-crate protocol integration and end-to-end scenarios |
| Benchmarks | - | Performance validation (frame parsing, AEAD, hashing, file operations) |
Project Total: 1,626 tests (1,280 passing in protocol, 23 ignored, 323 in integration tests) - 100% pass rate on active tests
- User Guide - Installation, quick start, CLI reference
- Configuration Reference - Complete TOML configuration
- Tutorial - Step-by-step getting started guide with practical examples
- Troubleshooting - Common issues and solutions
- Development Guide
- Coding Standards
- API Reference
- Dependency Management
- Python Tooling Guide
- Protocol Development History - Detailed phase-by-phase development timeline
- Client Applications Development History - Client ecosystem development planning and progress
- Embedding Guide
- Integration Guide - Complete library integration guide with API examples
- Platform Support
- Interoperability
- Security Audit Report - Comprehensive security validation and recommendations
- DPI Evasion Report - Deep packet inspection validation and analysis
- Security Policy - Vulnerability reporting and responsible disclosure
- Protocol Comparison - WRAITH vs QUIC, WireGuard, Noise Protocol, BitTorrent
- Client Overview
- Reference Client Design - GUI design guidelines for client applications
- Client Roadmap
- Technical Debt Analysis - Comprehensive code quality assessment
- Technical Debt Action Plan - Prioritized remediation strategy
- Technical Debt TODO List - Actionable tracking checklist
WRAITH Protocol powers a comprehensive ecosystem of secure applications across 3 priority tiers:
| Client | Description | Status | Story Points |
|---|---|---|---|
| WRAITH-Transfer | Desktop P2P file transfer with drag-and-drop GUI (Tauri 2.0 + React 18) | âś… Complete (v1.5.0) | 102 |
| WRAITH-Android | Android mobile client with Kotlin/Jetpack Compose (Material Design 3, JNI bindings) | âś… Complete (v1.6.0) | ~60 |
| WRAITH-iOS | iOS mobile client with Swift/SwiftUI (UniFFI bindings, iOS 16.0+) | âś… Complete (v1.6.0) | ~60 |
| WRAITH-Chat | E2EE messaging with Signal Protocol Double Ratchet (Tauri 2.0 + SQLCipher) | âś… Complete (v1.6.0) | 182 |
| Client | Description | Status | Story Points |
|---|---|---|---|
| WRAITH-Sync | Decentralized backup synchronization (Dropbox alternative) | Planned | 136 |
| WRAITH-Share | Distributed anonymous file sharing (BitTorrent-like) | Planned | 123 |
| Client | Description | Status | Story Points |
|---|---|---|---|
| WRAITH-Stream | Secure media streaming with live/VOD support (AV1/Opus) | Planned | 71 |
| WRAITH-Mesh | IoT mesh networking for decentralized device communication | Planned | 60 |
| WRAITH-Publish | Censorship-resistant publishing platform (blogs, wikis) | Planned | 76 |
| WRAITH-Vault | Distributed secret storage using Shamir Secret Sharing | Planned | 94 |
| Client | Description | Status | Story Points |
|---|---|---|---|
| WRAITH-Recon | Network reconnaissance & data exfiltration assessment | Planned | 55 |
| WRAITH-RedOps | Red team operations platform with C2 infrastructure | Planned | 89 |
Total Ecosystem: 10 clients, ~1,148 story points (4 complete, 6 planned)
Security Testing Notice: WRAITH-Recon and WRAITH-RedOps require signed authorization and governance compliance. See Security Testing Parameters for authorized use requirements.
See Client Documentation and Client Roadmap for comprehensive details.
- Rust 1.85+ (Rust 2024 edition) - Install Rust
- Linux 6.2+ (recommended for AF_XDP and io_uring support)
- x86_64 or aarch64 architecture
- clang/LLVM (optional, for XDP/eBPF compilation)
Note: While Linux 6.2+ is recommended for optimal performance with kernel bypass features, WRAITH Protocol includes UDP fallback that works on all platforms.
# Development build
cargo build --workspace
# Release build with optimizations
cargo build --release
# Run all tests
cargo test --workspace
# Run lints
cargo clippy --workspace -- -D warnings
# Format code
cargo fmt --all
# Run all CI checks (test + clippy + fmt + doc)
cargo xtask ci
# Generate API documentation
cargo doc --workspace --open
# Run benchmarks
cargo bench --workspaceWRAITH provides convenient cargo aliases (see .cargo/config.toml):
# Run full CI suite
cargo xtci
# Build and open documentation
cargo xtdoc
# Build XDP programs (Linux only, requires eBPF toolchain)
cargo xdbuild# Unit tests
cargo test --lib
# Integration tests
cargo test --test '*'
# Property-based tests
cargo test --features proptest
# Run with coverage
cargo tarpaulin --workspace --out HtmlWRAITH Protocol uses Python for auxiliary tasks like YAML linting. A Python virtual environment is provided:
# Quick health check (commands must be chained with &&)
source .venv/bin/activate && yamllint --version
# Lint GitHub Actions workflows
source .venv/bin/activate && yamllint .github/
# Automated venv setup/repair
bash scripts/venv-setup.shSee Python Tooling Guide for detailed documentation.
Note: Due to Claude Code's shell behavior, always chain commands with && when using the venv.
WRAITH Protocol development follows a structured multi-phase approach:
Completed Phases:
- âś… Phase 1: Foundation & Core Types (89 SP)
- âś… Phase 2: Cryptographic Layer (102 SP)
- âś… Phase 3: Transport & Kernel Bypass (156 SP)
- âś… Phase 4: Obfuscation & Stealth (243 SP)
- âś… Phase 5: Discovery & NAT Traversal (123 SP)
- âś… Phase 6: Integration & Testing (98 SP)
- âś… Phase 7: Hardening & Optimization (158 SP)
- âś… Phase 9: Node API & Protocol Orchestration (85 SP)
- âś… Phase 10: Protocol Component Wiring (130 SP)
- âś… Phase 11: Production Readiness (92 SP)
- âś… Phase 12: Technical Excellence & Production Hardening (126 SP)
- âś… Phase 13: Performance Optimization & DPI Validation (76 SP)
- âś… Phase 14: Node API Integration & Code Quality (55 SP)
- âś… Phase 15: WRAITH-Transfer Desktop Application (102 SP)
- âś… Phase 16: Mobile Clients & WRAITH-Chat (302 SP)
- WRAITH-Android: Native Android client with Kotlin/Jetpack Compose, JNI bindings (~60 SP)
- WRAITH-iOS: Native iOS client with Swift/SwiftUI, UniFFI bindings (~60 SP)
- WRAITH-Chat: E2EE messaging with Double Ratchet, SQLCipher database (182 SP)
Total Development: 1,937 story points delivered across 16 phases
Upcoming:
- đź“‹ Phase 17: XDP Implementation & Advanced Testing
- đź“‹ Phase 17+: Post-quantum cryptography, formal verification
- đź“‹ Client Applications (804 SP across 6 remaining applications)
See ROADMAP.md and Protocol Development History for detailed planning and phase accomplishments.
10 client applications across 3 priority tiers:
- Tier 1 (Complete):
- âś… WRAITH-Transfer (Desktop P2P file transfer - v1.5.0)
- âś… WRAITH-Android (Android mobile client - v1.6.0)
- âś… WRAITH-iOS (iOS mobile client - v1.6.0)
- âś… WRAITH-Chat (E2EE messaging - v1.6.0)
- Tier 2 (Planned): WRAITH-Sync (backup sync), WRAITH-Share (distributed sharing)
- Tier 3 (Planned): WRAITH-Stream, WRAITH-Mesh, WRAITH-Publish, WRAITH-Vault
- Security Testing (Planned): WRAITH-Recon, WRAITH-RedOps (authorized use only)
Status: 4 of 10 clients complete (404 SP delivered, 804 SP remaining)
See Client Roadmap for detailed planning.
| Metric | Target | Notes |
|---|---|---|
| Throughput (10 GbE) | >9 Gbps | AF_XDP with zero-copy |
| Throughput (1 GbE) | >950 Mbps | With encryption |
| Handshake Latency | <50 ms | LAN conditions |
| Packet Latency | <1 ms | NIC to application |
| Memory per Session | <10 MB | Including buffers |
| CPU @ 10 Gbps | <50% | 8-core system |
Measured Performance (Phase 13 benchmarks):
- Ring Buffers: ~100M ops/sec (SPSC), ~20M ops/sec (MPSC with 4 producers)
- Frame Parsing: 172M frames/sec with SIMD acceleration (AVX2/SSE4.2/NEON)
- AEAD Encryption: 3.2 GB/s (XChaCha20-Poly1305)
- BLAKE3 Hashing: 8.5 GB/s with parallelization
- File Chunking: 14.85 GiB/s
- Tree Hashing: 4.71 GiB/s in-memory, 3.78 GiB/s from disk
- Chunk Verification: 4.78 GiB/s
- File Reassembly: 5.42 GiB/s
WRAITH Protocol uses comprehensive automated workflows for quality assurance and releases:
- Testing: Automated test suite on every push and pull request
- Code Quality: Clippy linting and rustfmt formatting checks
- Documentation: Automated doc generation and link validation
- MSRV: Minimum Supported Rust Version (1.85) verification
- Dependabot: Automated dependency updates with security prioritization
- CodeQL: Static analysis for security vulnerabilities
- cargo-audit: RustSec advisory database scanning
- Gitleaks: Secret scanning with false positive suppression
- Fuzzing: 5 libFuzzer targets with weekly automated runs
- Weekly Scans: Automated security checks every Monday
- Multi-Platform Builds: 6 platform targets (Linux x86_64/aarch64, macOS Intel/ARM, Windows)
- Artifact Generation: Automated binary builds with SHA256 checksums
- GitHub Releases: Automatic release creation from version tags
- Changelog Integration: Automated release notes from CHANGELOG.md
See CI Workflow, CodeQL Workflow, Fuzz Workflow, and Release Workflow for configuration details.
WRAITH Protocol is designed with security as a core principle:
| Function | Algorithm | Security Level | Features |
|---|---|---|---|
| Signatures | Ed25519 | 128-bit | Identity verification, ZeroizeOnDrop |
| Key Exchange | X25519 | 128-bit | ECDH on Curve25519 |
| Key Encoding | Elligator2 | Traffic analysis resistant | Indistinguishable from random |
| AEAD | XChaCha20-Poly1305 | 256-bit key, 192-bit nonce | Key-committing, constant-time |
| Hash | BLAKE3 | 128-bit collision resistance | Tree-parallelizable |
| KDF | HKDF-BLAKE3 | 128-bit | Context-separated key derivation |
| Handshake | Noise_XX_25519_ChaChaPoly_BLAKE2s | Mutual auth | Identity hiding, forward secrecy |
| Ratcheting | Double Ratchet | Forward & post-compromise security | Symmetric + DH ratchets |
| Replay Protection | 64-bit sliding window | DoS resistant | Constant-time operations |
Cryptographic Guarantees:
- Forward Secrecy: Double Ratchet with independent symmetric and DH ratchets
- Post-Compromise Security: DH ratchet heals from key compromise
- Replay Protection: 64-bit sliding window bitmap with constant-time operations
- Key Commitment: BLAKE3-based AEAD key commitment prevents multi-key attacks
- Automatic Rekey: Time-based, packet-count-based, byte-count-based triggers
Traffic Analysis Resistance:
- Elligator2 Key Encoding: X25519 public keys indistinguishable from random
- Cover Traffic Generation: Constant, Poisson, and uniform distribution modes
- Padding: Configurable padding modes for traffic shape obfuscation
- Protocol Mimicry: TLS, WebSocket, DNS-over-HTTPS wrappers
Implementation Security:
- Memory Safety: Rust with zero unsafe code in cryptographic paths
- ZeroizeOnDrop: Automatic zeroization of all secret key material
- Constant-Time Operations: Side-channel resistant implementations
- SIMD Acceleration: SSE2/NEON optimized with security validation
- Unsafe Code Audit: 100% documentation coverage with SAFETY comments
Validation:
- Test Coverage: 1,396 tests (1,380 passing, 16 ignored) covering all protocol layers
- DPI Evasion: Comprehensive validation against Wireshark, Zeek, Suricata, nDPI (see DPI Evasion Report)
- Fuzzing: 5 libFuzzer targets continuously testing robustness
- Property-Based Tests: QuickCheck-style invariant validation
- Security Scanning: Dependabot, CodeQL, RustSec advisories, weekly scans
For security issues, please see SECURITY.md for our security policy and responsible disclosure process.
WRAITH Protocol is in active development and we welcome contributions of all kinds:
- Protocol Implementation: Help complete advanced features and optimizations
- Testing: Write unit tests, integration tests, and property-based tests
- Documentation: Improve API docs, add examples, clarify specifications
- Code Review: Review pull requests and provide feedback
- Protocol Review: Analyze cryptographic design and security properties
- Penetration Testing: Test implementations for vulnerabilities (coordinated disclosure)
- Formal Verification: Assist with formal proofs of security properties
- Technical Writing: Improve documentation clarity and completeness
- Tutorials: Create getting-started guides and usage examples
- Translations: Translate documentation to other languages
See ROADMAP.md for current focus areas and planned work.
We welcome contributions! Please see CONTRIBUTING.md for comprehensive guidelines.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes with tests
- Run CI checks locally (
cargo xtask ci) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Rust coding standards (rustfmt, clippy)
- Add tests for new functionality
- Update documentation (API docs, CHANGELOG.md)
- Sign commits (optional but encouraged)
- Follow Conventional Commits format
Licensed under the MIT License. See LICENSE for details.
WRAITH Protocol builds on the work of many excellent projects and technologies:
- Noise Protocol Framework - Cryptographic handshake patterns
- WireGuard - Design philosophy: simplicity and performance
- QUIC - Connection migration and modern transport
- libp2p - DHT and NAT traversal patterns
- Signal Protocol - Double ratchet algorithm
- RustCrypto - ChaCha20-Poly1305, X25519, BLAKE3 implementations
- Snow - Noise Protocol Framework for Rust
- dalek-cryptography - Ed25519 and X25519
- AF_XDP - Kernel bypass networking
- io_uring - Efficient async I/O
- eBPF/XDP - In-kernel packet processing
- Repository: github.com/doublegate/WRAITH-Protocol
- Documentation: docs/
- Issue Tracker: GitHub Issues
- Discussions: GitHub Discussions
- Security Policy: SECURITY.md
- Changelog: CHANGELOG.md
- Roadmap: ROADMAP.md
WRAITH Protocol - Secure. Fast. Invisible.
Status: v1.6.0 Mobile Clients & WRAITH-Chat (Phase 16 Complete) | License: MIT | Language: Rust 2024 (MSRV 1.85) | Tests: 1,626 (100% pass rate) | Quality: Production-ready, 0 vulnerabilities, zero warnings, 98/100 quality grade | Clients: 4 production applications (Desktop, Android, iOS, E2EE Chat)