C# Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CUnicode C++Unicode CMFCDelphi DLLDelphi ActiveXFoxProJavaPerlPHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

C# Examples

Bounced Mail
Bz2
Character Encoding
CSV
DKIM / DomainKey
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
MIME
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH
SSH Tunnel
SSH Key
SFTP
Tar Archive
Upload
XML
XMP
Zip Compression


More Examples...
Amazon S3
NTLM
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

Match Java JCE AES Encryption Results (ECB mode)

Download: Chilkat .NET Assemblies

Shows sample code in C# that matches Java JCE encryption results for 128-bit AES encryption using ECB mode.

Chilkat.Crypt2 crypt = new Chilkat.Crypt2();

// Any string argument automatically begins the 30-day trial.
bool success;
success = crypt.UnlockComponent("30-day trial");
if (success != true) {
    MessageBox.Show("Crypt component unlock failed");
    return;
}

string password;
password = "secretPassphrase";

// Use the Digest MD5 algorithm to get a 16-byte binary secret key.
crypt.HashAlgorithm = "md5";
crypt.EncodingMode = "hex";
string secretKeyHex;
secretKeyHex = crypt.HashStringENC(password);

crypt.CryptAlgorithm = "aes";
crypt.CipherMode = "ecb";
crypt.KeyLength = 128;
crypt.SetEncodedKey(secretKeyHex,"hex");

string text;
text = "The quick brown fox jumped over the lazy dog.";
string encText;
encText = crypt.EncryptStringENC(text);

// Displays:
// C960892077D566258D38DF4BBAE8548E6827BF8C27A9D2EE
// 6F563FC75003F8F6A05B54CFD28CDC8833BD073F7FC6D031
textBox1.Text += encText + "\r\n";
textBox1.Refresh();

// This Java (JCE) code produces the same results:
// String password = "secretPassphrase";
// 
// MessageDigest md = MessageDigest.getInstance("MD5");
// md.update(password.getBytes("UTF-8"), 0, password.length());
// byte[] rawKey = md.digest();
// 
// String text = "The quick brown fox jumped over the lazy dog.";
// 
// SecretKeySpec skeySpec = new SecretKeySpec(rawKey, "AES");
// Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
// cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
// 
// byte[] encrypted = cipher.doFinal(text.getBytes("UTF-8"));
// 
// System.out.println(toHex(encrypted));

// This is the toHex method in Java:
// public static String toHex (byte buf[]) {
// 
// StringBuffer strbuf = new StringBuffer(buf.length * 2);
// int i;
// 
// for (i = 0; i < buf.length; i++) {
// if (((int) buf[i] & 0xff) < 0x10)
// strbuf.append("0");
// 
// strbuf.append(Long.toString((int) buf[i] & 0xff, 16));
// }
// 
// return strbuf.toString();
// }

 

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