Ruby Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Ruby
Examples

Quick Start
Ruby Unicode
Ruby Byte Array
Ruby Certs
Ruby Email
Ruby Encryption
Ruby FTP
HTML-to-XML
Ruby HTTP
Ruby IMAP
Ruby MHT
Ruby MIME
Ruby S/MIME
Ruby Signatures
Ruby RSA
Ruby Socket
Ruby Spider
Ruby Tar
Ruby Upload
Ruby XML
Ruby XMP
Ruby Zip

More Examples...
String
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

 

File Encryption / Decryption

File-to-file encryption in Ruby using AES, Blowfish, RC2, ARC4, or 3DES.

Download Chilkat Ruby Library

require 'chilkat'

crypt = Chilkat::CkCrypt2.new()

success = crypt.UnlockComponent("Anything for 30-day trial")
if (success != true)
    print "Crypt component unlock failed" + "\n"
    exit
end

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() + "\n"
    exit
end

#  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() + "\n"
    exit
end

print "AES File Encryption Success." + "\n"

#  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() + "\n"
    exit
end

#  3DES Decrypt the file
success = crypt.CkDecryptFile("tripleDesEncrypted.dat","hamlet_3des.xml")
if (success != true)
    print crypt.lastErrorText() + "\n"
    exit
end

print "3DES File Encryption Success." + "\n"

#  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() + "\n"
    exit
end

#  Blowfish Decrypt the file
success = crypt.CkDecryptFile("blowfishEncrypted.dat","hamlet_blowfish.xml")
if (success != true)
    print crypt.lastErrorText() + "\n"
    exit
end

print "Blowfish File Encryption Success." + "\n"

#  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() + "\n"
    exit
end

#  RC2 Decrypt the file
success = crypt.CkDecryptFile("rc2Encrypted.dat","hamlet_rc2.xml")
if (success != true)
    print crypt.lastErrorText() + "\n"
    exit
end

print "RC2 File Encryption Success." + "\n"

#  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() + "\n"
    exit
end

#  ARC4 Decrypt the file
success = crypt.CkDecryptFile("arc4Encrypted.dat","hamlet_arc4.xml")
if (success != true)
    print crypt.lastErrorText() + "\n"
    exit
end

print "ARC4 File Encryption Success." + "\n"


 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2007 Chilkat Software, Inc. All Rights Reserved.