Paper 2016/1156

Scripting smart contracts for distributed ledger technology

Pablo Lamela Seijas, Simon Thompson, and Darryl McAdams

Abstract

We give an overview of the scripting languages used in existing cryptocurrencies, and in particular we review in some detail the scripting languages of Bitcoin, Nxt and Ethereum, in the context of a high-level overview of Distributed Ledger Technology and cryptocurrencies. We survey different approaches, and give an overview of critiques of existing languages. We also cover technologies that might be used to underpin extensions and innovations in scripting and contracts, including technologies for verification, such as zero knowledge proofs, proof-carrying code and static analysis, as well as approaches to making systems more efficient, e.g. Merkelized Abstract Syntax Trees.

Note: Clarification of discussion of Nxt in section 4.

Metadata
Available format(s)
PDF
Category
Applications
Publication info
Preprint. MINOR revision.
Keywords
electronic commerce and paymentblockchainscripting languagecryptocurrencysmart contract
Contact author(s)
s j thompson @ kent ac uk
History
2017-02-10: revised
2016-12-21: received
See all versions
Short URL
https://ia.cr/2016/1156
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2016/1156,
      author = {Pablo Lamela Seijas and Simon Thompson and Darryl McAdams},
      title = {Scripting smart contracts for distributed ledger technology},
      howpublished = {Cryptology ePrint Archive, Paper 2016/1156},
      year = {2016},
      note = {\url{https://eprint.iacr.org/2016/1156}},
      url = {https://eprint.iacr.org/2016/1156}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.