Post

To put it another way: if the official position of the Android and Linux kernel teams is “we, some of the world’s best coders, can’t safely use C” then the bar under CRA’s requirements of “safe by design” should be nearly impossible to meet for mere mortals when using C.

impossible to meet for anyone _today_ , sure but at the very least we should have governments procurement rules block the spending of taxpayer money on negligent technology choices after some future date e.g. 2050 ? 2060 ? just needs a line in the sand for incentives

it definitely doesn’t force Rust, but for safety by design of a C-based system, an auditor should absolutely be requiring either (a) “we use Rust to process all untrusted inputs” or (b) a literal phonebook of other mitigations. Which should be a forcing function.

I really want everyone to use memory-safe languages, but for what the CRA requires, we’ll have to see how the phone book of other mitigations works out. Maybe it will be thorough and practical enough, maybe not. It’d be much more inspiring and fun if the CRA didn’t defer to the state of the art!

I think the Brussels folks will tell you that CRA's standards rise as state of the art rises, and if it had been in place 10 or 20 years ago, "secure by design" would have been a very different target. Open question whether that happens in practice or just gets ossified into 2027-era audit docs.