qdum-vault 1.2.6

Quantum-resistant vault CLI for Solana using SPHINCS+ post-quantum signatures
qdum-vault-1.2.6 is not a library.

QDUM Vault CLI

Command-line tool for managing your quantum-resistant Quantdum token vault.

Features

  • 🔐 SPHINCS+-SHA2-128s post-quantum signatures (NIST FIPS 205)
  • 🔒 Vault Locking with cryptographic challenges
  • 11-Step Verification for on-chain signature validation
  • 💸 Token Transfers with Token-2022 transfer hooks
  • 🏷️ On-Chain Metadata management
  • 🌐 Solana Integration via RPC (devnet/mainnet)

Tokenomics

The QDUM token has a fixed supply with no minting capabilities:

  • 80% - Locked liquidity
  • 17% - Protocol reserves
  • 3% - Community airdrop

All tokens are created at genesis. There is no minting functionality.

Prerequisites

Before installing QDUM Vault, you need Rust and Cargo installed on your system.

Install Rust

Linux/macOS/WSL:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

After installation, restart your terminal or run:

source $HOME/.cargo/env

Windows:

We recommend using WSL (Windows Subsystem for Linux) for the best experience:

  1. Install WSL (if not already installed):

    • Open PowerShell as Administrator and run:
      wsl --install
      
    • Restart your computer
  2. Launch WSL:

    • Open "Ubuntu" from Start Menu, or
    • Type wsl in PowerShell, or
    • Type bash in Command Prompt
  3. Install Rust in WSL:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    source $HOME/.cargo/env
    

Alternatively, you can use native Windows with Visual Studio C++ Build Tools, but WSL provides better terminal experience for the quantum-themed UI.

Installation

Install from crates.io (Recommended)

Once Rust is installed, simply run:

cargo install qdum-vault

That's it! The qdum-vault command is now available globally.

Alternative Installation Methods

Build from Source (GitHub)

git clone https://github.com/quantdum/qdum-vault.git
cd qdum-vault
cargo install --path .

Local Development

git clone https://github.com/quantdum/qdum-vault.git
cd qdum-vault
cargo build
./target/debug/qdum-vault --help

Quick Install Script

./install.sh

Usage

1. Generate SPHINCS+ Keypair

qdum-vault init

Keys are saved to ~/.qdum/:

  • sphincs_private.key (64 bytes)
  • sphincs_public.key (32 bytes)

2. Register Your Vault On-Chain

qdum-vault register \
  --wallet YOUR_WALLET_ADDRESS \
  --keypair ~/.config/solana/id.json

3. Lock Your Vault

qdum-vault lock \
  --wallet YOUR_WALLET_ADDRESS \
  --keypair ~/.config/solana/id.json

4. Unlock Your Vault

qdum-vault unlock \
  --wallet YOUR_WALLET_ADDRESS \
  --keypair ~/.config/solana/id.json

This performs an 11-step SPHINCS+ signature verification on-chain.

5. Check Status

qdum-vault status --wallet YOUR_WALLET_ADDRESS

6. Check Balance

qdum-vault balance \
  --keypair ~/.config/solana/id.json \
  --mint 3V6ogu16de86nChsmC5wHMKJmCx5YdGXA6fbp3y3497n

7. Transfer QDUM Tokens

qdum-vault transfer \
  --to RECIPIENT_ADDRESS \
  --amount 10000000000 \
  --keypair ~/.config/solana/id.json \
  --mint 3V6ogu16de86nChsmC5wHMKJmCx5YdGXA6fbp3y3497n

Transfer QDUM tokens to another wallet:

  • Amount in base units with 6 decimals
  • Example: 10,000 QDUM = 10000000000 base units
  • Utilizes Token-2022 transfer hooks for enhanced security

Configuration

Change RPC Endpoint

qdum-vault --rpc-url https://api.mainnet-beta.solana.com <command>

Use Different Program

qdum-vault --program-id YOUR_PROGRAM_ID <command>

Architecture

  • Algorithm: SPHINCS+-SHA2-128s
  • Public Key: 32 bytes
  • Private Key: 64 bytes
  • Signature: 7,856 bytes
  • Verification: 11 transactions (chunked)

Security

⚠️ IMPORTANT: Keep your SPHINCS+ private key extremely safe!

  • Store offline or in a hardware security module
  • Never share or commit to version control
  • Anyone with your private key can unlock your vault

Development

Build

cargo build

Test

cargo test

Install Locally

cargo install --path .

Uninstall

cargo uninstall qdum-vault

Troubleshooting

Command not found

Make sure ~/.cargo/bin is in your PATH:

echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Need SOL for transactions

solana airdrop 1 --url devnet

License

MIT