May 17, 2022
Gordon Pace
Smart contracts running on blockchains have been hailed as trustless platforms for carrying out agreements between parties without the risk of interference by the parties themselves or others. The immutability of such agreements is assumed to be a desirable feature, that is until the first bugs appear. In this talk, I will present ongoing work in building runtime verification tools for smart contracts, with a particular focus on recovery from discovered errors. In particular, I will discuss the use of runtime verification for smart contracts to handle (i) immutable specifications for mutable smart contracts; and (ii) recovery through smart contract design as long-lived transaction engines.