Kokil Thapa - Professional Web Developer in Nepal
Freelancer Web Developer in Nepal with 15+ Years of Experience

Kokil Thapa is an experienced full-stack web developer focused on building fast, secure, and scalable web applications. He helps businesses and individuals create SEO-friendly, user-focused digital platforms designed for long-term growth.

Post-Quantum Cryptography: What to Prepare For

By Kokil Thapa | Last reviewed: September 2026

Post-Quantum Cryptography: What to Prepare For is no longer a research-only topic for security teams. RSA and ECDH protect your TLS sessions, API tokens, document uploads, and payment callbacks today. A cryptographically relevant quantum computer could break those schemes at scale. NIST has already standardised replacement algorithms. Your job in 2026 is not to panic. It is to build a crypto inventory, plan hybrid migration, and avoid locking new systems into algorithms that will age badly. This guide maps that work for teams running production web applications, APIs, and client portals.

What is post-quantum cryptography and why should web teams care in 2026?

Post-quantum cryptography (PQC) refers to classical algorithms designed to resist attacks from large-scale quantum computers. Shor's algorithm threatens public-key schemes like RSA and elliptic-curve cryptography. Grover's algorithm weakens symmetric keys, but doubling AES key length largely neutralises that risk.

The practical threat for most businesses is harvest-now, decrypt-later. An attacker copies encrypted TLS traffic or archived ciphertext today. They decrypt it later when quantum hardware matures. Legal documents, KYC files, contract PDFs, and API payloads with ten-year retention are high-value targets. I've seen this concern surface on legal-tech portals where clients upload sensitive paperwork years before any dispute arises.

NIST published the first standardised PQC algorithms in 2024. The NIST Post-Quantum Cryptography project selected ML-KEM (formerly Kyber) for key encapsulation and ML-DSA (formerly Dilithium) for digital signatures. SLH-DSA (SPHINCS+) remains a hash-based backup. These names appear in FIPS documents and vendor roadmaps you will touch during upgrades.

PQC Threat and Migration TimelineToday: HarvestCopy TLS + archives2026–2030Hybrid migrationFuture: DecryptIf still on RSA/ECDHYour preparation windowInventory crypto → pilot hybrid TLS → rotate long-lived keysUpdate libraries (OpenSSL 3.x, liboqs, BoringSSL forks)Document workflows with 5+ year retention first
Post-Quantum Cryptography preparation timeline — act during the hybrid migration window before archived ciphertext becomes readable

If you maintain payment integrations or client portals, treat PQC as an extension of existing cryptography fundamentals. The difference is timeline and algorithm names, not the core discipline of key management and least privilege.

Which NIST algorithms replace RSA and ECDH in production systems?

NIST standardised three families for general deployment. ML-KEM handles key establishment — the role ECDH plays in TLS 1.3. ML-DSA handles signatures — the role RSA and ECDSA play in certificates and code signing. SLH-DSA offers a conservative hash-based signature when you want algorithm diversity.

Symmetric cryptography mostly stays put. AES-256 and SHA-256/384 remain sound if you avoid deprecated modes. Upgrade paths focus on public-key layers: certificate chains, JWT signing keys, SSH host keys, and application-level encryption that wraps data keys with RSA.

Current useClassical algorithmPQC replacement (NIST)Typical location
TLS key exchangeECDHE (P-256, X25519)ML-KEM-768 (hybrid)Nginx, Apache, CDN edge
TLS / code signingRSA-2048, ECDSA P-256ML-DSA-65CA certs, CI artefact signing
Backup signaturesECDSASLH-DSALong-term archive proofs
Data at rest wrappingRSA-OAEPML-KEM + AES-256-GCMApp-level envelope encryption
API JWT (asymmetric)RS256, ES256ML-DSA or hybrid transitionOAuth, service-to-service auth

