Typing Fallback Functions : A Semantic Approach to Type Safe Smart Contracts

Dagsetning

Höfundar


Journal Title

Journal ISSN

Volume Title

Útgefandi

Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing

Útdráttur

This paper develops semantic typing in a smart-contract setting to ensure type safety of code that uses statically untypable language constructs, such as the fallback function. The idea is that the creator of a contract on the blockchain equips code containing such constructs with a formal proof of its type safety, given in terms of the semantics of types. Then, a user of the contract only needs to check the validity of the provided “proof certificate” of type safety. This is a form of proof-carrying code, which naturally fits with the immutable nature of the blockchain environment. As a concrete application of our approach, we focus on ensuring information flow control and non-interference for TinySol, a distilled version of the Solidity language, through security types. We provide the semantics of types in terms of a typed operational semantics of TinySol and we express the proofs of safety as coinductively-defined typing interpretations, which can be represented compactly via up-to techniques, similar to those used for bisimilarity. We also show how our machinery can be used to type the typical pointer-to-implementation pattern based on the fallback function and to reject a distilled version of the infamous Parity Multisig Wallet Attack.

Lýsing

Publisher Copyright: © Stian Lybech, Daniele Gorla, and Luca Aceto.

Efnisorð

information flow control, non-interference, semantic typing, smart contracts, Software

Citation

Lybech, S, Gorla, D & Aceto, L 2026, Typing Fallback Functions : A Semantic Approach to Type Safe Smart Contracts. in R Krebbers & A Silva (eds), 40th European Conference on Object-Oriented Programming, ECOOP 2026., 19, Leibniz International Proceedings in Informatics, LIPIcs, vol. 372, Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing, 40th European Conference on Object-Oriented Programming, ECOOP 2026, Brussels, Belgium, 29/06/26. https://doi.org/10.4230/LIPIcs.ECOOP.2026.19
conference