CIS 556, Fall 2016
For the research project, you should try to do something
nontrivial, tractable, and open. If you're more theoretical, you can
try to prove an extension of existing work, or do a theoretical
analysis of something related to cryptography. If you're more
applied, you can design and analyze a protocol to solve some new
problem, implement an interesting algorithm, or do a cryptography-related
experimental or measurement study.
If you have any questions about scope, or want ideas or
suggestions, feel free to send an email or come to office hours.
Project Proposal (due 11/10)
Please write a 1-page proposal listing the following and submit to Canvas. (One per group.)
- Project title
- Group members (1-3 people)
- Problem: What problem are you trying to solve or what question are
you trying to answer and why?
- Approach: How are you going to do it? Give a tentative schedule
- Expected results, backup results, and stretch results: Give the
results you expect to be able to get by the end, describe your
backup plans for an impressive report even if your research doesn't
work (you can write a survey paper in the area) and give the
awesomest outcome you might expect.
- References: A handful of the main references you plan to use.
Presentations will be held during class time on 11/29 and 12/1. Presentations can be on slides or chalkboard. Provide an overview of the problem you're trying to solve and your results. Groups of one present for 10 minutes; groups of two for 15, and three 20.
- Gabrielle and Jack
- Yibang and Jinshuo
- Eddie, Kushmitha, and Marvin
- David and Daniel
- Tanner, Joe, and Paul
Final Paper (due 12/16)
Your final report should be written in the style of an academic paper,
typeset in LaTeX, 10-15 pages. The usual components of a paper are:
- Related work
- Future work
Look through the programs/accepted papers of Crypto 2016,
Asiacrypt 2016 or the ePrint Archives and find something that interests you.
- Side-channel attacks (Applied)
Re-implement a recent side-channel attack.
- Side-channel attack defenses (Applied)
Implement a proposed defense against side-channels and measure its efficacy.
- (Mathematical) Mersenne Factorization Factory by Kleinjung, Bos, and Lenstra 2014
- (Mathematical) Batch NFS by Bernstein and Lange 2014
- (Mathematical) [Crandall and Pomerance] Given a large integer N, come up with two distinct, irreducible, degree 3 polynomials f(x), g(x) with coefficients bounded by N^(1/6) and an integer m such that f(m) = g(m) = 0 mod N. Work out how this would improve the number field sieve.
- Discrete log (Math)
Study recent advances in discrete log algorithms.
Study kleptography in theory or in practice.
- Weak keys (Applied+math)
Acquire cryptographic keys and look for key generation vulnerabilities. (Coordinate with Nadia and Luke if you're interested.)
- Privacy-enhancing technologies (Protocol analysis/implementation)
- Ideal lattices/Post-quantum cryptography (Theory/math)
Study constructions and attacks on ideal lattices
- The ongoing saga of multilinear maps (Theory)
Study candidate multilinear maps and cryptanalyses.
- Cryptanalysis of the New CLT Multilinear Maps by Cheon, Lee, Ryu 2015
- Cryptanalysis of Two Candidate Fixes of Multilinear Maps over the Integers by Coron, Lepoint, Tibouchi 2014
- Cryptanalysis of the multilinear map over the integers by Cheon, Han, Lee, Ryu, Stehle 2014
- Candidate Multilinear Maps from Ideal Lattices by Garg, Gentry, Halevi 2013
- Practical Multilinear Maps over the Integers by Coron, Lepoint, Tibouchi 2013