Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
File Encryption / DecryptionFile-to-file encryption in Python using AES, Blowfish, RC2, ARC4, or 3DES.
import sys import chilkat crypt = chilkat.CkCrypt2() success = crypt.UnlockComponent("Anything for 30-day trial") if (success != True): print "Crypt component unlock failed" sys.exit() crypt.put_CryptAlgorithm("aes") crypt.put_CipherMode("cbc") crypt.put_KeyLength(128) # 16 bytes of key for 128-bit encryption. key = "1234567890123456" # The IV is equal to the block size of the encryption algorithm. iv = "1234567890123456" # Set the key. crypt.SetEncodedKey(key,"ascii") # Set the IV crypt.SetEncodedIV(iv,"ascii") # AES Encrypt the file (the file may be any size because it will # stream the file in/out. success = crypt.CkEncryptFile("hamlet.xml","aesEncrypted.dat") if (success != True): print crypt.lastErrorText() sys.exit() # AES Decrypt the file (the file may be any size because it will # stream the file in/out. success = crypt.CkDecryptFile("aesEncrypted.dat","hamlet_aes.xml") if (success != True): print crypt.lastErrorText() sys.exit() print "AES File Encryption Success." # Now do 3DES file encryption: # To use Triple-DES, set the algorithm = "des", # and the key length = 168. # To use DES, set the key length = 56 bits. crypt.put_CryptAlgorithm("des") crypt.put_CipherMode("cbc") crypt.put_KeyLength(168) # 3DES Encrypt the file success = crypt.CkEncryptFile("hamlet.xml","tripleDesEncrypted.dat") if (success != True): print crypt.lastErrorText() sys.exit() # 3DES Decrypt the file success = crypt.CkDecryptFile("tripleDesEncrypted.dat","hamlet_3des.xml") if (success != True): print crypt.lastErrorText() sys.exit() print "3DES File Encryption Success." # Do Blowfish file encryption: # To use Blowfish, set the algorithm = "blowfish2". # The original Chilkat "blowfish" implementation outputs # 4321 swapped bytes. "blowfish2" output is in the correct # byte order. crypt.put_CryptAlgorithm("blowfish2") crypt.put_CipherMode("cbc") crypt.put_KeyLength(128) # Blowfish Encrypt the file success = crypt.CkEncryptFile("hamlet.xml","blowfishEncrypted.dat") if (success != True): print crypt.lastErrorText() sys.exit() # Blowfish Decrypt the file success = crypt.CkDecryptFile("blowfishEncrypted.dat","hamlet_blowfish.xml") if (success != True): print crypt.lastErrorText() sys.exit() print "Blowfish File Encryption Success." # Do RC2 file encryption: # To use RC2, set the algorithm = "rc2". # Also, set the Rc2EffectiveKeyLength property. crypt.put_CryptAlgorithm("rc2") crypt.put_CipherMode("cbc") # Key length and effective key length should range # from 8 to 1024 bits. crypt.put_KeyLength(128) crypt.put_Rc2EffectiveKeyLength(128) # RC2 Encrypt the file success = crypt.CkEncryptFile("hamlet.xml","rc2Encrypted.dat") if (success != True): print crypt.lastErrorText() sys.exit() # RC2 Decrypt the file success = crypt.CkDecryptFile("rc2Encrypted.dat","hamlet_rc2.xml") if (success != True): print crypt.lastErrorText() sys.exit() print "RC2 File Encryption Success." # Do ARC4 file encryption: # To use ARC4, set the algorithm = "arc4". crypt.put_CryptAlgorithm("arc4") crypt.put_KeyLength(128) # ARC4 Encrypt the file success = crypt.CkEncryptFile("hamlet.xml","arc4Encrypted.dat") if (success != True): print crypt.lastErrorText() sys.exit() # ARC4 Decrypt the file success = crypt.CkDecryptFile("arc4Encrypted.dat","hamlet_arc4.xml") if (success != True): print crypt.lastErrorText() sys.exit() print "ARC4 File Encryption Success." |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.