Demystifying Loops in Smart Contracts
This paper aims to shed light on how loops are used in smart contracts. Towards this goal, we study various syntactic and semantic characteristics of loops used in over 20,000 Solidity contracts deployed on the Ethereum blockchain, with the goal of informing future research on program analysis for s...
Gespeichert in:
| Veröffentlicht in: | 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE) S. 262 - 274 |
|---|---|
| Hauptverfasser: | , , , , |
| Format: | Tagungsbericht |
| Sprache: | Englisch |
| Veröffentlicht: |
ACM
01.09.2020
|
| Schlagworte: | |
| ISSN: | 2643-1572 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | This paper aims to shed light on how loops are used in smart contracts. Towards this goal, we study various syntactic and semantic characteristics of loops used in over 20,000 Solidity contracts deployed on the Ethereum blockchain, with the goal of informing future research on program analysis for smart contracts. Based on our findings, we propose a small domain-specific language (DSL) that can be used to summarize common looping patterns in Solidity. To evaluate what percentage of smart contract loops can be expressed in our proposed DSL, we also design and implement a program synthesis toolchain called Solis that can synthesize loop summaries in our DSL. Our evaluation shows that at least 56% of the analyzed loops can be summarized in our DSL, and 81% of these summaries are exactly equivalent to the original loop. |
|---|---|
| AbstractList | This paper aims to shed light on how loops are used in smart contracts. Towards this goal, we study various syntactic and semantic characteristics of loops used in over 20,000 Solidity contracts deployed on the Ethereum blockchain, with the goal of informing future research on program analysis for smart contracts. Based on our findings, we propose a small domain-specific language (DSL) that can be used to summarize common looping patterns in Solidity. To evaluate what percentage of smart contract loops can be expressed in our proposed DSL, we also design and implement a program synthesis toolchain called Solis that can synthesize loop summaries in our DSL. Our evaluation shows that at least 56% of the analyzed loops can be summarized in our DSL, and 81% of these summaries are exactly equivalent to the original loop. |
| Author | Feng, Yu Dillig, Isil Chen, Yanju Lahiri, Shuvendu K. Mariano, Benjamin |
| Author_xml | – sequence: 1 givenname: Benjamin surname: Mariano fullname: Mariano, Benjamin email: bmariano@cs.utexas.edu organization: University of Texas at Austin – sequence: 2 givenname: Yanju surname: Chen fullname: Chen, Yanju email: yanju@cs.ucsb.edu organization: University of California,Santa,Barbara – sequence: 3 givenname: Yu surname: Feng fullname: Feng, Yu email: yufeng@cs.ucsb.edu organization: University of California,Santa,Barbara – sequence: 4 givenname: Shuvendu K. surname: Lahiri fullname: Lahiri, Shuvendu K. email: shuvendu.lahiri@mircrosoft.com organization: Microsoft Research – sequence: 5 givenname: Isil surname: Dillig fullname: Dillig, Isil email: isil@cs.utexas.edu organization: University of Texas at Austin |
| BookMark | eNotjjtPwzAUhQ0CibZ0ZmDJwpjW9vXjZkShPKRIHYC5uq4dZESdKvaSf08kmI6OvqNPZ8mu0pACY3eCb4RQegsgFaLagBLGSHPB1o3FGXAw1qC6ZAtpFNRCW3nDljl_c67nYhfs4SmcplxiP8X0VXXDcM5VTNX7icZStUMqIx1LvmXXPf3ksP7PFft83n20r3W3f3lrH7uaJGKpHXptHZEw0DdEOngE4l5Z7mQIQXMCedTIFRpyilB6ECJ40OSECyRhxe7_vHGeH85jnG9Mh0ai4RzhF3ciQUg |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IL CBEJK RIE RIL |
| DOI | 10.1145/3324884.3416626 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Xplore POP ALL IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP All) 1998-Present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE/IET Electronic Library (IEL) (UW System Shared) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9781450367684 1450367682 |
| EISSN | 2643-1572 |
| EndPage | 274 |
| ExternalDocumentID | 9286008 |
| Genre | orig-research |
| GrantInformation_xml | – fundername: NSF grantid: 1908494,1811865,1762299 funderid: 10.13039/100000001 |
| GroupedDBID | 29I 6IE 6IF 6IH 6IK 6IL 6IM 6IN 6J9 AAJGR AAWTH ABLEC ACREN ADYOE ADZIZ AFYQB ALMA_UNASSIGNED_HOLDINGS AMTXH APO BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO IEGSK IPLJI M43 OCL RIE RIL |
| ID | FETCH-LOGICAL-a288t-b8d57baa163f9aa5ed83a0d470b2eee50a32c580486ab4a82d311ed35ab1bea23 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 22 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000651313500024&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| IngestDate | Wed Aug 27 02:33:27 EDT 2025 |
| IsDoiOpenAccess | false |
| IsOpenAccess | true |
| IsPeerReviewed | false |
| IsScholarly | true |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-a288t-b8d57baa163f9aa5ed83a0d470b2eee50a32c580486ab4a82d311ed35ab1bea23 |
| OpenAccessLink | https://dl.acm.org/doi/pdf/10.1145/3324884.3416626 |
| PageCount | 13 |
| ParticipantIDs | ieee_primary_9286008 |
| PublicationCentury | 2000 |
| PublicationDate | 2020-Sept. |
| PublicationDateYYYYMMDD | 2020-09-01 |
| PublicationDate_xml | – month: 09 year: 2020 text: 2020-Sept. |
| PublicationDecade | 2020 |
| PublicationTitle | 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE) |
| PublicationTitleAbbrev | ASE |
| PublicationYear | 2020 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| SSID | ssj0051577 ssj0002871035 |
| Score | 2.307203 |
| Snippet | This paper aims to shed light on how loops are used in smart contracts. Towards this goal, we study various syntactic and semantic characteristics of loops... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 262 |
| SubjectTerms | Blockchain Domain specific languages DSL loop summarization program synthesis Semantics Smart contracts Software engineering Syntactics |
| Title | Demystifying Loops in Smart Contracts |
| URI | https://ieeexplore.ieee.org/document/9286008 |
| WOSCitedRecordID | wos000651313500024&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV07T8MwELZKxcBUoEW85QE23MaPxPYMVAxVVYmHulV2fJE6NKn6kvj32G4IDCxslief7fOd7-77DqE7raFIE2MJ5zonwgpHbGEY0cyGrJulPPIWfIzkeKymUz1poYcGCwMAsfgM-mEYc_muyrchVDbQTGUR2XsgpdxjtZp4SvD8E964vt5MS1lT-VCRDrh3HJQSff9oZ1lgUvjVSyWakmHnf4s4Rr0fTB6eNNbmBLWgPEWd76YMuNbRLrp_gsWn19uIX8Kjqlqu8bzErwt_R3DgogqwqHUPvQ-f3x5fSN0LgRim1IZY5VJpjfHuU6GNScEpbhInZGKZX6Lfbs7yVAUCPWOFUcxxSsHx1FhqwTB-htplVcI5wjkVlqvCaWeESCBTtOCZLbi31lQDdReoG6SeLfd0F7Na4Mu_p6_QEQtf0Fh2dY3am9UWbtBhvtvM16vbeEZfOu2RFA |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV07T8MwED5VBQmmAi3iTQbYSBu_EnsGqiJCVYmCulV27EgdmlR9IPHvsd0QGFjYLE8-2-c73933HcCNECZnkVQhISILqaI6VLnEocDKZd0UIp634D1NhkM-mYhRA-5qLIwxxhefma4b-ly-LrONC5X1BOaxR_buMEox2qK16oiK8_0jUju_1lAnSUXmgyjrEes6cE679tmOY8el8Kubijcm_db_lnEAnR9UXjCq7c0hNExxBK3vtgxBpaVtuH0w80-ruR7BFKRluVgFsyJ4ndtbEjg2KgeMWnXgrf84vh-EVTeEUGLO16HimiVKSutA5UJKZjQnMtI0iRS2S7QbTnDGuKPQk4pKjjVByGjCpELKSEyOoVmUhTmBIENUEZ5roSWlkYk5ykmscmLtNRIG6VNoO6mniy3hxbQS-Ozv6WvYG4xf0mn6NHw-h33sPqS-COsCmuvlxlzCbvaxnq2WV_68vgD7GpRb |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2020+35th+IEEE%2FACM+International+Conference+on+Automated+Software+Engineering+%28ASE%29&rft.atitle=Demystifying+Loops+in+Smart+Contracts&rft.au=Mariano%2C+Benjamin&rft.au=Chen%2C+Yanju&rft.au=Feng%2C+Yu&rft.au=Lahiri%2C+Shuvendu+K.&rft.date=2020-09-01&rft.pub=ACM&rft.eissn=2643-1572&rft.spage=262&rft.epage=274&rft_id=info:doi/10.1145%2F3324884.3416626&rft.externalDocID=9286008 |