Cryptography is a foundational tool that is
used everyday to maintain the security and correctness of
information on computing systems and networks.
While it has historically been developed using
ad-hoc tools and artistry, modern cryptography
has developed into a rigorous theoretical discipline
to provide strong guarantees of security in computer
This is a senior-level undergraduate and graduate-level
introduction to modern cryptography.
We will take a formal approach to applying
theoretical primitives such as pseudorandom functions,
trapdoor functions, and cryptographic hashes to
build provably secure encryption, digital signature,
and integrity verification constructions. Upon
completing this course, students will have a
foundational understanding of how cryptographic
constructions can be proven secure and how to
analyze real-world applications of cryptography
to verify their security guarantees.
This is a theory course, so students
are expected to be comfortable writing mathematical
proofs. It is also strongly recommended that
students have background knowledge in basic computational theory and number theory.
Topics covered include Shannon secrecy, symmetric encryption modes, block ciphers,
pseudorandom functions, message authentication codes, secure hash functions,
discrete logarithm and related cryptographic problems, asymmetric encryption,
digital signatures, and other emerging topics.
A student who completes this course will achieve the following objectives:
- Establish an understanding of cryptographic
definitions of security, hardness assumptions,
and proofing techniques.
- Establish an understanding of symmetric key
cryptographic primitives for providing message
confidentiality and integrity.
- Establish an understanding of public key
cryptographic primitives as well as the
underlying number theoretic principles.
- Demonstrate ability to construct and prove
the security of a cryptographic application,
as well as analyze the security of real-world
Most of the course readings will come from the following
book, with some additional papers assigned for readings and as reference
Katz and Lindell, Introduction to Modern Cryptography, 2nd edition
(available at Amazon)
A detailed list of lectures, readings, assignments, due dates (subject
to change as the semester evolves) is available on the
Students will be evaluated based on the following breakdown:
- 20% Quizzes
- 25% Midterm
- 30% Final
- 20% Class Project
- 5% Class Participation
Scale: F ≤ 50 < D- ≤ 54 < D ≤ 59 < D+ ≤ 63 < C- ≤ 67 < C ≤ 71 < C+ ≤ 75 < B- ≤ 79 < B ≤ 83 < B+ ≤ 87 < A- ≤ 91 < A
The instructor will assign homework from the textbook on a periodic basis for
topics associated with the class. The
content and due dates of these assignments will be finalized over the
course of the semester. If you cannot attend a lecture, contact other
students to see if any assignments have been made and consult the
syllabus. While none of these homework assignments will be graded, they
will be the source of quiz questions that will be graded.
A 10-minute quiz will be given every other week
based on the previously assigned homework
problems. It is strongly suggested
that students do the reading prior class,
as a good percentage of their
grade will depend on them. Quizzes missed because of absences can not be made up unless arrangements are made with
the instructor prior to the course
meeting. Your lowest quiz grade for the semester will be dropped,
with this portion of your grade being calculated as the average of
the remaining quiz grades.
The course will include one midterm and one final exam. Students
will be responsible for material covered both in the readings AND
lectures. Attendance is therefore recommended as not all class
discussions will be covered in the text.
The course project will provide students the opportunity to explore
cryptographic constructions not covered in class. Each student will
have the opportunity to either write a survey of a more advanced topic
in cryptography or analyze an actual cryptographic construction and demonstrate
a security vulnerability using the proofing techniques covered in class.
For either option, the student will present a brief presentation to the
rest of the class summarizing their studies, as well as a project
write up that will be graded on: depth, correctness,
clarity of presentation, and effort.
To do well in this course, students must take active and regular roles
in discussion and demonstrate comprehension of the reading and lecture
themes. Students are required to do the assigned reading before
class. This will be closely monitored by Professor Carter, thereby
making a student's ability to demonstrate their comprehension of
assigned reading essential to receiving a passing grade.
Assignments and projects are assessed a 15% per-day late
penalty, with a maximum of 3 days, after which the assignment will receive no credit.
Unless the problem is apocalyptic,
don't give me excuses. Students with legitimate reasons who contact
the professor before the deadline may apply for an extension.
Disabilities and Learning Support
It is the policy of Villanova to make reasonable academic accommodations
for qualified individuals with disabilities. You must present verification
and register with the Learning Support Office by contacting 610-519-5176
or at firstname.lastname@example.org. Accommodations cannot be made
until verification is delivered to the professor, and cannot be enacted retroactively.
For physical access or
temporary disabling conditions, please contact the Office of Disability
Services at 610-519-4095 or email Stephen.email@example.com
Registration is needed in order to receive accommodations.
Academic Integrity Policy
All students are expected to uphold Villanova's Academic Integrity Policy
and Code. Any incident of academic dishonesty will be reported to the Dean
of the College of Liberal Arts and Sciences for disciplinary action. For
the College's statement on Academic Integrity, you should consult the
You may view the university's Academic Integrity Policy and Code, as well
as other useful information related to writing papers, at the
Academic Integrity Gateway web site
Absences for Religious Holidays
Villanova University makes every reasonable effort to allow members of the community to observe their religious holidays, consistent with the University’s obligations, responsibilities, and policies. Students who expect to miss a class or assignment due to the observance of a religious holiday should discuss the matter with their professors as soon as possible, normally at least two weeks in advance. Absence from classes or examinations for religious reasons does not relieve students from responsibility for any part of the course work required during the absence.
See the full University policy