Subject
Arkworks is a leading software library (written in Rust) for zero-knowledge (ZK) proofs. Protocols for ZK often rely on elliptic curve cryptography (ECC), which is why arkworks implements a vast array of elliptic curve types which can then be implemented for specific curves and used in ZK.
ECC itself is a popular method used for secure communications based on elliptic curves. While there are many implemented fast and secure libraries for very specific curves, it would be useful to have a wide variety of elliptic curve types available easily for cryptographic purposes, in the same package as the ZK system of arkworks.
In this thesis you would investigate constant time ECC algorithms, and edit algorithms in arkworks to be constant time. A further subject could be to detect non-constant time algorithms using side channel methods, and analyse existing Rust libraries which are constant time and compare them to arkworks.
co-promoter: An Braeken co-supervisors: Robrecht Blancquaert, Tom Godden
Kind of work
Implementing elliptic curve algorithms Hardware or software side-channel analysis of those algorithms Evaluation of existing constant time libraries and new implementation Performance analysis of various elliptic curve algorithms
Framework of the Thesis
RustIEC project
Expected Student Profile
Excellent programming skills: some familiarity with the Rust programming language, or ability to learn it quickly
Hardware skills is a bonus for constant time analysis
Elliptic curves: basic understanding can be picked up relatively fast without prior knowledge, but the advanced level necessary for this thesis will require dedication to dive into the abstract mathematics
|