This specification is maintained by the AgentRules Working Group. Have enhancements or want to claim maintainership?Submit Specification →
securitycritical PriorityID: tls-1-3-hybrid-post-quantum-rollout-standard

Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768)

Enforces TLS 1.3 hybrid post-quantum key exchange using X25519 combined with FIPS 203 ML-KEM-768 (X25519MLKEM768 / codepoint 0x11ec) across all enterprise ingress and inter-service mesh gateways. Eliminates vulnerability to 'Harvest Now, Decrypt Later' (HNDL) adversary campaigns while retaining classical Elliptic Curve Diffie-Hellman guarantees and graceful fallback to pure X25519/SecP256r1 for non-PQC clients.

Prohibited Anti-Pattern: Configuring Classical-Only Elliptic Curves or Hardcoding Deprecated Non-Standard Kyber Draft Identifiers

Export Ready-to-Drop Configuration

Select format below to copy code or download file directly.

---
description: Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768) - Enforces TLS 1.3 hybrid post-quantum key exchange using X25519 combined with FIPS 203 ML-KEM-768 (X25519MLKEM768 / codepoint 0x11ec) across all enterprise ingress and inter-service mesh gateways. Eliminates vulnerability to 'Harvest Now, Decrypt Later' (HNDL) adversary campaigns while retaining classical Elliptic Curve Diffie-Hellman guarantees and graceful fallback to pure X25519/SecP256r1 for non-PQC clients.
globs: infra/**/*.ts, src/infra/**/*.ts, src/gateway/**/*.ts, src/network/**/*.ts, src/config/tls.ts
alwaysApply: true
verified_by: "agentrules.org"
license: "CC-BY-4.0"
source: "https://agentrules.org/rules/tls-1-3-hybrid-post-quantum-rollout-standard"
---

# Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768)

> **Severity**: CRITICAL | **Category**: security
> **Anti-Pattern Warning**: Configuring Classical-Only Elliptic Curves or Hardcoding Deprecated Non-Standard Kyber Draft Identifiers

## System Constraints
You are a Principal Security Architect enforcing the TLS 1.3 Hybrid Post-Quantum Key Exchange Rollout Standard. Mandate X25519MLKEM768 (FIPS 203 finalized ML-KEM) at the head of TLS curve preferences, maintain classical fallbacks, forbid TLS versions below 1.3 when PQC is required, reject legacy experimental Kyber draft codepoints (such as X25519Kyber768Draft00), and account for increased ClientHello and ServerHello packet sizes to prevent MTU fragmentation and handshake drops.

## Strict Guidelines
- Engineers MUST ALWAYS prioritize 'X25519MLKEM768' as the primary key exchange group in all TLS 1.3 configurations.
- Engineers MUST ALWAYS maintain classical curves ('X25519', 'P-256') as fallback groups behind X25519MLKEM768 for non-PQC client backward compatibility.
- Engineers MUST NOT use pre-standard experimental Kyber drafts (e.g., 'X25519Kyber768Draft00', 'X25519Kyber512Draft00') in production environments.
- Engineers MUST enforce TLSv1.3 as the minimum protocol version wherever hybrid PQC groups are negotiated, as ML-KEM is unsupported in TLS 1.2 and below.
- Services MUST configure edge proxies and ingress buffers to accommodate enlarged ClientHello and KeyShare frames exceeding standard 1500-byte MTU boundaries.

## Bad vs Good Implementations
### Node.js HTTPS Server & Ingress TLS Options

#### Bad Antipattern (AI Common Hallucination)
> **Why it fails**: The configuration permits TLS 1.2 and restricts key exchange to classical ECDHE groups (X25519:P-256). Any adversary recording this ciphertext today will be able to decrypt it retrospectively once cryptographically relevant quantum computers (CRQCs) become viable.
```typescript
import https from 'node:https';
import tls from 'node:tls';

export const createSecureServer = (cert: string, key: string) => {
  // Anti-pattern: Restricted to classical ECDH groups or deprecated Kyber drafts,
  // leaving traffic vulnerable to Harvest Now, Decrypt Later (HNDL).
  return https.createServer({
    key,
    cert,
    minVersion: 'TLSv1.2',
    // Vulnerable: Only classical ECDHE
    ecdhCurve: 'X25519:P-256',
    ciphers: 'TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256'
  });
};
```

