Misplaced Pages

Smart contract: Difference between revisions

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
Browse history interactively← Previous editContent deleted Content addedVisualWikitext
Revision as of 16:55, 6 March 2018 view source82.132.219.126 (talk)No edit summaryTags: Visual edit Mobile edit Mobile web edit← Previous edit Latest revision as of 17:08, 3 January 2025 view source Yoshimatu (talk | contribs)11 edits Proposed minor solution to the clarification issue 
(376 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{About|contractual transactions on a decentralized platform|smart legal contracts|Smart legal contract}}
{{Multiple issues|
{{Short description|Contractual transaction on a decentralized platform}}
{{Original research|date=December 2016}}
{{pp-semi|small=yes}}
{{Confusing|date=November 2016}}
A '''smart contract''' is a ] or a ] that is intended to automatically execute, control or document events and actions according to the terms of a ] or an agreement.<ref name=infobus>{{cite book |last1=Röscheisen |first1=Martin |last2=Baldonado |first2=Michelle |last3=Chang |first3=Kevin |last4=Gravano |first4=Luis |last5=Ketchpel |first5=Steven |last6=Paepcke |first6=Andreas |title=Digital Libraries in Computer Science: The MeDoc Approach |chapter=The Stanford InfoBus and its service layers: Augmenting the internet with higher-level information management protocols |series=Lecture Notes in Computer Science |date=1998 |volume=1392 |pages=213–230 |doi=10.1007/bfb0052526 |publisher=Springer |isbn=978-3-540-64493-4 |language=en}}</ref><ref name=conbook>{{cite book |last1=Fries |first1=Martin |last2=P. Paal |first2=Boris |title=Smart Contracts |year=2019 |publisher=Mohr Siebeck |jstor=j.ctvn96h9r |isbn=978-3-16-156911-1 |language=de}}</ref><ref name=savel>{{cite web |last1=Savelyev |first1=Alexander |title=Contract Law 2.0: "Smart" Contracts As the Beginning of the End of Classic Contract Law |date=14 December 2016 |publisher=Social Science Research Network |ssrn=2885241 |language=en |url=https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2885241 |access-date=24 May 2020 |archive-date=24 March 2020 |archive-url=https://web.archive.org/web/20200324141259/https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2885241 |url-status=live }}</ref><ref name="tapscott2016">{{cite book|title=The Blockchain Revolution: How the Technology Behind Bitcoin is Changing Money, Business, and the World|last1=Tapscott|first1=Don|last2=Tapscott|first2=Alex|date=May 2016|isbn=978-0670069972|pages=72, 83, 101, 127|publisher=Portfolio/Penguin |author-link=Don Tapscott}}<!--|access-date=2016-07-3 per copy of book in hand; do not have a URL link --></ref> The objectives of smart contracts are the reduction of need for trusted intermediators, arbitration costs, and fraud losses, as well as the reduction of malicious and accidental exceptions.<ref>{{cite journal |last1=Szabo |first1=Nick |author-link1=Nick Szabo |title=View of Formalizing and Securing Relationships on Public Networks {{!}} First Monday |journal=First Monday |date=1997 |doi=10.5210/fm.v2i9.548 |s2cid=33773111 |url=https://firstmonday.org/article/view/548/469 |doi-access=free |access-date=2020-05-24 |archive-date=2022-04-10 |archive-url=https://web.archive.org/web/20220410235953/https://firstmonday.org/article/view/548/469 |url-status=dead }}</ref><ref name=conbook/> Smart contracts are commonly associated with ], and the smart contracts introduced by ] are generally considered a fundamental building block for ] (DeFi) and ] (NFT) applications.<ref>{{Cite journal |last1=Zhou |first1=Haozhe |last2=Milani Fard |first2=Amin |last3=Makanju |first3=Adetokunbo |date=2022-05-27 |title=The State of Ethereum Smart Contracts Security: Vulnerabilities, Countermeasures, and Tool Support |journal=Journal of Cybersecurity and Privacy |language=en |volume=2 |issue=2 |pages=358–378 |doi=10.3390/jcp2020019 |issn=2624-800X|doi-access=free }}</ref><ref>{{cite web |title=All You Need to Know About NFT Smart Contracts |url=https://www.binance.com/en/blog/nft/all-you-need-to-know-about-nft-smart-contracts-568745413587703085 |website=Binance.com |publisher=Binance |access-date=26 September 2022 |archive-date=26 September 2022 |archive-url=https://web.archive.org/web/20220926223836/https://www.binance.com/en/blog/nft/all-you-need-to-know-about-nft-smart-contracts-568745413587703085 |url-status=live }}</ref>
}}
A '''smart contract''' is a self-executing contractual state, stored on the ]. These computer protocols are intended to digitally facilitate, verify, or enforce the negotiation or performance of a ]: while a standard contract outlines the terms governing a relationship that are enforceable by law, smart contracts enforce the contractual relationship with cryptographic code. Smart contracts allow the performance of credible transactions without third parties: because they exist within decentralized network, once a smart contract is executed no party can alter its code or interfere with its execution. Because smart contracts are trackable and irreversible, all parties are bound to an agreement as executed, meaning trust in any one party is not required.<ref>{{cite news|title=Smart Contracts, Explained|url=https://cointelegraph.com/explained/smart-contracts-explained|agency=Cointelegraph|date=31 October 2017}}</ref><ref>{{Cite web|url=http://smartcontract.com/|title=Smart Contracts are self-executing contractual states, stored on the blockchain.|website=smartcontract.com|access-date=2018-03-06}}</ref> While smart contracts were first proposed by ], who coined the term, in 1994,<ref name=":2">{{Cite web|url=http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html|title=Nick Szabo -- Smart Contracts: Building Blocks for Digital Markets|website=www.fon.hum.uva.nl|access-date=2017-07-29}}</ref> they have only recently come into use with the advent of ] and ].


The original ] ] by ] in 2014<ref name="buterin">{{cite web |url=https://github.com/ethereum/wiki/White-Paper |title=White Paper· ethereum/wiki Wiki · GitHub |website=] |url-status=live |archive-url=https://web.archive.org/web/20140111180823/http://ethereum.org/ethereum.html |archive-date=11 January 2014 }}</ref> describes the ] as a weak version of the smart contract concept as originally defined by ], and proposed a stronger version based on the ] language, which is ]. Since then, various cryptocurrencies have supported ]s which allow for more advanced smart contracts between untrusted parties.<ref>{{cite journal |last1=Alharby |first1=Maher |last2=van Moorsel |first2=Aad |title=Blockchain-based Smart Contracts: A Systematic Mapping Study |journal=Computer Science & Information Technology |date=26 August 2017 |pages=125–140 |doi=10.5121/csit.2017.71011 |arxiv=1710.06372 |isbn=9781921987700 |s2cid=725413 }}</ref>
Proponents of smart contracts claim that many kinds of contractual clauses may be made partially or fully self-executing, self-enforcing, or both. The aim of smart contracts is to provide security that is superior to traditional contract law and to reduce other ] associated with contracting. Smart contracts are an example of an ].


A smart contract should not be confused with a ], which refers to a traditional, natural-language, legally-binding agreement that has selected terms expressed and implemented in machine-readable code.<ref name=erpl201812/><ref name=jit202008/><ref name=jit202009/>
==History==
The phrase "smart contracts" was coined by computer scientist ] in 1996, and reworked over several years. Szabo's first publication, "Smart Contracts: Building Blocks for Digital Free Markets" was published in Extropy #16,<ref>{{Cite news|url=https://archive.is/zWbhL#selection-607.412-607.469|title=Extropy Institute Resources|date=2013-11-15|work=archive.is|access-date=2017-07-29}}</ref> and then later reworked as "Formalizing and Securing Relationships on Public Networks."<ref name=":4">{{Cite journal|last=Szabo|first=Nick|date=1997-09-01|title=Formalizing and Securing Relationships on Public Networks|url=http://firstmonday.org/ojs/index.php/fm/article/view/548|journal=First Monday|volume=2|issue=9}}</ref> These documents described how it would be possible to establish contract law and related business practices through the design of ] protocols, between strangers on the Internet. In 1996 Szabo described smart contracts as follows: <blockquote>New institutions, and new ways to formalize the relationships that make up these institutions, are now made possible by the digital revolution. I call these new contracts "smart", because they are far more functional than their inanimate paper-based ancestors. No use of artificial intelligence is implied. A smart contract is a set of promises, specified in digital form, including protocols within which the parties perform on these promises.<ref name=":2" /></blockquote>Szabo, inspired by researchers like ], also had a broader expectation that specification through clear logic, and verification or enforcement through ] and other digital security mechanisms, might constitute a sharp improvement over traditional contract law, even for some traditional kinds of contractual clauses (such as automobile security interests that provide for repossession) that could be brought under the dominion of computer protocols.<ref name=":4" />


