>>33If it's simple enough to disassemble, inspect under e.g. a microscope, and reassemble, then yes, in principle. With hardware that is simple enough, you could also try to feed it tons of data and check whether the behavior/output is appropriate. A sort of hardware unit test if you will.
With the (over)complex hardware you have today, probably not. The only good defense against hardware sabotage I can see right now is to make your hardware as general-purpose as possible. It's easy to hide a backdoor in a corner case of an AES instruction or an RNG within a CPU. If everything is e.g. RISC, doing something like this becomes either very expensive (and potentially noticeable when e.g. the multiplication instruction attempts pattern matching for RSA privates) or produces collateral damage.
But none of this protects you against straight-up bugs, like the inaccurate floating-point instructions on x86. As much as I hate to say this, it might be an unsolvable problem.