#### Production Standard (Correct)
> **Standard**: Mandates TLS 1.3 and specifies 'X25519MLKEM768' as the primary key exchange group, with fallback to classical X25519 and prime256v1. This protects enterprise communications against HNDL attacks using standardized FIPS 203 parameters without breaking non-PQC clients.
```typescript
import https from 'node:https';
import tls from 'node:tls';

export const createSecureServer = (cert: string, key: string) => {
  // Invariant: Enforce TLS 1.3 minimum with FIPS 203 X25519MLKEM768
  // followed by classical fallbacks to preserve client compatibility.
  return https.createServer({
    key,
    cert,
    minVersion: 'TLSv1.3',
    maxVersion: 'TLSv1.3',
    // FIPS 203 standardized identifier alongside classical fallbacks
    ecdhCurve: 'X25519MLKEM768:X25519:prime256v1',
    ciphers: 'TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256',
    // Ensure session cache handles larger ticket payloads
    sessionTimeout: 3600,
    honorCipherOrder: true
  });
};
```

Architectural Specification & Invariant Rationale

Architectural Invariant Design: Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768)

Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768) defines an industrial-grade behavioral standard for security engineering. Enforces TLS 1.3 hybrid post-quantum key exchange using X25519 combined with FIPS 203 ML-KEM-768 (X25519MLKEM768 / codepoint 0x11ec) across all enterprise ingress and inter-service mesh gateways. Eliminates vulnerability to 'Harvest Now, Decrypt Later' (HNDL) adversary campaigns while retaining classical Elliptic Curve Diffie-Hellman guarantees and graceful fallback to pure X25519/SecP256r1 for non-PQC clients. Modern software architectures require strict adherence to deterministic patterns to guarantee high availability, maintainability, and zero security vulnerabilities.

Framework Paradigm Shift & Drift MechanicsLLMs are trained on millions of open-source repositories containing outdated code, legacy idioms, and unpatched antipatterns. When coding assistants generate implementations for this stack, they default to common statistical tokens: Configuring Classical-Only Elliptic Curves or Hardcoding Deprecated Non-Standard Kyber Draft Identifiers Without an explicit system instruction file, developers spend hours debugging silent failures.
Failure Modes & Production Blast Radius

Hazard Analysis: What Breaks Without This Rule

The following failure modes have been cataloged from hundreds of hours of production code reviews where AI assistants produced non-compliant implementations:

Failure ModeAI Symptom (The Anti-Pattern)SeverityProduction Impact & Remedy
AI Hallucination & Deprecation DriftConfiguring Classical-Only Elliptic Curves or Hardcoding Deprecated Non-Standard Kyber Draft IdentifiersCritical
Violating this industrial standard introduces regression bugs, security risks, and unexpected runtime failures in production.
Enforce explicit behavioral system directives across all AI coding assistants in your repository.
Silent Architecture InconsistencyAI assistants produce mixed paradigms across files, creating fragmented codebase conventions.Medium
Increases cognitive load during code reviews and leads to maintenance debt across engineering teams.
Pin project conventions in .cursor/rules, CLAUDE.md, and AGENTS.md so all team agents follow identical guardrails.
Architectural Directives in Detail

Step-by-Step Production Directives

Each rule constraint below is injected into the AI agent's system prompt to establish deterministic boundaries:

1

Engineers MUST ALWAYS prioritize 'X25519MLKEM768' as the primary key exchange group in all TLS 1.3 configurations.