==Etymology==
With the present implementations, based on ],<ref>{{cite web|last1=Stafford|first1=Philip|last2=Murphy|first2=Hannah|title=Has the blockchain hype finally peaked?|url=https://www.ft.com/content/5e48f9ec-b651-11e6-ba85-95d1533d9a62|website=ft.com|publisher=Financial Times|accessdate=1 June 2017}}</ref> "smart contract" is mostly used more specifically in the sense of general purpose computation that takes place on a blockchain or distributed ledger. In this interpretation, used for example by the Ethereum Foundation<ref name=":3">{{cite web|last1=Buterin|first1=Vitalik|title=Ethereum Whitepaper|url=https://github.com/ethereum/wiki/White-Paper/f18902f4e7fb21dc92b37e8a0963eec4b3f4793a|website=github|accessdate=1 June 2017}}</ref> or IBM<ref>{{cite web|last1=Cachin|first1=Christian|title=Architecture of the Hyperledger Blockchain Fabric|url=https://www.zurich.ibm.com/dccl/papers/cachin_dccl.pdf|website=ibm.com}}</ref>, a smart contract is not necessarily related to the classical concept of a contract, but can be any kind of computer program.
By 1996, ] was using the term "smart contract" to refer to contracts which would be enforced by physical property (such as hardware or software) instead of by law. Szabo described ]s as an example of this concept.<ref>{{cite web |url=http://fortune.com/2014/01/21/bitcoin-is-not-just-digital-currency-its-napster-for-finance/ |title=Bitcoin is not just digital currency. It's Napster for finance |last=Morris |first=David Z. |date=21 January 2014 |website=] |access-date=7 November 2018 |archive-date=20 October 2014 |archive-url=https://web.archive.org/web/20141020170036/http://fortune.com/2014/01/21/bitcoin-is-not-just-digital-currency-its-napster-for-finance/ |url-status=live }}</ref><ref>{{cite web |url=http://arno.uvt.nl/show.cgi?fid=146860 |title=Smart contracts in the Netherlands - University of Tilburg |last=Schulpen |first=Ruben R.W.H.G. |date=1 August 2018 |website=uvt.nl |publisher=Twente University |access-date=26 October 2019 |archive-date=19 February 2021 |archive-url=https://web.archive.org/web/20210219033925/http://arno.uvt.nl/show.cgi?fid=146860 |url-status=live }}</ref> In 1998, the term was used to describe objects in ] of the system ''The Stanford Infobus'', which was a part of ].<ref name=infobus/>


==Legal status of smart contracts==
== The Oracle Problem ==
{{See also|Regulation of algorithms|distributed ledger technology law}}
A major limitation of smart contracts is that they are unable to communicate with resources external to the blockchain they are secured on. In practice, this means that smart contracts, on their own, are not able to trigger based on real-life events. It is for this reason that the application of smart contracts has, so far, been mostly confined to cryptocurrency.<ref name=":5" />
A ''smart contract'' does not typically constitute a valid binding agreement at law<!-- "at law" means under the established law of a nation state or other jurisdiction -->.<ref name=jcl201912/> Proposals exist to regulate smart contracts.<ref name=erpl201812>{{cite journal |last1=Cannarsa |first1=Michel |title=Interpretation of Contracts and Smart Contracts: Smart Interpretation or Interpretation of Smart Contracts? |journal=European Review of Private Law |date=1 December 2018 |volume=26 |issue=6 |pages=773–785 |doi=10.54648/ERPL2018054 |s2cid=188017977 |url=https://kluwerlawonline.com/journalarticle/European+Review+of+Private+Law/26.6/ERPL2018054 |language=en |access-date=20 September 2020 |archive-date=10 August 2020 |archive-url=https://web.archive.org/web/20200810045525/https://kluwerlawonline.com/journalarticle/European+Review+of+Private+Law/26.6/ERPL2018054 |url-status=live }}</ref><ref name=jit202008>{{cite journal |last1=Drummer |first1=Daniel |last2=Neumann |first2=Dirk |title=Is code law? Current legal and technical adoption issues and remedies for blockchain-enabled smart contracts |journal=Journal of Information Technology |date=5 August 2020 |volume=35 |issue=4 |pages=337–360 |doi=10.1177/0268396220924669 |s2cid=225409384 |url=https://journals.sagepub.com/doi/abs/10.1177/0268396220924669 |language=en |issn=0268-3962 |access-date=20 September 2020 |archive-date=9 March 2021 |archive-url=https://web.archive.org/web/20210309234557/https://journals.sagepub.com/doi/abs/10.1177/0268396220924669 |url-status=live }}</ref><ref name=jit202009>{{cite journal |last1=Filatova |first1=Nataliia |title=Smart contracts from the contract law perspective: outlining new regulative strategies |journal=International Journal of Law and Information Technology |date=1 September 2020 |volume=28 |issue=3 |pages=217–242 |doi=10.1093/ijlit/eaaa015 |url=https://academic.oup.com/ijlit/article-abstract/28/3/217/5897086 |language=en |issn=0967-0769 |access-date=20 September 2020 |archive-date=18 January 2022 |archive-url=https://web.archive.org/web/20220118115800/https://academic.oup.com/ijlit/article-abstract/28/3/217/5897086 |url-status=live }}</ref>


Smart contracts are not legal agreements, but instead transactions which are executed automatically by a ] or a ],<ref name=jcl201912>Mik, Eliza, Smart Contracts: A Requiem (December 7, 2019). Journal of Contract Law (2019) Volume 36 Part 1 at p 72</ref> such as technological means for the automation of payment obligations<ref>J Cieplak, S Leefatt, ‘Smart Contracts: A Smart Way To Automate Performance’ (2017) 1 Georgia L & Tech Rev 417</ref> such as by transferring cryptocurrencies or other tokens. Some scholars have argued that the imperative or declarative nature of programming languages would impact the legal validity of smart contracts.<ref name=ail2018issue4>{{cite journal|last1=Governatori|first1=Guido|last2=Idelberger|first2=Florian|last3=Milosevic|first3=Zoran|last4=Riveret|first4=Regis|last5=Sartor|first5=Giovanni|last6=Xu|first6=Xiwei|title=On legal contracts, imperative and declarative smart contracts, and blockchain systems|journal=Artificial Intelligence and Law|year=2018|volume=26|issue=4|pages=33|language=en|doi=10.1007/s10506-018-9223-3|s2cid=3663005}}</ref>
In order for smart contracts to be able to receive and act on off-chain data, such as web ], they require a piece of blockchain middleware known as an oracle. This limiting factor in smart contract usability is known as "the oracle problem", after ]s. Oracles provide external data and submit this to a blockchain in order to trigger smart contract executions when pre-defined conditions are met, providing connectivity to the outside world<ref name=":5">Chainlink: A Decentralized Oracle Network</ref>.


