Project #: STEVENSS2006-01

Digital signatures are a mechanism by which someone, called a signer,
can electronically "sign" a message so that receivers can verify that
the message came from the signer and was not changed in transit. Most
digital signatures rely on a cryptographic hash function for part of
their operations. This project will explore one or more ways to makes
digital signatures more efficient and to use these improvements in
real world applications. Two examples are described below.

Problem 1: The Merkle signature scheme, introduced by Ralph Merkle in
1990, is efficient and provably secure. However, its architecture is
different from most signature schemes, in that it only allows a
limited number of signatures. The goal here is to explore the use of
the Merkle scheme in real applications such as SSL, https, etc.

Problem 2: The Courtois-Finiasz-Sendries signature scheme, which is
based on coding theory, computes the signature of a document m as the
decoding of the hash of h(m xor i) where h is a hash function that
hashes to vectors and i is a counter that makes h(m xor i) decodable.
Unfortunately, one needs to inspect 100 million counters before a
decodable vector is found. This signature algorithm is therefore not
very efficient. The goal here is to modify the scheme to make it more
efficient.

Project #: STEVENS2006-2

Project Title: Applications of computational algebraic number theory in cryptography

Cryptography has strong ties to computational algebraic number
theory. Examples in public key cryptography include the RSA and
ElGamal cryptosystems which are based on the difficulty of factoring
and solving the discrete logarithm problem, respectively. Lattice
theory has not only proven to be an effective tool for cryptanalysis
but is also expected to give rise to cryptographic primitives that
sustain their strength even in the context of quantum
computing. Algebraic structures have also taken a prominent place in
secret key cryptography with the Advanced Encryption Standard.

The exact problem will be chosen from the general topic of
computational algebraic number theory in cryptography. Depending on
the interests and expertise of the student, this project can be more
focused on foundational mathematical results, or on implementation and
experimentation. A background in mathematics, computer science, and
programming is desired.