Preparation

Trustworthiness

  • Reflections on Trusting Trust, by Ken Thompson (3 pages)

    • Presents the perils of trusting software.

  • Putting Trust in Security Engineering, by Fred B. Schneider (3 pages)

    • Software should not only be secure. We should also have a reason to believe that the software is secure, before we can depend on it and use it. This piece proposes formal methods (FM) & programming language technology (PLT) as a means of establishing security & trustworthiness in software.

Language-Based Security (LBS)

  • A Language-Based Approach to Security, by Schneider, Morrisett, & Harper (14 pages)

    • Presents ways in which a software vendor can transfer trust in the correctness of the software they wrote, to a software consumer.

Information-Flow Control (IFC: enforcing app-specific security goals)

Lecture

Exercise

Further Reading

Acknowledgment

Most of the slides on information-flow control are made by David Sands and Andrei Sabelfeld, from Marktoberdorf 2015 and 2011. Most of the slides on Paragon are by Niclas Broberg and Bart van Delft.