Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Adam Wick

dblp:59/6659 · DBLP profile ↗
← Back
5ranked-venue papers
1as first author
2since 2021 · last 2023
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 1 first-author · 1 since 2021Security and privacy · 1 · 1 since 2021Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 50% Program analysis · 50%
Network and information security
1 paper
Network security · 100%
Computer networks
1 paper
Network measurement and analytics · 100%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Network security
traffic analysis
0.712023
BinaryInferno: A Semantic-Driven Approach to Field Inference for Binary Message Formats · NDSS 2023
Program analysis
specification mining
0.512021
A type system for extracting functional specifications from memory-safe imperative programs · Proc. ACM Program. Lang. 2021
Programming languages and type systems
type systems
0.512021
A type system for extracting functional specifications from memory-safe imperative programs · Proc. ACM Program. Lang. 2021
Network measurement and analytics › protocol analysis
protocol reverse engineering
0.212023
BinaryInferno: A Semantic-Driven Approach to Field Inference for Binary Message Formats · NDSS 2023

Methods — techniques the papers use, named apart from their topics

semantic analysis · 1.3separation logic · 0.5dynamic checks · 0.5
YearPublicationVenuePosition
2023 BinaryInferno: A Semantic-Driven Approach to Field Inference for Binary Message Formats
Jared Chandler, Adam Wick, Kathleen Fisher
NDSS2
2021 A type system for extracting functional specifications from memory-safe imperative programs
abstract
Verifying imperative programs is hard. A key difficulty is that the specification of what an imperative program does is often intertwined with details about pointers and imperative state. Although there are a number of powerful separation logics that allow the details of imperative state to be captured and managed, these details are complicated and reasoning about them requires significant time and expertise. In this paper, we take a different approach: a memory-safe type system that, as part of type-checking, extracts functional specifications from imperative programs. This disentangles imperative state, which is handled by the type system, from functional specifications, which can be verified without reference to pointers. A key difficulty is that sometimes memory safety depends crucially on the functional specification of a program; e.g., an array index is only memory-safe if the index is in bounds. To handle this case, our specification extraction inserts dynamic checks into the specification. Verification then requires the additional proof that none of these checks fail. However, these checks are in a purely functional language, and so this proof also requires no reasoning about pointers.
Paul He 0002, Eddy Westbrook, Brent Carmer, Chris Phifer, Valentin Robert, Karl Smeltzer, Andrei Stefanescu, Aaron Tomb, Adam Wick, Matthew Yacavone, Steve Zdancewic
Proc. ACM Program. Lang.9
2009 Hardware/software co-verification of cryptographic algorithms using Cryptol
abstract
Cryptol is a programming language designed for specifying cryptographic algorithms. Despite its high-level modeling nature, Cryptol programs are fully executable. Further, a large subset of Cryptol can be automatically synthesized to hardware. To meet the inherent high-assurance requirements of cryptographic systems, Cryptol comes with a suite of formal-methods based tools that enable users to perform various program verification tasks. In this paper, we provide an overview of Cryptol and its verification toolset, especially focusing on the co-verification of third-party VHDL implementations against highlevel Cryptol specifications. As a case study, we demonstrate the technique on two hand-written VHDL implementations of the Skein hash algorithm.
Levent Erkök, Magnus Carlsson, Adam Wick
FMCAD3
2009 Precise garbage collection for C
abstract
Magpie is a source-to-source transformation for C programs that enables precise garbage collection, where precise means that integers are not confused with pointers, and the liveness of a pointer is apparent at the source level. Precise GC is primarily useful for long-running programs and programs that interact with untrusted components. In particular, we have successfully deployed precise GC in the C implementation of a language run-time system that was originally designed to use conservative GC. We also report on our experience in transforming parts of the Linux kernel to use precise GC instead of manual memory management.
Jon Rafkind, Adam Wick, John Regehr, Matthew Flatt
ISMM2
2004 Memory accounting without partitions
abstract
Operating systems account for memory consumption and allow for termination at the level of individual processes. As a result, if one process consumes too much memory, it can be terminated without damaging the rest of the system. This same capability can be useful within a single application that encompasses subtasks. An individual task may go wrong either because the task's code is untrusted or because the task's input is untrusted. Conventional accounting mechanisms, however, needlessly complicate communication among tasks by partitioning their object spaces. In this paper, we show how to provide applications with per-task memory accounting without per-task object partitions.
Adam Wick, Matthew Flatt
ISMM1