Andrew W. Appel

Eugene Higgins Professor of Computer Science
Department of Computer Science
Princeton University

On sabbatical at Cornell University July 2021 - June 2022

Andrew Appel Bio & Contact

Publications

Vita

My students

Research Interests: program verification, computer security, programming language semantics, machine-checked proofs, compilers, and election technology.

Verified Software Toolchain
VST project page
     CertiCoq</img
CertiCoq project page
      VeriFFI</img
VeriFFI
Verified Network Toolchain
      DeepSpec
Cryptography
     
Voting machines

Selected articles on voting: (more here and here)
Are voting-machine modems truly divorced from the Internet?
Securing the Vote — National Academies report
Serious design flaw in ESS ExpressVote touchscreen: “permission to cheat”
Florida is the Florida of ballot-design mistakes
Pilots of risk-limiting election audits in California and Virginia
BMDs are not meaningfully auditable
Democracy Live internet voting: unsurprisingly insecure, and surprisingly insecure
NJ agrees No Internet voting in July, vague about November
Voting by mail in NJ 2020
Vote-by-mail meltdowns in 2020?
New Jersey gets ballot-tracking only half right
Did Sean Hannity misquote me?
Georgia’s election avoided an even worse nightmare that’s just waiting to happen next time
Expert analysis of Antrim County, Michigan
Juan Gilbert’s Transparent BMD
Internet Voting is Still Inherently Insecure
Accommodating voters with disabilities
New Hampshire Election Audit, part 1; and part 2
It’s still practically impossible to secure your computer against attackers with physical access

   Internet Voting? Really?

Technology Policy

Center for Information Technology Policy

My blog at Freedom to Tinker

Other technology policy work I've done


Previous research projects

Standard ML of New Jersey, a compiler for the type-safe functional programming language ML.
Foundational Proof-Carrying Code for security of untrusted code.
Enterprise Network Security Analysis.