Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ Delphi FoxPro Java Perl Python Ruby SQL Server VBScript
|
FTP Upload Encrypted and CompressedCompress and encrypt a file, and upload it to an FTP server. Then do the reverse (download, decrypt, inflate).
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% set ftp = Server.CreateObject("Chilkat.Ftp2") ' Any string unlocks the component for the 1st 30-days. success = ftp.UnlockComponent("Anything for 30-day trial") If (success <> 1) Then Response.Write ftp.LastErrorText & "<br>" End If set crypt = Server.CreateObject("Chilkat.Crypt2") ' Any string unlocks the component for the 1st 30-days. success = crypt.UnlockComponent("Anything for 30-day trial") If (success <> 1) Then Response.Write crypt.LastErrorText & "<br>" End If ftp.Hostname = "www.example-code.com" ftp.Username = "***" ftp.Password = "***" ' Connect and login to the FTP server. success = ftp.Connect() If (success <> 1) Then Response.Write ftp.LastErrorText & "<br>" End If ' Change to the remote directory where the file will be uploaded. success = ftp.ChangeRemoteDir("junk") If (success <> 1) Then Response.Write ftp.LastErrorText & "<br>" End If ' Read the file into memory. set fileData = Server.CreateObject("ByteData") Set fileData = crypt.ReadFile("hamlet.xml") If (fileData Is Nothing ) Then Response.Write crypt.LastErrorText & "<br>" End If set compressedData = Server.CreateObject("ByteData") Set compressedData = crypt.CompressBytes(fileData) ' Use 128-bit AES encryption, in CBC mode. crypt.CryptAlgorithm = "aes" crypt.CipherMode = "cbc" crypt.KeyLength = 128 crypt.SetEncodedKey "0123456789ABCDEF","ascii" crypt.SetEncodedIV "0123456789ABCDEF","ascii" set encryptedData = Server.CreateObject("ByteData") Set encryptedData = crypt.EncryptBytes(compressedData) ' Upload from a byte array. remoteFilename = "hamlet.dat" success = ftp.PutFileFromBinaryData(remoteFilename,encryptedData) If (success <> 1) Then Response.Write ftp.LastErrorText & "<br>" End If ' Now do the reverse: set encryptedData2 = Server.CreateObject("ByteData") Set encryptedData2 = ftp.GetRemoteFileBinaryData(remoteFilename) If (encryptedData2 Is Nothing ) Then Response.Write ftp.LastErrorText & "<br>" End If ' Decrypt: set decryptedData = Server.CreateObject("ByteData") Set decryptedData = crypt.DecryptBytes(encryptedData2) ' Inflate: set inflatedData = Server.CreateObject("ByteData") Set inflatedData = crypt.InflateBytes(decryptedData) ' Save the decrypted/inflated data to a file. success = crypt.WriteFile("hamlet2.xml",inflatedData) If (success <> 1) Then Response.Write crypt.LastErrorText & "<br>" End If ftp.Disconnect Response.Write "File Uploaded and Downloaded!" & "<br>" %> </body> </html> |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.