The problem with bad software isn't that it gets made. It will get made, and no matter how easy we make the tools for specification and testing of software, there will be people who use unsafe production methods to make unreliable and exploitable software. However, I would hope that a secure system can exist. In the same vein as modern cryptography, I acknowledge that perfect security in the general case is unlikely, but suggest that strong security-- in some specific, provable sense-- can exist in the software systems that humans subject themselves to.
My main goals:
- make the economic benefits of releasing exploitable software less than the costs of producing good software.
- minimize the effects of unavoidable exploits, eliminate avoidable exploits, provide tools for realizing these goals in software production systems.
- make more accessible tools which can formally exclude the possibility of certain classes of exploits existing.
- spread more knowledge about safe software practices to those who make software