OpenSSL 3.x exposes providers that can load classical and PQC implementations side by side. Cloudflare, Google, and Mozilla have published hybrid TLS experiments using X25519 combined with ML-KEM. The IETF TLS working group continues to define how clients and servers negotiate these combinations without breaking the public web.

What about deprecated candidates?

Do not build on BIKE, Classic McEliece, or other round-four also-rans unless a regulator explicitly requires them. Stick to NIST FIPS 203 (ML-KEM), FIPS 204 (ML-DSA), and FIPS 205 (SLH-DSA). Vendor support concentrates there, and that reduces your long-term maintenance burden.

How do you inventory cryptographic dependencies in a Laravel or PHP stack?

You cannot migrate what you cannot see. Start with an asset list that spans infrastructure, application code, and third-party services. On production Laravel 12 or 13 applications I maintain, the inventory usually spans more layers than developers first expect.

  1. Edge TLS. List every hostname, certificate issuer, key type, and expiry. Include CDN, load balancers, and origin servers managed through Linux server administration.
  2. Application libraries. Run composer show and grep for openssl, firebase/php-jwt, lcobucci/jwt, encryption packages, and PDF signing tools.
  3. Database and cache. Note MySQL 9.7 TLS settings, Redis 8.10 TLS, and any column-level encryption.
  4. Integrations. Payment gateways, SMS APIs, and webhooks often pin RSA public keys in config files.
  5. Backups and logs. Encrypted S3 buckets, restic repositories, and GPG-encrypted SQL dumps count too.
  6. CI/CD secrets. GitLab CI deploy keys, SSH ed25519 keys, and artefact signing in your Deployer pipeline.
# Example inventory script — TLS cert key type per hostname
for host in api.example.com app.example.com; do
  echo "=== $host ==="
  echo | openssl s_client -connect "$host:443" -servername "$host" 2>/dev/null \
    | openssl x509 -noout -text \
    | grep -E "Public Key Algorithm|Signature Algorithm|Not After"
done

# Composer packages touching crypto
composer show -D | grep -iE 'jwt|encrypt|openssl|gpg|sodium'

Store results in a spreadsheet with columns for algorithm, key size, owner, data classification, and retention period. Flag anything protecting data retained beyond five years as priority one. Client document portals — like those described in our Mijar Law Associates portfolio case — often fall into that bucket.

PQC Crypto Inventory LayersEdge TLS — CDN, Nginx, Apache, cert chainsApplication — JWT, Laravel encrypt, PDF sign, API keysData layer — MySQL TLS, Redis, envelope encryptionOps — backups, CI signing, SSH, webhook pinsTag each row: algorithm, retention, business owner
Layered crypto inventory for Post-Quantum Cryptography migration planning across infrastructure and application code

Compare your inventory against PCI DSS and HIPAA cryptography requirements if you process cards or health data. Regulators will eventually reference NIST PQC; early alignment reduces audit surprises.

What is hybrid TLS and how do you pilot it without breaking clients?

Hybrid TLS combines a classical key exchange with a PQC key encapsulation mechanism. Both shared secrets feed a KDF that produces the session key. If either primitive holds, the session stays confidential. That design protects you during the transition when some clients lack PQC support.

Pilot on internal subdomains first. Staging APIs, admin panels, and GitLab runners are good candidates. Monitor handshake failures and cipher negotiation in access logs. Only then expose hybrid ciphers on public marketing sites.

Nginx example with OpenSSL 3.x and oqsprovider

# Install liboqs and oqs-provider (Ubuntu 24.04 example)
sudo apt install liboqs-provider openssl

# openssl.cnf — enable oqsprovider
[openssl_init]
providers = provider_sect
[provider_sect]
default = default_sect
oqsprovider = oqsprovider_sect
[default_sect]
activate = 1
[oqsprovider_sect]
activate = 1
module = /usr/lib/x86_64-linux-gnu/ossl-modules/oqsprovider.so

