Sample code for 30+ languages & platforms
Go

RSASSA-PSS Algorithm with SHA256 Hashing

See more RSA Examples

RSA encrypt a SHA256 hash with OAEP padding.

Chilkat Go Downloads

Go
    success := false

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    privkey := chilkat.NewPrivateKey()

    // Load the private key object from a PEM file.
    // (To load from a PEM string, call LoadPem instead.)
    success = privkey.LoadPemFile("somePath/myPrivateKey.pem")
    if success == false {
        fmt.Println(privkey.LastErrorText())
        privkey.DisposePrivateKey()
        return
    }

    rsa := chilkat.NewRsa()
    // Use RSA-PSS by setting PkcsPadding = false
    rsa.SetPkcsPadding(false)
    // Use SHA256
    rsa.SetOaepHash("SHA-256")

    rsa.UsePrivateKey(privkey)

    // Generate a base64 signature.
    rsa.SetEncodingMode("base64")

    sigStr := rsa.SignStringENC("String to be signed","SHA-256")
    if rsa.LastMethodSuccess() == false {
        fmt.Println(rsa.LastErrorText())
        privkey.DisposePrivateKey()
        rsa.DisposeRsa()
        return
    }

    fmt.Println("Signature: ", *sigStr)

    privkey.DisposePrivateKey()
    rsa.DisposeRsa()