Documentation

From first probe to compliance report in four steps.

Getting Started

Step 1: Probe a domain

pqprobe scan example.com
example.com — Grade: C (score: 79)

  Protocol        TLS 1.3 ✓
  Key Exchange    X25519 (classical only)
  Cipher          AES-256-GCM ✓
  Certificate     ECDSA P-256, expires 2026-11-03

  Post-Quantum
    PQC key exchange    ✗ not negotiated
    Hybrid key exchange ✗ not negotiated

  CNSA 2.0
    2027 deadline       NOT READY
    2030 deadline       NOT READY
    2035 deadline       NOT READY

  Deductions
    Post-Quantum        No PQC support — max grade capped at C

  Trajectory: NEW (probe again to establish trend)

This is what most well-configured servers look like today. TLS 1.3, strong ciphers, valid certificate — and zero post-quantum protection. SSL Labs would give this an A. pqprobe gives it a C because PQC readiness is what matters for the deadlines ahead.

Step 2: Analyze your code

pqprobe-static scan . --output sarif

Analyzes source code for cryptographic usage — hardcoded algorithms, weak key sizes, deprecated ciphers, insecure TLS config. 160+ detection patterns across Go, Python, Java, C/C++, JavaScript, TypeScript, Rust, C#, Ruby, PHP, plus config files (nginx, Apache, YAML, JSON).

SARIF output uploads directly to GitHub or GitLab Security tabs. No new dashboard — findings appear alongside your existing code scanning results.

# GitHub Actions
- uses: github/codeql-action/upload-sarif@v3
  with:
    sarif_file: pqprobe-results.sarif

# GitLab CI
artifacts:
  reports:
    sast: pqprobe-results.sarif

Step 3: Check your dependencies

pqprobe dep-audit .
go.mod — 3 crypto dependencies

  crypto/tls (stdlib)     PQC: ✓ since Go 1.24    Current: Go 1.22 ⚠ upgrade
  golang.org/x/crypto     PQC: ✓ since v0.31.0    Current: v0.28.0 ⚠ upgrade
  github.com/lib/pq       PQC: inherits stdlib     No action needed

Summary: 2 dependencies need version bumps for PQC support

Covers go.mod, package.json, requirements.txt, Cargo.toml, pom.xml, build.gradle, Gemfile, composer.json, and .csproj. Reports which libraries use cryptography, whether they support PQC, and the minimum version to upgrade to.

Step 4: Track your trajectory

Probe the same targets over time. pqprobe compares results and assigns a migration trajectory:

pqprobe analyze example.com --days 90

Most organizations right now are STABLE. That's the finding — you haven't started, and the deadline hasn't stopped.

Add --project to extrapolate your trajectory against actual compliance deadlines:

pqprobe analyze example.com --project

For each CNSA 2.0 milestone (2027, 2030, 2035) and other frameworks with deadlines, you get: on track, at risk, stalled, or regressing — with projected completion date. Requires 3+ scans.

Export

pqprobe export-cbom output.json          # CycloneDX Cryptographic Bill of Materials
pqprobe export --output inventory.csv     # Full inventory for CMDB/SIEM
pqprobe report example.com               # Detailed report for a single target