The file openssl_0.9.8b/crypto/aes/aes_core.c is based on rijndael-alg-fst.c by Rijnmen, Bosselaers, and Barreto. I discovered in the context of another project that when this file is compiled on Solaris AMD64:

$ uname -a
SunOS opterondev 5.10 Generic i86pc i386 i86pc

using Sun's compiler with the -fast option, the generated code produces incorrect output. The Configure target solaris64-x86_64-cc includes this option. Testing with:

./Configure solaris64-x86_64-cc
make
make test

confirms that OpenSSL has inherited the problem:

Testing cipher AES-128-ECB(encrypt)
Key
0000 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
Plaintext
0000 00 11 22 33 44 55 66 77 88 99 aa bb cc dd ee ff
Ciphertext
0000 69 c4 e0 d8 6a 7b 04 30 d8 cd b7 80 70 b4 c5 5a
Ciphertext mismatch
Got
0000 c7 a8 a6 29 7a 35 71 44 21 e3 7a f9 e8 b5 bd af
Expected
0000 69 c4 e0 d8 6a 7b 04 30 d8 cd b7 80 70 b4 c5 5a

I will be opening a support case with Sun.

--David
--
W. David Shambroom, Ph.D.
Security Architect                                          617.551.2143
InterSystems Corporation                            [EMAIL PROTECTED]
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to