Abstract

Bitcoin, as the first and the most adopted cryptocurrency, offers many features one of which is contingent payment, that is, the owner of money can programmatically describe the condition upon which his/her money is spent. The condition is determined using a set of instructions written in the Bitcoin scripting language. Unfortunately, this scripting language is not sophisticated enough to create complex conditions or smart contracts in general. Many admirable efforts have been made to build a smart contract infrastructure on top of the Bitcoin platform. In this paper, given the inherent limitations of the Bitcoin scripting language, we critically analyze the practical effectiveness of these methods. Afterwards, we formally define what a smart contract is and introduce seven requirements that if are satisfied, can make creation of smart contracts for Bitcoin possible. Based on the introduced requirements, we examine the ability of the current methods that use secure Multi-party Computation (MPC) to create smart contracts for Bitcoin and show where they fall short. We additionally compare their pros and cons and give clues on how a comprehensive smart contract platform can be possibly built for Bitcoin.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call