Department of Computer Science and Technology

Technical reports

Porting a mix network client to mobile

Jacky W. E. Kung

December 2023, 57 pages

This technical report is based on a dissertation submitted May 2023 by the author for the degree of Bachelor of Arts (Computer Science Tripos) to the University of Cambridge, St Edmund’s College.

DOIhttps://doi.org/10.48456/tr-991

Abstract

This project set out to investigate the feasibility of mix network clients on the mobile ecosystem. It considers the Android operating system, and Nym, a production-grade mix network infrastructure based on the abstract Loopix architecture first presented in 2017. The goal of the project was to produce a minimal working prototype, and present an evaluation of the trade-offs necessary for an efficient implementation in the Android ecosystem. Nym’s client codebase written in Rust has been successfully ported over to Android after adjusting parts of the code and constructing the compilation toolchain. An exploration of the performance effects of compilation parameters and mixnet parameters is presented. Two extension tasks were completed: a semi-automated compilation pipeline, and further evaluation using measurements taken using the custom hardware provided by my supervisor. The repository also contains, as a side-product, a Rust library that provides a friendly interface between code that runs across the Rust and Kotlin languages.

Full text

PDF (5.0 MB)

BibTeX record

@TechReport{UCAM-CL-TR-991,
  author =	 {Kung, Jacky W. E.},
  title = 	 {{Porting a mix network client to mobile}},
  year = 	 2023,
  month = 	 dec,
  url = 	 {https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-991.pdf},
  institution =  {University of Cambridge, Computer Laboratory},
  doi = 	 {10.48456/tr-991},
  number = 	 {UCAM-CL-TR-991}
}