Native Custom Tokens in the Extended UTXO Model

被引:7
作者
Chakravarty, Manuel M. T. [1 ]
Chapman, James [2 ]
MacKenzie, Kenneth [3 ]
Melkonian, Orestis [3 ,7 ]
Mueller, Jann [4 ]
Jones, Michael Peyton [5 ]
Vinogradova, Polina [6 ]
Wadler, Philip [3 ,7 ]
机构
[1] IOHK, Utrecht, Netherlands
[2] IOHK, Glasgow, Lanark, Scotland
[3] IOHK, Edinburgh, Midlothian, Scotland
[4] IOHK, Mannheim, Germany
[5] IOHK, London, England
[6] IOHK, Ottawa, ON, Canada
[7] Univ Edinburgh, Edinburgh, Midlothian, Scotland
来源
LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION AND VALIDATION: APPLICATIONS, ISOLA 2020, PT III | 2020年 / 12478卷
关键词
Blockchain; UTXO; Tokens; Functional programming; State machines; Bisimulation;
D O I
10.1007/978-3-030-61467-6_7
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
User-defined tokens-both fungible ERC-20 and non-fungible ERC-721 tokens-are central to the majority of contracts deployed on Ethereum. User-defined tokens are non-native on Ethereum; i.e., they are not directly supported by the ledger, but require custom code. This makes them unnecessarily inefficient, expensive, and complex. The Extended UTXO Model (EUTXO) [5] has been introduced as a generalisation of Bitcoin-style UTXO ledgers, allowing support of more expressive smart contracts, approaching the functionality available to contracts on Ethereum. Specifically, a bisimulation argument established a formal relationship between the EUTXO ledger and a general form of state machines. Nevertheless, transaction outputs in the EUTXO model lock integral quantities of a single native cryptocurrency only, just like Bitcoin. In this paper, we study a generalisation of the EUTXO ledger model with native user-defined tokens. Following the approach proposed in a companion paper [4] for the simpler case of plain Bitcoin-style UTXO ledgers, we generalise transaction outputs to lock not merely coins of a single cryptocurrency, but entire token bundles, including custom tokens whose forging is controlled by forging policy scripts. We show that this leads to a rich ledger model that supports a broad range of interesting use cases. Our main technical contribution is a formalisation of the multi-asset EUTXO ledger in Agda, which we use to establish that the ledger with custom tokens is strictly more expressive than the original EUTXO ledger. In particular, we state and prove a transfer result for inductive and temporal properties from state machines to the multi-asset EUTXO ledger, which was out of scope for the single-currency EUTXO ledger. In practical terms, the resulting system is the basis for the smart contract system of the Cardano blockchain.
引用
收藏
页码:89 / 111
页数:23
相关论文
共 18 条
[1]  
[Anonymous], 1999, Communicating and mobile systems-the Pi-calculus
[2]   Developing Secure Bitcoin Contracts with BitML [J].
Atzei, Nicola ;
Bartoletti, Massimo ;
Lande, Stefano ;
Yoshida, Nobuko ;
Zunino, Roberto .
ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, :1124-1128
[3]  
Baier C, 2008, PRINCIPLES OF MODEL CHECKING, P1
[4]   BitML: A Calculus for Bitcoin Smart Contracts [J].
Bartoletti, Massimo ;
Zunino, Roberto .
PROCEEDINGS OF THE 2018 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (CCS'18), 2018, :83-100
[5]  
Chakravarty M.M.T., 2020, Technical report
[6]   The Extended UTXO Model [J].
Chakravarty, Manuel M. T. ;
Chapman, James ;
MacKenzie, Kenneth ;
Melkonian, Orestis ;
Jones, Michael Peyton ;
Wadler, Philip .
FINANCIAL CRYPTOGRAPHY AND DATA SECURITY, FC 2020, 2020, 12063 :525-539
[7]   UTXOma: UTXO with Multi-asset Support [J].
Chakravarty, Manuel M. T. ;
Chapman, James ;
MacKenzie, Kenneth ;
Melkonian, Orestis ;
Mueller, Jann ;
Jones, Michael Peyton ;
Vinogradova, Polina ;
Wadler, Philip ;
Zahnentferner, Joachim .
LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION AND VALIDATION: APPLICATIONS, ISOLA 2020, PT III, 2020, 12478 :112-130
[8]  
Entriken William, 2018, ERC-721: Non-Fungible Token Standard
[9]  
Kroger F., 2008, Temporal Logic and State Systems, DOI [10.1007/978-3-540-68635-4, DOI 10.1007/978-3-540-68635-4]
[10]  
Maker Team, 2017, The Dai stablecoin system: Whitepaper