EECS 765, Spring 2026

Introduction to Cryptography and Computer Security


Course Goals

The overall goal of the course is to provide a solid theoretical foundation and hands-on experience in applying the theory to practice for cryptography, computer and communication security. The course materials cover common attack techniques, application of cryptography in security, authentication and authorization, network security, enterprise network defense, web security, and economics of cybersecurity. Besides the mechanisms for enhancing security that will be taught, a significant part of the course is dedicated to discussions on how design flaws in a system can be exploited to compromise security and, in general, the circumstances that lead to things going wrong. Students will have the opportunity to work on course projects that cover both the defense and offense aspects in the cyber space. Interesting research topics may be derived from course projects.

Course Schedule

Updated on a regular basis. Use your KU Online ID (all numeric is not correct) and password to access the slides and other materials.

Jan 20, 2026
on-campus
Lecture 1

Introduction

Supplemental readings:
  • (Optional) Textbook: M. Bishop. 2019. Computer Security, 2nd Edition - Chapter 1
video, slides
Jan 22, 2026
on-campus
Lecture 2

Buffer Overflow Exploit
The source code getscore.c The sample score file score.txt
Supporting older ciphers, key exchange protocols, and MACs on newer SSH clients.
Virtual machine used in the demonstration redhat8.

Supplemental readings:
video, slides
Jan 27, 2026
on-campus
Lecture 3

Buffer Overflow Exploit (continued)

Supplemental readings:
video
Jan 29, 2026
on-campus
Programming Assignment 1 (Lecture 4)

Remote Buffer Overflow Attack

If you choose to use a host in 2003 Eaton for PA1, please see Using Clonezilla
(Contact Bryan if you need help with setting up your PA1 environment)

pa1, video
Feb 3, 2026
online
Lecture 5

Mitigation of Buffer Overflow Exploits

Due to a technical glitch, the video has no sound.

video, slides
Feb 5, 2026
on-campus
Lecture 6

Mitigation of Buffer Overflow Exploits (continued)

Reading Assignment Presentations
Reading Assignment Evaluation Sheet

Reading assignment 1 (Presentation 1, Presentation 2, Presentation 3): The Geometry of Innocent Flesh on the Bone: Return-into-libc without Function Calls (on the x86).

Reading Assignment 2 (Presentation 4, Presentation 5, Presentation 6): Hacking Blind.

Supplemental readings:
video, slides
Feb 10, 2026
on-campus
Lecture 7

Basic Cryptography

Reading assignment 3 (Presentation 7, Presentation 8, Presentation 9): Framing Signals - A Return to Portable Shellcode.

Reading Assignment 4 (Presentation 10, Presentation 11, Presentation 12): ASLR-Guard: Stopping Address Space Leakage for Code Reuse Attacks.

Supplemental readings:
  • (Optional) Textbook: M. Bishop. 2019. Computer Security, 2nd Edition - Chapter 10
video, slides
Feb 12, 2026
on-campus
Lecture 8

Authentication and Authorization

Supplemental readings:
  • (Optional) Textbook: M. Bishop. 2019. Computer Security, 2nd Edition - Chapter 13
video, slides
Feb 17, 2026
on-campus
Programming Assignment 2 (Lecture 9)

Windows Remote Buffer Overflow Attack

Reading assignment 5 (Presentation 13, Presentation 14, Presentation 15): Modeling and Discovering Vulnerabilities with Code Property Graphs.

Reading Assignment 6 (Presentation 16, Presentation 17, Presentation 18): How to Make ASLR Win the Clone Wars: Runtime Re-Randomization.

Reading Assignment 7 (Presentation 19, Presentation 20, Presentation 21): Shuffler: fast and deployable continuous code re-randomization.

pa2, video, slides
Feb 19, 2026
on-campus
Lecture 10

Practical Authentication Protocols
Updated information about the "Reading Assignment Presentations" (see slides)

Supplemental readings:
video, slides
Feb 24, 2026
on-campus
Lecture 11

Man-in-the-Middle Attacks

Reading assignment 8 (Presentation 22, Presentation 23, Presentation 24, and Presentation 25): FuzziFication: Anti-Fuzzing Techniques

video, slides
Feb 26, 2026
on-campus
Homework 1
(Lecture 12)

Authentication in a Distributed Environment (Kerberos)

Supplemental readings:
hw1, video, slides
Mar 3, 2026
on-campus
Presentations
(Lecture 13)

Reading Assignment Presentations:

Reading Assignment 1 (Presentation 1, Presentation 2, Presentation 3)

Reading Assignment 2 (Presentation 4, Presentation 5, Presentation 6)

Mar 5, 2026
on-campus
Presentations
(Lecture 14)

Reading Assignment Presentations:

Reading Assignment 3 ( Presentation 7, Presentation 8, Presentation 9)

Reading Assignment 4 ( Presentation 10, Presentation 11, Presentation 12)

Mar 10, 2026
on-campus
Final Report
(Lecture 15)

Public-Key Infrastructure (PKI)

Final Report - Requirements, Guidelines, and Example Topics
Report Topics Due: March 26, 2026
Final Report Due: May 7, 2026

Supplemental readings:
video, slides
Mar 12, 2026
on-campus
Lecture 16

Introduction to Network Security

Supplemental readings:
video, slides
Mar 16-20, 2026 Spring Break
(No Lectures)
Enjoy the break!

Instructor and Course Meeting Times

Lectures Tuesday & Thursday 11:00am - 12:15pm, 2003 Eaton Hall
Instructor Alex Bardas
Office Hours: Tuesday and Thursday 12:30pm - 1:30pm in 2040 Eaton Hall
(Email appointment is needed to schedule a meeting over Zoom)
: alexbardas ku edu
Graduate Teaching Assistant Bryan Richlinski
Office Hours: Wednesday 9:30am - 10:30am and Friday 12pm - 1pm in 2003 Eaton Hall
(Email appointment is needed to schedule a meeting over Zoom)
: b748r023 ku edu

Syllabus

The syllabus is available through Simple Syllabus: EECS 765 Syllabus (Spring 2026). Check the syllabus frequently since its content is subject to change throughout the semester.
Announcements: You are responsible for all announcements we make during the lectures, over Canvas, and/or email. Announcements may include information about assignments, changes in the syllabus, etc.

Acknowledgments

The course materials are adapted from a previous version of the course taught by Xinming (Simon) Ou together with Xiaolong (Daniel) Wang. Some additional materials are adapted from the BlackHat Exploit Laboratory (thanks to Saumil Shah and S.K. Chong who kindly permit the use of their materials).