package rsa

Import Path
	crypto/internal/fips140/rsa (on go.dev)

Dependency Relation
	imports 12 packages, and imported by one package


Package-Level Type Names (total 2)
/* sort by: | */
Export returns the key parameters in big-endian byte slice format. P, Q, dP, dQ, and qInv may be nil if the key was created with NewPrivateKeyWithoutCRT. (*PrivateKey) PublicKey() *PublicKey func GenerateKey(rand io.Reader, bits int) (*PrivateKey, error) func NewPrivateKey(N []byte, e int, d, P, Q []byte) (*PrivateKey, error) func NewPrivateKeyWithoutCRT(N []byte, e int, d []byte) (*PrivateKey, error) func NewPrivateKeyWithPrecomputation(N []byte, e int, d, P, Q, dP, dQ, qInv []byte) (*PrivateKey, error) func DecryptOAEP(hash, mgfHash fips140.Hash, priv *PrivateKey, ciphertext []byte, label []byte) ([]byte, error) func DecryptWithCheck(priv *PrivateKey, ciphertext []byte) ([]byte, error) func DecryptWithoutCheck(priv *PrivateKey, ciphertext []byte) ([]byte, error) func SignPKCS1v15(priv *PrivateKey, hash string, hashed []byte) ([]byte, error) func SignPSS(rand io.Reader, priv *PrivateKey, hash fips140.Hash, hashed []byte, saltLength int) ([]byte, error)
E int N *bigmod.Modulus Size returns the modulus size in bytes. Raw signatures and ciphertexts for or by this public key will have the same size. func (*PrivateKey).PublicKey() *PublicKey func Encrypt(pub *PublicKey, plaintext []byte) ([]byte, error) func EncryptOAEP(hash, mgfHash fips140.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) func PSSMaxSaltLength(pub *PublicKey, hash fips140.Hash) (int, error) func VerifyPKCS1v15(pub *PublicKey, hash string, hashed []byte, sig []byte) error func VerifyPSS(pub *PublicKey, hash fips140.Hash, digest []byte, sig []byte) error func VerifyPSSWithSaltLength(pub *PublicKey, hash fips140.Hash, digest []byte, sig []byte, saltLength int) error
Package-Level Functions (total 15)
DecryptOAEP decrypts ciphertext using RSAES-OAEP.
DecryptWithCheck performs the RSA private key operation and checks the result to defend against errors in the CRT computation.
DecryptWithoutCheck performs the RSA private key operation.
Encrypt performs the RSA public key operation.
EncryptOAEP encrypts the given message with RSAES-OAEP.
GenerateKey generates a new RSA key pair of the given bit size. bits must be at least 128.
NewPrivateKey creates a new RSA private key from the given parameters. All values are in big-endian byte slice format, and may have leading zeros or be shorter if leading zeroes were trimmed.
NewPrivateKeyWithoutCRT creates a new RSA private key from the given parameters. This is meant for deprecated multi-prime keys, and is not FIPS 140 compliant.
NewPrivateKeyWithPrecomputation creates a new RSA private key from the given parameters, which include precomputed CRT values.
PSSMaxSaltLength returns the maximum salt length for a given public key and hash function.
SignPKCS1v15 calculates an RSASSA-PKCS1-v1.5 signature. hash is the name of the hash function as returned by [crypto.Hash.String] or the empty string to indicate that the message is signed directly.
SignPSS calculates the signature of hashed using RSASSA-PSS.
VerifyPKCS1v15 verifies an RSASSA-PKCS1-v1.5 signature. hash is the name of the hash function as returned by [crypto.Hash.String] or the empty string to indicate that the message is signed directly.
VerifyPSS verifies sig with RSASSA-PSS automatically detecting the salt length.
VerifyPSS verifies sig with RSASSA-PSS and an expected salt length.
Package-Level Variables (total 3)