This project will build on recent work that aims to test the security of base problems in lattice-based cryptography. These problems are computational lattice problems (e.g., learning with errors), which are conjectured to be difficult to solve. Such problems are central to the discipline of cryptography, the importance of which is shown by its prevalence throughout today’s world, providing a backbone for the global internet infrastructure. Current methods to solve these problems tend to be effective but particularly slow (e.g. Arora-Ge involving rewriting of a problem instance and then solving by Gaussian Elimination, and subsequent revision to produce solutions using Groebner bases, Blum-Kalai-Wasserman).
The project will develop, likely hybridised, parallel and/or stochastic alternative symbolic computation methods to attack these kinds of problems, and will utilise HPC and GPU architectures to aim for a fast solution. The student would need good mathematical and computer programming skills, and knowledge of HPC or GPU programming in MPI, PyCUDA or Theano would be an advantage.