About Me

I am a first-year CS PhD student at Stanford, interested in security, systems, and formal methods.

Prior to starting my PhD, I was a software engineer at Google working on credential infrastructure security.

I was previously an undergrad at Stanford, and did research on the Tock operating system focused on implementing the 6LoWPAN networking stack. I was also the president of the Applied Cybersecurity club, and participated in the CCDC and CPTC competitions.

Publications and Patents

Workshops and Talks

Honors and Awards

Projects

A Formal Foundation for Recoverability (2021 - Present)

I have been leading a research project collaboration between Google and Stanford on how to design systems that can mitigate and recover from a compromise. This work is still ongoing, and has resulted in a poster at USENIX Security 2022.

Tock Operating System (2017 - 2018)

website

While a student at Stanford, I worked on the Tock research project. Tock is an embedded operating system written in Rust, which leverages Rust’s type system to provide security guarantees with low overhead. I helped implement the 6LoWPAN protocol and networking stack in Tock. Through this work, we discovered that other implementations of 6LoWPAN are not interoperable, resulting in a paper at DCOSS in 2020.

Class Projects

Below are a few major class projects I worked on while a student at Stanford.

Senior Project: Deluge Protocol on Tock

code

For my senior project, I implemented the Deluge protocol on the Tock platform. This protocol is used for efficiently updating binaries in a wireless mesh network. This project extended the single-binary Deluge to support updating multiple binaries simultaneously.

CS244B: Trickle Algorithm on Tock

paper code presentation

CS 244B image

For my final project in CS 244B (Distributed Systems), my group implemented a modified version of the Trickle algorithm which aims for eventual consistency in low-power wireless networks. As part of our modifications, we enabled some portion of nodes in the network to completely enter sleep mode, rather than requiring all nodes remain in the listen state. This improved the power efficiency of the network while still retaining eventual consistency.

CS 241: Low-Power Wireless Water Quality Measurement

CS241 image Build Your Own

For my final project in CS 241 (Embedded Systems), my group created a low-power wireless water quality monitor system. We implemented a test-bed on the STM Nucleo microcontroller, which was aimed at allowing different sensors to be plugged into the board. The system would then periodically transmit sensor measurements over GSM. We published an online tutorial demonstrating how we implemented this project.

Leadership

Applied Cybersecurity Club

Applied Cyber Logo

I was president of the Stanford Applied Cybersecurity Club from 2017 until 2019, and I helped establish the club as an official Stanford student orgianization in 2018. As president, I was responsible for organizing weekly talks, workshops, and events to help interested students learn about computer security. I also helped run and participated in collegiate computer security competitions with other members of the club, winning first place at the Collegiate Penetration Testing Competition (CPTC) in 2017 and 2018.