Since the 2015 launch of the ] ], the term "smart contract" has been applied to general purpose computation that takes place on a blockchain. The US National Institute of Standards and Technology describes a "smart contract" as a "collection of code and data (sometimes referred to as functions and state) that is deployed using cryptographically signed transactions on the blockchain network".<ref>D J Yaga et al., Blockchain Technology Overview, National Institute of Standards and Technology Internal/Interagency Report 8202, 2018, p 54, cited in Mik, Eliza, Smart Contracts: A Requiem (December 7, 2019). Journal of Contract Law (2019) Volume 36 Part 1 at p 71</ref> In this interpretation a smart contract is any kind of computer program which uses a blockchain. A smart contract also can be regarded as a secured ], as its execution and codified effects (like the transfer of tokens between parties) cannot be manipulated without modifying the blockchain itself. In this interpretation, the execution of contracts is controlled and audited by the platform, not by arbitrary server-side programs connecting to the platform.<ref>{{cite journal|first1=Hoang Tam|last1=Vo|first2=Ashish|last2=Kundu|first3=Mukesh|last3=Mohania|title=Research Directions in Blockchain Data Management and Analytics|url=https://openproceedings.org/2018/conf/edbt/paper-227.pdf|journal=Advances in Database Technology - Extending Database Technology (EDBT)|volume=21|year=2018|publisher=OpenProceedings|quote=Some distributed ledger technologies support an additional capability called a smart contract, which is similar to the concept of stored procedure in classical relational databases to some extent. Smart contracts allow the shared business processes within a business network to be standardised, automated and enforced via computer programs to increase the integrity of the ledger.|page=446|access-date=2019-10-02|archive-date=2019-10-02|archive-url=https://web.archive.org/web/20191002034850/https://openproceedings.org/2018/conf/edbt/paper-227.pdf|url-status=live}}</ref><ref>{{cite journal |first1=Steve|last1=Huckle|first2=Rituparna|last2=Bhattacharya|first3=Martin|last3=White|first4=Natalia|last4=Beloff|journal=Procedia Computer Science|volume=98|year=2016|title=Internet of Things, Blockchain and Shared Economy Applications |publisher=Elsevier B.V. |quote=Firstly, that total quantity of BTC in a transaction's inputs must cover the total number of BTC in the outputs. That rule behaves similarly to a database stored procedure, except that it is impossible to circumvent. Secondly, BTC transactions use public-private key cryptography. That makes BTC act like a database with a publicly auditable per-row permission scheme.|page=463|doi=10.1016/j.procs.2016.09.074|doi-access=free}}</ref>
=== Types of oracle ===
Because smart contracts may be self-executing based on certain conditions, it is essential that oracles provide accurate and trustworthy information. There are two main approaches to this:
* '''Centralized oracles''' are third party services with a central point of control. Centralized oracles verify that their data are trustworthy through notarization or the manual human input of data. However, centralised oracles have several disadvantages. First, by having a central point of control, they also have a single point of failure. Second, those relying on manual input of data would not be able to provide real-time data feeds.
* '''Decentralized oracle networks''' are based on blockchain technology. Decentralization limits the trust in any central party<ref name=":5" />.


In 2018, a ] report said: "While smart contracts might sound new, the concept is rooted in basic contract law. Usually, the judicial system adjudicates contractual disputes and enforces terms, but it is also common to have another arbitration method, especially for international transactions. With smart contracts, a program enforces the contract built into the code."<ref name=usSenate201803> {{Webarchive|url=https://web.archive.org/web/20200514100431/https://www.jec.senate.gov/public/_cache/files/aaac3a69-e9fb-45b6-be9f-b1fd96dd738b/chapter-9-building-a-secure-future-one-blockchain-at-a-time.pdf |date=2020-05-14 }}, ] ], March 2018.</ref> States in the US which have passed legislation on the use of smart contracts include Arizona,<ref>{{cite web|url=https://legiscan.com/AZ/text/HB2417/id/1588180|title=Arizona HB2417 - 2017 - Fifty-third Legislature 1st Regular|website=LegiScan|access-date=2020-09-16|archive-date=2017-04-28|archive-url=https://web.archive.org/web/20170428221018/https://legiscan.com/AZ/text/HB2417/id/1588180|url-status=live}}</ref> Iowa,<ref>{{Cite web|title=Iowa House approves bills to facilitate broadband, cryptocurrency|url=https://www.thegazette.com/government-politics/iowa-house-approves-bills-to-facilitate-broadband-cryptocurrency/|access-date=2021-04-15|website=www.thegazette.com|language=en-US|archive-date=2021-04-15|archive-url=https://web.archive.org/web/20210415212617/https://www.thegazette.com/government-politics/iowa-house-approves-bills-to-facilitate-broadband-cryptocurrency/|url-status=live}}</ref> Nevada,<ref>Hyman Gayle M, Digesti, Matthew P {{Webarchive|url=https://web.archive.org/web/20180910211704/https://www.nvbar.org/wp-content/uploads/NevadaLawyer_Aug2017_Blockchain-1.pdf |date=2018-09-10 }} August 2017, Nevada Lawyer</ref> Tennessee,<ref>{{cite web|last=Tom|first=Daniel|date=22 September 2020|title=Smart Contract Bill Tennessee|url=http://www.capitol.tn.gov/Bills/110/Bill/SB1662.pdf|access-date=22 September 2020|archive-date=2 October 2020|archive-url=https://web.archive.org/web/20201002001659/http://www.capitol.tn.gov/Bills/110/Bill/SB1662.pdf|url-status=live}}</ref> and Wyoming.<ref>{{Cite web|last=Wyoming|first=Legislature|date=26 February 2019|title=Wyoming - Smart Contract|url=https://wyoleg.gov/Legislation/2019/sf0125|access-date=26 September 2020|archive-date=28 January 2019|archive-url=https://web.archive.org/web/20190128120631/https://wyoleg.gov/Legislation/2019/sf0125|url-status=live}}</ref>
==Implementations==
] algorithms allowed digital security through decentralization to form smart contracts. Additionally, the programming languages with various degrees of ] as a built-in feature of some ] make the creation of custom sophisticated logic possible.<ref name=":3" /><ref>{{cite web | url=https://hackernoon.com/smart-contracts-turing-completeness-reality-3eb897996621 | title=Smart contracts: Turing completeness & reality}}</ref><ref>{{Cite web|url=http://weuse.cash/2017/08/15/dumb-contracts-and-smart-scripts/|title=Dumb Contracts and Smart Scripts – We Use Cash|website=weuse.cash|language=en-GB|access-date=2017-10-27}}</ref>
Notable examples of implementation of smart contracts are:
* Decentralized ] protocols are smart contracts with decentralized security, encryption, and limited trusted parties that fit Szabo's definition of a digital agreement with observability, verifiability, privity, and enforceability.<ref name=":2" /><ref>{{Cite news|url=https://www.coindesk.com/information/ethereum-smart-contracts-work/|title=How Do Ethereum Smart Contracts Work? - CoinDesk|work=CoinDesk|access-date=2017-10-27|language=en-US}}</ref><ref>{{Cite news|url=https://gendal.me/2015/03/30/bitcoin-as-a-smart-contract-platform/|title=Bitcoin as a Smart Contract Platform|date=2015-03-30|work=Richard Gendal Brown|access-date=2017-10-27|language=en-US}}</ref><ref>{{Cite news|url=http://idealog.co.nz/tech/2016/03/blockchain-forget-bitcoin-here-comes-real-thing|title=Blockchain: Forget Bitcoin, here comes the real thing|date=2016-03-29|work=Idealog|access-date=2017-10-27|language=en}}</ref><ref>{{Cite web|url=http://www.chainfrog.com/wp-content/uploads/2017/08/smart-contracts.pdf|title=What are Smart Contracts|last=|first=|date=August 3, 2017|website=chainfrog|archive-url=|archive-date=|dead-url=|access-date=October 27, 2017}}</ref>
* ] also provides a Turing-incomplete Script language that allows the creation of custom smart contracts on top of Bitcoin like ], payment channels, escrows, time locks, atomic cross-chain trading, oracles, or multi-party lottery with no operator.<ref>{{Cite web|url=http://davidederosa.com/basic-blockchain-programming/bitcoin-script-language-part-one/|title=The Bitcoin Script language (pt. 1)|last=Rosa|first=Davide De|website=davidederosa.com|language=en|access-date=2017-10-27}}</ref><ref>{{Citation|title=bitcoinbook: Mastering Bitcoin 2nd Edition - Programming the Open Blockchain - Chapter 7|date=2017-05-30|url=https://github.com/bitcoinbook/bitcoinbook/blob/second_edition/ch07.asciidoc|publisher=Mastering Bitcoin|accessdate=2017-10-27}}</ref><ref>{{cite web | url=https://medium.com/@maraoz/smart-contracts-and-bitcoin-a5d61011d9b1 | title=Smart contracts and bitcoin}}</ref><ref>{{Cite web|url=https://en.bitcoin.it/Contract|title=Contract - Bitcoin Wiki|website=en.bitcoin.it|language=en|access-date=2017-10-27}}</ref><ref>{{Cite news|url=https://bitcointechtalk.com/what-is-a-bitcoin-merklized-abstract-syntax-tree-mast-33fdf2da5e2f|title=What is a Bitcoin Merklized Abstract Syntax Tree (MAST)?|date=2017-10-12|work=Bitcoin Tech Talk|access-date=2017-10-27}}</ref><ref>{{Cite web|url=http://bitfury.com/content/5-white-papers-research/contracts-1.1.1.pdf|title=Smart Contracts on Bitcoin Blockchain|last=|first=|date=September 4, 2015|website=|archive-url=|archive-date=|dead-url=|access-date=October 27, 2017}}</ref><ref>{{Cite journal|last=Andrychowicz|first=Marcin|last2=Dziembowski|first2=Stefan|last3=Malinowski|first3=Daniel|last4=Mazurek|first4=Łukasz|date=2013|title=Secure Multiparty Computations on Bitcoin|url=https://eprint.iacr.org/2013/784}}</ref><ref>{{Citation|title=7th International Conference on Principles of Security and Trust (POST)|year=2018|last1=Atzei|last2=Bartoletti|last3=Cimoli|last4=Lande|last5=Zunino|first1=Nicola|first2=Massimo|first3=Tiziana|first4=Stefano|first5=Roberto|contribution=SoK: unraveling Bitcoin smart contracts|contribution-url=https://eprint.iacr.org/2018/192.pdf|chapter-format=PDF|publisher=European Joint Conferences on Theory and Practice of Software}}</ref>


In April 2021, the UK Jurisdiction Taskforce (UKJT) published the Digital Dispute Resolution Rules (the Digital DR Rules), which were intended to enable the rapid resolution of blockchain and crypto legal disputes in Britain.<ref>{{Cite web|last1=Morgan|first1=Herbert Smith Freehills LLP-Charlie|last2=Parker|first2=Chris|last3=Livingston|first3=Dorothy|last4=Naish|first4=Vanessa|last5=Tevendale|first5=Craig|title=Arbitration of digital disputes in smart contracts and the release of the digital dispute resolution rules from the UK jurisdiction taskforce {{!}} Lexology|url=https://www.lexology.com/library/detail.aspx?g=6ea7c284-0157-4f2c-b330-e2758d1bf7a0|access-date=2021-04-25|website=www.lexology.com|date=23 April 2021|language=en|archive-date=2021-04-25|archive-url=https://web.archive.org/web/20210425165929/https://www.lexology.com/library/detail.aspx?g=6ea7c284-0157-4f2c-b330-e2758d1bf7a0|url-status=live}}</ref>
* ] implements a nearly Turing-complete language on its blockchain, a prominent smart contract framework.<ref name=":1">{{Citation|title=6th International Conference on Principles of Security and Trust (POST)|year=2017|last1=Atzei|last2=Bartoletti|last3=Cimoli|first1=Nicola|first2=Massimo|first3=Tiziana|contribution=A survey of attacks on Ethereum smart contracts|contribution-url=http://eprint.iacr.org/2016/1007.pdf|chapter-format=PDF|publisher=European Joint Conferences on Theory and Practice of Software}}</ref><ref>{{Cite web|url=https://twitter.com/vitalikbuterin/status/854271590804140033?lang=en|title=Vitalik Buterin on Tweeter (verified)|last=|first=|date=18 April 2017|website=|archive-url=|archive-date=|dead-url=|access-date=}}</ref>
* ] (RSK) is a smart contract platform that is connected to the ] blockchain through sidechain technology. RSK is compatible with smart contracts created for Ethereum.<ref>{{cite web | url=https://bitcoinexchangeguide.com/rsk/ | title=RSK – Rootstock Open-Source Smart Contract Bitcoin Technology?}}</ref><ref>{{cite web | url=http://digrate.com/uploads/ico_report/RSK_ENG-5_1.pdf | title=Digrate Express rating report on Project Rootstock}}</ref><ref>{{cite book |author=Thomas Bocek |date= 15 September 2017 |title=Digital Marketplaces Unleashed |url=https://link.springer.com/chapter/10.1007/978-3-662-49275-8_19 |publisher=Springer-Verlag GmbH |page=169-184 |isbn=978-3-662-49274-1}}</ref><ref>{{cite web | url=http://www.grctc.com/wp-content/uploads/2017/06/GRCTC-Smart-Contracts-White-Paper-2017.pdf | title=A Solution for the Problems of Translation and Transparency in Smart Contracts | author=}}</ref><ref>{{cite web | url=http://fc17.ifca.ai/wtsc/Trust%20in%20Smart%20Contracts%20is%20a%20Process,%20As%20Well.pdf | title=Trust in Smart Contracts is a Process, As Well}}</ref><ref>{{cite web | url=https://pdfs.semanticscholar.org/264f/c40b4224b2bb7c23e4f84a0e728945fea525.pdf | title=Scripting smart contracts for distributed ledger technology}}</ref>
* ] is a replicated domain name registry.<ref>{{cite news|title=Namecoin|url=https://cointelegraph.com/news/namecoin|agency=Cointelegraph|date=23 May 2015}}</ref>
* ] (Codius), smart contract development halted in 2015<ref>{{cite web| url=https://bitcoinmagazine.com/articles/ripple-discontinues-smart-contract-platform-codius-citing-small-market-1435182153/|title=Ripple discontinues smart contract platform Codius|website=Bitcoin Magazine|date=June 24, 2015|access-date=August 27, 2017}}</ref>
* ''Automated Transactions''<ref>{{cite web| url=https://ciyam.org/at/at.html|title=Automated Transactions Specification|access-date=August 27, 2017}}</ref> is another Turing complete smart contract language, used in cryptocurrencies like ] and ]. An example for its usage is atomic cross-chain trading.<ref>{{cite web|url=https://www.cryptocoinsnews.com/qora-burst-now-able-make-cross-chain-transactions/|title=Qora and Burst Now Able to Make Cross-Chain Transactions|date=May 22, 2015|access-date=August 27, 2017}}</ref>


==Workings==
==Replicated titles and contract execution==
Similar to a transfer of value on a blockchain, deployment of a smart contract on a blockchain occurs by sending a transaction from a ] for the blockchain.<ref name=SoloroKannaHoover>{{cite book |last1=Soloro |first1=Kevin |last2=Kanna |first2=Randall |last3=Hoover |first3=David |title=Hands-On Smart Contract Development With Solidity and Ethereum: From Fundamentals to Deployment |date=December 2019 |publisher=O'Reilly |location=California, U.S.A. |isbn=978-1-492-04526-7 |page=73 |url=https://books.google.com/books?id=thbADwAAQBAJ |access-date=1 November 2020 |archive-date=25 October 2023 |archive-url=https://web.archive.org/web/20231025073010/https://books.google.com/books?id=thbADwAAQBAJ |url-status=live }}</ref> The transaction includes the compiled code for the smart contract as well as a special receiver address.<ref name=SoloroKannaHoover/> That transaction must then be included in a block that is added to the blockchain, at which point the smart contract's code will execute to establish the initial state of the smart contract.<ref name=SoloroKannaHoover/> ] algorithms secure the smart contract in a decentralized way from attempts to tamper with it. Once a smart contract is deployed, it cannot be updated.<ref name=zilliqa>{{cite journal |last1=Sergey |first1=Ilya |last2=Nagaraj |first2=Vaivaswatha |last3=Johannsen |first3=Jacob |last4=Kumar |first4=Amrit |last5=Trunov |first5=Anton |last6=Hao |first6=Ken Chan Guan |title=Safer smart contract programming with Scilla |journal=Proceedings of the ACM on Programming Languages |date=10 October 2019 |volume=3 |issue=OOPSLA |pages=1–30 |doi=10.1145/3360611 |language=en |issn=2475-1421|doi-access=free }}</ref> Smart contracts on a blockchain can store arbitrary state and execute arbitrary computations. End clients interact with a smart contract through transactions. Such transactions with a smart contract can invoke other smart contracts. These transactions might result in changing the state and sending coins from one smart contract to another or from one account to another.<ref name=zilliqa/>
Szabo proposes that smart contract infrastructure can be implemented by replicated asset registries<ref>{{cite web | url=http://szabo.best.vwh.net/securetitle.html | author=Nick Szabo | title=Secure Property Titles with Owner Authority | year=2005 | accessdate=January 12, 2014}}</ref> and contract execution using ] and ] replication. ] implemented this approach
in 2002<ref>{{cite web | url=http://citeseerx.ist.psu.edu/viewdoc/download;?doi=10.1.1.11.5050&rep=rep1&type=pdf | year=2002 | author=Jörg F. Wittenberger | title=Askemos a distributed settlement |
booktitle = Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet (SSGRR),L’Aquila }}</ref><ref>{{cite web | url=http://www.isl.cs.waseda.ac.jp/~sugawara/pdf/kurihara-SSGRR2002.pdf | title=Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet}}</ref> using ]
(later adding ]<ref>{{cite web | url=https://monami.hs-mittweida.de/frontdoor/index/index/docId/476 | title=Erstellung eines Archivierungskonzepts für die Speicherung rückverfolgbarer Datenbestände im Askemos-System | year=2009 | author=Martin Möbius}}</ref><ref>{{cite web | url=https://core.ac.uk/display/33987564 | title=Entwicklung einer Datenbankschnittstelle als Grundlage für Shop-Systeme unter dem Betriebssystem Askemos | year=2010 | author=Tom-Steve Watzke}}</ref>) as contract script language.<ref>{{cite web | url=http://askemos.org/A0e80fdd97a7b6e7af87c5d294f39a96c | title=Beweiswürdigung elektronischer Dokumente im Zivilprozess unter vergleichender Betrachtung von qualifizierten elektronischen Signaturen nach dem Signaturgesetz und dem Askemos-Verfahren | author=RA Markus Heinker | year=2007}}</ref>


The most popular blockchain for running smart contracts is ].<ref>{{cite journal |last1=Alharby |first1=Maher |last2=van Moorsel |first2=Aad |title=Blockchain-based Smart Contracts: A Systematic Mapping Study |journal=Computer Science & Information Technology |date=26 August 2017 |pages=125–140 |doi=10.5121/csit.2017.71011 |arxiv=1710.06372|isbn=9781921987700 |doi-access=free }}</ref> On Ethereum, ] are typically written in a ] programming language called ],<ref>{{cite book |last1=Wohrer |first1=Maximilian |last2=Zdun |first2=Uwe |title=2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE) |chapter=Smart contracts: Security patterns in the ethereum ecosystem and solidity |date=20 March 2018 |pages=2–8 |doi=10.1109/IWBOSE.2018.8327565 |isbn=978-1-5386-5986-1 |s2cid=4567923 |chapter-url=https://ieeexplore.ieee.org/document/8327565 |access-date=4 October 2020 |archive-date=9 October 2020 |archive-url=https://web.archive.org/web/20201009060917/https://ieeexplore.ieee.org/document/8327565 |url-status=live }}</ref> and compiled into low-level ] to be executed by the ].<ref name="vuln-exploit">{{cite arXiv |last1=Perez |first1=Daniel |last2=Livshits |first2=Benjamin |title=Smart Contract Vulnerabilities: Vulnerable Does Not Imply Exploited |date=17 October 2020 |class=cs.CR |eprint=1902.06710}}</ref> Due to the ] and other security problems, Turing-completeness is considered to be a risk and is deliberately avoided by languages like ].<ref name="harz">{{cite arXiv |last1=Harz |first1=Dominik |last2=Knottenbelt |first2=William |title=Towards Safer Smart Contracts: A Survey of Languages and Verification Methods |date=31 October 2018 |class=cs.CR |eprint=1809.09805 }}</ref><ref name="overview">{{cite journal |last1=Tyurin |first1=A.V. |last2=Tyuluandin |first2=I.V. |last3=Maltsev |first3=V.S. |last4=Kirilenko |first4=I.A. |last5=Berezun |first5=D.A. |title=Overview of the Languages for Safe Smart Contract Programming |journal=Proceedings of the Institute for System Programming of the RAS |date=2019 |volume=31 |issue=3 |pages=157–176 |doi=10.15514/ispras-2019-31(3)-13 |s2cid=203179644 |doi-access=free }}</ref> Some of the other smart contract programming languages missing Turing-completeness are Simplicity, Scilla, Ivy and Bitcoin Script.<ref name=overview/> However, measurements in 2020 using ]s showed that only 35.3% of 53,757 Ethereum smart contracts at that time included recursions and loops — constructs connected to the halting problem.<ref name=needturing>{{cite book |last1=Jansen |first1=Marc |last2=Hdhili |first2=Farouk |last3=Gouiaa |first3=Ramy |last4=Qasem |first4=Ziyaad |title=Blockchain and Applications |chapter=Do Smart Contract Languages Need to be Turing Complete? |series=Advances in Intelligent Systems and Computing |date=2020 |volume=1010 |pages=19–26 |doi=10.1007/978-3-030-23813-1_3 |publisher=Springer International Publishing |isbn=978-3-030-23812-4 |s2cid=195656195 |language=en }}</ref>
One proposal for using bitcoin for replicated asset registration and contract execution is called "colored coins".<ref>{{cite web | url=https://www.newscientist.com/article/dn24620-bitcoin-moves-beyond-mere-money.html | publisher=New Scientist | author= Hal Hodson| title=Bitcoin moves beyond mere money | date=20 November 2013 | accessdate=12 January 2014 }}</ref> Replicated titles for potentially arbitrary forms of property, along with replicated contract execution, are implemented in different projects.


Several languages are designed to enable ]: Bamboo, IELE, Simplicity, Michelson (can be verified with ]),<ref name="overview"/> Liquidity (compiles to Michelson), Scilla, DAML and Pact.<ref name="harz" />
Hypothesised advantages of a smart contract over its equivalent conventional financial instrument include minimizing counterparty risk, reducing settlement times, and increased transparency.<ref>{{cite web|title=Blockchain Technology: Preparing for Change|url=https://www.accenture.com/cn-en/~/media/Accenture/next-gen/top-ten-challenges/challenge4/pdfs/Accenture-2016-Top-10-Challenges-04-Blockchain-Technology.pdf|publisher=Accenture}}</ref>

{{asof|2015}}, ] was experimenting with "smart bonds" that use the ] ]<ref name="newsweek20150912">{{cite news |last=Ross|first=Rory |url=http://europe.newsweek.com/smart-money-blockchains-are-future-internet-329278 |title=Smart Money: Blockchains Are the Future of the Internet |work=] |date=2015-09-12 |accessdate=2016-05-27 }}</ref>
{| class="wikitable sortable"
in which payment streams could hypothetically be fully automated, creating a self-paying instrument.<ref name="IFRasia20150611">{{cite news |last=Wigan|first=David |url=http://www.ifrasia.com/bitcoin-technology-will-disrupt-derivatives-says-banker/21202956.article |title=Bitcoin technology will disrupt derivatives, says banker |work=IFR Asia |date=2015-06-11 |accessdate=2016-05-27 }}</ref>
|+ Notable examples of blockchain platforms supporting smart contracts include the following:
|-
! Name !! Description
|-
| ] || Implements a Turing-complete language on its blockchain, a prominent smart contract framework<ref name=":1">{{Citation|title=6th International Conference on Principles of Security and Trust (POST)|year=2017|last1=Atzei|last2=Bartoletti|last3=Cimoli|first1=Nicola|first2=Massimo|first3=Tiziana|contribution=A survey of attacks on Ethereum smart contracts|contribution-url=http://eprint.iacr.org/2016/1007.pdf|publisher=European Joint Conferences on Theory and Practice of Software|access-date=2017-06-20|archive-date=2017-07-10|archive-url=https://web.archive.org/web/20170710185734/http://eprint.iacr.org/2016/1007.pdf|url-status=live}}</ref>
|-
| ] || Provides a Turing-incomplete script language that allows the creation of custom smart contracts on top of Bitcoin like ], payment channels, escrows, time locks, atomic cross-chain trading, ], or multi-party lottery with no operator.<ref>{{Citation|title=7th International Conference on Principles of Security and Trust (POST)|year=2018|last1=Atzei|last2=Bartoletti|last3=Cimoli|last4=Lande|last5=Zunino|first1=Nicola|first2=Massimo|first3=Tiziana|first4=Stefano|first5=Roberto|contribution=SoK: unraveling Bitcoin smart contracts|contribution-url=https://eprint.iacr.org/2018/192.pdf|publisher=European Joint Conferences on Theory and Practice of Software|access-date=2018-02-22|archive-date=2018-02-23|archive-url=https://web.archive.org/web/20180223050722/https://eprint.iacr.org/2018/192.pdf|url-status=live}}</ref>
|-
| ]|| A blockchain platform for smart contracts
|-
| ] || A blockchain platform for smart contracts
|-
| ] || A blockchain platform for smart contracts
|-
| ]|| A blockchain platform for smart contracts
|}

Processes on a blockchain are generally deterministic in order to ensure ].<ref name=chainrandom>{{cite arXiv |last1=Chatterjee |first1=Krishnendu |last2=Goharshady |first2=Amir Kafshdar |last3=Pourdamghani |first3=Arash |title=Probabilistic Smart Contracts: Secure Randomness on the Blockchain |date=21 February 2019 |class=cs.GT |eprint=1902.07986 |language=en}}</ref> Nevertheless, real world application of smart contracts, such as ] and ]s, require secure randomness.<ref>{{cite web |last1=Chen |first1=Tai-yuan |last2=Huang |first2=Wei-ning |last3=Kuo |first3=Po-chun |last4=Chung |first4=Hao |title=Method for Generating Secure Randomness on Blockchain |url=http://www.freepatentsonline.com/y2020/0252211.html |access-date=28 August 2020 |date=6 August 2020}}</ref> In fact, blockchain technology reduces the costs for conducting of a lottery and is therefore beneficial for the participants. Randomness on blockchain can be implemented by using block hashes or timestamps, oracles, commitment schemes, special smart contracts like RANDAO<ref>{{cite book |date=2019 |doi=10.1145/3376044.3376049 |s2cid=207880557 |language=EN|chapter=DeLottery: A Novel Decentralized Lottery System Based on Blockchain Technology |title=Proceedings of the 2019 2nd International Conference on Blockchain Technology and Applications |last1=Jia |first1=Zhifeng |last2=Chen |first2=Rui |last3=Li |first3=Jie |pages=20–25 |isbn=9781450377430 }}</ref><ref>{{cite web |title=randao/randao |url=https://github.com/randao/randao |publisher=randao |access-date=10 July 2020 |date=10 July 2020 |archive-date=10 August 2020 |archive-url=https://web.archive.org/web/20200810041714/https://github.com/randao/randao |url-status=live }}</ref> and Quanta, as well as sequences from ] ].<ref name=chainrandom/>

==Applications==
In 1998, Szabo proposed that smart contract infrastructure can be implemented by replicated asset registries and contract execution using ] and ] replication.<ref>{{cite web | url=http://szabo.best.vwh.net/securetitle.html | author=Nick Szabo | title=Secure Property Titles with Owner Authority | year=1998 | access-date=January 12, 2014 | url-status=dead | archive-url=https://web.archive.org/web/20140115142013/http://szabo.best.vwh.net/securetitle.html | archive-date=January 15, 2014 }}</ref> Askemos implemented this approach in 2002<ref>{{cite conference |url=http://citeseerx.ist.psu.edu/viewdoc/download;?doi=10.1.1.11.5050&rep=rep1&type=pdf |year=2002 |author=Jörg F. Wittenberger |title=Askemos a distributed settlement |conference=Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet (SSGRR), L’Aquila |access-date=2017-05-25 |archive-date=2018-07-01 |archive-url=https://web.archive.org/web/20180701083246/http://citeseerx.ist.psu.edu/viewdoc/download;?doi=10.1.1.11.5050&rep=rep1&type=pdf |url-status=live }}</ref><ref>{{cite web | url=http://www.isl.cs.waseda.ac.jp/~sugawara/pdf/kurihara-SSGRR2002.pdf | title=Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet | access-date=2017-05-25 | archive-date=2017-10-26 | archive-url=https://web.archive.org/web/20171026111541/http://www.isl.cs.waseda.ac.jp/~sugawara/pdf/kurihara-SSGRR2002.pdf | url-status=dead }}</ref> using ] (later adding ]<ref>{{cite thesis | url=https://monami.hs-mittweida.de/frontdoor/index/index/docId/476 | title=Erstellung eines Archivierungskonzepts für die Speicherung rückverfolgbarer Datenbestände im Askemos-System | year=2009 | author=Martin Möbius | publisher=Hochschule Mittweida | access-date=2017-05-25 | archive-date=2018-07-01 | archive-url=https://web.archive.org/web/20180701085359/https://monami.hs-mittweida.de/frontdoor/index/index/docId/476 | url-status=live }}</ref><ref>{{cite web | url=https://core.ac.uk/display/33987564 | title=Entwicklung einer Datenbankschnittstelle als Grundlage für Shop-Systeme unter dem Betriebssystem Askemos | year=2010 | author=Tom-Steve Watzke | access-date=2017-05-25 | archive-date=2018-07-01 | archive-url=https://web.archive.org/web/20180701085258/https://core.ac.uk/display/33987564 | url-status=live }}</ref>) as the contract script language.<ref>{{cite web | url=http://askemos.org/A0e80fdd97a7b6e7af87c5d294f39a96c | title=Beweiswürdigung elektronischer Dokumente im Zivilprozess unter vergleichender Betrachtung von qualifizierten elektronischen Signaturen nach dem Signaturgesetz und dem Askemos-Verfahren | author=RA Markus Heinker | year=2007 | access-date=2017-05-25 | archive-date=2018-07-01 | archive-url=https://web.archive.org/web/20180701083239/http://askemos.org/A0e80fdd97a7b6e7af87c5d294f39a96c | url-status=live }}</ref>

One proposal for using Bitcoin for replicated asset registration and contract execution is called "]".<ref>{{cite magazine | url=https://www.newscientist.com/article/dn24620-bitcoin-moves-beyond-mere-money.html | magazine=New Scientist | author=Hal Hodson | title=Bitcoin moves beyond mere money | date=20 November 2013 | access-date=12 January 2014 | archive-date=5 July 2015 | archive-url=https://web.archive.org/web/20150705004911/http://www.newscientist.com/article/dn24620-bitcoin-moves-beyond-mere-money.html | url-status=live }}</ref> Replicated titles for potentially arbitrary forms of property, along with replicated contract execution, are implemented in different projects.

{{asof|2015}}, ] was experimenting with "smart bonds" that use the ] ]<ref name="newsweek20150912">{{cite news |last=Ross |first=Rory |url=http://europe.newsweek.com/smart-money-blockchains-are-future-internet-329278 |title=Smart Money: Blockchains Are the Future of the Internet |work=] |date=2015-09-12 |access-date=2016-05-27 |archive-date=2016-07-10 |archive-url=https://web.archive.org/web/20160710030311/http://europe.newsweek.com/smart-money-blockchains-are-future-internet-329278 |url-status=live }}</ref> in which payment streams could hypothetically be fully automated, creating a self-paying instrument.<ref name="IFRasia20150611">{{cite news |last=Wigan |first=David |url=http://www.ifrasia.com/bitcoin-technology-will-disrupt-derivatives-says-banker/21202956.article |title=Bitcoin technology will disrupt derivatives, says banker |work=IFR Asia |date=2015-06-11 |access-date=2016-05-27 |archive-date=2016-06-29 |archive-url=https://web.archive.org/web/20160629164342/http://www.ifrasia.com/bitcoin-technology-will-disrupt-derivatives-says-banker/21202956.article |url-status=live }}</ref>

] wishes could hypothetically be implemented automatically upon registration of a ] by means of smart contracts.{{according to whom|date=January 2022}}<ref>{{Cite web |url=https://www.europarl.europa.eu/RegData/etudes/IDAN/2017/581948/EPRS_IDA(2017)581948_EN.pdf |title=How blockchain technology could change our lives |access-date=2024-05-24 |archive-date=2017-03-30 |archive-url=https://web.archive.org/web/20170330113734/https://www.europarl.europa.eu/RegData/etudes/IDAN/2017/581948/EPRS_IDA(2017)581948_EN.pdf |url-status=live }}</ref><ref>{{Cite web |url=https://www.inc.com/chris-j-snook/4-small-business-verticals-artificial-intelligence-blockchain-will-destroy-in-coming-decade.html |title=Blockchain and AI are coming to kill these 4 business verticals |access-date=2024-05-24 |archive-date=2017-12-22 |archive-url=https://web.archive.org/web/20171222224001/https://www.inc.com/chris-j-snook/4-small-business-verticals-artificial-intelligence-blockchain-will-destroy-in-coming-decade.html |url-status=live }}</ref> ]s can also work together with smart contracts.<ref></ref><ref>{{Cite web |url=https://link.springer.com/chapter/10.1007/978-3-030-67490-8_19 |title=Blockchain Based Framework for Document Authentication |doi=10.1007/978-3-030-67490-8_19 |access-date=2024-05-24 |archive-date=2021-05-12 |archive-url=https://web.archive.org/web/20210512150223/https://link.springer.com/chapter/10.1007/978-3-030-67490-8_19 |url-status=live }}</ref>

Chris Snook of '']'' suggests smart contracts could also be used to handle ] transactions and could be used in the field of ]s and in the ].<ref name="Snook 2017">{{cite web | last=Snook | first=Chris J. | title=Blockchain and Artificial Intelligence Are Coming to Kill These 4 Small Business Verticals | website=Inc.com | date=31 October 2017 | url=https://www.inc.com/chris-j-snook/4-small-business-verticals-artificial-intelligence-blockchain-will-destroy-in-coming-decade.html | access-date=25 January 2022 | archive-date=22 December 2017 | archive-url=https://web.archive.org/web/20171222224001/https://www.inc.com/chris-j-snook/4-small-business-verticals-artificial-intelligence-blockchain-will-destroy-in-coming-decade.html | url-status=live }}</ref><ref>{{Cite web |url=https://bitfury.com/content/downloads/the_bitfury_group_republic_of_georgia_expand_blockchain_pilot_2_7_16.pdf |title=The Bitfury Group and Government of Republic of Georgia Expand Blockchain Pilot |access-date=2021-05-26 |archive-date=2021-05-26 |archive-url=https://web.archive.org/web/20210526112445/https://bitfury.com/content/downloads/the_bitfury_group_republic_of_georgia_expand_blockchain_pilot_2_7_16.pdf |url-status=live }}</ref><ref>{{Cite web |url=https://www.mitpressjournals.org/doi/pdf/10.1162/inov_a_00276 |title=A BLOCKCHAIN - Journals Gateway |doi=10.1162/inov_a_00276 |access-date=2021-05-26 |archive-date=2021-03-03 |archive-url=https://web.archive.org/web/20210303050326/https://www.mitpressjournals.org/doi/pdf/10.1162/inov_a_00276 |url-status=live }}</ref><ref>{{Cite web |url=https://www.oecd.org/corruption/integrity-forum/academic-papers/Georg%20Eder-%20Blockchain%20-%20Ghana_verified.pdf |title=Digital Transformation: Blockchain and Land Titles |access-date=2021-05-26 |archive-date=2021-06-21 |archive-url=https://web.archive.org/web/20210621080621/https://www.oecd.org/corruption/integrity-forum/academic-papers/Georg%20Eder-%20Blockchain%20-%20Ghana_verified.pdf |url-status=live }}</ref><ref>{{cite news |title=Ukraine launches big blockchain deal with tech firm Bitfury |website=] |date=17 April 2017 |archive-url=https://web.archive.org/web/20230124224631/https://www.reuters.com/article/us-ukraine-bitfury-blockchain-idUSKBN17F0N2 |archive-date=2023-01-24 |url-status=live |url=https://www.reuters.com/article/us-ukraine-bitfury-blockchain-idUSKBN17F0N2}}</ref>

Seth Oranburg and Liya Palagashvili argue that smart contracts could also be used in ]s, especially temporary employment contracts, which according to them would benefit the employer.<ref name="Oranburg Palagashvili 2018">{{cite journal | last1=Oranburg | first1=Seth | last2=Palagashvili | first2=Liya | title=The Gig Economy, Smart Contracts, and Disruption of Traditional Work Arrangements | website=Search eLibrary | date=22 October 2018 | doi=10.2139/ssrn.3270867 | ssrn=3270867 | s2cid=216803648 | url=https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3270867 | access-date=25 January 2022 | archive-date=20 February 2022 | archive-url=https://web.archive.org/web/20220220175727/https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3270867 | url-status=live }}</ref><ref>{{Cite web |url=https://www.researchgate.net/publication/328657407 |title=A blockchain-based decentralized system for proper handling of temporary employment contracts |access-date=2024-05-24 |archive-date=2023-10-15 |archive-url=https://web.archive.org/web/20231015155844/https://www.researchgate.net/publication/328657407_A_Blockchain-Based_Decentralized_System_for_Proper_Handling_of_Temporary_Employment_Contracts |url-status=live }}</ref>


==Security issues== ==Security issues==
The transactions data from a blockchain-based smart contract is visible to all users in the blockchain. The data provides cryptographic view of the transactions, however, this leads to a situation where bugs, including security holes, are visible to all yet may not be quickly fixed.<ref name=Peck20160528>{{cite web|url=https://spectrum.ieee.org/ethereums-150-million-dollar-dao-opens-for-business-just-as-researchers-call-for-a-moratorium|title=Ethereum's $150-Million Blockchain-Powered Fund Opens Just as Researchers Call For a Halt|first=M.|last=Peck|date=28 May 2016|work=]|publisher=]|access-date=2 February 2020|archive-date=30 May 2016|archive-url=https://web.archive.org/web/20160530202345/https://spectrum.ieee.org/tech-talk/computing/networks/ethereums-150-million-dollar-dao-opens-for-business-just-as-researchers-call-for-a-moratorium|url-status=live}}</ref> Such an attack, difficult to fix quickly, was successfully executed on ] in June 2016, draining approximately {{US$|50}}{{nbsp}}million worth of ] at the time, while developers attempted to come to a solution that would gain consensus.<ref name=":0">{{cite web|url=http://iqdupont.com/assets/documents/DUPONT-2017-Preprint-Algorithmic-Governance.pdf|title=Experiments in Algorithmic Governance: A history and ethnography of "The DAO", a failed Decentralized Autonomous Organization|last=DuPont|first=Quinn|date=2017|archive-url=https://web.archive.org/web/20170730133911/http://iqdupont.com/assets/documents/DUPONT%2D2017%2DPreprint%2DAlgorithmic%2DGovernance.pdf|archive-date=2017-07-30|url-status=dead|access-date=29 July 2017}}</ref> The DAO program had a time delay in place before the hacker could remove the funds; a hard fork of the Ethereum software was done to claw back the funds from the attacker before the time limit expired.<ref>{{Cite news|url=https://www.bloomberg.com/news/articles/2016-08-25/this-is-your-company-on-blockchain|title=This Is Your Company on Blockchain|last1=Coy|first1=Peter|date=25 August 2016|last2=Kharif|first2=Olga|newspaper=Bloomberg Businessweek|access-date=2016-12-05|archive-date=2016-09-14|archive-url=https://web.archive.org/web/20160914101357/http://www.bloomberg.com/news/articles/2016-08-25/this-is-your-company-on-blockchain|url-status=live}}</ref> Other high-profile attacks include the ], and an integer underflow/overflow attack (2018), totaling over {{US$|184}}{{nbsp}}million.<ref>{{cite arXiv |last1=Praitheeshan |first1=Purathani |last2=Pan |first2=Lei |last3=Yu |first3=Jiangshan |last4=Liu |first4=Joseph |last5=Doss |first5=R. |title=Security Analysis Methods on Ethereum Smart Contract Vulnerabilities: A Survey |eprint=1908.08605 |date=2019 |class=cs.CR }}</ref>
A smart contract is "a computerized transaction protocol that executes the terms of a ]."<ref name="tapscott2016">{{cite book|title=The Blockchain Revolution: How the Technology Behind Bitcoin is Changing Money, Business, and the World|last1=Tapscott|first1=Don|last2=Tapscott|first2=Alex|date=May 2016|isbn=978-0670069972|pages=72, 83, 101, 127|authorlink=Don Tapscott}}<!--|accessdate=2016-07-3 per copy of book in hand; do not have a URL link --></ref> A blockchain-based smart contract is visible to all users of said blockchain. However, this leads to a situation where bugs, including security holes, are visible to all yet may not be quickly fixed.<ref name=Peck20160528>{{cite web|url=http://spectrum.ieee.org/tech-talk/computing/networks/ethereums-150-million-dollar-dao-opens-for-business-just-as-researchers-call-for-a-moratorium|title=Ethereum’s $150-Million Blockchain-Powered Fund Opens Just as Researchers Call For a Halt|first=M.|last=Peck|date=28 May 2016|work=]|publisher=]}}</ref>


Issues in Ethereum smart contracts, in particular, include ambiguities and easy-but-insecure constructs in its contract language Solidity, compiler bugs, Ethereum Virtual Machine bugs, attacks on the blockchain network, the immutability of bugs and that there is no central source documenting known vulnerabilities, attacks and problematic constructs.<ref name=":1" />
Such an attack, difficult to fix quickly, was successfully executed on ] in June 2016, draining {{USD|50 million}}<!-- approximate US dollar value of the drained Ether --> in ] while developers attempted to come to a solution that would gain consensus.<ref name=":0">{{cite web|url=http://iqdupont.com/assets/documents/DUPONT-2017-Preprint-Algorithmic-Governance.pdf|title=Experiments in Algorithmic Governance: A history and ethnography of “The DAO,” a failed Decentralized Autonomous Organization|last=DuPont|first=Quinn|date=2017|archive-url=|archive-date=|dead-url=|accessdate=29 July 2017|work=}}</ref> The DAO program had a time delay in place before the hacker could remove the funds; a hard fork of the Ethereum software was done to claw back the funds from the attacker before the time limit expired.<ref>{{Cite news|url=https://www.bloomberg.com/news/articles/2016-08-25/this-is-your-company-on-blockchain|title=This Is Your Company on Blockchain|last=Coy|first=Peter|date=25 August 2016|work=|last2=Kharif|first2=Olga|newspaper=Bloomberg Businessweek|access-date=2016-12-05|via=}}</ref>


==Difference from smart legal contracts==
Issues in Ethereum smart contracts in particular include ambiguities and easy-but-insecure constructs in its contract language Solidity, compiler bugs, Ethereum Virtual Machine bugs, attacks on the blockchain network, the immutability of bugs and that there is no central source documenting known vulnerabilities, attacks and problematic constructs.<ref name=":1" />
Smart legal contracts are distinct from smart contracts. As mentioned above, a smart contract is not necessarily legally enforceable as a contract. On the other hand, a smart legal contract has all the elements of a legally enforceable contract in the jurisdiction in which it can be enforced and it can be enforced by a court or tribunal. Therefore, while every smart legal contract will contain some elements of a smart contract, not every smart contract will be a smart legal contract.<ref> {{Webarchive|url=https://web.archive.org/web/20180424075431/https://www.isda.org/a/6EKDE/smart-contracts-and-distributed-ledger-a-legal-perspective.pdf |date=2018-04-24 }}, 5.</ref>


There is no formal definition of a smart legal contract in the legal industry.<ref> {{Webarchive|url=https://web.archive.org/web/20180424075431/https://www.isda.org/a/6EKDE/smart-contracts-and-distributed-ledger-a-legal-perspective.pdf |date=2018-04-24 }}, 3.</ref>
==In popular culture==

]'s 2002 novel '']'' features a "rights economy" in which all physical objects are nano-tagged with contractual requirements, so that payment may be enforced for all uses of proprietary information, e.g., a military mission in deep space must continuously justify the cost-benefit ratio of each ship or it will stop working.
A ] is a type of smart legal contract.{{Citation needed|date=May 2023}}


==See also== ==See also==
{{Portal|Law|Business and Economics}} {{Portal|Law|Business and Economics}}
* '']'' * '']''
* ]
* ]
* ]
* ]
* ] (a design pattern to capture the intent of the agreement of parties){{Citation needed|date=May 2023}}
* ]
* ] * ]
* ]


==References== ==References==
{{Reflist|30em}} {{Reflist}}


{{Means of Exchange}} {{Means of Exchange}}

{{Cryptocurrencies|state=expanded}}
{{Authority control}}


] ]
Line 71: Line 99:
] ]
] ]
]

