VeriBits CLI

Professional security and developer tools in your terminal

📦 Installation

Option 1: Install via pip (Recommended)

# Install globally
pip install veribits

# Verify installation
veribits --version

# Check available commands
veribits --help

Option 2: Install in virtual environment

# Create virtual environment
python3 -m venv venv

# Activate virtual environment
source venv/bin/activate  # On macOS/Linux
# or
venv\Scripts\activate     # On Windows

# Install VeriBits CLI
pip install veribits

Option 3: Install from source

# Clone repository
git clone https://github.com/afterdarksystems/veribits-cli.git
cd veribits-cli

# Install in development mode
pip install -e .

# Or build and install
python setup.py install
💡 Pro Tip: Use the short alias vb instead of veribits for faster commands!

System Requirements

  • ✓ Python 3.8 or higher
  • ✓ pip package manager
  • ✓ Internet connection for API requests
  • ✓ Works on macOS, Linux, and Windows

🖥️ VeriBits System Client

🚀 NEW: Multi-threaded system scanner for enterprise security auditing

The VeriBits System Client is a high-performance, multi-threaded file integrity monitoring tool designed for enterprise environments. It scans your entire system, generates cryptographic hashes (SHA-256 and SHA-512) for all files, and uploads the results to your VeriBits account for centralized security monitoring and baseline comparison.

📥 Download

Download System Client v1.0 9.3 KB

✨ Key Features

  • ⚡ Multi-threaded scanning for maximum performance
  • 🔐 SHA-256 and SHA-512 cryptographic hashing
  • ☁️ Automatic upload to VeriBits cloud platform
  • 📊 View results in centralized System Scans dashboard
  • 🎯 Configurable scan paths and exclusions
  • 🔄 Batch processing with progress tracking
  • 🚀 Production-ready for Linux, macOS, and Windows

⚙️ Installation & Configuration

# Download and extract
wget https://veribits.com/downloads/veribits-system-client-1.0.tar.gz
tar -xzf veribits-system-client-1.0.tar.gz
cd veribits-system-client-1.0

# Install Python dependencies
pip install -r requirements.txt

# Configure with your API credentials
cp config.json.example config.json
nano config.json  # Edit with your email and API key

# Run a scan
python3 scan_system.py

📝 Configuration File (config.json)

{
  "endpoint_url": "https://veribits.com/api/v1/system-scans",
  "email": "your-email@example.com",
  "api_key": "vb_your_api_key_here_48_characters_long_hex"
}
🔑 Get Your API Key: Log in to your dashboard to find your API key under the API Keys section.

💼 Use Cases

🏢 Enterprise Security

Establish file integrity baselines across your infrastructure

🔍 Compliance Auditing

Meet regulatory requirements for file integrity monitoring

🛡️ Threat Detection

Compare against known malware signatures and detect anomalies

📊 Change Tracking

Monitor system changes and unauthorized file modifications

🎯 System Requirements

  • ✓ Python 3.7 or higher
  • ✓ Internet connection for API uploads
  • ✓ Read permissions for files you want to scan
  • ✓ Active VeriBits account with valid API key
📖 View Your Scans: After running the system client, view your scan results in the System Scans Dashboard.
🔑

JWT Tools

Decode, verify, and generate JWT tokens with signature validation

veribits jwt-decode "token..."
veribits jwt-sign --secret "key" \
  --payload '{"user": "test"}'
🔤

Regex Tester

Test regular expressions with real-time matching

veribits regex "\\d{3}-\\d{3}-\\d{4}" \
  "Call 555-123-4567"
🔎

Secrets Scanner

Scan code for exposed API keys, tokens, and credentials

veribits secrets ./config.yaml
veribits secrets ./src/*.js
🔐

Hash Generator

Generate MD5, SHA-256, SHA-512, and bcrypt hashes

veribits hash "password123" \
  -a md5 -a sha256 -a sha512

Crypto Validation

Validate Bitcoin and Ethereum addresses

veribits bitcoin 1A1zP1eP...
veribits ethereum 0x742d35Cc...
🔍

File Magic

Detect file types by magic number

veribits file-magic \
  ./unknown-file.bin

📚 Available Commands

🔐 Security & Cryptography

Command Description
file-magic FILE Detect file type by magic number
bitcoin ADDRESS Validate Bitcoin address or transaction
ethereum ADDRESS Validate Ethereum address or transaction

🛠️ Developer Tools

Command Description
jwt-decode TOKEN Decode and verify JWT token
jwt-sign OPTIONS Generate new JWT token
regex PATTERN TEXT Test regular expressions
secrets FILE Scan for exposed secrets
hash TEXT Generate cryptographic hashes

⚙️ Configuration

Command Description
config Show current configuration
limits Check usage limits

🔑 Authentication

For unlimited usage and advanced features, set your API key:

export VERIBITS_API_KEY="your-api-key-here"

Get your API key at: veribits.com/dashboard

📊 Usage Limits

Anonymous (No API Key)

  • ✓ 5 free scans per 30-day period
  • ✓ 50MB max file size
  • ✓ All tools available

Authenticated

  • ✓ 50+ scans per month (Free tier)
  • ✓ 200MB max file size
  • ✓ Priority processing
  • ✓ API access

View Pricing Plans

💻 Example Usage

JWT Token Operations

# Decode a JWT token
veribits jwt-decode "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

# Decode and verify signature
veribits jwt-decode "token..." --secret "my-secret-key" --verify

# Generate a new JWT token
veribits jwt-sign \
  --secret "my-secret-key" \
  --payload '{"user_id": 123, "role": "admin"}' \
  --expires 3600

Regular Expression Testing

# Test email pattern
veribits regex "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}" \
  "Contact: john@example.com and jane@test.org"

# Test phone pattern with flags
veribits regex "\d{3}-\d{3}-\d{4}" "Call me at 555-123-4567" --flags "gi"

Security Scanning

# Scan a single file for secrets
veribits secrets ./config.yaml

# Scan multiple files
veribits secrets .env
veribits secrets ./src/config.js

# Scan all JavaScript files (use bash loop)
for file in src/**/*.js; do
    veribits secrets "$file"
