(Lianja) RSASSA-PSS Algorithm with SHA256 Hashing
RSA encrypt a SHA256 hash with OAEP padding.
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loPrivkey = createobject("CkPrivateKey")
// Load the private key object from a PEM file.
// (To load from a PEM string, call LoadPem instead.)
llSuccess = loPrivkey.LoadPemFile("somePath/myPrivateKey.pem")
if (llSuccess <> .T.) then
? loPrivkey.LastErrorText
release loPrivkey
return
endif
loRsa = createobject("CkRsa")
// Use RSA-PSS by setting OaepPadding = .T.
loRsa.OaepPadding = .T.
// Use SHA256
loRsa.OaepHash = "SHA-256"
loRsa.ImportPrivateKeyObj(loPrivkey)
// Generate a base64 signature.
loRsa.EncodingMode = "base64"
lcSigStr = loRsa.SignStringENC("String to be signed","SHA-256")
if (loRsa.LastMethodSuccess <> .T.) then
? loRsa.LastErrorText
release loPrivkey
release loRsa
return
endif
? "Signature: " + lcSigStr
release loPrivkey
release loRsa
|