If you want to do your degree project (sv. examensarbete) in
cryptography specifically and you are already in contact with an
industrial partner, then please send me an email containing a
brief description of your project proposal.
If you are simply looking for a supervisor for a project in
computer science, then you should contact Ann Bengtson.
Any projects defined by myself are posted below and also on the
degree projects of the TCS group. On the latter page you can
also find the degree projects defined by other members of the
Degree Projects In Cryptography
Preferential Voting With Mix-Nets
In some countries, the voter does not give a vote for a single
candidate. Instead it ranks the candidates or a subset of the
candidates on its ballot.
To decide who wins the elections we think of each ballot as a
stack. We then tabulate the election as if the top element of
each stack was the single vote given by the voter. If there is
a majority vote for some party, then it wins. Otherwise we pop
the stacks where the top element is a vote for the party with
the smallest number of votes. This candidate is now eliminated
and removed from all stacks. We proceed in this way until the
winner is identified. (There are variations of this tabulation
A mix-net is a protocol executed by a number of parties that
takes a list of encrypted votes as input and outputs the votes
in random order without leaking anything else. Thus, the
correspondence between inputs and outputs is broken.
To implement preferential voting using a mix-net, the obvious
idea is to simply view a ranking as a vote, use the mix-net
and then do the preferential tabulation as outlined above on
the output from the mix-net. Unfortunately, this is bad idea
when the number of candidates is moderately large. The problem
is that a voter may be forced, or paid, to use a particular
ranking that is unlikely to be used by anybody else, thus
allowing the adversary to verify that the voter voted in a
particular way. This is sometimes called the "Italian
attack". Thus, researchers have tried to come up with more
complex protocols for tabulation for preferential voting.
The goal of the project is to:
- Study cryptographic protocols for finding the winner(s)
in preferential voting systems based on mix-nets and
possibly improve them.
- Implement one of these protocols. There is an ongoing
implementation project for
that should be used as the starting point.
To successfully complete this project the you need a strong
background in mathematics/theoretical computer science, as
well as in programming. Preferably, you should have completed
in cryptography or something equivalent.
If you are interested, then please email Douglas Wikström
(If you can read a little Swedish, then you can try to mount an
"Italian attack" against the Swedish election scheme,
which is defined