Latest revision as of 17:08, 3 January 2025

This article is about contractual transactions on a decentralized platform. For smart legal contracts, see Smart legal contract. Contractual transaction on a decentralized platform

A smart contract is a computer program or a transaction protocol that is intended to automatically execute, control or document events and actions according to the terms of a contract or an agreement. The objectives of smart contracts are the reduction of need for trusted intermediators, arbitration costs, and fraud losses, as well as the reduction of malicious and accidental exceptions. Smart contracts are commonly associated with cryptocurrencies, and the smart contracts introduced by Ethereum are generally considered a fundamental building block for decentralized finance (DeFi) and non-fungible token (NFT) applications.

The original Ethereum white paper by Vitalik Buterin in 2014 describes the Bitcoin protocol as a weak version of the smart contract concept as originally defined by Nick Szabo, and proposed a stronger version based on the Solidity language, which is Turing complete. Since then, various cryptocurrencies have supported programming languages which allow for more advanced smart contracts between untrusted parties.

A smart contract should not be confused with a smart legal contract, which refers to a traditional, natural-language, legally-binding agreement that has selected terms expressed and implemented in machine-readable code.

Etymology

By 1996, Nick Szabo was using the term "smart contract" to refer to contracts which would be enforced by physical property (such as hardware or software) instead of by law. Szabo described vending machines as an example of this concept. In 1998, the term was used to describe objects in rights management service layer of the system The Stanford Infobus, which was a part of Stanford Digital Library Project.