done

Cryptographic Operations

# Generate multiple hashes
veribits hash "mypassword" -a md5 -a sha256 -a sha512

# Validate Bitcoin address
veribits bitcoin 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa

# Validate Ethereum address with checksum
veribits ethereum 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb

# Detect file type
veribits file-magic ./unknown-file.bin

Configuration & Limits

# Check your current configuration
veribits config

# Check usage limits and remaining scans
veribits limits

🤖 Scripts & Automation

Bash Script - Batch Secret Scanning

#!/bin/bash
# scan-secrets.sh - Scan all source files for exposed secrets

echo "Scanning for secrets in source files..."

# Set API key if you have one
export VERIBITS_API_KEY="your-api-key"

# Find all relevant source files and scan them
find ./src -type f \( -name "*.js" -o -name "*.py" -o -name "*.yaml" \) | while read file; do
    echo "Scanning: $file"
    veribits secrets "$file"
done

echo "Scan complete!"

Python Script - Automated Validation

#!/usr/bin/env python3
# validate_addresses.py - Validate crypto addresses from file

import subprocess
import sys

def validate_address(address, crypto_type):
    """Validate a cryptocurrency address using VeriBits CLI"""
    try:
        result = subprocess.run(
            ['veribits', crypto_type, address],
            capture_output=True,
            text=True,
            check=True
        )
        return True
    except subprocess.CalledProcessError:
        return False

# Read addresses from file
with open('addresses.txt', 'r') as f:
    for line in f:
        address = line.strip()
        if address.startswith('0x'):
            valid = validate_address(address, 'ethereum')
            print(f"Ethereum {address}: {'✅ Valid' if valid else '❌ Invalid'}")
        elif address.startswith(('1', '3', 'bc1')):
            valid = validate_address(address, 'bitcoin')
            print(f"Bitcoin {address}: {'✅ Valid' if valid else '❌ Invalid'}")

Git Pre-commit Hook

#!/bin/bash
# .git/hooks/pre-commit - Scan staged files for secrets before commit

echo "🔍 Scanning staged files for secrets..."

# Get list of staged files
STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACM)

# Scan each staged file
SECRETS_FOUND=0
for file in $STAGED_FILES; do
    if [[ -f "$file" ]]; then
        echo "Scanning: $file"
        if veribits secrets "$file" | grep -q "Secrets Found: [1-9]"; then
            echo "❌ Secrets detected in $file!"
            SECRETS_FOUND=1
        fi
    fi
done

# Abort commit if secrets found
if [ $SECRETS_FOUND -eq 1 ]; then
    echo ""
    echo "❌ COMMIT BLOCKED: Secrets detected in staged files!"
    echo "Please remove sensitive data before committing."
    exit 1
fi

echo "✅ No secrets detected. Proceeding with commit."
exit 0

Makefile Integration

# Makefile - Integrate VeriBits into your build process

.PHONY: security-scan test build

security-scan:
	@echo "Running security scans..."
	@veribits secrets ./config
	@veribits secrets ./src
	@echo "Security scan complete!"

test: security-scan
	@echo "Running tests..."
	@pytest tests/

build: test
	@echo "Building application..."
	@docker build -t myapp:latest .

🚀 CI/CD Integration

GitHub Actions

name: Security Scan

on: [push, pull_request]

jobs:
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Set up Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.10'

      - name: Install VeriBits CLI
        run: pip install veribits

      - name: Scan for secrets
        env:
          VERIBITS_API_KEY: ${{ secrets.VERIBITS_API_KEY }}
        run: |
          veribits secrets ./src > secrets-report.txt
          cat secrets-report.txt

      - name: Upload scan results
        uses: actions/upload-artifact@v3
        with:
          name: security-report
          path: secrets-report.txt

GitLab CI

security_scan:
  stage: test
  image: python:3.10
  before_script:
    - pip install veribits
  script:
    - veribits secrets ./src
    - veribits secrets ./config
  artifacts:
    reports:
      veribits: secrets-report.txt
  only:
    - branches

Jenkins Pipeline

pipeline {
    agent any

    stages {
        stage('Security Scan') {
            steps {
                sh 'pip install veribits'
                sh 'veribits secrets ./src'
                sh 'veribits secrets ./config'
            }
        }
    }

    post {
        always {
            archiveArtifacts artifacts: 'secrets-report.txt'
        }
    }
}

Docker Integration

# Dockerfile - Include security scanning in your build

FROM python:3.10-slim AS security-scan

# Install VeriBits CLI
RUN pip install veribits

# Copy source code
COPY ./src /app/src

# Run security scan
RUN veribits secrets /app/src

# Continue with main build
FROM python:3.10-slim
COPY ./src /app/src
# ... rest of your Dockerfile