RANNTA PQ CloudOpen Console
Menu

Post-Quantum Verification & Architecture Documentation

PQ Cloud cryptographically verifies ML-DSA-65 evidence. Your backend keeps its existing classical authorization and final business decision, and submits classical_verified=true as a customer assertion after that classical authorization succeeds. PQ Cloud requires that assertion under its HybridRequired service policy but does not independently cryptographically verify your classical signature or authorization event.

Two distinct security layers

PQ Cloud authorization verification
Hosted PQ Cloud cryptographically verifies ML-DSA-65 evidence, registered-key state and policy. The classical factor is performed and asserted by the customer system.
X-Chain native authorization
Protected RANNTA X-Chain paths can natively validate secp256k1/ECDSA plus ML-DSA-65 under HybridRequired.
X-Chain transport
Validator-sensitive RANNTA X-Chain Mainnet paths use X25519 + ML-KEM-768 + HKDF-SHA256 + AES-256-GCM under HybridRequired.
Transport protocol boundary
The current RANNTA validator-sensitive transport is a RANNTA-specific session and record protocol. RANNTA does not claim TLS 1.3 or RFC 10024 X25519MLKEM768 conformance for this transport unless explicitly documented in a future release.
Scope boundary
The transport claim is limited to validator-sensitive protected paths, not every public RPC byte and not customer traffic using a hosted API plan.

PQ Cloud integration boundary

Customer
Private-key custody, signing, classical authorization, creation of the classical_verified assertion and final allow/deny decision.
PQ Cloud
Canonical payload, ML-DSA-65, registered-key and service-policy verification.
Result
Valid or Rejected. Missing or failed verification must not be promoted to Valid.

Core API flow

  1. Store the project API key server-side.
  2. Complete the existing classical authorization in your backend.
  3. Build the canonical payload and sign its exact bytes with your customer-held ML-DSA-65 private key.
  4. Submit the canonical payload, ML-DSA-65 evidence and your classical_verified assertion to /v1/hybrid/verify.
  5. PQ Cloud cryptographically verifies the ML-DSA-65 evidence, key state and configured service policy.
  6. Consume the explicit Valid / Rejected result in your own final business decision.
curl https://pq.rannta.com/v1/hybrid/verify \
  -H "x-api-key: $RANNTA_PQ_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "payload": {
      "domain": "example.com",
      "project_id": "prj_...",
      "subject": "withdrawals",
      "action": "authorize",
      "key_version": 1,
      "nonce": "unique-nonce"
    },
    "public_key_hex": "<registered-public-key-hex>",
    "key_version": 1,
    "ml_dsa_65_signature_hex": "<signature-hex>",
    "classical_verified": true
  }'

Trust and production package

Standards and certification wording

RANNTA uses the ML-DSA-65 algorithm specified by NIST FIPS 204. This standards reference does not mean that PQ Cloud is a NIST ACVP/CAVP-validated implementation or a CMVP/FIPS-validated cryptographic module. RANNTA does not claim those validations or certifications unless a specific external validation record is linked.

Raw signature verification

/v1/verify verifies supplied ML-DSA-65 public-key/signature evidence over the canonical payload. It is distinct from HybridRequired service-policy verification, which also checks the registered project key, policy state and the caller-provided classical-authorization assertion.

Key registration and rotation

Register only ML-DSA-65 public keys. PQ private keys remain in your own signer, service or HSM. Rotation evidence and rollback-negative tests are documented in the threat model.