Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
3DES Test VectorExample for 3-key 3DES encryption (192-bit) to match a test vector produced by both (non-Chilkat) PHP code and C# code using the .NET Framework. PHP code to produce identical output: PHP 3DES Test Vector C# code to produce identical output: C# 3DES Test Vector
use chilkat(); $crypt = new chilkat::CkCrypt2(); $success = $crypt->UnlockComponent("Anything for 30-day trial."); if ($success != 1) { print "Crypt component unlock failed" . "\n"; exit; } # Specify 3DES for the encryption algorithm: $crypt->put_CryptAlgorithm("3des"); $crypt->put_CipherMode("ecb"); # KeyLength must be 192. 3DES is technically 168-bits; # the most-significant bit of each key byte is a parity bit, # so we must indicate a KeyLength of 192, which includes # the parity bits. $crypt->put_KeyLength(192); # Pad with zeros $crypt->put_PaddingScheme(3); # EncodingMode specifies the encoding of the output for # encryption, and the input for decryption. # It may be "hex", "url", "base64", or "quoted-printable". $crypt->put_EncodingMode("hex"); # The secret key must equal the size of the key. For # 3DES, the key must be 24 bytes (i.e. 192-bits). $keyAscii = "1234567890123456ABCDEFGH"; $crypt->SetEncodedKey($keyAscii,"ascii"); # Encrypt. # The result should be: # 13d4d3549493d2870f93c3e0812a06de467e1f9c0bfb16c070ede5cabbd3ca62f217a7ae8d47f2c7bf62eb309323b58b $encStr = $crypt->encryptStringENC("The quick brown fox jumped over the lazy dog"); print $encStr . "\n"; # Now decrypt: $decStr = $crypt->decryptStringENC($encStr); print $decStr . "\n"; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.