Maria Anna Schett

dblp:185/2487 · DBLP profile ↗
← Back
4ranked-venue papers
1as first author
2since 2021 · last 2022
0000-0003-2919-5983ORCID · verified

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

Software engineering, systems software and programming languages · 2 · 1 since 2021Systems, architecture and hardware · 1 · 1 first-author · 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
2 papers
Compilers and program optimization · 70% Program synthesis and code generation · 30%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Distributed systems · 100%
Network and information security
1 paper
Blockchain and cryptocurrency security · 100%
Theoretical computer science
1 paper
Automated reasoning and model checking · 100%

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

TopicWeightPapersLastEvidence papers
Compilers and program optimization › compiler optimization
superoptimization
1.022022
Super-optimization of Smart Contracts · ACM Trans. Softw. Eng. Methodol. 2022
Synthesis of Super-Optimized Smart Contracts Using Max-SMT · CAV (1) 2020
Blockchain and cryptocurrency security
smart contract security
0.612022
Super-optimization of Smart Contracts · ACM Trans. Softw. Eng. Methodol. 2022
Distributed systems › fault tolerance
byzantine fault tolerance
0.512021
Embedding a Deterministic BFT Protocol in a Block DAG · PODC 2021
Distributed systems
consensus
0.512021
Embedding a Deterministic BFT Protocol in a Block DAG · PODC 2021
Program synthesis and code generation
constraint-based synthesis
0.412020
Synthesis of Super-Optimized Smart Contracts Using Max-SMT · CAV (1) 2020
Automated reasoning and model checking › satisfiability modulo theories
MaxSMT
0.212022
Super-optimization of Smart Contracts · ACM Trans. Softw. Eng. Methodol. 2022

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

stack functional specification · 2.2SMT encoding · 1.7Max-SMT · 1.6MaxSMT · 0.6bytecode synthesis · 0.4
YearPublicationVenuePosition
2022 Super-optimization of Smart Contracts
abstract
Smart contracts are programs deployed on a blockchain. They are executed for a monetary fee paid in gas —a clear optimization target for smart contract compilers. Because smart contracts are a young, fast-moving field without (manually) fine-tuned compilers, they highly benefit from automated and adaptable approaches, especially as smart contracts are effectively immutable, and as such need a high level of assurance. This makes them an ideal domain for applying formal methods. Super-optimization is a technique to find the best translation of a block of instructions by trying all possible sequences of instructions that produce the same result. We present a framework for super-optimizing smart contracts based on Max-SMT with two main ingredients: (1) a stack functional specification extracted from the basic blocks of a smart contract, which is simplified using rules capturing the semantics of arithmetic, bit-wise, and relational operations, and (2) the synthesis of optimized blocks , which finds—by means of an efficient SMT encoding—basic blocks with minimal gas cost whose stack functional specification is equal (modulo commutativity) to the extracted one. We implemented our framework in the tool syrup 2.0 . Through large-scale experiments on real-world smart contracts, we analyze performance improvements for different SMT encodings, as well as tradeoffs between quality of optimizations and required optimization time.
Elvira Albert, Pablo Gordillo, Alejandro Hernández-Cerezo, Albert Rubio, Maria Anna Schett
ACM Trans. Softw. Eng. Methodol.5
2021 Embedding a Deterministic BFT Protocol in a Block DAG
abstract
This work formalizes the structure and protocols underlying recent distributed systems leveraging block DAGs, which are essentially encoding Lamport's happened-before relations between blocks, as their core network primitives. We then present an embedding of any deterministic Byzantine fault tolerant protocol ℘ to employ a block DAG for interpreting interactions between servers. Our main theorem proves that this embedding maintains all safety and liveness properties of ℘. Technically, our theorem is based on the insight that a block DAG merely acts as an efficient reliable point-to-point channel between instances of ℘ while also using ℘ for efficient message compression.
Maria Anna Schett, George Danezis
PODC1
2020 Synthesis of Super-Optimized Smart Contracts Using Max-SMT
abstract
With the advent of smart contracts that execute on the blockchain ecosystem, a new mode of reasoning is required for developers that must pay meticulous attention to the gas spent by their smart contracts, as well as for optimization tools that must be capable of effectively reducing the gas required by the smart contracts. Super-optimization is a technique which attempts to find the best translation of a block of code by trying all possible sequences of instructions that produce the same result. This paper presents a novel approach for super-optimization of smart contracts based on Max-SMT which is split into two main phases: (i) the extraction of a stack functional specification from the basic blocks of the smart contract, which is simplified using rules that capture the semantics of the arithmetic, bit-wise, relational operations, etc. (ii) the synthesis of optimized blocks which, by means of an efficient Max-SMT encoding, finds the bytecode blocks with minimal gas cost whose stack functional specification is equal (modulo commutativity) to the extracted one. Our experimental results are very promising: we are able to optimize 55.41 % of the blocks, and prove that 34.28 % were already optimal, for more than 61000 blocks from the most called 2500 Ethereum contracts.
Elvira Albert, Pablo Gordillo, Albert Rubio, Maria Anna Schett
CAV (1)4
2019 Deconstructing Stellar Consensus
abstract
Some of the recent blockchain proposals, such as Stellar and Ripple, allow for open membership while using quorum-like structures typical for classical Byzantine consensus with closed membership. This is achieved by constructing quorums in a decentralised way: each participant independently chooses whom to trust, and quorums arise from these individual decisions. Unfortunately, the consensus protocols underlying such blockchains are poorly understood, and their correctness has not been rigorously investigated. In this paper we rigorously prove correct the Stellar Consensus Protocol (SCP), with our proof giving insights into the protocol structure and its use of lower-level abstractions. To this end, we first propose an abstract version of SCP that uses as a black box Stellar’s federated voting primitive (analogous to reliable Byzantine broadcast), previously investigated by García-Pérez and Gotsman [Álvaro García-Pérez and Alexey Gotsman, 2018]. The abstract consensus protocol highlights a modular structure in Stellar and can be proved correct by reusing the previous results on federated voting. However, it is unsuited for realistic implementations, since its processes maintain infinite state. We thus establish a refinement between the abstract protocol and the concrete SCP that uses only finite state, thereby carrying over the result about the correctness of former to the latter. Our results help establish the theoretical foundations of decentralised blockchains like Stellar and gain confidence in their correctness.
Álvaro García-Pérez, Maria Anna Schett
OPODIS2