Legal status of smart contracts

See also: Regulation of algorithms and distributed ledger technology law

A smart contract does not typically constitute a valid binding agreement at law. Proposals exist to regulate smart contracts.

Smart contracts are not legal agreements, but instead transactions which are executed automatically by a computer program or a transaction protocol, such as technological means for the automation of payment obligations such as by transferring cryptocurrencies or other tokens. Some scholars have argued that the imperative or declarative nature of programming languages would impact the legal validity of smart contracts.

Since the 2015 launch of the Ethereum blockchain, the term "smart contract" has been applied to general purpose computation that takes place on a blockchain. The US National Institute of Standards and Technology describes a "smart contract" as a "collection of code and data (sometimes referred to as functions and state) that is deployed using cryptographically signed transactions on the blockchain network". In this interpretation a smart contract is any kind of computer program which uses a blockchain. A smart contract also can be regarded as a secured stored procedure, as its execution and codified effects (like the transfer of tokens between parties) cannot be manipulated without modifying the blockchain itself. In this interpretation, the execution of contracts is controlled and audited by the platform, not by arbitrary server-side programs connecting to the platform.

In 2018, a US Senate report said: "While smart contracts might sound new, the concept is rooted in basic contract law. Usually, the judicial system adjudicates contractual disputes and enforces terms, but it is also common to have another arbitration method, especially for international transactions. With smart contracts, a program enforces the contract built into the code." States in the US which have passed legislation on the use of smart contracts include Arizona, Iowa, Nevada, Tennessee, and Wyoming.

