19 research outputs found
Efficient Zero-Knowledge Contingent Payments in Cryptocurrencies Without Scripts
One of the most promising innovations offered by the cryptographic currencies (like Bitcoin) are the so-called \emph{smart contracts}, which can be viewed as financial agreements between mutually distrusting participants. Their execution is enforced by the mechanics of the currency, and typically has monetary consequences for the parties. The rules of these contracts are written in the form of so-called ``scripts\u27\u27, which are pieces of code in some ``scripting language\u27\u27. Although smart contracts are believed to have a huge potential, for the moment they are not widely used in practice. In particular, most of Bitcoin miners allow only to post standard transactions (i.e.: those without the non-trivial scripts) on the blockchain. As a result, it is currently very hard to create non-trivial smart contracts in Bitcoin.
Motivated by this, we address the following question: ``is it possible to create non-trivial efficient smart contracts using the standard transactions only?\u27\u27 We answer this question affirmatively, by constructing efficient Zero-Knowledge Contingent Payment protocol for a large class of NP-relations. This includes the relations for which efficient sigma protocols exist. In particular, our protocol can be used to sell a factorization of an RSA modulus , which is an example that we implemented and tested its efficiency in practice.
As another example of the ``smart contract without scripts\u27\u27 we show how our techniques can be used to implement the contract called ``trading across chains\u27\u27
An empirical analysis of smart contracts: platforms, applications, and design patterns
Smart contracts are computer programs that can be consistently executed by a
network of mutually distrusting nodes, without the arbitration of a trusted
authority. Because of their resilience to tampering, smart contracts are
appealing in many scenarios, especially in those which require transfers of
money to respect certain agreed rules (like in financial services and in
games). Over the last few years many platforms for smart contracts have been
proposed, and some of them have been actually implemented and used. We study
how the notion of smart contract is interpreted in some of these platforms.
Focussing on the two most widespread ones, Bitcoin and Ethereum, we quantify
the usage of smart contracts in relation to their application domain. We also
analyse the most common programming patterns in Ethereum, where the source code
of smart contracts is available.Comment: WTSC 201
Blockchain-based Smart Contracts: A Systematic Mapping Study
An appealing feature of blockchain technology is smart contracts. A smart
contract is executable code that runs on top of the blockchain to facilitate,
execute and enforce an agreement between untrusted parties without the
involvement of a trusted third party. In this paper, we conduct a systematic
mapping study to collect all research that is relevant to smart contracts from
a technical perspective. The aim of doing so is to identify current research
topics and open challenges for future studies in smart contract research. We
extract 24 papers from different scientific databases. The results show that
about two thirds of the papers focus on identifying and tackling smart contract
issues. Four key issues are identified, namely, codifying, security, privacy
and performance issues. The rest of the papers focuses on smart contract
applications or other smart contract related topics. Research gaps that need to
be addressed in future studies are provided.Comment: Keywords: Blockchain, Smart contracts, Systematic Mapping Study,
Surve
Formal Models of Bitcoin Contracts: A Survey
Although Bitcoin is mostly used as a decentralized application to transfer cryptocurrency, over the last 10 years there have been several studies on how to exploit Bitcoin to execute smart contracts. These are computer protocols which allow users to exchange bitcoins according to complex pre-agreed rules. Some of these studies introduce formal models of Bitcoin contracts, which specify their behavior in non-ambiguous terms, in some cases providing tools to automatically verify relevant contract properties. In this paper, we survey the formal models proposed in the scientific literature, comparing their expressiveness and applicability in the wild
Renegotiation and recursion in Bitcoin contracts
BitML is a process calculus to express smart contracts that can be run on
Bitcoin. One of its current limitations is that, once a contract has been
stipulated, the participants cannot renegotiate its terms: this prevents
expressing common financial contracts, where funds have to be added by
participants at run-time. In this paper, we extend BitML with a new primitive
for contract renegotiation. At the same time, the new primitive can be used to
write recursive contracts, which was not possible in the original BitML. We
show that, despite the increased expressiveness, it is still possible to
execute BitML on standard Bitcoin, preserving the security guarantees of BitML.Comment: Full version of the paper presented at COORDINATION 202
Прогнозування курсу криптовалют з використанням технологій нейромереж
Метою кваліфікаційної роботи магістра є створення програми для прогнозування, реалізації та аналізу курсів криптовалют.
Під час виконання роботи використовували та аналізували методи та класифікації для прогнозування майбутнього курсу криптовалют, завдяки нейронним мережам.
У результаті проведених досліджень було розроблено програмний продукт, який може прогнозувати курс криптовалюти з точністю 20-50% залежно від прогнозованого періоду, а також тенденцію курсу з точністю до 100%. Було виявлено, що регресору потрібно 90 днів для навчання і більш точного прогнозу курсу криптовалют. Новизна роботи полягає в розробці методу прогнозування курсу криптовалюти, використовуючи дані із нейронних мереж як зовнішній фактор, що впливає на обмінний курс
Contingent payments on a public ledger: models and reductions for automated verification
International audienceWe study protocols that rely on a public ledger infrastructure, concentrating on protocols for zero-knowledge contingent payment, whose security properties combine diverse notions of fairness and privacy. We argue that rigorous models are required for capturing the ledger semantics, the protocol-ledger interaction, the cryptographic primitives and, ultimately, the security properties one would like to achieve.Our focus is on a particular level of abstraction, where network messages are represented by a term algebra, protocol execution by state transition systems (e.g. multiset rewrite rules) and where the properties of interest can be analyzed with automated verification tools. We propose models for: (1) the rules guiding the ledger execution, taking the coin functionality of public ledgers such as Bitcoin as an example; (2) the security properties expected from ledger-based zero-knowledge contingent payment protocols; (3) two different security protocols that aim at achieving these properties relying on different ledger infrastructures; (4) reductions that allow simpler term algebras for homomorphic cryptographic schemes.Altogether, these models allow us to derive a first automated verification for ledger-based zero-knowledge contingent payment using the Tamarin prover. Furthermore , our models help in clarifying certain underlying assumptions, security and efficiency tradeoffs that should be taken into account when deploying protocols on the blockchain