vollcrypt

Post-quantum cryptography workspace for messaging, files, WebAssembly, desktop, and database security.

View the Project on GitHub BeratVural/vollcrypt

VOLLcrypt

Cross-platform, quantum-resistant cryptography workspace for Node.js, WebAssembly, and Rust

Files CI Messages CI npm files-node License: GPL v3 License: Commercial FIPS 203


Vollcrypt is an open-source cryptography workspace for post-quantum messaging, encrypted files, WebAssembly applications, desktop users, and database security integrations. Its security-sensitive cores are written in Rust and exposed through native Node.js and WebAssembly bindings.

Start Here

I want to… Start with
Encrypt files from Node.js @vollcrypt/files-node
Encrypt files in a browser or WASM runtime @vollcrypt/files-wasm
Build encrypted messaging @vollcrypt/messages-node or @vollcrypt/messages-wasm
Add field-level database encryption @vollcrypt/db-guard
Run a database security proxy @vollcrypt/db-proxy
Encrypt local files without writing code Download Vollcrypt Desktop

Quick Install

# File encryption for Node.js
npm install @vollcrypt/files-node

# End-to-end encrypted messaging for Node.js
npm install @vollcrypt/messages-node

All six npm packages are dual-licensed under GPLv3 or a commercial license and published through npm trusted publishing with provenance attestations. Package-specific examples and API notes are linked in the module documentation below.

Join the Project

Vollcrypt is looking for early users and contributors. You do not need a cryptography background to help with documentation, examples, cross-platform testing, TypeScript types, or developer tooling.

Documentation Modules

Explore the specific modules of Vollcrypt:


Repository Structure

This repository is organized as a monorepo containing the following modules:

graph TD
    classDef rust fill:#df5c3f,stroke:#333,stroke-width:1px,color:#fff;
    classDef bindings fill:#f0db4f,stroke:#333,stroke-width:1px,color:#333;
    classDef runtime fill:#43853d,stroke:#333,stroke-width:1px,color:#fff;
    classDef hardware fill:#00a3a6,stroke:#333,stroke-width:1px,color:#fff;

    subgraph Core ["Vollcrypt Core Workspace"]
        vollcrypt_core["vollcrypt-files-core (Rust)"]:::rust
        vollcrypt_messages_core["vollcrypt-core (Rust)"]:::rust
        vollcrypt_wave["vollcrypt-wave (Rust - no_std)"]:::rust
    end

    subgraph Bindings ["Binding Adapters"]
        napi["vollcrypt-messages/node (napi-rs)"]:::bindings
        wasm["vollcrypt-messages/wasm (wasm-bindgen)"]:::bindings
        files_node["vollcrypt-files/node (Node streams)"]:::bindings
        files_wasm["vollcrypt-files/wasm (Browser streams)"]:::bindings
    end

    subgraph Clients ["Application Runtimes"]
        node_app["Node.js Backend / Server (e.g. NestJS)"]:::runtime
        web_app["Web Browser / Front-end (e.g. Next.js)"]:::runtime
        native_app["Native Rust Applications / Daemons"]:::rust
        desktop_app["Vollcrypt Desktop App (Tauri v2 + React)"]:::runtime
        embedded_app["Tactical SDR / Bare-metal Hardware"]:::hardware
    end

    vollcrypt_messages_core --> napi
    vollcrypt_messages_core --> wasm
    vollcrypt_core --> files_node
    vollcrypt_core --> files_wasm
    vollcrypt_core --> desktop_app

    napi --> node_app
    wasm --> web_app
    files_node --> node_app
    files_wasm --> web_app
    vollcrypt_messages_core --> native_app
    
    vollcrypt_wave --> embedded_app
    vollcrypt_wave --> native_app

Core Capabilities & Cryptographic Guarantees

