**This is an old revision of the document!**


Fred Clift
Office: 2258 TMCB
Office Hours: by appointment
Email: fred AT clift.org
phone: 801-376-0305 (text preferred)


Location: 1154 TMCB.

Please check our hours for any changes before coming in.

Monday Tuesday Wednesday Thursday Friday
8AM Steven Nate Steven Nate Steven
9AM Nate Nate Steven
10AM Nate Nate
11AM Nate, Nate, Nate
12PM Steven(12:30) Nate Steven(12:30) Nate Steven, Nate
1PM Steven Steven Steven
2PM Steven Steven Steven
4PM Steven (4:30) Steven
5PM Steven Steven
6PM Steven Steven

Email: cs465ta@cs.byu.edu

Discussion Group


We sent everyone an invitation to join the google group. If you haven't received an invitation, send us email requesting to be added. Please include your name in your request.


Section 001: TTh 3:00 ~ 4:15 pm, 271 RB


This course will cover fundamental principles of computer security. The course consists of two parts:

  • Part 1: Applied Cryptography - We will study and experiment with basic cryptographic primitives (symmetric encryption, asymmetric encryption, MAC, and cryptographic hash functions). We will learn how these primitives are used to achieve certain security properties. We will then study real-world protocols like HTTPS and secure email to see how these primitives are used in real systems.
  • Part 2: Software Security - We will learn about some of the most common errors that software developers make that attackers then exploit. We will learn how to avoid or prevent these mistakes.


CS 360 (concurrent) or Instructor Consent

Classroom Procedures

Student learning activities consist of exams, homework, and hands-on programming projects.


Each week that a project is assigned, it is due before midnight on Friday. Students are encouraged to meet project deadlines. I want to see all students complete every lab by the end of the semester. As an incentive to help you stay current, late days and early days (maximum of 5) for each project will be recorded (weekends and university holidays excluded). A total of five (5) free early days for the semester will be given. At the end of the semester, you will receive a penalty if your late day balance exceeds your early day balance. Your overall project points may be penalized up to 2% for each late day on your final balance. If all projects are completed, the penalty for late days will be capped at 10% so that your grade is reduced by a maximum of one letter grade.

Project Pass-off Policies

  • Projects may be written in the language of your choice unless instructed otherwise.
  • Projects must be passed off by the TA in person, unless instructed otherwise.
  • You may pass off a project after the deadline for full credit, and without using late days, provided you email a SHA-1 checksum of all files associated with your project to the TA before the deadline. You can generate the checksum again at passoff to convince the TA that your assignment was completed on time. You can generate a checksum on linux using openssl (e.g., >openssl dgst -sha1 <filename> ). Search online for how to do this on other systems.


Homework is due on Tuesday at the beginning of class. Submit it online in LearningSuite before it is due.
Submitted homework must be one of the following file types: .doc .docx .pdf .txt - Don't make us have to work hard
to read your assignments. Code can be submitted as .zip or .tar.gz

Grading: Each homework is worth 25 points

Late Homework Policy:

  • Submitted by the following class period after it is due: max 15 pts
  • Submitted by the next exam: max 10 pts

Study Habits

Successful students attend class regularly and complete assignments on time. Students are encouraged to work together in groups to discuss topics and assignments. A good rule of thumb is that only your hands should be on the keyboard when you are entering your solution. Do not share your work with any other students in the class or with students in a future class.

Learning Outcomes

1) Build a system: Implement a cryptographic algorithm from a standards specification.
2) Break and fix a system: Demonstrate how attackers compromise real-world systems, and then show how to prevent these attacks.

Grading Scale

A 93-100 B- 80-82 D+ 67-69
A- 90-92 C+ 77-79 D 63-66
B+ 87-89 C 73-76 D- 60-62
B 83-86 C- 70-72 E 59 and lower

cs-465/course-information.1492018152.txt.gz · Last modified: 2017/04/12 11:29 by fred
Back to top
CC Attribution-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0