A device which can not be administered by the end user is administered (perhaps negligently) by the company who sold it.
Custom DIY ROM might interesting to some geek out there, but it does nothing for security. There is no automatic update and some custom ROM is never going to get it anyway.
Security through obscurity is a better option in this case.
But mostly, I think it would clarify the responsibility and obligations for support. Obviously a device which hasn’t been opened up can’t possibly be the responsibility of the user, who is locked out and unable to administer it. By default manufacturers should be responsible for the things they manufacture and should have an obligation to make sure they are reasonably free of defects. Devices with known security vulnerabilities are defective.
If they want to release themselves of that responsibility, they should have to actually make it possible for somebody else to pick it up.
For a manufacturer to opensource "all that's necessary to build, deploy and use the soft-/hardware", the whole ecosystem would need a massive paradigm shift.
For certain device classes this is probably much easier than for others. And expecting/dictating a reasonable lifetime from a product might be the better choice - and as the EU directive regarding user-replacable smartphone batteries shows, this goes beyond software.
[1] https://en.wikipedia.org/wiki/VxWorks [2] https://hightec-rt.com/products/development-platform
The safety critical stuff really ought to be supported for the lifetime of the car. But it shouldn’t have internet access anyway, so a big source of attacks is not available. They sometimes update that software when you go in for maintenance, right? It seems fine.
The entertainment center, why shouldn’t we be able to install our own OS on it? Those things are always quite buggy anyway, I’d love to install Linux on mine.
—
More generally:
Yes, I’ll admit I was going for a bit of back door trickiness. I do think it would be hard to just open up a lot of current platforms.
If the law is that manufacturers must either release “everything” (hand-wave-ily) or offer a full refund in order to release their support obligation, then I’d expect them to do one of the following:
* Make new designs that are easier to open up. A win for everybody! They can push back on the license terms for the libraries they use. Or, perhaps some mechanism could be designed so that they open up the rest of their platform, and the library developer that doesn’t want to open up can keep their part of the support obligation.
* Extend the support lifetime to the point where they are happy to just offer refunds to the few remaining users.
As you say,
> And expecting/dictating a reasonable lifetime from a product might be the better choice - and as the EU directive regarding user-replacable smartphone batteries shows, this goes beyond software.
But I think a reasonable lifespan depends on the type of device, locking in a specific number with the law seems difficult. Offering a choice instead would let the lifetime be set dynamically, but without the current odd situation where obligations just evaporate into nothingness.
We already have 10-year-old devices which are perfectly performant for their tasks but are being turned to ewaste due to lack of support, rather than any material need. Moore's law isn't coming back, devices will have longer and longer performances relevant lifetimes from here on out, and if the current market doesn't support that then it's the market that's broken, not the devices.