CS 181S discusses security for computers and networked information systems.
It focuses on principles and techniques for implementing secure
systems. It is designed to give students practice
reasoning about and designing secure systems as well as practical experience
with building and securing a software system.
Prerequisites: For CS 181S, you need to have a broad understanding of
organization and programming of computer systems. Students who have taken a
systems course, such as Pomona's or Harvey Mudd's CS 105 and their
transitive prerequisites, should be well positioned to take CS 181S. Knowledge
of operating systems, computer networks, and/or cryptography will be helpful.
Assignments might require the use of standard tools and languages such as C, Java,
Unix, web servers, etc. You either need to be familiar with these technologies
or to be committed to investing extra time to learn them as you go.
Lectures take place on Mondays and Wednesdays 1:15-2:30pm in a room TBA. See the schedule for details.
Eleanor Birrell eleanor.birrell@pomona.edu Edmunds 221 |
Office hours: Monday 4:30-6pm and Tuesdays 7-9pm
The best way to contact me is by email or on slack. I try to respond to all messages within 24 hours. |
There will be 8 homework assignments in CS 181S; these will be a
mix between theoretical assignments and programming assignments.
Note that assignments
in this course are often deliberately underspecified, open-ended,
and motivated by problems that arise in the real world—messy as it
is. You will have to think on your own, build tools, refine problem
specifications, make reasonable and defensible assumptions, and be
creative. Success in this course, as in life, depends heavily on you
figuring out what's important and concentrating on that.
You get eight late days that may be used at your discretion to
submit assignments after the deadline with no penalty. For
assignments that are completed in pairs, both you and your partner
must spend a late day. Further extensions after you have exhausted
all of your late days will be granted only in exceptional
circumstances.
There will be a semester-long project in this course, with various checkpoints during the sememster. See the project page for details. Late days may not be used on project milestones.
I expect the breakdown for the overall course grade in CS 181S to
be as follows:
Homework Assignments: 40%
Course Project: 50%
Participation: 10%
In general, collaboration is encouraged in this course. In addition
to working with others on pair and group assignments, you may discuss
approaches to solving problems with anyone in this class, including
me. As specified in the department policy, you may help, or receive
help, in using systems and tools, in debuggin code, and in woring
with high-level design issues. However, using material from any
external source---web pages, people, or books---is forbidden unless
explicitly specified otherwise. Except for material from the textbook
or the course website, you may not copy, retype, or share a copy of
any file. If you have questions about what constitutes appropriate or
inappropriate collaboration, please speak with me. When in doubt,
credit your sources.
Course materials provided to you, including graded assignments, are
for your use in this course. You should not publish solutions to the
homework assignments or distribute them to other people or
organizations.
I am committed to ensuring that everyone can successfully master the material in this course. If you have a disability (for example, mental health, learning, chronic health, physical, neurological, etc.) and expect barriers related to this course, it is important to request accommodations and establish a plan. I am happy to help you work through the process, and I encourage you to contact the Student Disability Resource Center (SDRC) as soon as possible. I also encourage you to reach out to the SDRC if you are at all interested in having a conversation. (Upwards of 20% of students have reported a disability.)