![]() |
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
(Classic ASP) Streaming Encryption by Encrypting in ChunksEncrypt data in chunks.
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% ' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. set crypt = Server.CreateObject("Chilkat.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." & vbCrLf txt2 = "-" & vbCrLf txt3 = "Done." & vbCrLf set sbEncrypted = Server.CreateObject("Chilkat.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 = 1 crypt.LastChunk = 0 success = sbEncrypted.Append(crypt.EncryptStringENC(txt1)) ' Encrypt the 2nd chunk crypt.FirstChunk = 0 crypt.LastChunk = 0 success = 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 = 0 crypt.LastChunk = 0 For i = 0 To 4 success = sbEncrypted.Append(crypt.EncryptStringENC(txt1)) success = sbEncrypted.Append(crypt.EncryptStringENC(txt2)) Next ' Now encrypt the last chunk: crypt.FirstChunk = 0 crypt.LastChunk = 1 success = sbEncrypted.Append(crypt.EncryptStringENC(txt3)) Response.Write "<pre>" & Server.HTMLEncode( sbEncrypted.GetAsString()) & "</pre>" ' Now decrypt in one call. ' (The data we're decrypting is both the first AND last chunk.) crypt.FirstChunk = 1 crypt.LastChunk = 1 decryptedText = crypt.DecryptStringENC(sbEncrypted.GetAsString()) Response.Write "<pre>" & Server.HTMLEncode( decryptedText) & "</pre>" ' Note: You may decrypt in N chunks by setting the FirstChunk ' and LastChunk properties prior to calling the Decrypt* methods %> </body> </html> |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.