Engineers MUST ALWAYS prioritize 'X25519MLKEM768' as the primary key exchange group in all TLS 1.3 configurations.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
2

Engineers MUST ALWAYS maintain classical curves ('X25519', 'P-256') as fallback groups behind X25519MLKEM768 for non-PQC client backward compatibility.

Engineers MUST ALWAYS maintain classical curves ('X25519', 'P-256') as fallback groups behind X25519MLKEM768 for non-PQC client backward compatibility.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
3

Engineers MUST NOT use pre-standard experimental Kyber drafts (e.g., 'X25519Kyber768Draft00', 'X25519Kyber512Draft00') in production environments.

Engineers MUST NOT use pre-standard experimental Kyber drafts (e.g., 'X25519Kyber768Draft00', 'X25519Kyber512Draft00') in production environments.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
4

Engineers MUST enforce TLSv1.3 as the minimum protocol version wherever hybrid PQC groups are negotiated, as ML-KEM is unsupported in TLS 1.2 and below.

Engineers MUST enforce TLSv1.3 as the minimum protocol version wherever hybrid PQC groups are negotiated, as ML-KEM is unsupported in TLS 1.2 and below.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
5

Services MUST configure edge proxies and ingress buffers to accommodate enlarged ClientHello and KeyShare frames exceeding standard 1500-byte MTU boundaries.

Services MUST configure edge proxies and ingress buffers to accommodate enlarged ClientHello and KeyShare frames exceeding standard 1500-byte MTU boundaries.

Rationale:AI models frequently generate unconstrained code here because statistical language distributions lack project-specific architectural context. Mandating this directive ensures that generated code adheres to verified industrial production requirements.
Enforcement:Integrated into the Agent Pack rule file. When Cursor, Claude Code, or Codex processes this prompt, it applies this constraint before emitting syntax.
Technical Questions & Answers

Frequently Asked Technical Questions

Common questions developers face when configuring AI coding assistants for this stack:

Q:Why is Mandatory TLS 1.3 Hybrid Post-Quantum Key Exchange (X25519MLKEM768) critical for AI coding assistants?

Enforces TLS 1.3 hybrid post-quantum key exchange using X25519 combined with FIPS 203 ML-KEM-768 (X25519MLKEM768 / codepoint 0x11ec) across all enterprise ingress and inter-service mesh gateways. Eliminates vulnerability to 'Harvest Now, Decrypt Later' (HNDL) adversary campaigns while retaining classical Elliptic Curve Diffie-Hellman guarantees and graceful fallback to pure X25519/SecP256r1 for non-PQC clients. Without explicit behavioral boundaries, AI coding assistants (Cursor, Claude Code, Windsurf, Codex) rely on training data averages, which frequently produce deprecated, inefficient, or vulnerable code patterns.

Q:How does adopting this rule prevent AI hallucinations?

This rule explicitly declares what the AI must avoid (Configuring Classical-Only Elliptic Curves or Hardcoding Deprecated Non-Standard Kyber Draft Identifiers) and prescribes verified positive examples. Grounding the LLM with negative and positive pairs eliminates guesswork.

Q:Which AI coding environments are supported?

This specification is multi-platform compatible: Cursor (.cursor/rules/*.mdc & .cursorrules), Anthropic Claude Code (CLAUDE.md), Windsurf (.windsurfrules), Codex / Cline (AGENTS.md), and GitHub Copilot (.github/copilot-instructions.md).

Q:Can I combine this rule with other technology stacks?

Yes. Use the Interactive Stack Builder or download an Agent Pack to merge this rule with other frontend, backend, database, security, and DevOps rules without syntax collision.

Open Specification · CC BY 4.0·Free for Personal, Team & Commercial In-Repo Use

Citation & Open Source Attribution Guidelines

This specification is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0). You are completely free to adapt and share this rule in your workspace. If citing, including in public AI benchmark datasets, or redistributing, attribution to AgentRules.org is required.

1 Rule in Stack

Mandatory