This course is cross-listed as computer science course CSCI 4116 and as
graduate course MATH 5116.
Final Exam: Thursday, Dec. 6, 8:30 -11:30, Dalplex.
Basic Information:
- Instructor: Karl Dilcher
- Office: Chase Building Room 325; ph.: 494-3784
- Office hours: M-W-F, 11:30 - 12:30
- Class time: M-W-F, 9:35 - 10:25
- Classroom: LSC 206
Textbook:
by W. Trappe and L.C. Washington
The book will be available in the Dalhousie bookstore.
For a list of other interesting books see the
book list below.
Prerequisites:
and at least two other half courses in mathematics beyond the first year,
or instructor's permission.
Calendar entry:
This course is an introduction to modern cryptographic techniques
and its mathematical foundations. The material covered includes:
Elementary number theory and algebra; classical cryptosystems;
probability; the Data Encryption Standard; prime number generation
and primality tests; public key cryptosystems; further applications,
such as digital signatures and identification. The course ends with
a brief overview of other cryptosystems, such as elliptic curve cryptography.
More about the topic:
Cryptography is the art and science of keeping messages secure.
Formerly almost exclusively used by state and military authorities,
it has in recent decades become of great public importance for a
variety of different uses in the transmission of electronic data.
Modern cryptography can be called the science and technology of
electronic key systems. It is used to keep data secret, digitally
sign documents, control access, etc. Users should not only know how
its techniques work, but they must also be able to estimate their
efficiency and security.
... and about the course:
This course is an introduction to modern cryptographic techniques
and their mathematical foundations. Although some particular cryptosystems
and their implementations will be discussed as examples, the main
emphasis of the course will be on the theoretical background.
The course does not assume any particular mathematical background,
but a certain amount of mathematical maturity is required. It is
therefore expected that students have taken MATH-1000,
MATH-1010, MATH-2030, and at least two other half-courses beyond the first
year.
Course content
The particular topics covered in the course are:
- Mathematical Background: Some elementary number theory; groups; linear algebra.
- Encryptions: Block ciphers (in different modes), One-Time-Pad systems, etc.
- Probability theory and pseudo-random numbers.
- The Advanced Encryption Standard (AES).
- Computational number theory: Prime number generation and primality tests.
- Public key cryptosystems: RSA, Rabin, ElGamal, etc.
- More number theory: Factoring, discrete logarithms.
- Further topics: Hash functions, digital signatures, identification, etc.
Intended audience:
Upper-year undergraduate or beginning graduate students in
- computer science or statistics, with an interest in mathematics;
- mathematics who want to learn about a modern application of pure mathematics.
Evaluation (subject to change until beginning of term):
- Weekly assignments: 30%
These will be mainly routine questions and
exercises, designed to ensure continuous work on the course material and
to test understanding. Each assignment will also contain a few
problems that are more challenging and problems requiring computations.
- Mid-term test: 30%
Possibly with a ``take-home" portion for graduate students, to assess
progress and understanding up to that time.
- Final exam: 40%
This 3-hour exam will consist of two equal parts:
(i) More mathematical questions, similar to the ones in the assignments and
the test; (ii) ``essay-type" questions, to test the understanding of
concepts and issues concerning the course material.
- No supplemental exams will be available.
Differences between the undergraduate and the graduate component:
The lectures will be common to both undergraduate and graduate students. The
main differences will lie in the homework assignments and the evaluation:
- Weekly assignments:
Each assignment will contain at least one problem of a more challenging
nature, the solution of which will be required of all graduate students.
- Mid-term test:
This will be of a more challenging nature, and will likely be a "take-home
exam" for graduate students.
- Final exam:
Since the objective of the final exam is to test basic knowledge of
the course material, it will be common for both graduate and undergraduate
students.
This course, as all other courses, is subject to the university's "Intellectual
Honesty" guidelines; please read p. 22 in the undergraduate calendar.
Other Related Mathematics Courses:
-
MATH 3070-B: Theory of Numbers.
Some of the topics from elementary number theory that are needed in
cryptography (especially modular arithmetic and factorization and primality)
are treated in greater detail, and are supplemented by related
topics. Although ideally this course should be taken before Cryptography,
those interested in classical topics of number theory will benefit
from this course also after having taken 4116.
This year the course will be taught by Dr. Dante Manna.
Solutions to assignments:
Course Notes:
Course notes will be available in class for purchase at the cost of copying.
Other useful information
(Some of this may be outdated; it will be up-to-date by the beginning of
the term).
Books:
- Other Textbooks covering the material of the course:
- J. A. Buchmann
Introduction to Cryptography
Springer-Verlag, New York, 2001.