Computing systems have become ubiquitous and critical to modern business, government, military, and life. These systems are becoming wickedly complex, including monstrous amounts of poorly-understood interacting subsystems, each with their own daunting amounts of software, firmware, and/or hardware. As we trust such systems with our secrets, our money, and our lives, how can we increase our assurance that these systems will do what they are designed to do, and do nothing else malicious? Can we trust the autopilot in the airplane you hope to get on someday Can we trust the self-driving car you hope to get in someday? Can we trust the medical device you hope to wear or implant someday? Can we trust the financial systems you hope to have substantial money in someday? Good news: there are paths toward such trustworthy systems. We will discuss some of these paths forward, including how one can build trustworthy systems from untrustworthy components.
Patrick Lincoln is Vice President and Director at SRI (formerly Stanford Research Institute). He earned a Ph.D. in computer science from Stanford University and a B.Sc. in computer science from MIT. He has previously held positions at MCC, Los Alamos National Laboratory, and ETA Systems. He leads research in the fields of formal methods, computer security and privacy, scalable distributed systems, and computational biology. He has published dozens of influential papers, holds several patents, and has served on scientific advisory boards for private and publicly held companies, nonprofits, and government agencies and departments.