CSC 589: Trusted Computing

A printable PDF is available.

COURSE TITLE:Special Topics: Trusted Computing
PREREQUISITE: A grade of C or better in CSC 330

FOR WHOM PLANNED: Elective course for upper-level undergraduate students or graduate students.
Office: Petty 166
Office Hours: Mon/Tues 1:30-3:30, or by appointment
Phone: 336-256-1033

BRIEF DESCRIPTION: Introduction to trusted computing concepts with an emphasis on practical programming exercises. Graduate students (registered for CSC 680) will also gain experience with current research in trusted computing.

STUDENT LEARNING OUTCOMES: Upon successful completion of this course students will be able to

  • explain concepts of trusted computing, including variations created by the Trusted Computing Group, Microsoft, and Intel;
  • perform key management and other tasks using a TPM;
  • apply trusted computing concepts to design simple applications;
  • evaluate trusted computing solutions to security problems;
  • For Graduate Students: discuss current research issues in trusted computing.

TEACHING METHODS AND ASSIGNMENTS FOR ACHIEVING LEARNING OUTCOMES: This class is organized around standard 75-minute lectures, with students responsible for completing assigned readings before class. Assignments will require students to apply and reflect upon covered concepts -- the majority of assignments will be programming exercises, but some written exercises will be required so students reflect on what they have learned. Graduate students registered in CSC 680 will also be given 4-5 research papers during the semester, which they are responsible for reading and writing short summaries about. Graduate students are expected to be able to understand and concisely pull out the "key ideas" from these research papers, and will give brief presentations to the class so that undergraduates are also exposed to current research.

There will be a midterm exam which covers fundamental trusted computing concepts. There will be a final exam for undergraduates, but undergraduates have the option of doing an individual project in lieu of the exam. Graduate students will not have a final exam, but each graduate student must do a research project in which they explore an area of research (and a minimum of three research papers) and write a report of approximately 10 pages summarizing research in that area.

EVALUATION AND GRADING: Each student activity will contribute to the final grade in the class according to the following percentages.

Undergraduates (CSC 495)
Assignments 55%
Midterm Exam 20%
Final Exam or Project 25%
Graduate students (CSC 680)
Assignments 40%
Midterm Exam 20%
Research Readings and Reports 15%
Final Research Project 25%

ACADEMIC INTEGRITY POLICY: Students are expected to abide by the UNCG Academic Integrity Policy, which is online at

Graduate students will be reviewing and summarizing current research throughout the course. Issues of scientific attribution and plagiarism will be discussed in class and students are expected to follow appropriate practices in this regard.

Students are required to sign the Academic Integrity Pledge on any work they do. The pledge is the statement "I have abided by the UNCG Academic Integrity Policy on this assignment."

ATTENDANCE POLICY: Attendance will not be taken in class, and is voluntary; however, all students are responsible for everything done or said in class (this can include changes in assignments, due dates, etc.). The university allows for a limited number of excused absences for religious observances -- students who plan to take such an absence should notify the instructor at least two weeks in advance so that accommodations can be made (also see the late work policy at the end of this syllabus). It is the student's responsibility to obtain notes from another student if they miss class.

REQUIRED TEXTS/READING/REFERENCES: The following book is required, and covers the basics of trusted computing and some applications:

  • D. Challener, K. Yoder, R. Catherman, D. Safford, and L. van Doorn. A Practical Guide to Trusted Computing, IBM Press, 2008.
Additional readings will be distributed in class.

TOPICS: The following is a rough outline of topics covered in this class, where the numbers in parentheses indicate the approximate number of 75-minute lectures devoted to this topic. As this is the first time this course has been offered, the schedule is flexible and may be adjusted based on class progress and student interest.
Topic Textbook Reading
Course overview and syllabus review (1)
Computer security - an overview of current challenges (1) Chapter 1
Cryptography basics (2)
Trusted computing concepts (2) Chapters 2-3
Low-level programming interface (1) Chapters 4-5
Trusted Boot (2) Chapter 6
The Trusted Software Stack (2) Chapter 7
TPM Keys (2) Chapters 8-9
App 1: Secure Storage (2) Chapter 12
App 2: Secure identification (2) Chapter 13
Administration of Trusted Devices (1) Chapter 14
Privacy and Direct Anonymous Attestation (1)
Virtualization and Trusted Computing (2)
Advanced topics - chosen based on class interest (5)
Class review (1)

The midterm will be scheduled after all fundamental material has been covered (roughly Chapters 1-9 in the book), and the date will be announced in class at least two weeks before the midterm.

FINAL EXAMINATION: As described above, undergraduate students have the option of either taking a final exam or completing a final project, and graduate students will complete a research project. Undergraduates opting for the final exam will take the exam at the regularly scheduled exam time, and students doing projects must turn in their final project by the beginning of the final exam time.

Final exam/projects due: Friday, December 10, 7:00 PM


Laptop/Cellphone Policy: Laptops can be both a benefit and a distraction in a classroom. While many students benefit from taking notes using a laptop, or having access to outside class-related resources during class, other students cannot resist the temptation of checking e-mail, chatting, or even playing games during class time. This class has a strict "no non-class related use" rule for laptops -- if you are found violating this policy, then your in-class laptop privileges will be taken away. Cellphones are a distraction for everyone, and should be turned off during class. If there is a special situation where you need to have your phone on for a particular day, please let the instructor know the situation before class.

Late Policy and Makeup Exams: Assignments are due at the beginning of class on the due date, and may be turned in up to 7 calendars days late with a 25% late penalty. Students with planned absences, whether for university events, religious observance, or other reason, are expected to make arrangements with the instructor to turn in assignments or take exams before the scheduled date of the assignment or test. No assignment will be accepted more than 7 calendar days after the original due date!

The mid-term can be made up only if it was missed due to a significant emergency, and arrangements must be made before the scheduled midterm. The final exam or project paper is due at the university-scheduled final exam date and time, and will not be accepted late.

ADA STATEMENT: UNCG seeks to comply fully with the Americans with Disabilities Act (ADA). Students requesting accommodations based on a disability must be registered with the Office of Disability Services located in 215 Elliott University Center: (336) 334-5440.