EVP_KEYEXCH-X25519(7ossl)
π EVP_KEYEXCH-X25519 β bestie's guide to X25519 & X448 key exchange
okay so real talk, this is a section 7 page from the 7ossl manual β the OpenSSL corner of the manpage universe β and it's literally the whole support doc for two whole key exchange algorithms. tiny page, iconic energy. let's go β¨
πΈ NAME πΈ
EVP_KEYEXCH-X25519, EVP_KEYEXCH-X448 β the X25519 and X448 Key Exchange algorithm support, fr fr. that's the whole name section, she's short and she knows it π
π¦ DESCRIPTION π¦
so what this page is actually saying: OpenSSL gives you key exchange support for the X25519 and X448 key types. that's the vibe. that's the whole plot. no cap π«Ά
π Key exchange parameters π
here's where the actual knobs live, bestie β two of them, and you're gonna know them by heart:
"pad"(OSSL_EXCHANGE_PARAM_PAD)<unsigned integer>β the pad parameter. unsigned integer type, exactly like it says. π"fips-indicator"(OSSL_EXCHANGE_PARAM_FIPS_APPROVED_INDICATOR)<integer>β the FIPS approval indicator. and here's the thing you gotta remember: X25519 and X448 are not FIPS approved in FIPS 140-3. so this getter will return0. that's not a bug, that's the whole point π
also go read "Common Key Exchange parameters" in provider-keyexch(7) β that's where the shared lore lives π
β¨ EXAMPLES β¨
no full code dump on this page, she outsources the homework (respectfully):
- keys for the host and the peer can be generated as shown in "Examples" in
EVP_PKEY-X25519(7)ποΈ - the code to generate a shared secret is identical to "Examples" in
EVP_KEYEXCH-DH(7)β same code, different algorithm, we love a reusable snippet π«Ά
π₯ SEE ALSO π₯
go touch grass in these other pages, they're all connected, iykyk:
EVP_PKEY-FFC(7)EVP_PKEY-DH(7)EVP_PKEY(3)β yes bestie, that's how it's printed, no comma between them, i don't make the rules πprovider-keyexch(7)provider-keymgmt(7)OSSL_PROVIDER-default(7)OSSL_PROVIDER-FIPS(7),
π COPYRIGHT π
Copyright 2020-2024 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>. π
and that's the page!! signed, sealed, delivered by version 3.5.9 on 2026-09-29 β the EVP_KEYEXCH-X25519(7ossl) girlies ate and left no crumbs π
ππ
π¦ where this page comes from
- alpine 3.23: openssl-doc 3.5.9-r0 Β· Apache-2.0
- alpine 3.24: openssl-doc 3.5.9-r0 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms