RSA-PSS(7ossl)

πŸ“¦ version 3.5.0, in opensuse-leap 16.0

πŸ’… RSA-PSS β€” like, the EVP_PKEY glow-up of RSA (7ossl, OpenSSL, bestie ✨)

okay so this is the RSA-PSS(7ossl) page from the OpenSSL fam, and it's genuinely one of the more iconic little corner-of-the-docs situations. buckle up πŸŽ€


✨ NAME ✨

RSA-PSS β€” the EVP_PKEY RSA-PSS algorithm support situation. that's it, that's the name. slay πŸ’…


🌸 DESCRIPTION 🌸

So the RSA-PSS EVP_PKEY implementation is basically RSA but on a very strict vibe check: it's a restricted version of the RSA algorithm that only supports signing, verification and key generation using PSS padding modes, with optional parameter restrictions. that's the whole personality. no other modes invited to the party 🚫

It has associated private key and public key formats, obviously, because keys need a home 🏠

And here's the tea: this algorithm shares several control operations with the RSA algorithm β€” but with some restrictions, which are described down below. so like, same friend group, different boundaries, iykyk πŸ’€

πŸ¦‹ Signing and Verification

Signing and verification is similar to the RSA algorithm, except the padding mode is always PSS. always. no negotiation. periodt ✨

And if the key in use has parameter restrictions, then the corresponding signature parameters get set to the restrictions. for example β€” bestie, read this carefully:

if the key can only be used with digest SHA256, MGF1 SHA256 and minimum salt length 32, then the digest, MGF1 digest and salt length will be set to SHA256, SHA256 and 32 respectively.

the way that it just inherits the restrictions automatically?? obsessed. 🫢

πŸŽ€ Key Generation

By default, no parameter restrictions are placed on the generated key. free-range key. it can be anything it wants to be 🌈


πŸ’œ NOTES πŸ’œ

The public key format is documented in RFC4055. go read it if you're that kind of girl (respect, honestly πŸ‘‘).

The PKCS#8 private key format used for RSA-PSS keys is similar to the RSA format β€” except it uses the id-RSASSA-PSS OID, and the parameters field (if present) restricts the key parameters in the same way as the public key. same energy, different OID. consistency queen πŸ‘‘


⭐ CONFORMING TO ⭐

RFC 4055 β€” that's the one, that's the standard, we stan a compliant algorithm πŸŽ€


πŸ”₯ SEE ALSO πŸ”₯

go read all of them, i'm literally begging you, the whole friend group is linked πŸ’–


Copyright 2017-2018 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>.

ngl the license part is not the fun part but it IS the "you must not skip this" part, so here it is in full, no cuts πŸ™ˆ

okay that's the whole page bestie!! this was OpenSSL 3.5.0, dated 2026-09-25 β€” so if you're reading this in some other era, check your version, mwah πŸ’‹βœ¨πŸ¦‹

πŸ“¦ where this page comes from