EVP_KEM-ML-KEM(7ossl)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’– EVP_KEM-ML-KEM β€” the keytype & algorithm support page (from the 7ossl manual fam)

okay so bestie, welcome to the ML-KEM corner of the OpenSSL manual πŸ’… this is the 7ossl page for EVP_KEM-ML-KEM-512, EVP_KEM-ML-KEM-768, EVP_KEM-ML-KEM-1024, and the general EVP_KEM-ML-KEM β€” together they're the EVP_KEM ML-KEM keytype and algorithm support. yes that's a lot of names, no we're not skipping any of them 🫢


✨ DESCRIPTION ✨

So the ML-KEM keytypes and all their parameters get their own whole page β€” that's EVP_PKEY-ML-KEM(7), go read it, it's giving main character energy πŸ‘‘

And if you wanna actually do KEM stuff (like, the basic operations), the icons are EVP_PKEY_encapsulate(3) and EVP_PKEY_decapsulate(3) β€” they've got all the details for you, no cap πŸ’–

🌸 ML-KEM KEM parameters 🌸

  • "ikme" (OSSL_KEM_PARAM_IKME) <octet string> β€” okay so this one is the randomness override. The OpenSSL ML-KEM encapsulation mechanism can only be modified by setting randomness during encapsulation, and the whole point of that is to enable testing, as per FIPS 203, section 6.2, algorithm 17 πŸ”₯
⚠️ bestie listen to me: this parameter should not be used for purposes other than testing. like, fr fr, testing only. πŸ™ˆ
  • When this parameter is not set, encapsulation proceeds as per FIPS 203, section 7.2 ✨
  • This parameter is only settable β€” that's it, that's the whole vibe.

You can set this when you're using EVP_PKEY_encapsulate_init(). πŸŽ€


🌈 CONFORMING TO 🌈

FIPS203 β€” that's the standard, and it ate πŸ’…


πŸ¦‹ SEE ALSO πŸ¦‹

like, the whole friend group, iykyk πŸ’œ


πŸ‘‘ HISTORY πŸ‘‘

This functionality was added in OpenSSL 3.5 β€” so if you're on an older one, that's a skill issue for your package manager, not for you 😭


Copyright 2024-2025 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!! mwah πŸ’‹ sign-off time: this was version 3.5.6, dated 2026-04-07, brought to you by the EVP_KEM-ML-KEM(7ossl) manual. slay, go encapsulate something πŸ¦‹β­

πŸ“¦ where this page comes from