Vollcrypt workspace exposes a unified suite of quantum-resistant cryptographic engines, application-level clients, and transparent database security proxies:

  1. Quantum-Resistant End-to-End Encryption (E2EE) Secures messaging sessions and file distribution pipelines against both current and future quantum computing threats.
    • Hybrid Key Encapsulation: Combines FIPS 203 ML-KEM-768 with classical X25519 ECDH.
    • PCS & Forward Secrecy: Continuous ephemeral key ratcheting isolates key compromise and secures historical archives.
    • Sender & Receiver Privacy: Zero-knowledge Sealed Sender routing hides message metadata from delivery servers, and Blind Cluster Multicast hides recipient destinations.
  2. Transparent Database & Zero-Trust Security Protects sensitive database records directly at-rest and in-transit without modifications to off-the-shelf software.
    • Field-Level Encryption (DB-Guard): Modular ORM adapters (Drizzle, Mongoose, SeaORM, etc.) with dynamic KMS routing.
    • Zero-Trust Wire Proxy (DB-Proxy): Transparently decrypts and masks PostgreSQL fields on-the-fly for business intelligence tools and SQL clients.
  3. High-Performance Desktop Cryptography Provides a cross-platform, native desktop application (Tauri v2 + React) designed to encrypt local files and text.
    • Stream Chunking & Verification: Encrypts large files in chunks and validates integrity using Merkle trees without fully downloading the file.
  4. Tactical & Covert Radio TRANSEC/COMSEC (Vollcrypt Wave) A #![no_std] bare-metal compatible library designed to secure digital and software-defined radios (SDR) under extreme noise and jamming environments.
    • Chaotic Frequency Hopping (FHSS): Non-linear dynamical chaos systems (Logistic Map / Lorenz Attractors) generate hopping sequences indistinguishable from background noise.
    • Anti-Jamming & Acoustic Fallback: Dynamically escapes jamming frequencies via emergency hopping or autonomous ultrasonic fallback.
    • Hardware Abstraction Layer (HAL): Decouples radio front-end drivers (Aselsan, Harris, SDR) from the cryptography engine.
  5. Anti-Tamper & Sovereign Control Establishes physical and logical guardrails for hardware devices.
    • Poison Pill Zeroization: Wipes key material and permanently locks compromised devices via Ed25519-signed OTAZ commands.
    • Reactive Hardware Wiping: Triggered automatically upon case intrusion or debugger JTAG connection detection.

Building From Source

Prerequisites

You must have Rust, Node.js, and compiler tools set up on your machine. Depending on your Operating System, additional libraries are required:

Tool Version OS Requirements / Configuration Purpose
Rust Stable (≥ 1.76) Standard target setup. Run rustup target add wasm32-unknown-unknown for WASM. Core compilation and library code
wasm-pack Latest Available globally via binary or npm package. Compiles Rust core to Browser WASM package
Node.js ≥ 18 LTS release recommended. Native addon execution environment
npm ≥ 9 Packaged with Node.js. Node package dependencies
C/C++ Build Tools Current Windows: Visual Studio C++ Build Tools.
macOS: Xcode Command Line Tools (xcode-select --install).
Linux: GCC/G++ (build-essential).
Compiling native node bindings
LLVM / Clang Latest Required by binding generators. Add LIBCLANG_PATH environment variable pointing to LLVM bin folder if missing. Header parsing for napi-rs

Compilation Steps

# Clone the repository
git clone https://github.com/BeratVural/vollcrypt.git
cd vollcrypt

# 1. Run all workspace Rust tests
cargo test --workspace

# 2. Format and Lint checks
cargo fmt --all -- --check
cargo clippy --workspace -- -D warnings

# 3. Build Node.js Native Addon for Messages
cd vollcrypt-messages/node
npm install
npm run build
cd ../..

# 4. Build WebAssembly target for Messages
cd vollcrypt-messages/wasm
wasm-pack build --target web --out-dir pkg
cd ../..

# 5. Build and Run Vollcrypt Desktop Application
cd vollcrypt-desktop
npm install
npm run tauri dev      # Launches developer dev server
npm run tauri build    # Packages optimized production installer (.msi/.exe)
cd ..

Troubleshooting Common Build Issues


Licensing

Vollcrypt is dual-licensed under:

For commercial license purchases, pricing, or custom enterprise terms, please contact berat.vural.tr@gmail.com.

ON THIS PAGE