Abstract [en]

This thesis presents an overview of different solutions for anonymous networks. Theory behind connection- and data-anonymity is described, how to implement them and the theory behind commonly used cryptography. The theory behind one anonymous network is also put into practice as we demonstrate a proof-of-concept implementation of a mix-net online voting service, where RSA and AES is used for encryption. A comparison between time taken for sending different amount of encrypted votes versus non-encrypted votes, sending the votes through different number of mix-servers and varying their file sizes was made. It was observed that there was a linear increase in time taken for both encrypted and non-encrypted votes when the amount of votes being processed by the system increased from 1 to 200. This linear behaviour was also observable when the amount of intermediate mix-servers increased from 1 to 6, and file sizes from 0.9 to 7.2 Mb. The difference between encrypted and non-encrypted data increased rapidly when more simultaneously votes were sent, more mixes were used and larger files were encrypted. For example, the system processes an encrypted vote with one mix around four times as long as an unencrypted, and when sending 200 votes with six mixes it takes almost 30 times as long. When increasing our system's intermediate mixes by two we attain an increase in processing time of 9.7% per encrypted message. This processing time is also 4.4 times as long per Mb for encrypted messages than for non-encrypted.