Sample code for 30+ languages & platforms
Swift

Create a WinZip/7-Zip compatible AES Encrypted Zip

See more Zip Examples

Creates a WinZip compatible AES-encrypted .zip archive

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.

    let zip = CkoZip()!

    success = zip.newZip(zipPath: "/myZipDir/aes.zip")
    if success != true {
        print("\(zip.lastErrorText!)")
        return
    }

    // Set properties to indicate that the Zip should be
    // AES encrypted.

    // A value of 4 indicates WinZip compatible AES encryption.
    zip.encryption = 4

    // Key length can be 128, 192, or 256 bits.
    zip.encryptKeyLength = 128

    // Set the password for AES encryption:
    zip.encryptPassword = "myPassword"

    // Add a directory tree to be zipped.  (The files
    // are not compressed at this point -- only references
    // to the files and directories are added to the zip object.)
    var recurse: Bool = true
    success = zip.appendFiles(filePattern: "c:/temp/a/*", recurse: recurse)
    if success != true {
        print("\(zip.lastErrorText!)")
        return
    }

    // Create the encrypted zip ("/myZipDir/aes.zip")
    // The path of the zip is what was originally passed
    // to the NewZip method (above).  
    success = zip.writeAndClose()
    if success != true {
        print("\(zip.lastErrorText!)")
        return
    }

    print("Created AES Encrypted Zip.")

}