How can software resist attacks and malicious use ? This is the general problem of software security, and a vast one at that, since security flaws are so many and varied, from user manipulation to the observation and disruption of computer circuitry, to the clever exploitation of " bugs " in software code.
The lecture approached this software security issue from the angle of programming languages and their typing, static analysis and deductive verification techniques. This approach is known as language-based security in the literature. The lecture aimed to characterize the contribution of this approach to computer security, as well as its limitations. To this end, we have described a number of software security problems and the conventional safeguards against them, and compared these with the guarantees that can be achieved by the language-based security approach.