I imagine, with knowledge of the ISA, can help one can define a verification algorithm, in which, the CPU is probed with some known inputs to gain confidence that there is no backdoor.
> in which, the CPU is probed with some known inputs to gain confidence that there is no backdoor.
There are 2^64 possible values for a single register. It's not possible to probe all possible combinations of values for the over 60 user-accessible registers, to find the single combination which, when calling a specific one of the more than 2^30 possible instructions, silently flips a secret "disable all permissions checking" bit.
I did a 5 minutes search. There seems to be a lot of work in detecting hardware trojans. Sec 3.12 here [1] discusses some of these approaches. One line is one of the things I was thinking of when I commented. Basically, there are tradeoffs of how logically hidden the trojan is against how physically exposed it is.
> Using this defense method, any Trojan that can analyze the entire configurable structure must use complicated logic functions and take up a large silicon area, which greatly increases the possibility of being detected by security tools.
There are live methods of detecting trojans as well, where you have an additional chip checking what the CPU is doing at all times [2].
One of the main thing I have learned in my life is to not underestimate the ingenuity of cryptographers.
It is, however, in principle possible to prove that a processor implements the spec and only the spec; seach for "formal verification risc v" to find out more.
Of course if someone can sneak a backdoor into the spec, all bets are off.
You would also need to prove that the physical processor in your hands was actually manufactured according to the verified design, and not a slightly different design with a back door added. Which is infeasible for all processors manufactured in the last 30 years.
And even if you did this, which may in principle be possible, you still wouldn’t be able to prove that there aren’t any backdoors leveraging unexpected physical interactions between components.
For example, even if everything was provably manufactured to spec, it could be laid out in a way that exposes side channels, enables rowhammer-like attacks, and so on.
The value of the public ISA then is that you can implement your own conformant version if you're super paranoid.
If the US is terrified that Chinese RISC-V processors have backdoors, they're free to manufacture their own version with their preferred assortment of bavkdoors instead. The software should remain compatible.