3 ms·
Number 1 is the scale of the problem. Voting software needs to solve adversarial distributed trust across hundreds of thousands of polling stations. That's way
by dTal 8y ago
Number 1 is the scale of the problem.
Voting software needs to solve adversarial distributed trust across hundreds of thousands of polling stations. That's way harder than distributing control across three cooperating, redundant avionics packages. Really, it's an unsolved problem in computer science, but that doesn't stop people from selling solutions...
Number 2 is the cost of failure.
The worst case scenario for avionics software is a plane crashes and everyone on the plane very publicly dies. An engineer is unlikely to be motivated to cause this on purpose, and if they do then everyone knows about it immediately.
The worst case scenario for voting software is a single engineer gets control over the political direction of the entire country, and nobody notices, ever. There's a ton of motivation to do this.
- irundebian 8y agoThat doesn't make much sense to me. The engineer is the guy who builds the system. In both cases he is interested to not being a flawed system (crash caused, voting system compromised). I think it's better described if we distinguish between functional safety and security. While the avionics software engineer is interested in functional safety and must mostly not be afraid of smart attacks, the voting software developer (or software developers in general) must mostly expect that his system gets attacked by smart attackers. Although you can do distinguish between both, it's kinda sounds like a lame excuse for me. I think the real reason is, that computer scientist still suck at building correct and secure systems. There is not that amount of funding in computer security research as it should be (like in functional safety).