Hi Marc,=20
The newest x86_64 RC4 code in OpenSSL(0.9.8-dev) will branch to
different path according to different target platform. If target
platform is EM64t, OpenSSL will use an "RC4_INT =3D unsigned char"
version. This code is to replace that branch.

This piece of code has not only passed rc4test in OpenSSL but also been
validated on Apache 2.0 + OpenSSL with stress test.

Thanks
Zou Nan hai

> -----Original Message-----
> From: Marc Bevand [mailto:bevand_m@epita.fr]
> Sent: Tuesday, April 05, 2005 2:22 PM
> To: Zou, Nanhai
> Cc: openssl-dev@openssl.org; Andy Polyakov
> Subject: Re: RC4 optimize for em64t
>=20
> Zou, Nanhai wrote:
> | <> Hi,
> | Current OpenSSL (0.9.8-dev) rc4speed throughput on a Nocona
> | (Em64t, b4bit) 3.6GHz is 272Mb/s, while this version of RC4 code can
> | archive 536Mb/s in RC4Speed.
> |
> | ????Would you please review it?
>=20
> Your RC4 implementation seems to contain a bug: I tried to link your
> RC4() function against one of my RC4 validation tool [1] and it does
> not produce the expected output:
>=20
> $ ./rc4test
> error calculating RC4
> output: 01 22 45 45 ab 86 cd ef 00
> expect: 75 b7 87 80 99 e0 c5 96 00
> error calculating RC4
> output: 00 01 00 22 22 2d 00 00 00
> expect: 74 94 c2 e7 10 4b 08 79 00
> [...]
>=20
> I assume your RC4() is a drop-in replacement for OpenSSL's RC4(), a
> quick look at the source code seems to confirm this... Can you double-
> check your code, please ?
>=20
> [1] http://etudiant.epita.fr/~bevand_m/p...-amd64.tar.bz2
>=20
> --
> Marc Bevand http://epita.fr/~bevand_m
> Computer Science School EPITA - System, Network and Security Dept.

__________________________________________________ ____________________
OpenSSL Project http://www.openssl.org
Development Mailing List openssl-dev@openssl.org
Automated List Manager majordomo@openssl.org