![]() |
Chilkat • HOME • Android™ • AutoIt • C • C# • C++ • Chilkat2-Python • CkPython • Classic ASP • DataFlex • Delphi DLL • Go • Java • Node.js • Objective-C • PHP Extension • Perl • PowerBuilder • PowerShell • PureBasic • Ruby • SQL Server • Swift • Tcl • Unicode C • Unicode C++ • VB.NET • VBScript • Visual Basic 6.0 • Visual FoxPro • Xojo Plugin
(Chilkat2-Python) Streaming Encryption by Encrypting in ChunksEncrypt data in chunks.
import chilkat2 # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. crypt = chilkat2.Crypt2() crypt.CryptAlgorithm = "aes" crypt.CipherMode = "cbc" crypt.KeyLength = 128 crypt.SetEncodedKey("000102030405060708090A0B0C0D0E0F","hex") crypt.SetEncodedIV("000102030405060708090A0B0C0D0E0F","hex") crypt.EncodingMode = "hex" txt1 = "The quick brown fox jumped over the lazy dog.\r\n" txt2 = "-\r\n" txt3 = "Done.\r\n" sbEncrypted = chilkat2.StringBuilder() # Encrypt the 1st chunk: # (don't worry about feeding the data to the encryptor in # exact multiples of the encryption algorithm's block size. # Chilkat will buffer the data.) crypt.FirstChunk = True crypt.LastChunk = False sbEncrypted.Append(crypt.EncryptStringENC(txt1)) # Encrypt the 2nd chunk crypt.FirstChunk = False crypt.LastChunk = False sbEncrypted.Append(crypt.EncryptStringENC(txt2)) # Now encrypt N more chunks... # Remember -- we're doing this in CBC mode, so each call # to the encrypt method depends on the state from previous # calls... crypt.FirstChunk = False crypt.LastChunk = False for i in range(0,5): sbEncrypted.Append(crypt.EncryptStringENC(txt1)) sbEncrypted.Append(crypt.EncryptStringENC(txt2)) # Now encrypt the last chunk: crypt.FirstChunk = False crypt.LastChunk = True sbEncrypted.Append(crypt.EncryptStringENC(txt3)) print(sbEncrypted.GetAsString()) # Now decrypt in one call. # (The data we're decrypting is both the first AND last chunk.) crypt.FirstChunk = True crypt.LastChunk = True decryptedText = crypt.DecryptStringENC(sbEncrypted.GetAsString()) print(decryptedText) # Note: You may decrypt in N chunks by setting the FirstChunk # and LastChunk properties prior to calling the Decrypt* methods |
||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.