If it’s the case, each clown garage shop would be able to modify key characteristics of any car. And oh boy they will do it.
Would you fly on aircraft knowing mechanic servicing it last night could have added something funny to the plane you are taking?
Car workshops would modify and compile their own distribution of the car source code? I can't say I have ever been to a workshop where I would imagine anything like that.
Open source here would clearly be a big win for security and bug identifications in cars. Better quality laws to go along with it to protect researchers would naturally be a big positive as well.
For a comparison look to Android. AOSP is open source, and whilst alternative, non-OEM, flavours of Android do exist (GrapheneOS, LineageOS, etc). But you don't see shops that fix or sell phones putting any of these on the phone. And if you did, would it be a security downgrade? I don't think so!
> Would you fly on aircraft knowing mechanic servicing it last night could have added something funny to the plane you are taking?
But... they could have done. Maybe not the software, but mechanically, of course it's possible. Why doesn't it happen though? I guess the same reasons why in general people act responsibly in society.
Thanksfully the clown garage shop doesn't. But CAN access SW is available for most models
In fact, it's a core thing in aviation for maintenance, repair, but also modification/changes to be decoupled from vendor.
It's pretty normal for a vendor to not exist for a generation or two while the plane is still in productive work.
The main difference is that it's tracked. Licensed, too, but huge part of that licensing is about maintaining the history of the parts and plane, and that mechanics know given plane.
But the only reason you're going to know that a change happened was because the people have been trained to log it down - but there's no physical/computer lockout preventing them.
In a perfect world, you want to be able to safely ~hack~investigate every part of your car, including the logic that controls its servos, hydraulics, propulsion, etc.
So the whole OS and controler firmware should be open source, right?
It would be awesome but problems arise with qualifying which "devices" this should apply to. Are all self propelled four whelers cars? What about three wheelers? And why make a distinction on wheels? And if propulsion is the driver then I can see dealers suddenly selling you (proprietary) carriages and an added service of mountig an engine on them.
Soon enough you come to the point where absolutely everything needs to be open source. And while I would be happy to be part of that world, I don't really see a tangible way towards it. It just seems there is too much vested interest in defending the right for proprietary software.
The one avenue where there might be a sliver of hope for such an idea is maybe commercial aviation. That field is already overly regulated so it might be doable. There still will be a huge loophole in terms of military vehicles but it still seems vastly more rwalistic than forcing all car companies to opensource everything.
I really don't think the standard "safely ~hack~investigate~" is reasonable, for both practical and policy reasons.
By focusing on an imaginary perfect world, you take focus away from the real word, where we know people do unsafe hacks to their car already, even without touching software, like https://honda-tech.com/articles/crash-kills-man-in-home-buil... .
There is no way to prevent those unsafe hacks that wouldn't also prevent huge numbers of safe hacks which people accept and support as reasonable, and place a huge and undue amount of control into the auto manufacturer.
In the old days of Ma Bell, AT&T tried to prevent Hush-A-Phone from selling a mouthpiece cover designed to make it harder for others to overhear your conversation. AT&T argued that a foreign attachment like that could damage the phone network. A decade later AT&T sued Carterfone for selling an acoustic coupler to a radio, using the same justification of possible damage. AT&T lost both cases, and the latter case is why early personal computer modems were acoustically, not electrically, coupled.
We should not extend that same power to auto manufacturers.
> but problems arise with qualifying which "devices" this should apply to
Which is why this sort of legislation is done in steps. Focus on where it makes the most sense, get experience on how useful it is and what the negative consequences are, and use that experience to judge if anything else should be included.
That's why the Motor Vehicle Owners' Right to Repair Act (see https://en.wikipedia.org/wiki/Motor_Vehicle_Owners'_Right_to... focuses only on motor vehicles, and not the right to repair all machinery and devices.
I was more thinking in terms of:
1. Hacking something close source is inherently "unsafe" as you have to reverse engineer it, fuzz it or do something other that could randomly backfire. 2. Hacking something open source is safe(er) as in, you can see the code and the developers intent, maybe even some insightful commentary.
Also, there might be an argument about open source projects being more easy to replace pieces of as you typically can see the whole build stack.
Please remember that "open source" means access to the source code, plus the right to modify it, plus the right to redistribute it without requiring additional permissions from the copyright holders, plus no restrictions on who may use the software (other than those required by law).
You can have close source with access to the source (often called 'source available'), and even with the right to modify and use those modifications.
A license which is "for noncommercial use only" or "not for use by the military" is not open source, even if the source can otherwise be freely used, modified, and redistributed.
That said, having the source code in any form does not mean things are no longer 'inherently "unsafe"'.
Device drivers are notoriously finicky and depend, for example, on the precise timing of hardware vs. software. Reading the source, even with comments, may not be enough to assume modifications are safe, perhaps because it's obvious to an expert (which you are not) or because the original authors were not aware of the issue.
Nor does open source guarantee you can reproduce the build. The auto manufacturer may use a compiler with different behavior than your compilers. But hoseja called for open source, not reproducible builds of the open source software, so inherently accepts there will be some risks.
Certainly there's less risk with reproducible builds of the open source software, but as I said, these changes are best done in steps. There's no need for the huge step you want in your perfect world. Instead, mandate open source, get experience, and use that experience to guide future changes to public policy. That's how laws generally work.
Is it enough to say that the user gets a better chance to judge their impact compared to flipping random registers?
Why?
Same with aviation software.
Anything that deals with public safety should be audited by the public.
Whenever the output of software is offered as evidence against you in court, you should be entitled to the source code of the software.
Maybe it should be like Copyright or patents, you can keep things private for a while for an advantage, but then you would need to release all code as open source / public domain or similar? It should also be available before that to be reviewed by professionals following a formal process of some sort.
Yes.
I can't wait.
General folks and even most devs do not have the skills to audit code.
I think if you release code related to important everyday things like cars, everyone who is able will want to take a look. And you never know who will think outside the box and stumble across something they can then escalate and investigate with other people who are more capable. It happens in open source all the time.
> Everyone who is able will want to take a look.
This is not true. Auditing is very skill intensive and time intensive. There needs to be compensation for it either direct (you pay for professional auditors) or indirect (you're an academic and you get reputation and grants for breaking WPA3, SGX, Mega or SIKE, or fame for breaking the PS3).
You can easily get in a situation with "The Emperor has no clothes" where everyone thought open-source code must have been audited by someone because it's open, when in fact no one did because they didn't care or had no incentives.
The knowledge nowadays is spread.
In a library used on billions of devices.
What about projects used by 10~50 people?
I'm going to trust more a project peer reviewed by the best devs on the planets compared to some homebrew homemade software where the devs allegedly know better than everybody else (and they don't)
My argument is that open-source is not enough when high-assurance is needed and devs or end-user should still ask for a professional audits.
We're not in the 90s anymore and it's time to acknowledge that the software world and even the world in general has changed. Knowledge is now spread and the most knowledgeable devs aren't working at an audit firm and might not even hold a computer degree!
Peers aren't enough. Finding vulnerabilities require training and an adversarial mindset that is rare.
There is a reason why in cryptography people say "don't roll your own crypto"
Imagine people had the option when buying a car, truck or minivan of having it be open and tinkerable?
Most people won't care, but some hobbyists will. Some companies will love it, some startups might be founded for it. But eventually there will be a killer app, or huge benefit, and it will become more common until it is standard.
I'd imagine certain groups like farmers would jump on buying open source trucks, hoping they can get them to last longer, or repair them cheaper.
There are places for safe experimentation like tracks, so I don’t see why this fear isn’t irrational or a ploy for control.
[...]
> There are places for safe experimentation like tracks, so I don’t see why this fear isn’t irrational or a ploy for control.
I don't think many people track modded minivans. "No the Subaru WRX is my DD, my main track car is a Honda Odyssey"
People won't intentionally make their vehicles dangerous, but it's easier to make bad software than to completely bodge a physical repair using manufactured parts.
I don't know how vehicle software works, but hopefully they don't crash like consumer software. Someone here knows the answer -- is there like a supervisory manager/kernel that keeps all the subsystems running? And modular separation so that bad changes to the fuel injection system won't take out the fly-by-wire brakes?
As much as it would be nice for hobbyists, this is one can 2.0A of worms that needs to be kept as shut as possible by lawmakers.