Also, they never do it right.
-
-
-
Replying to @volatile_void
If I had a dollar for every allegedly constant-time primitive written in C, I could buy a nice car. You cannot claim C code to be constant time, because the C abstract machine has no model of time.
2 replies 4 retweets 9 likes -
Replying to @stephentyrone @volatile_void
You can't even claim constant-time for most assembly code unless you tie it to a specific µarchitecture, because most ISAs make no guarantee of a constant-time for the instructions you're using.
2 replies 0 retweets 0 likes -
Replying to @stephentyrone @volatile_void
pusha ; cpuid ; popa between every pair of instructions. ;-)
2 replies 0 retweets 1 like -
Jokes aside, closest you'll probably come is implementing a bytecode interpreter to make it implausible for uarch to make op times vary.
2 replies 0 retweets 0 likes -
Honestly your average interpreter is probably going to leak gobs of secret information into the branch predictor. this is a terrible idea.
2 replies 0 retweets 3 likes -
No branching needed.
2 replies 0 retweets 0 likes -
Replying to @RichFelker @erincandescent and
You forget that add (with pc as a possible operand) is Turing complete. :-)
2 replies 0 retweets 0 likes -
The interpreter implementation itself will contain branches. probably data dependent branches.
1 reply 0 retweets 0 likes
No, it's literally a while loop that computes 2 src addrs & one dest from insn bits & indirections, then does add & store.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.