In April 2021, the UK Jurisdiction Taskforce (UKJT) published the Digital Dispute Resolution Rules (the Digital DR Rules), which were intended to enable the rapid resolution of blockchain and crypto legal disputes in Britain.

Workings

Similar to a transfer of value on a blockchain, deployment of a smart contract on a blockchain occurs by sending a transaction from a wallet for the blockchain. The transaction includes the compiled code for the smart contract as well as a special receiver address. That transaction must then be included in a block that is added to the blockchain, at which point the smart contract's code will execute to establish the initial state of the smart contract. Byzantine fault-tolerant algorithms secure the smart contract in a decentralized way from attempts to tamper with it. Once a smart contract is deployed, it cannot be updated. Smart contracts on a blockchain can store arbitrary state and execute arbitrary computations. End clients interact with a smart contract through transactions. Such transactions with a smart contract can invoke other smart contracts. These transactions might result in changing the state and sending coins from one smart contract to another or from one account to another.

The most popular blockchain for running smart contracts is Ethereum. On Ethereum, smart contracts are typically written in a Turing-complete programming language called Solidity, and compiled into low-level bytecode to be executed by the Ethereum Virtual Machine. Due to the halting problem and other security problems, Turing-completeness is considered to be a risk and is deliberately avoided by languages like Vyper. Some of the other smart contract programming languages missing Turing-completeness are Simplicity, Scilla, Ivy and Bitcoin Script. However, measurements in 2020 using regular expressions showed that only 35.3% of 53,757 Ethereum smart contracts at that time included recursions and loops — constructs connected to the halting problem.

