Skip to content

Commit e11cab4

Browse files
Fix origin server section to use fork and bssl for both cases
1 parent 66bd9f8 commit e11cab4

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

src/content/docs/ssl/post-quantum-cryptography/pqc-to-origin.mdx

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ head: []
88
description: Learn about post-quantum cryptography in connections from Cloudflare to your origin servers.
99
---
1010

11+
import { Example } from "~/components";
12+
1113
As explained in [About PQC](/ssl/post-quantum-cryptography/), Cloudflare has deployed support for hybrid key agreements, which include both the most common key agreement for TLS 1.3, X25519, and the post-quantum secure ML-KEM.
1214

1315
With X25519, the [ClientHello](https://www.cloudflare.com/learning/ssl/what-happens-in-a-tls-handshake/) almost always fits within one network packet. However, with the addition of ML-KEM, the ClientHello is typically split across two packets.
@@ -49,13 +51,28 @@ The possible values are:
4951

5052
### Origin server
5153

52-
If you set your Cloudflare zone to `supported`, you can make sure that your origin server will prefer the post-quantum key agreement by using Cloudflare's [fork of BoringSSL](https://github.com/cloudflare/boringssl-pq).
54+
To make sure that your origin server prefers the post-quantum key agreement:
5355

54-
If you set your Cloudflare zone to `preferred`, you can use the `bssl` tool of BoringSSL to check that your origin supports the correct [key agreement](/ssl/post-quantum-cryptography/#hybrid-key-agreement).
56+
1. Use Cloudflare's [fork of BoringSSL](https://github.com/cloudflare/boringssl-pq).
57+
2. Use the `bssl` tool of BoringSSL:
5558

56-
```txt
57-
$ bssl client -connect (your server):443 -curves X25519MLKEM768
59+
- If you set your Cloudflare zone to `supported`, check that your origin prefers the hybrid key agreement, by using the `-disable-second-keyshare` parameter:
60+
61+
<Example>
62+
```bash
63+
$ cd boringssl-pq && cmake -B build && make -C build
64+
$ build/bssl client -connect (your server):443 -curves X25519:X25519MLKEM768 -disable-second-keyshare
5865
```
66+
Verify that the `ECDHE curve` in the handshake output indicates `X25519MLKEM768`.
67+
</Example>
5968

69+
- If you set your Cloudflare zone to `preferred`, check that your origin supports the correct key agreement:
70+
71+
<Example>
72+
```bash
73+
$ bssl client -connect (your server):443 -curves X25519MLKEM768
74+
```
75+
Verify that the `ECDHE curve` in the handshake output indicates `X25519MLKEM768`.
76+
</Example>
6077

6178
[^1]: When, to remove a round trip, a client makes a guess of what the server supports.

0 commit comments

Comments
 (0)