Sample code for 30+ languages & platforms
Perl

Create a WinZip/7-Zip compatible AES Encrypted Zip

See more Zip Examples

Creates a WinZip compatible AES-encrypted .zip archive

Chilkat Perl Downloads

Chilkat2 Perl
use strict;
use warnings;
use Chilkat2;

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

my $zip = Chilkat2::Zip->new;

my $success = $zip->NewZip('/myZipDir/aes.zip');
if (!$success) {
    print $zip->LastErrorText, "\n";
    exit;
}

# 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.)
my $recurse = 1;
$success = $zip->AppendFiles('c:/temp/a/*', $recurse);
if (!$success) {
    print $zip->LastErrorText, "\n";
    exit;
}

# Create the encrypted zip ("/myZipDir/aes.zip")
# The path of the zip is what was originally passed
# to the NewZip method (above).
$success = $zip->WriteZipAndClose();
if (!$success) {
    print $zip->LastErrorText, "\n";
    exit;
}

print "Created AES Encrypted Zip.\n";