Introduction to Computer Security Spring 2022
This course teaches the security mindset and introduces the principles and practices of computer security as applied to software, host systems, and networks. It covers the foundations of building, using, and managing secure systems. Topics include standard cryptographic functions and protocols, threats and defenses for real-world systems, incident response, and computer forensics. See the schedule for details.
Professor | |
TA |
![]() Carson Hoffman |
Lectures |
Mon./Tue./Wed./Thu. 10:30–12:00, 107 GFL
You can also join lecture via Zoom.
|
Labs & Office Hours |
See calendar below. Lab sections will introduce tools and techniques that are important for completing the projects. Visit any professor’s office hours for help with concepts and lecture content. Visit any TA’s office hours for project help or grading concerns. |
Communication | We'll use Piazza for announcements, discussion, and questions about assignments and other course material. Assignments will be submitted electronically, and grades will be returned via Canvas. For administrative issues, email eecs388-staff@umich.edu. |
Reference Books |
No textbook is required, but if you would like additional references, we recommend:
Security Engineering by Ross AndersonCryptography Engineering by Ferguson, Schneier, and Kohno |
Resources |
Security Research at Michigan Security Reading Group (SECRIT) EECS 588 (graduate-level security class) |
Prerequisites | EECS 281 required; EECS 201 and EECS 370 recommended |
Calendar | The course calendar is displayed below. All listed times are U.S. Eastern. You can also add the class to your personal Google Calendar. |
Grading
We'll calculate your course grade based on these components:
Projects | 60% | Five projects |
Labs | 5% | Periodic lab assignments to help build familiarity with tools and languages |
Participation | 5% | Questions and intellectual contributions during class and on Piazza |
Final Exam | 30% | One exam covering all material from the course (June 23, 4–6 p.m.) |
Ethics, Law, and University Policies
Warning To defend a system you need to be able to think like an attacker, and that includes understanding techniques that can be used to compromise security. However, using those techniques in the real world may violate the law or the university’s rules, and it may be unethical. Under some circumstances, even probing for weaknesses may result in severe penalties, up to and including expulsion, civil fines, and jail time. Our policy in EECS 388 is that you must not attempt to probe or attack any system without prior explicit permission from the owner, and you must not use attack techniques to violate anyone's privacy; violation of this policy will result in a failing grade for the term.
Acting lawfully and ethically is your responsibility. Carefully read the Computer Fraud and Abuse Act (CFAA), a federal statute that broadly criminalizes computer intrusion. This is one of several laws that govern “hacking.” It is your responsibility to understand what applicable law prohibits. If in doubt, we can refer you to an attorney.
Please review the university’s policy on Responsible Use of Information Resources for guidelines concerning proper use of information technology at U‑M, as well as the Engineering Honor Code. As members of the university, you are required to abide by these policies.
Audio/Video Recordings
Lectures and labs will be recorded and made available to all course participants. If you do not wish to be recorded, please contact the course staff at eecs388-staff@umich.edu prior to the first class to discuss alternative arrangements. Students may not make or distribute any recording of class activity without prior written permission from the instructors.