Christopher Ehmke, Florian Wessling, Christoph M. Friedrich
The expansion of blockchain technologies from financial applications to other fields intensifies the problem of an increasing size of data stored in the blockchain. Unfortunately, new participants of the blockchain network are required to download the whole blockchain to gain an overview about the state of the system and to validate incoming transactions. Approaches like IOTA, SegWit or the Lightning Network try to solve the scalability issues of blockchain applications. Unfortunately, they focus on strategies slowing down the blockchain's growth instead of reducing the problems arising from a growing chain or introduce new concepts to oust the linear blockchain altogether. The approach proposed in this paper is based on the idea of Ethereum to keep the state of the system explicitly in the current block but further pursues this by including the relevant part of the current system state in new transactions as well. This enables other participants to validate incoming transactions without having to download the whole blockchain initially. Following this idea use cases can be supported that require scalable blockchain technology but not necessarily an indefinite and complete transaction history.
Even though blockchain is mostly popular for its cryptocurrency, smart contracts have become a very prominent blockchain application. Smart contracts are like classes that can be called by client applications outside the blockchain. Therefore it is possible to develop blockchain-oriented software (BOS) that implements part of the business logic in the blockchain by using smart contracts. Currently, there is no design standard to model BOS. Since modeling is an important part of designing a software, developers may struggle to plan their BOS. In this paper, we show three complementary modeling approaches based on well-known software engineering models and apply them to a BOS example. Our goal is to start the discussion on specialized blockchain modeling notations.
Smart contracts enabled a new way to perform cryptocurrency transactions over blockchains. While this emerging technique introduces free-of-conflicts and transparency, smart contract itself is vulnerable. As a special form of computer program, smart contract can hardly get rid of bugs. Even worse, an exploitable security bug can lead to catastrophic consequences, e.g., loss of cryptocurrency/money. In this demo paper, we focus on the most common type of security bugs in smart contracts, i.e., reentrancy bug, which caused the famous DAO attack with a loss of 60 million US dollars. We presented ReGuard, an fuzzing-based analyzer to automatically detect reentrancy bugs in Ethereum smart contracts. Specifically, ReGuard performs fuzz testing on smart contracts by iteratively generating random but diverse transactions. Based on the runtime traces, ReGuard further dynamically identifies reentrancy vulnerabilities. In the preliminary evaluation, we have analyzed 5 existing Ethereum contracts. ReGuard automatically flagged 7 previously unreported reentrancy bugs. A demo video of ReGuard is at https://youtu.be/XxJ3_-cmUiY.
Kapil Singi, D S Pradeepkumar, Vikrant Kaulgud, Sanjay Podder
In this extended abstract, we propose a conceptual framework that leverages distributed ledger technology and smart contracts to create a decentralized system to capture the occurrence of interesting development activities (e.g., a development build) and associated contextual data, and automatically audit and evaluate compliance to governance policies. Our hypothesis is that such a framework will facilitate easier sharing of information across all participants of a distributed development team, compliance evaluation and early mitigation actions, leading to greater visibility and compliance. Currently, the proof of concept we are working on is focused on sharing and compliance evaluation of the open-source components used in software development.
Christian Berger, Birgit Penzenstadler, Olaf Drögehorn
Innovation in the world of today is mainly driven by software. Companies need to continuously rejuvenate their product portfolios with new features to stay ahead of their competitors. For example, recent trends explore the application of blockchains to domains other than finance. This paper analyzes the state-of-the-art for safety-critical systems as found in modern vehicles like self-driving cars, smart energy systems, and home automation focusing on specific challenges where key ideas behind blockchains might be applicable. Next, potential benefits unlocked by applying such ideas are presented and discussed for the respective usage scenario. Finally, a research agenda is outlined to summarize remaining challenges for successfully applying blockchains to safety-critical cyber-physical systems.
Sergei Tikhomirov, Ekaterina Voskresenskaya, Ivan Ivanitskiy, Ramil Takhaviev · 6 authors
Ethereum is a major blockchain-based platform for smart contracts - Turing complete programs that are executed in a decentralized network and usually manipulate digital units of value. Solidity is the most mature high-level smart contract language. Ethereum is a hostile execution environment, where anonymous attackers exploit bugs for immediate financial gain. Developers have a very limited ability to patch deployed contracts. Hackers steal up to tens of millions of dollars from flawed contracts, a well-known example being "The DAO", broken in June 2016. Advice on secure Ethereum programming practices is spread out across blogs, papers, and tutorials. Many sources are outdated due to a rapid pace of development in this field. Automated vulnerability detection tools, which help detect potentially problematic language constructs, are still underdeveloped in this area.
Blockchain systems, with the characteristics of decentralization, irreversibility and traceability, have attracted a lot of attentions recently. However, the current performance of blockchain is poor, which becomes a major constraint of its applications. Additionally, different blockchain systems lack standard performance monitoring approach which can automatically adapt to different systems and provide detailed and real-time performance information. To solve this problem, we propose overall performance metrics and detailed performance metrics for the users to know the exact performance in different stages of the blockchain. Then we propose a performance monitoring framework with a log-based method. It has advantages of lower overhead, more details, and better scalability than the previous performance monitoring approaches. Finally we implement the framework to monitor four well-known blockchain systems, using a set of 1,000 open-source smart contracts. The experimental results show that our framework can make detailed and real-time performance monitoring of blockchain systems. We also provide some suggestions for the future development of blockchain systems.
Smart contracts that run on blockchains can ensure the transactions are automatically, reliably performed as agreed upon between the participants without a trusted third party. In this work, we propose a smart-contract based algorithm for constructing service-based systems through the composition of existing services.
Being a new kind of software leveraging blockchain to execute real contracts, smart contracts are in great demand due to many advantages. Ethereum is the largest blockchain platform that supports smart contracts by running them in its virtual machine. To ensure that a smart contract will terminate eventually and prevent abuse of resources, Ethereum charges the developers for deploying smart contracts and the users for executing smart contracts. Although our previous work shows that under-optimized smart contracts may cost more money than necessary, it just lists 7 anti-patterns and the detection method for 3 of them. In this paper, we conduct the first in-depth investigation on such under-optimized smart contracts. We first identify 24 anti-patterns from the execution traces of real smart contracts. Then, we design and develop GasReducer, the first tool to automatically detect all these anti-patterns from the bytecode of smart contracts and replace them with efficient code through bytecode-to-bytecode optimization. Using GasReducer to analyze all smart contracts and their execution traces, we detect 9,490,768 and 557,565,754 anti-pattern instances in deploying and invoking smart contracts, respectively.
Blockchain-based decentralized cryptocurrency platforms are currently one of the hottest topics in technology. Although most of the interest is generated by cryptocurrency related activities, it is becoming apparent that a much wider spectrum of applications can leverage the blockchain technology. The primary concepts enabling such general use of the blockchain are the so-called smart contracts, which are special programs that run on the blockchain. One of the most popular blockchain platforms that supports smart contracts is Ethereum. As smart contracts typically handle money, ensuring their low number of faults and vulnerabilities are essential. To aid smart contract developers and help to mature the technology, we need analysis tools and studies for smart contracts. As an initiative for this, we propose the adoption of some well-known OO metrics for Solidity smart contracts. Furthermore, we analyze more than 40 thousand Solidity source files with our prototype tool. The results suggest that smart contract programs are short, neither overly complex nor coupled too much, do not rely heavily on inheritance, and either quite well-commented or not commented at all. Moreover, smart contracts could benefit from an external library and dependency management mechanism, as more than 85% of the defined libraries in Solidity files code the same functionalities.
Santiago Bragagnolo, Henrique Rocha, Marcus Denker, Sté́phane Ducasse
Blockchains store a massive amount of heterogeneous data which will only grow in time. When searching for data on the Ethereum platform, one is required to either access the records (blocks) directly by using a unique identifier, or sequentially search several records to find the desired information. Therefore, we propose the Ethereum Query Language (EQL), a query language that allows users to retrieve information from the blockchain by writing SQL-like queries. The queries provide a rich syntax to specify data elements to search information scattered through several records. We claim that EQL makes it easier to search, acquire, format, and present information from the blockchain.
Grigory O. Krylov, A. Yu. Lisitsyn, Leonid I. Polyakov
The article provides a comparative analysis of the volatility of the leading national fiat currencies and their transnational anonymous analogues, which received the slang name “cryptocurrency”.Volatility is the most important financial indicator in the management of financial flows, as a measure of the risk of using a financial instrument at a specified period of time. Cryptocurrency mining technology is available to the general public and has become an innovative phenomenon. The latest fi phenomena need to be investigated, so it is necessary to conduct a multilateral scientific analysis, identification and comparison of cryptocurrency with fi currency. The aim of this study is to obtain new estimates of cryptocurrency based on the use of tools such as GARCH-model, simple historical volatility (SHV) and developed by the author’s toolkit, which is based on the Chaikin method. The methodological basis of the research is logical, econometric, economic and statistical methods of analysis, technical and fundamental analysis, and method of scientific visualization. The calculated volatility estimates are based on the Central Bank’s data on currency rates and investigated using named three models. The article for the first time presents the results of comparison of volatility of the leading fiat currencies (uS dollar, euro, Chinese yuan and Japanese yen) and the most popular today so-called cryptocurrencies (bicoin, litecoin, ethereum, and monero). Estimation of volatility showed that the volatility of bitcoin is significantly higher than fiat money. In this regard, it is concluded that the recognition of cryptocurrency, in particular bitcoin, as a real money is premature, not only due to the lack of regulations of a certain cryptocurrency as a legal tender, but also on the grounds of violation of essential requirements for the properties of the currency, such as a low level of volatility.
The efficiency of decentralized book systems like Bitcoin and Ethereum has always been a challenge. It is usually measured by three major factors: scalability, throughput, and latency. Scalability refers to how the system capacity is increased by adding more physical resources. Throughput measures the volume of transactions for a given period of time, where most current solutions attempt to improve such as NEO, EOS, etc. Latency measures the processing time of any single transaction. In current blockchain based systems, the block generation rate is the main latency bottleneck. Off-chain processes such as state channels are the most recent work that can integrate partial inbound transactions, reducing latency. Unfortunately, the state channel introduces more issues at the same time, such as cross-channel synchronization, which makes the state channel unavailable for full adoption of current blockchain solutions. In order to solve the efficiency problem, we proposed an end-to-end solution called ALZA, which links the dedicated high-throughput blockchain with self-organizing payment fields. This mechanism allows arbitrary set of users to create payment fields that process extremely low latency transactions within each field. Therefore, users can make transactions almost immediately. Since all transactions are conducted within fields, transaction costs will be reduced by several orders of magnitude. In addition, ALZA distributes main ledger to each client through an innovative replication mechanism. Therefore, the system will be significantly more robust to blockchain system failures. In theory, ALZA can complete millions of transactions in one second, which naturally supports high-frequency trading.
James Tapsell, Raja Naeem Akram, Konstantinos Markantonakis
Bitcoin is a decentralised digital currency that relies on cryptography rather than trusted third parties such as central banks for its security. Underpinning the operation of the currency is a peer-to-peer (P2P) network that facilitates the execution of transactions by end users, as well as the transaction confirmation process known as bitcoin mining. The security of this P2P network is vital for the currency to function and subversion of the underlying network can lead to attacks on bitcoin users including theft of bitcoins, manipulation of the mining process and denial of service (DoS). As part of this paper the network protocol and bitcoin core software are analysed, with three bitcoin message exchanges (the connection handshake, GETHEADERS/HEADERS and MEMPOOL/INV) found to be potentially vulnerable to spoofing and use in distributed denial of service (DDoS) attacks. Possible solutions to the identified weaknesses and vulnerabilities are evaluated, such as the introduction of random nonces into network messages exchanges.
Freya Sheer Hardwick, Apostolos Gioulis, Raja Naeem Akram, Konstantinos Markantonakis
Technology has positive impacts on many aspects of our social life. Designing a 24hour globally connected architecture enables ease of access to a variety of resources and services. Furthermore, technology like Internet has been a fertile ground for innovation and creativity. One of such disruptive innovation is blockchain -- a keystone of cryptocurrencies. The blockchain technology is presented as a game changer for many of the existing and emerging technologies/services. With its immutability property and decentralised architecture, it is taking centre stage in many services as an equalisation factor to the current parity between consumers and large corporations/governments. One of such potential applications of the blockchain is in e-voting schemes. The objective of such a scheme would be to provide a decentralised architecture to run and support a voting scheme that is open, fair and independently verifiable. In this paper, we propose potentially a new e-voting protocol that utilises the blockchain as a transparent ballot box. The protocol has been designed with adhering to the fundamental e-voting properties in mind as well as offering a degree of decentralisation and allowing for the voter to change/update their vote (within the permissible voting period). The paper highlights the pros and cons of using blockchain for such a proposal from practical point view in both development/deployment and usage contexts. Concluding the paper with a potential roadmap for blockchain technology to be able to support complex applications.
Gibraltar foundations have attracted a lot of interest in the charitable and financial services areas, most notably in the distributed ledger (or blockchain) technology (DLT) and initial coin offering space. Gibraltar is one of the first jurisdictions to embrace DLT technology and the financial services activity it has generated, whilst recognizing the risks inherent in those activities and moving to legislate against them. Given the combination of the interest recently generated in these areas, and the suitability of the Gibraltar foundation as a vehicle through which to engage in these activities, it is of little surprise that Gibraltar foundations are attracting an increasing amount of attention and interest.
The Banking Union is a framework composed of “Single Supervisory Mechanism (SSM)”, “Single Resolution Mechanism (SRM)” and “Deposit Guarantee Scheme (DGS)” and aims at strengthening regulation, observation and governance in the European financial sector. In the case that a bank goes into bankruptcy, it will be saved, without using public finance, between stockholders and creditors under the framework of banking union. Moreover, European Union (EU) integrates the responsibility of observation into the European Central Bank (ECB) and expects that ECB will be able to timely intervene banking system in member countries so that it can stop spreading financial crisis. On the other hand, European financial system is diversified and regional oriented in nature, reflecting its history, culture and policies. For example, in Germany, Landesbank/Sparkasse system, which is like a public bank owned by local government, and cooperative banks, which have close relationship with local businesses, has a larger share and influence. In France, large financial institutions such as Credit Agricole, BPCE group and Credit Mutuele, which are owned partly by public entity, make it possible to be both commercialization and localization at the same time by owning numerous small local banks under their umbrellas. In the Netherlands and Finland, which are economically successful in Euro zone, cooperative banks such as RaboBank and OP Group have also larger share and could keep sound banking even during European debt crisis. However, In Spain and Italy, which owns about 1/3 of bad loans in whole Euro zone, cooperative and saving banks also have larger share in their financial systems but it is criticized that its governance is one of major reasons causing financial crisis. Purpose of this paper is to overview how de-centralized financial system like saving banks and cooperative banks, which have larger influence in European countries, are overcoming the financial crisis in major European countries and to analyze and discuss effectiveness of both banking union and stability of regional financial system, emphasizing its importance as a stabilizer of money circulation in regional economy. This paper also tries to show the soundness of regional financial system during European debt crisis with recent business performance of cooperative banks which have decentralized financial structure and to complement precedent papers by indicating that characteristic of financial structure have some relationships with degree of financial crisis through comparing the characteristics of four major Euro countries such as Germany, France, Spain and Italy. (395 words)
Fei–Yue Wang, Yong Yuan, Chunming Rong, Jun Jason Zhang
Time flies fast, it has been already one year since I was appointed as the Editor-in-Chief of this great publication, and thanks to the strong support and dedication of our associate editors, editorial staff, anonymous reviewers, and authors, we have made solid progress and I really enjoy my work and our achievement so far. At this point, significant improvements in the timeliness and quality of the review process, as well as the numbers of manuscripts submitted and articles published have been accomplished.
This paper describes the proof of concept of a blockchain based organization of a local low voltage energy community. The focus of the concept is efficient use of shared resources to minimize external dependence, and not energy trading. A previously proposed control algorithm, which exploits the power dependency of the efficiency of electrical energy storages, is implemented as a smart contract on a private instance of an Ethereum blockchain to coordinate the operation. It is implemented using four connected Raspberry Pis representing the participating households with pre-given electrical load and photovoltaic conversion as well as a battery. Each household runs an Ethereum full node and an interfacing software. Only the energy technology components are simulated, while the blockchain is actually running on the Raspberry Pis in order to mind the full complexity of the technology. The practicability is proved in a test run and positive effects on the efficiency and the self-sufficiency within the community are observed. A first cost-benefit estimate is given and a further research agenda is presented.
Optimization methods are used to determine equilibria of investment in cryptocurrencies. The basic assumptions involve existence of a core group (the "wealthy") that fears the loss of substantial assets through government seizure. Speculators constitute another group that tends to introduce volatility and risk for the wealthy. The wealthy must divide their assets between the home currency and the cryptocurrency, while the government decides on the probability of seizing a fraction the assets of this group. Under the assumption that each group exhibits risk aversion through a utility function, we establish the existence and uniqueness of Nash equilibrium. Also examined is the more realistic optimization problem in which the government policy cannot be reversed, while the wealthy can adjust their allocation in reaction to the government's designation of probability. The methodology leads to an understanding the equilibrium market capitalization of cryptocurrencies.
In 2008 Satoshi Nakamoto released a White Paper introducing the cryptocurrency ‘bitcoin’ to the public. Intended to revolutionise the payments process, bitcoin is a peer-to-peer (and therefore distributed) ‘electronic cash system’ that facilitates relatively fast online payments with low transaction costs and ‘without going through a financial institution’. As a currency, it is perhaps not surprising that bitcoin has been met with both scepticism from the public and resistance from traditional financial institutions. In contrast, as a platform, the distributed ledger technology (DLT) that underpins bitcoin (known as the blockchain) is now witnessing mainstream adoption by major financial institutions. This transition comes as banks and other financial institutions are recognising the blockchain’s significant potential to ‘radically transform’ the financial services industry, resulting in what some are calling the ‘fourth industrial revolution’. As a consequence, it is becoming increasingly clear that DLTs have the potential to similarly disrupt the shadow banking sector as they enable innovative business models to be adopted by both banks (acting outside of the traditional regulated realm) and non-bank institutions (to conduct financial services activities).