# Generate hybrid cert (process varies by CA; many use ML-DSA leaf + classical chain during transition)
# nginx ssl directive — enable groups your build supports
ssl_ecdh_curve X25519:mlkem768:X25519MLKEM768;

Test with multiple clients: current Chrome, Firefox ESR, curl on your CI runner, and any legacy mobile WebView embedded in a client app. A handshake that works in staging but fails on an old Android WebView is a common gotcha I've hit during TLS upgrades unrelated to PQC.

For API development, document which JWT algorithms your services accept. If you add ML-DSA-signed tokens, publish a versioned endpoint and maintain RS256 parallel validation during overlap. Rate-limit and monitor auth failures the same way you would for any API abuse pattern.

Hybrid TLS 1.3 Key ExchangeClientBrowser / APIServerNginx / CDNClassical: X25519 ECDHPQC: ML-KEM-768 encapsKDF → AES-256-GCMSession key from both secrets
Hybrid TLS combines classical and ML-KEM key material — core pattern for Post-Quantum Cryptography rollout

What should application developers change in Laravel, WordPress, and custom code?

PHP 8.5 and Laravel 13 do not yet expose first-class ML-KEM helpers in core. Your near-term work is crypto agility: abstract key operations behind interfaces so algorithm swaps do not require sweeping refactors.

  • Stop hard-coding RS256. Read allowed algorithms from config. Reject unexpected alg headers on inbound JWTs.
  • Prefer libsodium (sodium_crypto_*) for symmetric work. It is well audited and already bundled in PHP.
  • Avoid rolling your own envelope encryption. If you must wrap AES keys with RSA today, document the migration path to ML-KEM in your ADR.
  • Rotate keys on schedule. Use shorter lifetimes for signing keys that protect high-value data. Our password generator tool helps staff create strong secrets; pair that habit with automated key rotation in vaults.
  • Audit WordPress 7.1 plugins that implement custom login or file encryption. WooCommerce 11.1 stores orders for years — treat order meta encrypted with legacy schemes as migration candidates.
// config/jwt.php — crypto-agile pattern (illustrative)
return [
    'allowed_algorithms' => env('JWT_ALGORITHMS', 'RS256,ML-DSA-65'),
    'public_keys' => [
        'rs256' => storage_path('keys/jwt_rsa.pub'),
        'ml-dsa-65' => storage_path('keys/jwt_mldsa.pub'),
    ],
];

// Validation middleware pseudocode
$alg = $token->headers()->get('alg');
if (! in_array($alg, config('jwt.allowed_algorithms'))) {
    abort(401, 'Unsupported signing algorithm');
}

For secrets management, extend patterns from Ansible Vault for secrets or your cloud KMS. Centralise key material so a future ML-DSA key lives beside today's RSA key without scattered .pem files on application servers.

On eCommerce builds — see our Quick And Easy Nepalese Grocery project — payment callbacks and webhook signature verification depend on gateway-published RSA keys. You cannot unilaterally switch algorithms until the gateway ships PQC. Track their roadmap and test in sandbox environments.

What migration timeline fits a small team with limited budget?

You do not need a Big Four consulting engagement to start. A phased plan fits Nepal-scale teams and solo maintainers who already wear dev, ops, and SEO hats.

PhaseTimeframeActionsCost signal
DiscoverQ3–Q4 2026Inventory, classify data retention, patch OpenSSLInternal time only
Pilot2027Hybrid TLS on staging; liboqs tests; JWT agility refactorRs 50,000–150,000 (~USD 370–1,100) if external audit
Production edge2027–2028CDN hybrid ciphers; renew certs with PQC-capable CAOften bundled in hosting/CDN fees
Application layer2028–2030ML-DSA signing for docs; re-wrap archived ciphertextDev sprints + storage re-encryption window
Deprecate classical-only2030+Drop RSA-only TLS where traffic allowsMonitor client telemetry first

