Programming Projects Fall 2023

There will be four projects during the semester. Unless approved by the instruction team, you may work with one other student. Each student must turn in their own solution. Each student’s submission will be graded independently. (This is a change from the policy in past semesters.) Some parts of each assignment are student-specific, and your partner’s solution will likely not work for your problem instance. You may consult general reference material, but you may not collaborate outside your team. The material you turn in must be entirely your team’s work. Please start early.

AppSec Project instructions and files

  • Checkpoint 1 due Thursday, September 7 at 6pm US Central time
  • Checkpoint 2 due Thursday, September 14 at 6pm US Central time

WebSec Project instructions

  • Checkpoint 1 due Thursday, September 28 at 6pm US Central time
  • Checkpoint 2 due Thursday, October 5 at 6pm US Central time

Crypto Project instructions and moduli.hex

  • Checkpoint 1 due Thursday, October 26 at 6pm US Central time
  • Checkpoint 2 due Thursday, November 2 at 6pm US Central time

NetSec Project instructions

  • Checkpoint 1 due Thursday, November 16 at 6pm US Central time
  • Checkpoint 2 due Thursday, November 30 at 6pm US Central time

VM image: You will need to use the following VM image for the AppSec, WebSec, and NetSec projects. If you have not used your University of Illinois Box account before, you will first need to click “Sign Up” on to enable your box account. The user name for the VM is student and the password is changeme.
GitHub Signup: You will submit all your assignments in a repository created on To create a Github repository for this course, please follow the instructions given by You will need to create a account if you don't have one.
Lateness: Assigned work is due at the dates and times listed above. You have one 24-hour extension for each checkpoint. You do not need to request the extension; it is applied automatically if your assignment is late.

Collaboration: Violations of Illinois' Standards of Academic Integrity, such as cheating or unacceptable collaboration, will result in appropriate disciplinary action such as a failing grade on the assignment, failure in the course, probation, suspension, or dismissal from the University. Cheating is when you copy, with or without modification, someone else’s work that is not meant to be publicly accessible. Unacceptable collaboration is the knowing exposure of your own exam answers, project solutions, or homework solutions, or the use of someone else’s answers or solutions.

At the same time, we encourage students to help each other learn the course material. As in most courses, there is a boundary separating these two situations. You may give or receive help on any of the concepts covered in lecture. You are allowed to consult with other students about the conceptualization of a project, or the general approach for solving problems. However, all work, whether in scrap or final form, must be done by you (or your project partners where applicable).

If you have any questions as to what constitutes unacceptable collaboration or exploitation of prior work, please talk to an instructor right away. You are expected to exercise reasonable precautions in protecting your own work.