Scalable Typestate Analysis for Low-Latency Environments

01/25/2022
by   Alen Arslanagić, et al.
0

Static analyses based on typestates are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a lightweight typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer Infer, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs with efficient bit-vector operations.

READ FULL TEXT

page 1

page 3

page 5

page 7

page 23

page 29

page 30

research
08/26/2019

Slither: A Static Analysis Framework For Smart Contracts

This paper describes Slither, a static analysis framework designed to pr...
research
11/09/2017

Soft Contract Verification for Higher-Order Stateful Programs

Software contracts allow programmers to state rich program properties us...
research
04/20/2021

Modular Verification of Collaborating Smart Contracts

Smart contracts are programs that execute inside blockchains such as Eth...
research
07/20/2018

Specification Mining for Smart Contracts with Automatic Abstraction Tuning

Smart contracts are programs that manage digital assets according to a c...
research
01/13/2020

Formal specification of a security framework for smart contracts

As smart contracts are growing in size and complexity, it becomes harder...
research
02/01/2023

A Transaction Represented with Weighted Finite-State Transducers

Not all contracts are good, but all good contracts can be expressed as a...

Please sign up or login with your details

Forgot password? Click here to reset