Information and Resources for the Final Project

Schedule of Presentations

Read this article on "how to give a good math talk" by Professor Joseph Gallian, a renowned mathematician and good speaker.

M Apr 25: Andrew Smith: History of cryptography with an emphasis on breaking of German cryptossytem Enigma

W Apr 27: Tsvetan, Ariel & Irina: LDPC Codes

M May 2: Kim & Mike: Quadratic Residue Codes

W May 4: Meg & Elaine: Reed Solomon Codes

W May 4: Gabe Schine: Elliptic Curve Cryptography

The final project for this class has two components: An in-class presentation (10% of your grade) and the final paper (20% of your grade). The presentation and the paper will be on the same topic. Each presentation will take an entire class period. In addition to the instructor, you will also be evaluated by your classmates. You may work in groups of size 2 or 3 for this project. The final paper is due R, May 12, 11 am (this is the official final exam time for this class). I want each group doing a different topic.

Time Line

1. Preliminary Outline: Due M, Apr 4. First choose a topic in Coding Theory or Cryptography. Below are some suggestions (and resources) about possible topics, but you may choose a different topic. This one-page outline should include what you want to cover, members of your group, and what sources you're using.

2. Detailed Outline: Due M, Apr 18. This should probably be 3 pages or so, and should include precise statements of theorems, sketches of proofs, and summaries of contextual or historical material.

3. In-class presentations. During the last week (or last 2 weeks depending on the number of groups). Each presentation will be given a full class time. I will schedule the talks.

4. The final paper: Due R, May 12, 11 am.

Ideas About Possible Topics

Here is a list of some possible topics, with references as a starting point. You can also find a lot of resources on the internet.Your topic does not have to be one of these, you can choose a different topic. Some of these topics are covered in our textbook. If you choose a topic that is in the textbook, you must use other resources as well. In general, you should use several different sources. Accuracy and correctness are crucial. Give complete and careful references, do not plagiarize. The numbers for references refer to the list of resources at the end of the course syllabus. (More references have been added to the list after it was distributed at the beginning of the semester. Please refer to the updated version available on the course web page). The material we are planning to cover from our textbook for the rest of the semester is as follows: Finish Chp 4, 10.1, 10.2, 11.1, Most of Chp 12, and if time permits Chp 5 (or parts of it). (This list and references may change/grow in the next couple of weeks)

The list below is in no particular order.

Coding Theory

1. Weight Enumerators and MacWilliam's identity. This is a well-known and fundamental theorem in coding theory relating weight enumerator of a code to its dual. Can be found in most coding theory books but there is a more accessible proof in [14].

2. Reed Solomon Codes (with possible inclusion of BCH codes as well). Can be found in most coding theory books.

3. Codes and Designs (combinatorial designs). Start with [3] and [6].

4. Codes over Z_4. [3], [6], [9].

5. Convolutional Codes. [9], [6],[13],[15],[21]

6. Low Density Parity Check (LDPC) Codes. [13]

7. Quadratic Residue Codes: [3],[6], [9],[10],[14].

8. Games and Codes, Lexicodes: [3],[22], and this paper. This project may involve a programming part to generate lexicodes.

9. You can find ideas about computational/programming projects in [24] (for both coding theory and cryptography).

10. Also see these web pages for [22] for more ideas and tips for Mapla/Magma programming: 1, 2, 3

.....................

Cryptography

1. Secret Sharing Schemes. [1] and first edition of (1995) [11].

2. Cryptographic Hash Functions. [5],[11], [16],[17] http://csrc.nist.gov/CryptoToolkit/tkhash.html

3. Integer Factoring Algorithms: [1],[5],[11], [16].

4. Primality Tests and Prime Number Generation: [5], [11],[16],[17].

5. Elliptic Curve Cryptography: [1],[5]

6. Pseudo-Random Number Generation: First edition of (1995) [11], [16]

7. Computational Complexity: [16],[18]

8. Quantum Computation and (Quantum Error-Correcting Codes or Quantum Cryptography): [1], [19],[23], [25].

9. NTRU: http://www.ntru.com

10. Knapsack Cryptosystems

11. History of Cryptography (be sure to include sufficient mathematical content). See the relevant articles on this page. There is also more there.

....................

Database

Search the Ohio Link for additional resources (or locating the resources listed above).

Use the search engine of MathSciNet to find articles on particular topics, or particular articles referenced in other articles.

Journals

Designs, Codes and Cryptography

Journal of Cryptology

An important journal for coding theory is IEEE Transactions on Information Theory. You don't have access to it. If you need any articles from that journal, let me know.