Show simple item record

dc.contributor.authorMarmsoler, D
dc.contributor.authorBrucker, AD
dc.date.accessioned2021-10-18T10:19:53Z
dc.date.issued2021-12-03
dc.description.abstractSmart contracts are programs, usually automating legal agreements such as financial transactions. Thus, bugs in smart contracts can lead to large financial losses. For example, an incorrectly initialized contract was the root cause of the Parity Wallet bug that made USD 280mil worth of Ether inaccessible. Ether is the cryptocurrency of the Ethereum blockchain that uses Solidity for expressing smart contracts. In this paper, we address this problem by presenting an executable denotational semantics for Solidity in the interactive theorem prover Isabelle/HOL. This formal semantics builds the foundation of an interactive program verification environment for Solidity programs and allows for inspecting Solidity programs by (symbolic) execution. We combine the latter with grammar-based fuzzing to ensure that our formal semantics complies to the Solidity implementation on the Ethereum Blockchain. Finally, we demonstrate the formal verification of Solidity programs by two examples: constant folding and memory optimization.en_GB
dc.identifier.citationVol. 13085, pp. 403 - 422en_GB
dc.identifier.doi10.1007/978-3-030-92124-8_23
dc.identifier.urihttp://hdl.handle.net/10871/127493
dc.language.isoenen_GB
dc.publisherSpringer Verlagen_GB
dc.rights© Springer Nature Switzerland AG 2021
dc.subjectSolidityen_GB
dc.subjectDenotational Semanticsen_GB
dc.subjectIsabelle/HOLen_GB
dc.subjectGas Optimization.en_GB
dc.titleA Denotational Semantics of Solidity in Isabelle/HOLen_GB
dc.typeConference paperen_GB
dc.date.available2021-10-18T10:19:53Z
dc.contributor.editorCalinescu, Ren_GB
dc.contributor.editorPasareanu, Cen_GB
dc.identifier.issn0302-9743
exeter.place-of-publicationHeidelbergen_GB
dc.descriptionThis is the author accepted manuscript. The final version is available from Springer via the DOI in this recorden_GB
dc.descriptionAvailability. Our formalisation, the test framework, and the evaluation results are available under BSD license (SPDX-License-Identifier: BSD-2-Clause) [24].en_GB
dc.descriptionSEFM 2021: 19th International Conference on Software Engineering and Formal Methods, 6-10 December 2021en_GB
dc.identifier.journalLecture Notes in Computer Scienceen_GB
dc.rights.urihttp://www.rioxx.net/licenses/all-rights-reserveden_GB
dcterms.dateAccepted2021
rioxxterms.versionAMen_GB
rioxxterms.licenseref.startdate2021-10-18
rioxxterms.typeConference Paper/Proceeding/Abstracten_GB
refterms.dateFCD2021-10-18T10:18:25Z
refterms.versionFCDAM
refterms.dateFOA2022-01-07T12:17:01Z
refterms.panelBen_GB


Files in this item

This item appears in the following Collection(s)

Show simple item record