Design Patterns for Smart Contracts in the Ethereum Ecosystem

被引:60
作者
Woehrer, Maximilian [1 ]
Zdun, Uwe [1 ]
机构
[1] Univ Vienna, Fac Comp Sci, Wahringerstr 29, A-1090 Vienna, Austria
来源
IEEE 2018 INTERNATIONAL CONGRESS ON CYBERMATICS / 2018 IEEE CONFERENCES ON INTERNET OF THINGS, GREEN COMPUTING AND COMMUNICATIONS, CYBER, PHYSICAL AND SOCIAL COMPUTING, SMART DATA, BLOCKCHAIN, COMPUTER AND INFORMATION TECHNOLOGY | 2018年
关键词
D O I
10.1109/Cybermatics_2018.2018.00255
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The idea to digitally facilitate contract law and business practices through computer programs has led to the notion of smart contracts. Today's most prominent smart contract ecosystem is Ethereum, a blockchain based distributed computing platform. Due to the inherent nature of blockchain based contract execution, missing low level programming abstractions, and the constant evolution of platform features and security considerations, writing correct and secure smart contracts for Ethereum is a difficult task. Based on a Multivocal Literature Research and an analysis of the gathered data based on qualitative research methods, we mined a number of design patterns providing design guidelines. We describe those patterns in detail and provide exemplary code for better illustration. Our research shows that the patterns are widely used to address application requirements and common problems. We expect generalizability of some or all of the patterns for other smart contract ecosystems, but this is outside of the scope of this study, which studied only smart contract patterns in Ethereum.
引用
收藏
页码:1513 / 1520
页数:8
相关论文
共 16 条
[1]  
Alharby M., 2017, 4 INT C COMP SCI INF, DOI [10.5121/csit.2017.71011, DOI 10.5121/CSIT.2017.71011]
[2]  
[Anonymous], 2016, P 20 INT C EV ASS SO
[3]  
[Anonymous], 2017, ETHEREUM CONTRACT SE
[4]  
[Anonymous], 2000, PATTERN ORIENTED SOF
[5]  
[Anonymous], 1995, DESIGN PATTERNS ELEM
[6]  
[Anonymous], 2017, ARXIV170603700
[7]  
Bartoletti M., 2017, ARXIV170306322
[8]  
Bontje J., 2015, DAPP DESIGN PATTERNS
[9]  
cjgdev, 2016, SMART CONTR PATT WRI
[10]  
Garousi V., 2017, ARXIV170702553