3 ms·
Yes, you are correct. My idea is to cause a compile error if the backend can't use all instructions for which it knows the worst case latency or if it can't us
by gavinhoward 2y ago
Yes, you are correct.
My idea is to cause a compile error if the backend can't use all instructions for which it knows the worst case latency or if it can't use purely constant-time instructions.
- AlotOfReading 2y agoThat's essentially every instruction though. You can't write a program that doesn't access memory for example, and every memory access is nondeterministic in wall clock time.
- gavinhoward 2y agoYes. In the crypto example, the backend would have to be sophisticated enough to know when the same addresses would be accessed every time, like bitslicing in AES. [1] The devil absolutely is in the details. This is why I say Yao's capabilities on this front are unproven. [1]: https://www.bearssl.org/constanttime.html#constant-time-in-bearssl https://www.bearssl.org/constanttime.html#constant-time-in-b...