cancel
Showing results for 
Search instead for 
Did you mean: 

Processors

Ryzen 3000 random bug

I am a developer and I am on a lot of forums besides this one. One serious fault that has surfaced deals with random numbers.

RDRAND is an instruction that has been around since Broadwell. AMD Zen also supports it.

CPUID can determine if the flag is set. Unfortunately, unpatched Ryzen 3000 says "yes" to the CPUID 01H call, sets the carry bit indicating it has successfully created the most artisanal, organic high-quality random number possible... and gives you a 0xFFFFFFFF for the "random" number, every single time.

I have been aware of this defect which is a major problem for a secure system. It breaks std::random() as well which is the C++ call to the CPU instruction. The chilling effect on security is horrifying.

AMD needs to make a new stepping for the faulty CPU which is the only real way to fix the problem.

.

0 Likes
2 Replies
misterj
Big Boss

hardcoregames™, this is a well known and long known problem!  AMD supplied a microcode correction some time ago.  MB vendors are just very bad about pushing out updates,  You should lean on your vendor, AMD has released a correction.  Enjoy, John.

0 Likes

There needs to be a new stepping to correct the problem.

The logic is supposed to use thermal variations to derive a source of entropy. The design is weak and needs to be revised.

I frequently bonk MB vendors for problems like my R5 2400G not working on anybody's X570, forcing the purchase of known defective CPU does not work.

0 Likes