Course Description
This course provides students with a basic appreciation and understanding of the core concepts of information security. Topics to be covered include concepts for confidentiality, integrity and availability; introduction to cybercrimes and security issues; threats to information systems and devices; cryptographic primitives such as symmetric and asymmetric cryptography; core problems such as random number generation, entropy, and key distribution; and common topics such as security protocols and public‐key infrastructures.
Co-requisite
50.005 Computer System Engineering or equivalent background with strong programming skills
Learning Objectives
- List basic security solutions and models; explain concepts for confidentiality, integrity and availability.
- Apply protocols used for key establishment, encryption, and authentication to secure a system.
- Apply known attacks to vulnerable cryptographic primitives.
- Model, analyse, and apply cryptographic primitives used for encryption, secure hashing, and digital signatures.
- Evaluate the security of existing system designs respect to different attacker models.
Measurable Outcomes
- Evaluate security models like CIA model (confidentiality, integrity, availability) by defining and assessing security level for an existing system in a design project
- Perform attacks related to block ciphers in Electronic‐Codebook mode, through successful retrieval of partial or full information related to the plaintext or key used, and
show the outcome of the attacks. - Implement a scheme for pre‐image recovery of hashes through brute force and hybrid attacks for hash related password authentication systems.
- Apply substitution ciphers, One‐time‐pads, and AES in real‐life applications to prevent sensitive data exposure and thus preserve the confidentiality of secret data.
- Analyse network logs , based on that, implement potential attacks on schemes for encryption, authentication, key establishment and digital signatures, through a challenge design and solving project.
Topics Covered
- Introduction
- Hash Functions
- Password and Rainbow Tables
- Applications for Hashing
- Block Ciphers
- Modular Arithmetics
- Key Establishment
- Public Key Crypto
- Digital Signatures
- Security Protocols
- Side Channel Attacks
- Security Policy
- Information Flow
- Distributed Systems
Textbook(s) and/or Other Required Material
- The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography
- Understanding Cryptography: a Textbook for Students and Practitioners;
- Cryptography engineering