VLDB 2026 Research / reviewers in the wild / expert
Jon Stephens
dblp:196/8839
· DBLP profile ↗
8ranked-venue papers
4as first author
5since 2021 · last 2025
0009-0001-3866-2574ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Security and privacy · 4 · 2 first-author · 2 since 2021Software engineering, systems software and programming languages · 4 · 2 first-author · 3 since 2021Theory of computation · 1 · 1 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1 · 1 first-author · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Automated Verification of Consistency in Zero-Knowledge Proof CircuitsabstractAbstract Circuit languages like Circom and Gnark have become essential tools for programmable zero-knowledge cryptography, allowing developers to build privacy-preserving applications. These domain-specific languages (DSLs) encode both the computation to be verified (as a witness generator ) and the corresponding arithmetic circuits , from which the prover and verifier can be automatically generated. However, for these programs to be correct, the witness generator and the arithmetic circuit need to be mutually consistent in a certain technical sense, and inconsistencies can result in security vulnerabilities. This paper formalizes the consistency requirement for circuit DSLs and proposes the first automated technique for verifying it. We evaluate the method on hundreds of real-world circuits, demonstrating its utility for both automated verification and uncovering errors that existing tools are unable to detect. Jon Stephens, Shankara Pailoor, Isil Dillig |
CAV (1) | 1 |
| 2025 | Scientific Knowledge Graph Construction Needs an AI-Mediated, Scientist-in-the-Loop Workflow (A Blue Sky Paper)abstractScientific knowledge graph (KG) construction increasingly relies on large language models (LLMs) and heuristic pipelines to extract semantic structure from unstructured corpora. While automation enables scale, it often introduces ambiguity, overgeneralization, and inconsistencies—especially in biomedical and grey-literature domains. To address this, we propose a reflexive, AI-mediated, scientist-in-the-loop workflow that elevates human participation from labeling to semantic guidance. Unlike traditional HITL systems where humans serve as annotators or post hoc validators, our architecture enables the AI system to monitor confidence, detect failure modes, and initiate structured consultations with domain experts. Each intervention is triggered by statistical anomalies, graph discrepancies, or semantic drift, and is coupled with diagnostics, summaries, and provenance trails. We introduce the design of a modular enrichment pipeline augmented by diagnostic triggers, GGD-based corrections, and cube-based lineage tracking. This position paper articulates the motivation, architecture, and open challenges for realizing truly collaborative, transparent, and high-quality knowledge graph construction in science. Jon Stephens, Shruti Sawant, Amarnath Gupta |
eScience | 1 |
| 2024 | Practical Security Analysis of Zero-Knowledge Proof Circuits
Hongbo Wen, Jon Stephens, Yanju Chen, Kostas Ferles, Shankara Pailoor, Kyle Charbonnet, Isil Dillig, Yu Feng 0001 |
USENIX Security Symposium | 2 |
| 2021 | SmartPulse: Automated Checking of Temporal Properties in Smart ContractsabstractSmart contracts are programs that run on the blockchain and digitally enforce the execution of contracts between parties. Because bugs in smart contracts can have serious monetary consequences, ensuring the correctness of such software is of utmost importance. In this paper, we present a novel technique, and its implementation in a tool called SMARTPULSE, for automatically verifying temporal properties in smart contracts. SMARTPULSE is the first smart contract verification tool that is capable of checking liveness properties, which ensure that "something good" will eventually happen (e.g., "I will eventually receive my refund"). We experimentally evaluate SMARTPULSE on a broad class of smart contracts and properties and show that (a) SMARTPULSE allows automatically verifying important liveness properties, (b) it is competitive with or better than state-of-the-art tools for safety verification, and (c) it can automatically generate attacks for vulnerable contracts. Jon Stephens, Kostas Ferles, Benjamin Mariano, Shuvendu K. Lahiri, Isil Dillig |
SP | 1 |
| 2021 | Verifying correct usage of context-free API protocolsabstractSeveral real-world libraries (e.g., reentrant locks, GUI frameworks, serialization libraries) require their clients to use the provided API in a manner that conforms to a context-free specification. Motivated by this observation, this paper describes a new technique for verifying the correct usage of context-free API protocols. The key idea underlying our technique is to over-approximate the program’s feasible API call sequences using a context-free grammar (CFG) and then check language inclusion between this grammar and the specification. However, since this inclusion check may fail due to imprecision in the program’s CFG abstraction, we propose a novel refinement technique to progressively improve the CFG. In particular, our method obtains counterexamples from CFG inclusion queries and uses them to introduce new non-terminals and productions to the grammar while still over-approximating the program’s relevant behavior. We have implemented the proposed algorithm in a tool called CFPChecker and evaluate it on 10 popular Java applications that use at least one API with a context-free specification. Our evaluation shows that CFPChecker is able to verify correct usage of the API in clients that use it correctly and produces counterexamples for those that do not. We also compare our method against three relevant baselines and demonstrate that CFPChecker enables verification of safety properties that are beyond the reach of existing tools. Kostas Ferles, Jon Stephens, Isil Dillig |
Proc. ACM Program. Lang. | 2 |
| 2020 | Representing and Reasoning about Dynamic CodeabstractDynamic code, i.e., code that is created or modified at runtime, is ubiquitous in today's world. The behavior of dynamic code can depend on the logic of the dynamic code generator in subtle and non-obvious ways, e.g., JIT compiler bugs can lead to exploitable vulnerabilities in the resulting JIT-compiled code. Existing approaches to program analysis do not provide adequate support for reasoning about such behavioral relationships. This paper takes a first step in addressing this problem by describing a program representation and a new notion of dependency that allows us to reason about dependency and information flow relationships between the dynamic code generator and the generated dynamic code. Experimental results show that analyses based on these concepts are able to capture properties of dynamic code that cannot be identified using traditional program analyses. Jesse Bartels, Jon Stephens, Saumya K. Debray |
ASE | 2 |
| 2018 | Probabilistic Obfuscation Through Covert ChannelsabstractThis paper presents a program obfuscation framework that uses covert channels through the program's execution environment to obfuscate information flow through the program. Unlike prior works on obfuscation, the use of covert channels removes visible information flows from the computation of the program and reroutes them through the program's runtime system and/or the operating system. This renders these information flows, and the corresponding control and data dependencies, invisible to program analysis tools such as symbolic execution engines. Additionally, we present the idea of probabilistic obfuscation which uses imperfect covert channels to leak information with some probabilistic guarantees. Experimental evaluation of our approach against state of the art detection and analysis techniques show the engines are not well-equipped to handle these obfuscations, particularly those of the probabilistic variety. Jon Stephens, Babak Yadegari, Christian S. Collberg, Saumya K. Debray, Carlos Scheidegger |
EuroS&P | 1 |
| 2017 | Analysis of Exception-Based Control TransfersabstractDynamic taint analysis and symbolic execution find many important applications in security-related program analyses. However, current techniques for such analyses do not take proper account of control transfers due to exceptions. As a result, they can fail to account for implicit flows arising from exception-based control transfers, leading to loss of precision and potential false negatives in analysis results. While the idea of using exceptions for obfuscating (unconditional) control transfers is well known, we are not aware of any prior work discussing the use of exceptions to implement conditional control transfers and implicit information flows. This paper demonstrates the problems that can arise in existing dynamic taint analysis and symbolic execution systems due to exception-based implicit information flows and proposes a generic architecture-agnostic solution for reasoning about the behavior of code using user-defined exception handlers. Experimental results from a prototype implementation indicate that the ideas described produce better results than current state-of-the-art systems. Babak Yadegari, Jon Stephens, Saumya K. Debray |
CODASPY | 2 |