TASE: Reducing Latency of Symbolic Execution with Transactional Memory

4Citations
Citations of this article
15Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We present the design and implementation of a tool called TASE that uses transactional memory to reduce the latency of symbolic-execution applications with small amounts of symbolic state. Execution paths are executed natively while operating on concrete values, and only when execution encounters symbolic values (or modeled functions) is native execution suspended and interpretation begun. Execution then returns to its native mode when symbolic values are no longer encountered. The key innovations in the design of TASE are a technique for amortizing the cost of checking whether values are symbolic over few instructions, and the use of hardware-supported transactional memory (TSX) to implement native execution that rolls back with no effect when use of a symbolic value is detected (perhaps belatedly). We show that TASE has the potential to dramatically improve some latency-sensitive applications of symbolic execution, such as methods to verify the behavior of a client in a client-server application.

Cite

CITATION STYLE

APA

Humphries, A., Cating-Subramanian, K., & Reiter, M. K. (2021). TASE: Reducing Latency of Symbolic Execution with Transactional Memory. In 28th Annual Network and Distributed System Security Symposium, NDSS 2021. The Internet Society. https://doi.org/10.14722/ndss.2021.24327

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free