| Viewing Single Post From: Secure ? | |
|---|---|
| insecure | Jul 27 2006, 04:44 AM |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Here's that code again, annotated:
0xA9 is 11111001 in binary. It's hard to see how this is a useful mask. Naturally, the doubling will ensure that the low bit of t is clear. XORing this with 1 (which is done by ^ 0xA9) will set it. And XORing it with a again will either clear it (if the low bit of a is set) or set it (if the low bit of a is clear). Thus, the low bit of the result is simply the inverse of the low bit of one of the inputs. Whether that's exploitable, I don't know. It depends how the function is being used, I guess. |
![]() |
|
| Secure ? · Off-topic | |




![]](http://209.85.122.85/static/1/pip_r.png)


3:57 AM Nov 27