(Swift) RSA Sign with PKCS8 Encrypted Key
Demonstrates how to load a private key from an encrypted PKCS8 file and create an RSA digital signature.Note: This example requires Chilkat v11.0.0 or greater.
func chilkatTest() {
var success: Bool = false
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let pkey = CkoPrivateKey()!
// Load the private key from an RSA PEM file:
success = pkey.loadPkcs8EncryptedFile("privateKey.key", password: "myPassword")
let rsa = CkoRsa()!
// Import the private key into the RSA object:
success = rsa.use(pkey)
if success == false {
print("\(rsa.lastErrorText!)")
return
}
// Return the signature in hex
rsa.encodingMode = "hex"
var strData: String? = "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".
var hexSig: String? = rsa.signStringENC(strData, hashAlg: "sha-1")
print("\(hexSig!)")
}
|