Quick glance didn't show glaring errors. Though the perl stuff makes me wonder if it's interfacing with OpenSSL at EVP_*() level, which /might/ make a difference here as your C code uses bare metal AES crypto calls -- haven't checked this, just a wild guess.
Next is probably a stupid remark you already checked, but Windows and UNIX have different line endings (CRLF and LF respectively) and stdio may cough up those additional Windows' CR's in your data (to be encrypted), depending on _setmode(). Anyway, try to ENcrypt on the Unix side as well as on the Win side and check the raw input length: should be the same for the same plaintext input. (Safe approach in case of panic: strip away all '\r' characters in the plaintext on either side) In other words: encrypt on both sides, verify that the plaintext fed into the encryption calls is EXACTLY the same and then compare the encrypted byte sequence: that should be the same as well. On Wed, Dec 10, 2008 at 7:22 PM, Dave Stoddard <[EMAIL PROTECTED]> wrote: > I am writing an application that uses OpenSSL 256-bit AES CBC > encryption on a Windows system to communicate with a UNIX web [...] -- Met vriendelijke groeten / Best regards, Ger Hobbelt -------------------------------------------------- web: http://www.hobbelt.com/ http://www.hebbut.net/ mail: [EMAIL PROTECTED] mobile: +31-6-11 120 978 -------------------------------------------------- ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]