Several languages are designed to enable formal verification: Bamboo, IELE, Simplicity, Michelson (can be verified with Coq), Liquidity (compiles to Michelson), Scilla, DAML and Pact.

Notable examples of blockchain platforms supporting smart contracts include the following:
Name Description
Ethereum Implements a Turing-complete language on its blockchain, a prominent smart contract framework
Bitcoin Provides a Turing-incomplete script language that allows the creation of custom smart contracts on top of Bitcoin like multisignature accounts, payment channels, escrows, time locks, atomic cross-chain trading, oracles, or multi-party lottery with no operator.
Cardano A blockchain platform for smart contracts
Solana A blockchain platform for smart contracts
Tron A blockchain platform for smart contracts
Tezos A blockchain platform for smart contracts

Processes on a blockchain are generally deterministic in order to ensure Byzantine fault tolerance. Nevertheless, real world application of smart contracts, such as lotteries and casinos, require secure randomness. In fact, blockchain technology reduces the costs for conducting of a lottery and is therefore beneficial for the participants. Randomness on blockchain can be implemented by using block hashes or timestamps, oracles, commitment schemes, special smart contracts like RANDAO and Quanta, as well as sequences from mixed strategy Nash equilibria.

Applications

In 1998, Szabo proposed that smart contract infrastructure can be implemented by replicated asset registries and contract execution using cryptographic hash chains and Byzantine fault-tolerant replication. Askemos implemented this approach in 2002 using Scheme (later adding SQLite) as the contract script language.

One proposal for using Bitcoin for replicated asset registration and contract execution is called "colored coins". Replicated titles for potentially arbitrary forms of property, along with replicated contract execution, are implemented in different projects.

As of 2015, UBS was experimenting with "smart bonds" that use the bitcoin blockchain in which payment streams could hypothetically be fully automated, creating a self-paying instrument.

Inheritance wishes could hypothetically be implemented automatically upon registration of a death certificate by means of smart contracts. Birth certificates can also work together with smart contracts.

Chris Snook of Inc.com suggests smart contracts could also be used to handle real estate transactions and could be used in the field of title records and in the public register.

Seth Oranburg and Liya Palagashvili argue that smart contracts could also be used in employment contracts, especially temporary employment contracts, which according to them would benefit the employer.

Security issues

The transactions data from a blockchain-based smart contract is visible to all users in the blockchain. The data provides cryptographic view of the transactions, however, this leads to a situation where bugs, including security holes, are visible to all yet may not be quickly fixed. Such an attack, difficult to fix quickly, was successfully executed on The DAO in June 2016, draining approximately US$50 million worth of Ether at the time, while developers attempted to come to a solution that would gain consensus. The DAO program had a time delay in place before the hacker could remove the funds; a hard fork of the Ethereum software was done to claw back the funds from the attacker before the time limit expired. Other high-profile attacks include the Parity multisignature wallet attacks, and an integer underflow/overflow attack (2018), totaling over US$184 million.

Issues in Ethereum smart contracts, in particular, include ambiguities and easy-but-insecure constructs in its contract language Solidity, compiler bugs, Ethereum Virtual Machine bugs, attacks on the blockchain network, the immutability of bugs and that there is no central source documenting known vulnerabilities, attacks and problematic constructs.

Difference from smart legal contracts

Smart legal contracts are distinct from smart contracts. As mentioned above, a smart contract is not necessarily legally enforceable as a contract. On the other hand, a smart legal contract has all the elements of a legally enforceable contract in the jurisdiction in which it can be enforced and it can be enforced by a court or tribunal. Therefore, while every smart legal contract will contain some elements of a smart contract, not every smart contract will be a smart legal contract.

There is no formal definition of a smart legal contract in the legal industry.

A Ricardian contract is a type of smart legal contract.

See also

