Undergraduate Course: Computer Security (INFR10058)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 10 (Year 3 Undergraduate)
||Availability||Available to all students
|Summary||***PLEASE NOTE: This course has been replaced by a 20 credit version - INFR10067 Computer Security, please see the entry for that course.***
Computer Security is concerned with the protection of computer systems and their data from threats which may compromise integrity, availability, or confidentiality; the focus is on threats of a malicious nature rather than accidental. This course aims to give a broad understanding of computer security. Topics include security risks, attacks, prevention and defence methods; techniques for writing secure programs; an overview of the foundations for cryptography, security protocols and access control models.
* Introduction and background. Risks and attacks: to privacy (theft, surveillance); integrity (fraud); availability (vandalism, denial of service). Additional security properties: authentication, accountability.
* Cryptography: basic functional foundations. Symmetric algorithms, for example: DES, Rijndael, RC4
* Public key cryptography. Algorithms including RSA, ElGamal. Hash functions, including SHA-1. Digital signatures and certificates.
* Authentication: mechanisms and attacks. Protocols for authentication and key exchange, including Needham-Schroeder, Otway-Rees, Kerberos, Diffie-Hellman.
* Formal approaches, including Burrows-Abadi-Needham logic for authentication and its application to security protocol analysis.
* Malicious code and network defences: Trojan horses, viruses and worms, attacks on faulty code. Auditing, intrusion detection, alarms and honey pots.
* Security engineering: security policy models, multi-level systems. Secure kernels and trusted computing bases. Anatomy of attacks, risk assessment, attack trees.
* Present internet technologies, for example: PGP, SSL, SSH, SMIME, DNSSEC, IPsec, firewalls and VPNs. The Java Security Model and security programming in Java.
* Copyright protection. Secure hardware and tamper resistance. Steganography and covert communication. Anonymity.
* Security futures, real-world issues. Topics chosen from: web security, e-commerce and e-cash; legalities; export control, key escrow; information warfare and cyber terrorism; human factors. Recent research areas.
Relevant QAA Computing Curriculum Sections: Security and Privacy
Entry Requirements (not applicable to Visiting Students)
||Other requirements|| This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser (lecturer).
For some parts of the course, good mathematical ability and basic understanding of logic (predicate calculus) are highly desirable. An ability to program in Java may be assumed for practical exercises.
Information for Visiting Students
|High Demand Course?
Course Delivery Information
|Not being delivered|
On completion of this course, the student will be able to:
- Recognise the security threats against computer systems, and have at least a high-level idea of the ways to address them.
- Apply techniques and design principles underlying security solutions, including aspects of cryptography and security protocols.
- Be able to analyse simple security protocols using a formal method.
- Be able to use the World Wide Web to research the latest security alerts and information.
|* Ross Anderson, 'Security Engineering', 2nd Edition, John Wiley & Sons, 2008|
* Dieter Gollman, 'Computer Security', John Wiley & Sons, 1999
* Nigel Smart, 'Cryptography: An Introduction', McGraw-Hill, 2003
|Course organiser||Dr Myrto Arapinis
Tel: (0131 6)50 9981
|Course secretary||Mrs Victoria Swann
Tel: (0131 6)51 7607