Skip to content

[WRAITH] Wire-speed Resilient Authenticated Invisible Transfer Handler ... decentralized secure file transfer protocol with traffic analysis resistance, kernel bypass acceleration, and strong cryptographic guarantees

License

Notifications You must be signed in to change notification settings

doublegate/WRAITH-Protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WRAITH Protocol

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.

WRAITH Protocol Banner

CI Status CodeQL Release Version Security Rust Edition License

Current Status

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.

Features

Core Capabilities

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

WRAITH Protocol Architecture

Installation

Pre-Built Binaries (Recommended)

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 --version

All release artifacts include SHA256 checksums for verification.

Build From Source

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 --version

Quick Start

Note: 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 --show

For detailed usage, see User Guide and Tutorial.

Project Structure

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 Overview

Protocol Crates

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

Client Applications

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)

Integration Tests & Benchmarks

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

Documentation

Getting Started

Architecture & Design

Development

Integration

Security

Comparisons

Testing & Operations

Specifications

Client Applications

Project Planning

Technical Debt & Quality

Client Applications

WRAITH Protocol powers a comprehensive ecosystem of secure applications across 3 priority tiers:

Tier 1: Core Applications (High Priority)

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

Tier 2: Specialized Applications (Medium Priority)

Client Description Status Story Points
WRAITH-Sync Decentralized backup synchronization (Dropbox alternative) Planned 136
WRAITH-Share Distributed anonymous file sharing (BitTorrent-like) Planned 123

Tier 3: Advanced Applications (Lower Priority)

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

Tier 3: Security Testing (Specialized - Authorized Use Only)

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.

Development

Prerequisites

  • 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.

Build Commands

# 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 --workspace

Cargo Aliases

WRAITH 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

Testing

# Unit tests
cargo test --lib

# Integration tests
cargo test --test '*'

# Property-based tests
cargo test --features proptest

# Run with coverage
cargo tarpaulin --workspace --out Html

Python Tooling (Optional)

WRAITH 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.sh

See Python Tooling Guide for detailed documentation.

Note: Due to Claude Code's shell behavior, always chain commands with && when using the venv.

Roadmap

WRAITH Protocol development follows a structured multi-phase approach:

Protocol Development

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.

Client Applications

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.

Performance Targets

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

CI/CD Infrastructure

WRAITH Protocol uses comprehensive automated workflows for quality assurance and releases:

Continuous Integration

  • 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

Security Scanning

  • 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

Release Automation

  • 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.

Security

WRAITH Protocol is designed with security as a core principle:

Cryptographic Suite

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

Security Features

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

Reporting Vulnerabilities

For security issues, please see SECURITY.md for our security policy and responsible disclosure process.

Getting Involved

WRAITH Protocol is in active development and we welcome contributions of all kinds:

For Developers

  • 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

For Security Researchers

  • 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

For Writers

  • 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.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for comprehensive guidelines.

Quick Start for Contributors

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes with tests
  4. Run CI checks locally (cargo xtask ci)
  5. Commit your changes (git commit -m 'feat: add amazing feature')
  6. Push to the branch (git push origin feature/amazing-feature)
  7. Open a Pull Request

Contribution Requirements

  • 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

License

Licensed under the MIT License. See LICENSE for details.

Acknowledgments

WRAITH Protocol builds on the work of many excellent projects and technologies:

Protocol Inspirations

Cryptographic Libraries

Performance Technologies

Links


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)

About

[WRAITH] Wire-speed Resilient Authenticated Invisible Transfer Handler ... decentralized secure file transfer protocol with traffic analysis resistance, kernel bypass acceleration, and strong cryptographic guarantees

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 5