3 ms·
> qhasm [4] is a portable assembly seemingly not focused on safety. When you start to worry about compiler bugs, hand written macro assembly isn't such a crazy
by jevinskie 13y ago
> qhasm [4] is a portable assembly seemingly not focused on safety.
When you start to worry about compiler bugs, hand written macro assembly isn't such a crazy idea for algorithms like SHA, MD5, RC4, AES. It is also easier to reason about timing in assembly. The truly paranoid would have to check compiler output anyways.
- angry_octet 13y agoThe truly paranoid worry that the processor will not execute instructions as they think it will. This ranges from timing irregularities from branch prediction and instruction re-order to bugs in CPU microcode or deliberate backdoors in the the design, or even the fab altering the mask to change the design. https://eprint.iacr.org/2007/039.pdf https://eprint.iacr.org/2007/039.pdf http://www.cl.cam.ac.uk/~sps32/microsemi_re.pdf http://www.cl.cam.ac.uk/~sps32/microsemi_re.pdf