Language-based security - COMP6640

Looking for a different module?

Module delivery information

Location Term Level1 Credits (ECTS)2 Current Convenor3 2024 to 2025
Autumn Term 6 15 (7.5) David Castro-Perez checkmark-circle


The module focuses on teaching the foundations of language-based security including but not limited to the use of formal logics, type systems, process calculi and proof carrying code for reasoning about the security properties of programs.


Contact hours

Total contact hours: 30
Private study hours: 120
Total study hours: 150

Method of assessment

Main assessment methods;
4 practical assessments (4 x 15%)
Class presentation (25%)
Written reports (15%)

Indicative reading

Benjamin C. Pierce. Types and Programming Languages. MIT Press, 2002.
Glynn Winskel. The Formal Semantics of Programming Languages. MIT Press, 1993.
Nigel smart. Cryptography made simple. Springer, 2016.
Matt Bishop. Computer Security: Art and Science. Addison-Wesley, 2003.

Learning outcomes

On successfully completing the module students will be able to:
1. demonstrate systematic understanding of the logical principles and techniques used for analysing the security properties of programs
2. critically evaluate technical papers on the topic of the module;
3. evaluate how tools and techniques are helpful for software and protocol analysis;
4. understand how security vulnerabilities in software can be exploited.


  1. Credit level 6. Higher level module usually taken in Stage 3 of an undergraduate degree.
  2. ECTS credits are recognised throughout the EU and allow you to transfer credit easily from one university to another.
  3. The named convenor is the convenor for the current academic session.
Back to top

University of Kent makes every effort to ensure that module information is accurate for the relevant academic session and to provide educational services as described. However, courses, services and other matters may be subject to change. Please read our full disclaimer.