From: Andy Polyakov <[email protected]> Date: Sun, 21 Oct 2012 13:05:09 +0200
>> Therefore, for systems that don't have support for a biased 64-bit >> stack in 32-bit processes, you should check after every operation. > > But as we seem to agree that code with sequence retry is worth > implementing for 64-bit [and biased stack] account, it would be > trivial to check the above theory in 32-bit process context ;-) Ok, and I agree with said 32-bit theory :-) > Question was if it *always* blows away the top window. So that it can > be used as canary for early exit even from between instructions in the > sequence. Another question is following. Imagine I traversed register > windows down to one with result. Imagine that so far all windows were > found intact. Does it guarantee that even bottom window is intact? The > one holding M? The question is if I can save the result without > examining the bottom window. On the other hand I can copy part of the > result residing in integer registers to floating point register bank > (yes, zapping M), get down to bottom window and then decide if result > is valid or not. Yes, this floating point idea is feasible and in fact cheap on T4 and later by using movxtod instructions. >> BTW, we could create even a JIT compiler for this. > > While it would be totally cool, I'd prefer to adhere to static > code. At the very least auto-generated code would be impossible to > FIPS-validate. Understood. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [email protected] Automated List Manager [email protected]
