GenerateKey
key, err := rsa.GenerateKey(rand.Reader, 2048)
if err != nil { log.Fatal(err) }
crypto/rsaRSA signing, OAEP encryption, PSS signatures. Use 2048+ bit keys; prefer Ed25519/ECDSA for new systems.
key, err := rsa.GenerateKey(rand.Reader, 2048)
if err != nil { log.Fatal(err) }
hash := sha256.Sum256(msg)
sig, _ := rsa.SignPSS(rand.Reader, key, crypto.SHA256, hash[:], nil)
err := rsa.VerifyPSS(&key.PublicKey, crypto.SHA256, hash[:], sig, nil)
ct, _ := rsa.EncryptOAEP(sha256.New(), rand.Reader, &key.PublicKey, msg, nil)
pt, _ := rsa.DecryptOAEP(sha256.New(), rand.Reader, key, ct, nil)