>> All internal exports: Zeroize XMM registers that may contain secret
>> data before returning. (At 4x pxors per cycle, the overhead is
>> negligible.)
>>
>> _ctr32: Zeroize $key0 and $ctr.
> 
> Question is why just aesni module? Why not everywhere? Why not demand
> that compiler does it too? Why just registers, and not stack too? The
> answer is that it doesn't make much sense, because the code you are
> trying to "protect" against resides in same process context and can read
> all the secrets from memory much more reliably than from registers or
> stack. I'm not saying that it makes no sense to clean up, only that *if*
> we do choose to do it, then it should be done for right reason and
> consistently.

Well, I'm being a little bit inconsistent here, because there are
*stack* cleanups in some other modules, most notably in BN. But question
why registers and why in just aesni still stands. If you can present
coherent argument and consensus is reached, then it would have to be
implemented universally, not only in aesni-x86_64 module.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to