Sample code for 30+ languages & platforms
Swift

Encrypt / Decrypt Secure Strings

See more Encryption Examples

Demonstrates how to use the EncryptSecureENC and DecryptSecureENC methods to encrypt/decrypt secure strings. These methods were added in Chilkat v9.5.0.71 (released January 2018).

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

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

    // Load the secure string with some text.
    let secStr1 = CkoSecureString()!
    success = secStr1.loadFile(path: "qa_data/txt/helloWorld.txt", charset: "utf-8")
    if success != true {
        print("Failed to load helloWorld.txt")
        return
    }

    let crypt = CkoCrypt2()!

    crypt.cryptAlgorithm = "aes"
    crypt.cipherMode = "cbc"
    crypt.keyLength = 128
    crypt.setEncodedKey(keyStr: "000102030405060708090A0B0C0D0E0F", encoding: "hex")
    crypt.setEncodedIV(ivStr: "000102030405060708090A0B0C0D0E0F", encoding: "hex")
    crypt.encodingMode = "base64"

    // Return the base64 encoded encrypted contents of secStr1.
    var encryptedStr: String? = crypt.encryptSecureENC(secureStr: secStr1)
    print("Encrypted string: \(encryptedStr!)")

    // Output:
    // Encrypted string: qiq+IFhcjTkEIkZyf31V/g==

    // Decrypt to secStr2:
    let secStr2 = CkoSecureString()!
    crypt.decryptSecureENC(cipherText: encryptedStr, secureStr: secStr2)

    // Access the contents of secStr2
    print("Decrypted string: \(secStr2.access()!)")

    // Output:
    // Decrypted string: Hello World!

}