Budget for testing and optimization during pilot phases. Handshake latency for ML-KEM is usually acceptable, but measure on your actual hardware. A shared EC2 instance serving both PHP-FPM and TLS termination may behave differently from a managed CDN edge.

Enterprise clients with compliance obligations should loop in legal and DPO stakeholders early. Document decisions in the same way you would for GDPR or local IRD record-keeping — algorithm choice becomes part of the control narrative.

PQC Migration Priority DecisionData retained 5+ years?YesPriority 1Migrate firstNoPriority 2Pilot hybrid TLSPublic internetEdge certs nextInternal onlyLab + CI firstLegal docs, KYC, contracts → always Priority 1
Decision tree for Post-Quantum Cryptography: What to Prepare For — prioritise long-retention and public-facing assets

Common mistakes to avoid

Teams often chase PQC while leaving TLS 1.0 enabled or using self-signed certs in production. Fix classical hygiene first. Another mistake is storing private keys in Git — PQC keys are larger; leaking them hurts more. Use proper vaults and the patterns from WireGuard cryptography practices as a mindset model: small surface, explicit keys, regular rotation.

Do not assume your hosting provider handles everything. Ask whether domain and hosting includes PQC-ready certificate issuance and whether shared hosting limits custom cipher suites. Managed WordPress hosts may lag behind VPS setups you control.

Key Takeaways

  • Build a crypto inventory now — TLS, JWT, backups, webhooks, and document storage — before regulators and clients ask for it.
  • Standardise on NIST ML-KEM, ML-DSA, and SLH-DSA; avoid non-standard PQC candidates without a compliance reason.
  • Deploy hybrid TLS on staging first; combine classical and PQC key exchange until client support is broad.
  • Make application code crypto-agile: configurable algorithms, centralised keys, no hard-coded RS256 assumptions.
  • Prioritise systems with long data retention — legal portals, eCommerce order history, and KYC archives migrate first.
  • Budget incremental testing and library upgrades; full migration is a multi-year programme, not a single sprint.

People Also Ask

Will AES-256 still be safe after quantum computers arrive?

Yes, with proper key sizes. Grover's algorithm effectively halves symmetric security margins. AES-256 retains roughly 128-bit post-quantum strength, which remains adequate for foreseeable threats. Focus PQC effort on public-key components — RSA, ECDH, and ECDSA — not on replacing AES-GCM for bulk encryption.

When will browsers require post-quantum TLS by default?

Major browsers are experimenting with hybrid ciphers in 2025–2026 releases. Mandatory PQC-only TLS is unlikely before client ecosystems catch up. Expect a long hybrid period where servers offer both classical and PQC key exchanges and negotiate the best mutual option.

Does post-quantum cryptography affect password hashing?

Not directly. Argon2id, bcrypt, and scrypt target different threat models than Shor's algorithm. Keep using modern password hashes from your encoding and secrets tooling workflows. PQC matters for key exchange and digital signatures, not for replacing password KDFs.

Can small businesses in Nepal defer PQC until 2030?

You can defer full migration, but you should not defer inventory and hybrid planning. Harvest-now-decrypt-later applies to any site served over TLS today. Start with a spreadsheet, patch OpenSSL, and ask vendors about ML-KEM roadmaps. That costs little and preserves optionality.

Start your Post-Quantum Cryptography preparation checklist

Post-Quantum Cryptography: What to Prepare For is ultimately a maintenance discipline, not a one-off upgrade. Inventory your algorithms this quarter. Patch OpenSSL on origin servers. Refactor JWT validation for agility. Pilot hybrid TLS where failure is safe. If you want help mapping crypto dependencies across a Laravel app, WordPress estate, or multi-site deploy pipeline, contact us for a scoped review. For larger programmes, see enterprise application development and custom software development services. Read more on the blog, review Notary Nepal and other portfolio work, or learn about our approach on the about page and homepage.

Frequently Asked Questions

