Futures

Complexity and Insecurity in Computer Systems, from (20220828.)

External link

Summary

Computer systems are complex and insecure due to the multiple layers involved in their functioning. These layers include the application software, user interface, operating system, firmware, and microcode. The presence of these layers makes it difficult to determine if a system has been compromised by malware, as any layer can be hacked and substitute fraudulent software. The complexity of computer systems is driven by the increasing number of transistors in CPUs and the anomaly of cheap complexity. Universal computation and Moore’s law contribute to the prevalence of complex general-purpose CPUs and software. However, this complexity leads to insecurity, as simpler and more secure devices are costly to build. The need for trust in CPU vendors and concerns about remote-management infrastructures further highlight the challenges of computer system security. Despite the inherent insecurity of voting machines, optical-scan machines are recommended for counting paper ballots, with risk-limiting audits as a measure to protect against hacking.

Keywords

Themes

Signals

Signal Change 10y horizon Driving force
Computer systems are complex and insecure Complexity and insecurity Increased security and simplicity Controlling complexity and improving security
CPU contains more transistors, peripherals more complicated Increasing complexity More cost-effective to simulate simplicity Economies of scale and Moore’s Law
General-purpose operating systems are free, custom-designed OS expensive Cost-effective complexity More expensive, custom-designed, secure OS Universal computation and cost-effectiveness
Hardware supply-chain issues and lack of control Lack of control and security Establishing control and trust Possession and control decoupling
Optical-scan voting machines for accuracy, risk-limiting audits for protection Ensuring accuracy and protection Continued use with added safeguards Consensus of election-security experts
Kill-switches on high-end processors for added security Added security with kill-switches Authenticating chips and controlling access Eric Schmidt’s suggestion

Closest