References

  1. ^ Röscheisen, Martin; Baldonado, Michelle; Chang, Kevin; Gravano, Luis; Ketchpel, Steven; Paepcke, Andreas (1998). "The Stanford InfoBus and its service layers: Augmenting the internet with higher-level information management protocols". Digital Libraries in Computer Science: The MeDoc Approach. Lecture Notes in Computer Science. Vol. 1392. Springer. pp. 213–230. doi:10.1007/bfb0052526. ISBN 978-3-540-64493-4.
  2. ^ Fries, Martin; P. Paal, Boris (2019). Smart Contracts (in German). Mohr Siebeck. ISBN 978-3-16-156911-1. JSTOR j.ctvn96h9r.
  3. Savelyev, Alexander (14 December 2016). "Contract Law 2.0: "Smart" Contracts As the Beginning of the End of Classic Contract Law". Social Science Research Network. SSRN 2885241. Archived from the original on 24 March 2020. Retrieved 24 May 2020.
  4. Tapscott, Don; Tapscott, Alex (May 2016). The Blockchain Revolution: How the Technology Behind Bitcoin is Changing Money, Business, and the World. Portfolio/Penguin. pp. 72, 83, 101, 127. ISBN 978-0670069972.
  5. Szabo, Nick (1997). "View of Formalizing and Securing Relationships on Public Networks | First Monday". First Monday. doi:10.5210/fm.v2i9.548. S2CID 33773111. Archived from the original on 2022-04-10. Retrieved 2020-05-24.
  6. Zhou, Haozhe; Milani Fard, Amin; Makanju, Adetokunbo (2022-05-27). "The State of Ethereum Smart Contracts Security: Vulnerabilities, Countermeasures, and Tool Support". Journal of Cybersecurity and Privacy. 2 (2): 358–378. doi:10.3390/jcp2020019. ISSN 2624-800X.
  7. "All You Need to Know About NFT Smart Contracts". Binance.com. Binance. Archived from the original on 26 September 2022. Retrieved 26 September 2022.
  8. "White Paper· ethereum/wiki Wiki · GitHub". GitHub. Archived from the original on 11 January 2014.
  9. Alharby, Maher; van Moorsel, Aad (26 August 2017). "Blockchain-based Smart Contracts: A Systematic Mapping Study". Computer Science & Information Technology: 125–140. arXiv:1710.06372. doi:10.5121/csit.2017.71011. ISBN 9781921987700. S2CID 725413.
  10. ^ Cannarsa, Michel (1 December 2018). "Interpretation of Contracts and Smart Contracts: Smart Interpretation or Interpretation of Smart Contracts?". European Review of Private Law. 26 (6): 773–785. doi:10.54648/ERPL2018054. S2CID 188017977. Archived from the original on 10 August 2020. Retrieved 20 September 2020.
  11. ^ Drummer, Daniel; Neumann, Dirk (5 August 2020). "Is code law? Current legal and technical adoption issues and remedies for blockchain-enabled smart contracts". Journal of Information Technology. 35 (4): 337–360. doi:10.1177/0268396220924669. ISSN 0268-3962. S2CID 225409384. Archived from the original on 9 March 2021. Retrieved 20 September 2020.
  12. ^ Filatova, Nataliia (1 September 2020). "Smart contracts from the contract law perspective: outlining new regulative strategies". International Journal of Law and Information Technology. 28 (3): 217–242. doi:10.1093/ijlit/eaaa015. ISSN 0967-0769. Archived from the original on 18 January 2022. Retrieved 20 September 2020.
  13. Morris, David Z. (21 January 2014). "Bitcoin is not just digital currency. It's Napster for finance". Fortune. Archived from the original on 20 October 2014. Retrieved 7 November 2018.
  14. Schulpen, Ruben R.W.H.G. (1 August 2018). "Smart contracts in the Netherlands - University of Tilburg". uvt.nl. Twente University. Archived from the original on 19 February 2021. Retrieved 26 October 2019.
  15. ^ Mik, Eliza, Smart Contracts: A Requiem (December 7, 2019). Journal of Contract Law (2019) Volume 36 Part 1 at p 72
  16. J Cieplak, S Leefatt, ‘Smart Contracts: A Smart Way To Automate Performance’ (2017) 1 Georgia L & Tech Rev 417
  17. Governatori, Guido; Idelberger, Florian; Milosevic, Zoran; Riveret, Regis; Sartor, Giovanni; Xu, Xiwei (2018). "On legal contracts, imperative and declarative smart contracts, and blockchain systems". Artificial Intelligence and Law. 26 (4): 33. doi:10.1007/s10506-018-9223-3. S2CID 3663005.
  18. D J Yaga et al., Blockchain Technology Overview, National Institute of Standards and Technology Internal/Interagency Report 8202, 2018, p 54, cited in Mik, Eliza, Smart Contracts: A Requiem (December 7, 2019). Journal of Contract Law (2019) Volume 36 Part 1 at p 71
  19. Vo, Hoang Tam; Kundu, Ashish; Mohania, Mukesh (2018). "Research Directions in Blockchain Data Management and Analytics" (PDF). Advances in Database Technology - Extending Database Technology (EDBT). 21. OpenProceedings: 446. Archived (PDF) from the original on 2019-10-02. Retrieved 2019-10-02. Some distributed ledger technologies support an additional capability called a smart contract, which is similar to the concept of stored procedure in classical relational databases to some extent. Smart contracts allow the shared business processes within a business network to be standardised, automated and enforced via computer programs to increase the integrity of the ledger.
  20. Huckle, Steve; Bhattacharya, Rituparna; White, Martin; Beloff, Natalia (2016). "Internet of Things, Blockchain and Shared Economy Applications". Procedia Computer Science. 98. Elsevier B.V.: 463. doi:10.1016/j.procs.2016.09.074. Firstly, that total quantity of BTC in a transaction's inputs must cover the total number of BTC in the outputs. That rule behaves similarly to a database stored procedure, except that it is impossible to circumvent. Secondly, BTC transactions use public-private key cryptography. That makes BTC act like a database with a publicly auditable per-row permission scheme.
  21. Chapter 9: Building a Secure Future, One blockchain at a time Archived 2020-05-14 at the Wayback Machine, US Senate Joint Economic Committee, March 2018.
  22. "Arizona HB2417 - 2017 - Fifty-third Legislature 1st Regular". LegiScan. Archived from the original on 2017-04-28. Retrieved 2020-09-16.
  23. "Iowa House approves bills to facilitate broadband, cryptocurrency". www.thegazette.com. Archived from the original on 2021-04-15. Retrieved 2021-04-15.
  24. Hyman Gayle M, Digesti, Matthew P New Nevada legislation recognizes blockchain and smart contract terminologies Archived 2018-09-10 at the Wayback Machine August 2017, Nevada Lawyer
  25. Tom, Daniel (22 September 2020). "Smart Contract Bill Tennessee" (PDF). Archived (PDF) from the original on 2 October 2020. Retrieved 22 September 2020.
  26. Wyoming, Legislature (26 February 2019). "Wyoming - Smart Contract". Archived from the original on 28 January 2019. Retrieved 26 September 2020.
  27. Morgan, Herbert Smith Freehills LLP-Charlie; Parker, Chris; Livingston, Dorothy; Naish, Vanessa; Tevendale, Craig (23 April 2021). "Arbitration of digital disputes in smart contracts and the release of the digital dispute resolution rules from the UK jurisdiction taskforce | Lexology". www.lexology.com. Archived from the original on 2021-04-25. Retrieved 2021-04-25.
  28. ^ Soloro, Kevin; Kanna, Randall; Hoover, David (December 2019). Hands-On Smart Contract Development With Solidity and Ethereum: From Fundamentals to Deployment. California, U.S.A.: O'Reilly. p. 73. ISBN 978-1-492-04526-7. Archived from the original on 25 October 2023. Retrieved 1 November 2020.
  29. ^ Sergey, Ilya; Nagaraj, Vaivaswatha; Johannsen, Jacob; Kumar, Amrit; Trunov, Anton; Hao, Ken Chan Guan (10 October 2019). "Safer smart contract programming with Scilla". Proceedings of the ACM on Programming Languages. 3 (OOPSLA): 1–30. doi:10.1145/3360611. ISSN 2475-1421.
  30. Alharby, Maher; van Moorsel, Aad (26 August 2017). "Blockchain-based Smart Contracts: A Systematic Mapping Study". Computer Science & Information Technology: 125–140. arXiv:1710.06372. doi:10.5121/csit.2017.71011. ISBN 9781921987700.
  31. Wohrer, Maximilian; Zdun, Uwe (20 March 2018). "Smart contracts: Security patterns in the ethereum ecosystem and solidity". 2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE). pp. 2–8. doi:10.1109/IWBOSE.2018.8327565. ISBN 978-1-5386-5986-1. S2CID 4567923. Archived from the original on 9 October 2020. Retrieved 4 October 2020.
  32. Perez, Daniel; Livshits, Benjamin (17 October 2020). "Smart Contract Vulnerabilities: Vulnerable Does Not Imply Exploited". arXiv:1902.06710 .
  33. ^ Harz, Dominik; Knottenbelt, William (31 October 2018). "Towards Safer Smart Contracts: A Survey of Languages and Verification Methods". arXiv:1809.09805 .
  34. ^ Tyurin, A.V.; Tyuluandin, I.V.; Maltsev, V.S.; Kirilenko, I.A.; Berezun, D.A. (2019). "Overview of the Languages for Safe Smart Contract Programming". Proceedings of the Institute for System Programming of the RAS. 31 (3): 157–176. doi:10.15514/ispras-2019-31(3)-13. S2CID 203179644.
  35. Jansen, Marc; Hdhili, Farouk; Gouiaa, Ramy; Qasem, Ziyaad (2020). "Do Smart Contract Languages Need to be Turing Complete?". Blockchain and Applications. Advances in Intelligent Systems and Computing. Vol. 1010. Springer International Publishing. pp. 19–26. doi:10.1007/978-3-030-23813-1_3. ISBN 978-3-030-23812-4. S2CID 195656195.
  36. ^ Atzei, Nicola; Bartoletti, Massimo; Cimoli, Tiziana (2017), "A survey of attacks on Ethereum smart contracts" (PDF), 6th International Conference on Principles of Security and Trust (POST), European Joint Conferences on Theory and Practice of Software, archived (PDF) from the original on 2017-07-10, retrieved 2017-06-20
  37. Atzei, Nicola; Bartoletti, Massimo; Cimoli, Tiziana; Lande, Stefano; Zunino, Roberto (2018), "SoK: unraveling Bitcoin smart contracts" (PDF), 7th International Conference on Principles of Security and Trust (POST), European Joint Conferences on Theory and Practice of Software, archived (PDF) from the original on 2018-02-23, retrieved 2018-02-22
  38. ^ Chatterjee, Krishnendu; Goharshady, Amir Kafshdar; Pourdamghani, Arash (21 February 2019). "Probabilistic Smart Contracts: Secure Randomness on the Blockchain". arXiv:1902.07986 .
  39. Chen, Tai-yuan; Huang, Wei-ning; Kuo, Po-chun; Chung, Hao (6 August 2020). "Method for Generating Secure Randomness on Blockchain". Retrieved 28 August 2020.
  40. Jia, Zhifeng; Chen, Rui; Li, Jie (2019). "DeLottery: A Novel Decentralized Lottery System Based on Blockchain Technology". Proceedings of the 2019 2nd International Conference on Blockchain Technology and Applications. pp. 20–25. doi:10.1145/3376044.3376049. ISBN 9781450377430. S2CID 207880557.
  41. "randao/randao". randao. 10 July 2020. Archived from the original on 10 August 2020. Retrieved 10 July 2020.
  42. Nick Szabo (1998). "Secure Property Titles with Owner Authority". Archived from the original on January 15, 2014. Retrieved January 12, 2014.
  43. Jörg F. Wittenberger (2002). Askemos a distributed settlement. Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet (SSGRR), L’Aquila. Archived from the original on 2018-07-01. Retrieved 2017-05-25.
  44. "Proceedings of International Conference on Advances in Infrastructure for e-Business, e-Education, e-Science, and e-Medicine on the Internet" (PDF). Archived from the original (PDF) on 2017-10-26. Retrieved 2017-05-25.
  45. Martin Möbius (2009). Erstellung eines Archivierungskonzepts für die Speicherung rückverfolgbarer Datenbestände im Askemos-System (Thesis). Hochschule Mittweida. Archived from the original on 2018-07-01. Retrieved 2017-05-25.
  46. Tom-Steve Watzke (2010). "Entwicklung einer Datenbankschnittstelle als Grundlage für Shop-Systeme unter dem Betriebssystem Askemos". Archived from the original on 2018-07-01. Retrieved 2017-05-25.
  47. RA Markus Heinker (2007). "Beweiswürdigung elektronischer Dokumente im Zivilprozess unter vergleichender Betrachtung von qualifizierten elektronischen Signaturen nach dem Signaturgesetz und dem Askemos-Verfahren". Archived from the original on 2018-07-01. Retrieved 2017-05-25.
  48. Hal Hodson (20 November 2013). "Bitcoin moves beyond mere money". New Scientist. Archived from the original on 5 July 2015. Retrieved 12 January 2014.
  49. Ross, Rory (2015-09-12). "Smart Money: Blockchains Are the Future of the Internet". Newsweek. Archived from the original on 2016-07-10. Retrieved 2016-05-27.
  50. Wigan, David (2015-06-11). "Bitcoin technology will disrupt derivatives, says banker". IFR Asia. Archived from the original on 2016-06-29. Retrieved 2016-05-27.
  51. "How blockchain technology could change our lives" (PDF). Archived (PDF) from the original on 2017-03-30. Retrieved 2024-05-24.
  52. "Blockchain and AI are coming to kill these 4 business verticals". Archived from the original on 2017-12-22. Retrieved 2024-05-24.
  53. Blockchain for Digital Governments
  54. "Blockchain Based Framework for Document Authentication". doi:10.1007/978-3-030-67490-8_19. Archived from the original on 2021-05-12. Retrieved 2024-05-24.
  55. Snook, Chris J. (31 October 2017). "Blockchain and Artificial Intelligence Are Coming to Kill These 4 Small Business Verticals". Inc.com. Archived from the original on 22 December 2017. Retrieved 25 January 2022.
  56. "The Bitfury Group and Government of Republic of Georgia Expand Blockchain Pilot" (PDF). Archived (PDF) from the original on 2021-05-26. Retrieved 2021-05-26.
  57. "A BLOCKCHAIN - Journals Gateway". doi:10.1162/inov_a_00276. Archived from the original on 2021-03-03. Retrieved 2021-05-26.
  58. "Digital Transformation: Blockchain and Land Titles" (PDF). Archived (PDF) from the original on 2021-06-21. Retrieved 2021-05-26.
  59. "Ukraine launches big blockchain deal with tech firm Bitfury". Reuters. 17 April 2017. Archived from the original on 2023-01-24.
  60. Oranburg, Seth; Palagashvili, Liya (22 October 2018). "The Gig Economy, Smart Contracts, and Disruption of Traditional Work Arrangements". Search eLibrary. doi:10.2139/ssrn.3270867. S2CID 216803648. SSRN 3270867. Archived from the original on 20 February 2022. Retrieved 25 January 2022.
  61. "A blockchain-based decentralized system for proper handling of temporary employment contracts". Archived from the original on 2023-10-15. Retrieved 2024-05-24.
  62. Peck, M. (28 May 2016). "Ethereum's $150-Million Blockchain-Powered Fund Opens Just as Researchers Call For a Halt". IEEE Spectrum. Institute of Electrical and Electronics Engineers. Archived from the original on 30 May 2016. Retrieved 2 February 2020.
  63. DuPont, Quinn (2017). "Experiments in Algorithmic Governance: A history and ethnography of "The DAO", a failed Decentralized Autonomous Organization" (PDF). Archived from the original (PDF) on 2017-07-30. Retrieved 29 July 2017.
  64. Coy, Peter; Kharif, Olga (25 August 2016). "This Is Your Company on Blockchain". Bloomberg Businessweek. Archived from the original on 2016-09-14. Retrieved 2016-12-05.
  65. Praitheeshan, Purathani; Pan, Lei; Yu, Jiangshan; Liu, Joseph; Doss, R. (2019). "Security Analysis Methods on Ethereum Smart Contract Vulnerabilities: A Survey". arXiv:1908.08605 .
  66. Whitepaper: Smart Contracts and Distributed Ledger – A Legal Perspective Archived 2018-04-24 at the Wayback Machine, 5.
  67. Whitepaper: Smart Contracts and Distributed Ledger – A Legal Perspective Archived 2018-04-24 at the Wayback Machine, 3.
Medium of exchange
Commodity
money
Domestic animals
Representative money
Money
(Fiat/Token)
General
Cryptocurrencies
Technology
Consensus mechanisms
Proof of work currencies
SHA-256-based
Ethash-based
Scrypt-based
Equihash-based
RandomX-based
X11-based
Other
Proof of stake currencies
ERC-20 tokens
Stablecoins
Other currencies
Inactive currencies
Crypto service companies
Related topics
Categories: