Topic
Sign in
Sarah Meiklejohn

Sarah Meiklejohn

Faculty

My background is as an academic: I am (at 20%) a Professor in Cryptography and Security at University College London, having started there in 2014. I also worked for five years at Google as a researcher.

Cryptography, security, and privacy are my core research interests, but if you browse my publications (on my website or Google Scholar) you'll see that I have quite broad interests and have also worked recently in areas like machine learning and human-computer interaction.

I'm reasonably responsive via email ([email protected]) and happy to arrange meetings at Newspeak House.

  • I don't use social media so if you see an account that claims to be mine please let me know!
  • Any pronouns are fine

Topics

In a zero-knowledge proof, a prover aims to convince a verifier of the truth of some statement (e.g., that they know a password) without revealing anything beyond that it is true. This turns out to be a powerful primitive, with applications to voting systems, machine learning, cryptocurrencies, and many other areas!

I have spent my whole career working on zero knowledge and would be happy to discuss zero-knowledge proofs at any level: how to build them, what guarantees they do and don't provide, whether or not they could (or should) be used for a given application, etc.

There are defined cryptographic notions of transparency, and there are cryptographic primitives that get used to build systems that provide strong transparency guarantees. There are also successfully deployed technical projects like Certificate Transparency (which all major browsers use every time you visit a website), key transparency (deployed in WhatsApp), and software transparency (Sigstore).

​While transparency thus can be a necessary tool for achieving fairness and accountability in complex multi-party systems, it is far from sufficient, both for these more technological systems but especially for more human-oriented systems (e.g., using transparency for governance, as in a DAO). 

There is universal security advice that applies to anyone who is online (e.g., using strong passwords and two-factor authentication), and specific security advice that applies to those who are at elevated risk of being targeted online in some way (which includes almost everyone, at some point in their lives).

Beyond that, there are many ways in which we may choose to maintain an online presence. It's valuable to understand the risks that we or those we work with may face and how those risks might change over time (sometimes gradually and sometimes quickly; for example if someone joins a political campaign), and to think through both reasonable precautions to prevent these attacks and how to react when they do happen.

People seek help online constantly, for a variety of reasons and from a variety of sources: search engines, social media, online fora, LLMs, etc.

Some of my recent research has looked at how people seek advice around their digital privacy, safety, and security, both in terms of the questions they ask (and how they ask them) and the quality of advice they get from different sources.

This allows us to understand the wide range of problems people face; e.g., scams, harassment, issues accessing accounts or using security- or privacy-focused tools (VPNs, antivirus, ad blockers, etc.), malware, and more.

Modern software is developed in a collaborative way, with developers choosing to use code from multiple third-party libraries rather than implement everything from scratch. This interdependent software supply chain has benefits for security, but it also comes with risks in the form of supply-chain attacks, such as the highly publicized attack on SolarWinds or the Log4Shell vulnerability.

I have done some research looking at software supply chains, both in terms of examining dependencies in open-source software and their impact on security and in terms of exploring how the same principles and protections can extend to machine learning models.

I'd be happy to chat about any cryptographic primitives (signatures, encryption, multi-party computation, voting, etc.)

I enjoy coding, both for personal projects and for research, where most of my coding involves data science-type tasks in Python. If one of your goals for this year is to learn to code then I'd be happy to support that!

I am not the right person to ask about vibecoding, or getting a specific project done, but if you want to learn how to program in Python in a principled way then I have materials available from teaching this (to non-technical students) in the past.