Post-quantum cryptography means classical encryption algorithms designed to resist attacks from large-scale quantum computers, replacing vulnerable public-key schemes like RSA and elliptic-curve cryptography.

RSA and ECDH still protect your TLS sessions, API tokens, document uploads, and payment callbacks today, but a cryptographically relevant quantum computer could break those schemes at scale. NIST published standardised replacements in 2024, so the work in 2026 is practical planning, not panic. The immediate business risk is harvest-now-decrypt-later: attackers copy encrypted traffic or archived ciphertext now and decrypt it later. On legal-tech portals and client document systems I've maintained, uploads can sit for years before any dispute, making long-retention data a priority migration target.

NIST standardised three families for general deployment. ML-KEM (formerly Kyber, FIPS 203) handles key establishment—the role ECDH plays in TLS 1.3. ML-DSA (formerly Dilithium, FIPS 204) handles digital signatures—the role RSA and ECDSA play in certificates, JWT signing, and code signing. SLH-DSA (SPHINCS+, FIPS 205) offers a conservative hash-based signature backup. Symmetric cryptography mostly stays put: AES-256 and SHA-256 or SHA-384 remain sound. Upgrade paths focus on public-key layers—certificate chains, SSH host keys, webhook verification keys, and application-level envelope encryption that wraps data keys with RSA today.

You cannot migrate what you cannot see. Start with edge TLS: every hostname, certificate issuer, key type, and expiry across CDN, load balancers, and origin servers. Run composer show and grep for jwt, encrypt, openssl, gpg, and sodium packages. Note MySQL 9.7 and Redis 8.10 TLS settings, payment gateway RSA public keys pinned in config, encrypted backups, and GitLab CI deploy keys. Store results in a spreadsheet with algorithm, key size, owner, data classification, and retention period. Flag anything protecting data retained beyond five years as priority one—client document portals and KYC archives typically land there.

Hybrid TLS combines a classical key exchange with a post-quantum key encapsulation mechanism such as ML-KEM. Both shared secrets feed a KDF that produces the session key; if either primitive holds, the session stays confidential. That protects you during transition when some clients lack PQC support. Pilot on internal subdomains first—staging APIs, admin panels, and GitLab runners—then monitor handshake failures before exposing hybrid ciphers publicly. Test current Chrome, Firefox ESR, curl on CI runners, and legacy mobile WebViews. A handshake that works in staging but fails on an old Android WebView is a common gotcha I've hit during TLS upgrades.

Discovery in Q3–Q4 2026 is internal time only. A 2027 pilot with hybrid TLS on staging, liboqs tests, and JWT agility refactoring typically runs Rs 50,000–150,000 (~USD 370–1,100) if you bring in external audit help. CDN hybrid ciphers and PQC-capable certificate renewal are often bundled into hosting or CDN fees. Full application-layer re-encryption and ML-DSA document signing in 2028–2030 costs dev sprints plus storage re-encryption windows. Budget for testing during pilot phases—handshake latency on a shared EC2 instance terminating TLS may differ from a managed CDN edge.

Start discovery in Q3–Q4 2026 with a crypto inventory and data classification. Pilot hybrid TLS and crypto-agile JWT handling in 2027. Move production edge—CDN hybrid ciphers and PQC-capable CA certs—in 2027–2028. Application-layer migration, including re-wrapping archived ciphertext, fits 2028–2030. Deprecating classical-only TLS where traffic allows comes after 2030, once client telemetry confirms support. This is a multi-year programme, not a single sprint.

Yes, with proper key sizes. Grover's algorithm effectively halves symmetric security margins, but AES-256 retains roughly 128-bit post-quantum strength, which remains adequate for foreseeable threats. Focus PQC effort on public-key components—RSA, ECDH, and ECDSA in TLS, certificates, JWT signing, and key-wrapping—not on replacing AES-GCM for bulk encryption at rest or in transit. SHA-256 and SHA-384 similarly remain sound if you avoid deprecated modes. Your migration spreadsheet should prioritise asymmetric algorithms first.

