Post-Quantum Cryptography API Dilithium3 signing. Kyber768 encryption. One API call.

NIST-standardized quantum-resistant cryptography as a service. No crypto libraries to install. No key management. Sub-100μs signing on commodity hardware.

NIST-Standardized Sub-100μs Signing Managed Keys Zero-Exposure Signing

Why PQCaaS

Quantum-ready cryptography without the complexity.

Quantum-Ready

Core

NIST-standardized algorithms (ML-DSA, ML-KEM). Drop-in protection before Q-Day.

  • Dilithium3 digital signatures
  • Kyber768 key encapsulation
  • AES-256-GCM hybrid encryption
  • Hybrid Noise XX handshakes

Zero Setup

Simple

No crypto libraries. No key management. Sign, encrypt, and verify in one HTTP call.

  • One POST request to sign
  • One POST request to encrypt
  • Base64 in, base64 out
  • Python SDK available

Managed Keys

Secure

Private keys never leave the server. We handle generation, storage, and rotation.

  • Auto-generated key pairs on signup
  • Server-side key storage
  • One-click key rotation
  • Public key export for verification

Zero-Exposure Signing

New

Sign data without exposing plaintext to the API. Client-side hashing — we only see a 32-byte digest, never your content.

  • Client hashes locally (SHAKE-256)
  • API signs the digest, not your data
  • HIPAA, PCI, GDPR friendly
  • Send 32 bytes instead of 10MB

Try It

Sign a message in one API call.

bash
# Sign a document
curl -X POST https://pq-api.cyclecore.ai/v1/sign \
  -H "X-API-Key: pq_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message": "aGVsbG8gd29ybGQ="}'

# Response
{
  "signature": "MIIFkj...",
  "public_key": "a3f2c1...",
  "latency_us": 1842.5
}
python
from cyclecore_pq import CycleCoreClient

client = CycleCoreClient("pq_live_YOUR_KEY")
result = client.sign(b"hello world")
print(result.valid)  # True
python — Zero-Exposure Signing
from cyclecore_pq import CycleCoreClient, zes_sign, zes_verify

client = CycleCoreClient("pq_live_YOUR_KEY")

# Your data is hashed locally — the API never sees it
result = zes_sign(client, b"patient record, financial tx, anything sensitive")
print(result.signature[:40])  # Dilithium3 signature of the digest

# Verify (also hashes locally before checking)
verified = zes_verify(client, b"patient record, financial tx, anything sensitive", result.signature_bytes)
print(verified.valid)  # True — and CycleCore never saw your data

No API key? Try it right now in your browser.

Open Live Terminal

Use Cases

Crypto & DeFi

Post-quantum wallet signing. Zero-Exposure Signing lets you sign transaction digests without exposing full tx data. Quantum-proof from day one.

Healthcare & Compliance

Attestation chains for tamper-evident audit logs. Use Zero-Exposure Signing to sign HIPAA records without sending PII to a third party. Quantum-resistant audit trails for regulatory review.

Financial Services

Encrypt sensitive data with Kyber768. NIST-standardized, no algorithm migration needed. Ready for post-quantum compliance requirements.

IoT & Supply Chain

Batch signing for device attestation — up to 1,000 signatures per call. Low-latency security for real-time systems.

Secure Messaging

Hybrid Noise XX handshake for post-quantum key exchange between parties. Forward secrecy with quantum-resistant algorithms.

Get Started Free

1,000 free operations per day. No credit card required.