Thus spake Dr S N Henson:
> 
> The reason for the macros was that when the EVP layer was being revised
> it was an absolute nightmare to change anything. IIRC at one point I had
> to add an additional field to the EVP_CIPHER structure. I then spent the
> next couple of hours modifying lots of almost identical EVP_CIPHER
> definitions spread over zillions of little files. So I rewrote the files
> to use macros so that any future changes could largely be handled by
> just changing the macros and the odd exception manually.

That's roughly what I figured :)

After implementing CBC, CFB, OFB, and CTR for AES (mostly plagiarized
from IDEA), I'm beginning to wonder why we have 40 different
implementations of the exact same algorithms in the first place.
Couldn't we have a general "modes" macro set, to which you pass the
ECB function of the cipher you're using?

I've also been at a loss for how to use SSE/MMX registers to pass
around keys and blocks, since doing so would grossly violate the
current API.  This would provide serious performance gains, however.

S

-- 
Stephen Sprunk          "So long as they don't get violent, I want to
CCIE #3723         let everyone say what they wish, for I myself have
K5SSS        always said exactly what pleased me."  --Albert Einstein
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to