Not directly. Argon2id, bcrypt, and scrypt target a different threat model than Shor's algorithm, which breaks public-key schemes. Keep using modern password hashes from your existing encoding and secrets workflows. PQC matters for key exchange and digital signatures—TLS handshakes, certificate chains, JWT alg headers, webhook signature verification—not for replacing password key derivation functions. Fix classical hygiene first: weak TLS versions and predictable secrets cause more real breaches today than quantum threats.

Harvest-now-decrypt-later means an attacker copies encrypted TLS traffic or archived ciphertext today and stores it until quantum hardware can decrypt it later. You do not need a working quantum computer now for this to be a business risk. Legal documents, KYC files, contract PDFs, and API payloads with ten-year retention are high-value targets. On legal-tech portals where clients upload sensitive paperwork years before any dispute arises, the encryption protecting those uploads must outlast the data retention period—not just today's threat landscape.

Major browsers are experimenting with hybrid ciphers in 2025–2026 releases, combining classical key exchange with ML-KEM. Mandatory PQC-only TLS is unlikely before client ecosystems catch up broadly. Expect a long hybrid period where servers offer both classical and PQC key exchanges and negotiate the best mutual option. Cloudflare, Google, and Mozilla have published hybrid TLS experiments; the IETF TLS working group continues defining negotiation rules. Monitor your access logs during pilots rather than assuming a hard browser deadline.

PHP 8.5 and Laravel 13 do not yet expose first-class ML-KEM helpers in core, so near-term work is crypto agility. Stop hard-coding RS256; read allowed JWT algorithms from config and reject unexpected alg headers on inbound tokens. Prefer libsodium for symmetric work. Centralise key material in vaults or KMS rather than scattered .pem files on application servers. Audit WordPress 7.1 plugins with custom login or file encryption. On WooCommerce 11.1 builds, order meta encrypted with legacy schemes and payment callback RSA signature verification should be documented with a migration path—gateways must ship PQC before you can switch unilaterally.

Do not build on BIKE, Classic McEliece, or other NIST round-four also-rans unless a regulator explicitly requires them. Stick to NIST FIPS 203 (ML-KEM), FIPS 204 (ML-DSA), and FIPS 205 (SLH-DSA). Vendor support and OpenSSL 3.x provider roadmaps concentrate on those three families, which reduces long-term maintenance burden. Non-standard candidates may lack library support, CA issuance paths, and audit familiarity. If compliance documentation references algorithm choice, aligning early with FIPS-standard names avoids rework when auditors and enterprise clients ask.

You can defer full production migration, but not discovery. A phased plan fits Nepal-scale teams and solo maintainers who already handle dev, ops, and hosting without a Big Four consulting budget. Run your crypto inventory in Q3–Q4 2026 at internal cost, then pilot hybrid TLS in 2027 if budget allows Rs 50,000–150,000 (~USD 370–1,100) for testing or external review. Prioritise systems with long data retention—legal portals, eCommerce order history, KYC archives—even if broader edge migration waits until 2028–2030. Deferring entirely until 2030 leaves harvest-now-decrypt-later exposure on archives you cannot re-encrypt retroactively.

Teams often chase PQC while leaving TLS 1.0 enabled or using self-signed certificates in production—fix classical hygiene first. Another mistake is storing private keys in Git; PQC keys are larger and a leak hurts more, so use proper vaults with regular rotation. Do not assume your hosting provider handles everything: ask whether certificate issuance supports PQC-capable chains and whether shared hosting limits custom cipher suites. Managed WordPress hosts may lag behind VPS setups you control. Finally, avoid locking new systems into RSA-only assumptions when crypto-agile configuration costs little now.

Share this article

0 Comments

Leave a comment

Your email is not published. Comments appear once they have been read. Sign in to have your details filled in.

Quick Contact Options
Choose how you want to connect me: