(Ruby) RSA Sign with PKCS8 Encrypted Key
Demonstrates how to load a private key from an encrypted PKCS8 file and create an RSA digital signature.
require 'chilkat'
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
pkey = Chilkat::CkPrivateKey.new()
# Load the private key from an RSA PEM file:
success = pkey.LoadPkcs8EncryptedFile("privateKey.key","myPassword")
# Get the private key in XML format:
pkeyXml = pkey.getXml()
rsa = Chilkat::CkRsa.new()
# Import the private key into the RSA object:
success = rsa.ImportPrivateKey(pkeyXml)
if (success != true)
print rsa.lastErrorText() + "\n";
exit
end
# Return the signature in hex
rsa.put_EncodingMode("hex")
strData = "This is the string to be signed."
# Sign the string using the sha-1 hash algorithm.
# Other valid choices are "md2", "sha256", "sha384", "sha512", and "md5".
hexSig = rsa.signStringENC(strData,"sha-1")
print hexSig + "\n";
|