Swift
Swift
RSA Encrypt with Modulus and Exponent
See more RSA Examples
Demonstrates how to RSA encrypt with a given modulus and exponent.Chilkat Swift Downloads
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 rsa = CkoRsa()!
// Assuming you already have a base64 modulus and exponent,
// wrap it in XML like this:
var modulus: String? = "qMBRpdYrAy5aMmo31NErUizh5sbweguSmh4wlK6uJEIDl+kwTlROnE34KOFExeTbJSX0WygPi+vWl0yNq7buIMUKpytossAAWut5khO3CQJxTk7G2gnEPNUUXHiExGgNrLzcSLv8YIlfVALhoRWyC67KOL+a+3taNq3h+BHeWhM="
var exponent: String? = "AQAB"
let xml = CkoXml()!
xml.tag = "RSAPublicKey"
xml.newChild2(tagPath: "Modulus", content: modulus)
xml.newChild2(tagPath: "Exponent", content: exponent)
let pubKey = CkoPublicKey()!
success = pubKey.load(fromString: xml)
if success == false {
print("\(pubKey.lastErrorText!)")
return
}
success = rsa.usePublicKey(pubKey: pubKey)
if success == false {
print("\(rsa.lastErrorText!)")
return
}
var usePrivateKey: Bool = false
var plainText: String? = "message in a bottle"
rsa.encodingMode = "base64"
var encryptedStrBase64: String? = rsa.encryptStringENC(str: plainText, bUsePrivateKey: usePrivateKey)
print("\(encryptedStrBase64!)")
}