Distributed ledger technology (DLT) is one of the latest in a long list of digital technologies, which appear to be heading towards a new industrial revolution. DLT has become very popular with the publication of the Bitcoin Blockchain in 2008. However, when we consider its suitability for dynamic networking environments, such as the Internet of Things, issues like transaction fees, scalability, and offline accessibility have not been resolved. The IOTA Foundation has designed the IOTA protocol, which is the data and value transfer layer for the Machine Economy. IOTA protocol uses an alternative blockless Blockchain which claims to solve the previous problems: the Tangle. This thesis first inquires into the theoretical concepts of both technologies Tangleand Blockchain, to understand them and identify the reasons to be compatible or not with the Internet of Things networking environments. After the analysis, the thesis focuses on the proposed implementation as a solution to address the connectivity issue suffered by the IOTA network. The answer to the problem is the development of a Neighbor Discovery algorithm, which has been designed to fulfill the requirements demanded by the IOTA application. Dealing with IOTA network setup can be very interesting for the community that is looking for new improvements at each release. Testing the solution in a peer-to-peer specific protocol (PeerSim), with different networking scenarios, allowed us to get valuable and more realistic information. Thus, after analyzing the results, we were able to determine the appropriate IOTA network configuration to build a more reliable and long-lasting network.
Elvira Albert, Pablo Gordillo, Benjamin Livshits, Albert Rubio · 5 authors
Analyzing Ethereum bytecode, rather than the source code from which it was generated, is a necessity when: (1) the source code is not available (e.g., the blockchain only stores the bytecode), (2) the information to be gathered in the analysis is only visible at the level of bytecode (e.g., gas consumption is specified at the level of EVM instructions), (3) the analysis results may be affected by optimizations performed by the compiler (thus the analysis should be done ideally after compilation). This paper presents EthIR, a framework for analyzing Ethereum bytecode, which relies on (an extension of) OYENTE, a tool that generates CFGs; EthIR produces from the CFGs, a rule-based representation (RBR) of the bytecode that enables the application of (existing) high-level analyses to infer properties of EVM code.
F. Richard Yu, Jianmin Liu, Ying He, Pengbo Si · 5 authors
Recently, with the tremendous development of crypto-currencies, distributed ledger technology (DLT) (e.g., blockchain) has attracted significant attention. The traditional Internet was originally design to handle the exchange of information. With DLT, we will have the Internet of value. Although, DLT has a great potential to create new foundations for our economic and social systems, the existing DLT has a number of drawbacks (e.g., scalability) that prevent it from being used as a generic platform for distributed ledger across the globe. In this paper, we present a novel virtualization approach to address the challenges in the existing DLT systems. Specifically, in the proposed virtualization for DLT (vDLT), the underlying resources (e.g., hardware, compute, storage, network, and so on) are abstracted. By providing a logical view of resources, vDLT can significantly improve the performance, facilitate system evolution, and simplify DLT management and configuration. Several use cases of vDLT are presented to illustrate the effectiveness of the proposed vDLT.
Wei Cai, Zehua Wang, Jason B. Ernst, Zhen Hong · 6 authors
Blockchain technology has attracted tremendous attention in both academia and capital market. However, overwhelming speculations on thousands of available cryptocurrencies and numerous initial coin offering (ICO) scams have also brought notorious debates on this emerging technology. This paper traces the development of blockchain systems to reveal the importance of decentralized applications (dApps) and the future value of blockchain. We survey the state-of-the-art dApps and discuss the direction of blockchain development to fulfill the desirable characteristics of dApps. The readers will gain an overview of dApp research and get familiar with recent developments in the blockchain.
Blockchain ledgers and the Cloud are a perfect match. On the one hand, there is an inherent requirement for multiple separate authentication nodes to validate every Blockchain transaction with each node requiring substantial encryption calculation capability. On the other hand, massive economies of scale can bring down the cost per transaction, and provide service continuity. Additionally, the Cloud provides a perfect incubator for proof-of-concept projects. This paper considers the future implications of Blockchain, as the concept of disintermediated trustless ledgers stimulates the imagination of computer scientists and innovators. The Cloud’s role in implementing this new paradigm is also highlighted, as a new decentralized P2P-Cloud model. Finally, this paper discusses how Blockchain may be integrated into the university level computer science and information technology curriculum.
Blockchain uses the idea of storing transaction data in the form of a distributed ledger wherein each node in the network stores a current copy of the sequence of transactions in the form of a hash chain. This requirement of storing the entire ledger incurs a high storage cost that grows undesirably large for high transaction rates and large networks. In this work we use the ideas of secret key sharing, private key encryption, and distributed storage to design a coding scheme such that each node stores only a part of the entire transaction thereby reducing the storage cost to a fraction of its original cost. When further using dynamic zone allocation, we show the coding scheme can also improve the integrity of the transaction data in the network over current schemes. Further, block validation (bitcoin mining) consumes a significant amount of energy as it is necessary to determine a hash value satisfying a specific set of constraints; we show that using dynamic distributed storage reduces these energy costs.
Zehui Xiong, Yang Zhang, Dusit Niyato, Ping Wang · 5 authors
Blockchain, as the backbone technology of the current popular Bitcoin digital currency, has become a promising decentralized approach for resource and transaction management. Although blockchain has been widely adopted in many applications, e.g., finance, healthcare, and logistics, its application in mobile environments is still limited. This is due to the fact that blockchain users need to solve preset proof-of-work puzzles to add new transactions to the blockchain. Solving the proof-of-work, however, consumes substantial resources in terms of CPU time and energy, which is not suitable for resource-limited mobile devices. To facilitate blockchain applications in future mobile Internet of Things systems, multiple access mobile edge computing appears to be an auspicious option to solve the proof-of-work puzzles for mobile users. We first introduce a novel concept of edge computing for mobile blockchain. Then, we introduce an economic approach for edge computing resource management. Moreover, a demonstrative prototype of mobile edge computing enabled blockchain systems is presented with experimental results to justify the proposed concept.
Zehui Xiong, Yang Zhang, Dusit Niyato, Ping Wang · 5 authors
Blockchain, as the backbone technology of the current popular Bitcoin digital currency, has become a promising decentralized data management framework. Although blockchain has been widely adopted in many applications (e.g., finance, healthcare, and logistics), its application in mobile services is still limited. This is due to the fact that blockchain users need to solve preset proof-of-work puzzles to add new data (i.e., a block) to the blockchain. Solving the proof of work, however, consumes substantial resources in terms of CPU time and energy, which is not suitable for resource-limited mobile devices. To facilitate blockchain applications in future mobile Internet of Things systems, multiple access mobile edge computing appears to be an auspicious solution to solve the proof-of-work puzzles for mobile users. We first introduce a novel concept of edge computing for mobile blockchain. Then we introduce an economic approach for edge computing resource management. Moreover, a prototype of mobile edge computing enabled blockchain systems is presented with experimental results to justify the proposed concept.
A blockchain is a distributed transaction ledger, a disruptive technology that creates new possibilities for digital ecosystems. The blockchain ecosystem maintains an immutable transaction record to support many types of digital services. This paper compares the performance and scalability of a web-based groupware communication application using both non-blockchain and blockchain technologies. Scalability is measured where message load is synthesized over two typical communication topologies. The first is 1 to n network -- a typical client-server or star-topology with a central vertex (server) receiving all messages from the remaining n - 1 vertices (clients). The second is a more naturally occurring scale-free network topology, where multiple communication hubs are distributed throughout the network. System performance is tested with both blockchain and non-blockchain solutions using multiple cloud computing configurations. We analyze the empirical results from each configuration to identify the costs and overhead of blockchain technology.
Antonio Fernández Anta, Chryssis Georgiou, Nicolas Nicolaou
In his PODC’2017 keynote address, Maurice Herlihy pointed out that despite the hype about blockchains and distributed ledgers, no formal abstraction of these objects has been proposed. To face this issue, in this paper we provide a proper formulation of a distributed ledger object. In brief, we define a ledger object as a sequence of records, and we provide the operations and the properties that such an object should support. We then provide a variation of the ledger – the validated ledger – which requires that each record in the ledger satisfies a particular validation rule. A (validated) ledger is distributed if it is implemented on top of multiple (possibly geographically dispersed) computing devices.
Raja Sakti Arief Daulay, Surya Michrandi Nasution, Marisa W. Paryasto
The implementation research and analyze address blockchain on this bitcoin will have the results that refers to making address bitcoin a safe and boost security of address the bitcoin. The working mechanism of blockchain in making address bitcoin which is already in the blockchain system.
A BlockChain is an open record of all digital money exchanges that have ever been executed. It is constantly growing as ‘completed’ blocks are added to it with a new set of recordings. The blocks are added to the blockchain in a linear, chronological order. Each PC associated with the Bitcoin systematize a customer that plays out the task of approving and handing-off exchanges gets a duplicate of the blockchain, which gets downloaded naturally after joining the Bitcoin arrange. The blockchain has finish data about the addresses and their adjusts ideal from the beginning piece to the most as of late finished square. Transactions between individuals have always been a part and parcel of human society for the division of labour made people interdependent. The medium of transaction has also been evolving along with the evolution of society and human consciousness from barter system to commodity money to fiat currency and now to digital currency or cryptocurrency. But as the evolution is a form of error correction, the problem of double spending in digital currency was solved by a distributed ledger system called BlockChain. Since 2008 onwards the blockchain technology has been separated from Bitcoins to be injected to many other problems related especially to banking transactions. Blockchain innovation empowers the production of decentralized monetary forms, savvy contracts and clever resources that can be controlled over the Internet.
Michael A. Walker, Abhishek Dubey, Áron Lászka, Douglas C. Schmidt
With the advent of blockchain-enabled IoT applications, there is an increased\nneed for related software patterns, middleware concepts, and testing practices\nto ensure adequate quality and productivity. IoT and blockchain each provide\ndifferent design goals, concepts, and practices that must be integrated,\nincluding the distributed actor model and fault tolerance from IoT and\ntransactive information integrity over untrustworthy sources from blockchain.\nBoth IoT and blockchain are emerging technologies and both lack codified\npatterns and practices for development of applications when combined. This\npaper describes PlaTIBART, which is a platform for transactive IoT blockchain\napplications with repeatable testing that combines the Actor pattern (which is\na commonly used model of computation in IoT) together with a custom Domain\nSpecific Language (DSL) and test network management tools. We show how\nPlaTIBART has been applied to develop, test, and analyze fault-tolerant IoT\nblockchain applications.\n
Hyperledger Fabric (HLF) is a flexible permissioned blockchain platform designed for business applications beyond the basic digital coin addressed by Bitcoin and other existing networks. A key property of HLF is its extensibility, and in particular the support for multiple ordering services for building the blockchain. Nonetheless, the version 1.0 was launched in early 2017 without an implementation of a Byzantine fault-tolerant (BFT) ordering service. To overcome this limitation, we designed, implemented, and evaluated a BFT ordering service for HLF on top of the BFT-SMaRt state machine replication/consensus library, implementing also optimizations for wide-area deployment. Our results show that HLF with our ordering service can achieve up to ten thousand transactions per second and write a transaction irrevocably in the blockchain in half a second, even with peers spread in different continents.
Abstract—As data is having an increasingly relevant role<br> in dierent business fields, ensuring integrity has become<br> fundamental. Modern databases rely on transaction history<br> written on redo logs to allow for data restore. However, if<br> redo logs are (maliciously) forged, data can actually be lost or<br> altered. Due its strong data integrity guarantees, blockchain<br> technology can be employed to ensure log integrity, but its<br> current performance limitations hinder actual exploitations.<br> In previous work, we proposed a layered blockchain-based<br> architecture for distributed (federated) database redo logs: a<br> fast first layer blockchain, anchored to a secure second layer<br> blockchain, based on proof-of-work to achieve strong integrity.<br> Here, we present an implementation and an experimental<br> evaluation of a prototype of that architecture, which employs a<br> total consensus algorithm on the first layer blockchain. Finally,<br> to improve availability and scalability, we refine our solution<br> by investigating, respectively, a Byzantine Fault Tolerant consensus<br> and a Distributed Hash Table solution to shard the first<br> layer blockchain ledger among available nodes.
Tien Tuan Anh Dinh, Rui Liu, Meihui Zhang, Gang Chen · 6 authors
Blockchain technologies are gaining massive momentum in the last few years. Blockchains are distributed ledgers that enable parties who do not fully trust each other to maintain a set of global states. The parties agree on the existence, values, and histories of the states. As the technology landscape is expanding rapidly, it is both important and challenging to have a firm grasp of what the core technologies have to offer, especially with respect to their data processing capabilities. In this paper, we first survey the state of the art, focusing on private blockchains (in which parties are authenticated). We analyze both in-production and research systems in four dimensions: distributed ledger, cryptography, consensus protocol, and smart contract. We then present BLOCKBENCH, a benchmarking framework for understanding performance of private blockchains against data processing workloads. We conduct a comprehensive evaluation of three major blockchain systems based on BLOCKBENCH, namely Ethereum, Parity, and Hyperledger Fabric. The results demonstrate several trade-offs in the design space, as well as big performance gaps between blockchain and database systems. Drawing from design principles of database systems, we discuss several research directions for bringing blockchain performance closer to the realm of databases.
The Internet of Things (IoT) technology has a potential to bring the benefits of intelligently interconnecting not just computers and humans, but most of everyday things. IoT has a promise of opening significant business process improvement opportunities leading to economic growth and cost reductions. However, there are many challenges facing IoT, including significant scalability and security challenges due to the integration of potentially huge number of things into the network. Many of scalability and security issues stem from a centralized, primarily client/server, architecture of IoT systems and frameworks. Blockchain technology, as a relativelly new approach to decentralized computation and assets management and transfer, has a potential to help solve a number of scalability and security issues that IoT is facing, primarilly through the removal of centralized points of failure for such systems. As such, blockchain technology and IoT integration provides a promising direction and it has recently generated significant research interest, e.g., [4].
Distributed ledger technology, a method of storing and maintaining the integrity of multiple copies of critical data using a massively redundant network of participating machines, has found a “killer application” in blockchain, a type of distributed ledger. A blockchain consists of sequential blocks that may never be modified or reordered, leaving a public, auditable record that is consistent and highly resistant to tampering and deletion. These qualities make blockchain eminently suitable for its most common use, cryptocurrency, and its occasional variants in the form of cryptocurrency tokens, used to represent ownership or some other right to virtual or physical goods and capabilities. Blockchain also enables smart contracts, discrete bodies of software written to serve both as the memorial and the means of execution of an agreement between parties. Smart contracts can have all the elements of a traditional contract, and as jurisdictions legislate or jurists rule on the fine points of enforceability and the acceptability of smart contracts as traditional contracts, applications in nearly every area of commerce have emerged. Digital lawyers may not need to become software developers, but deepening their understanding of the capabilities and limitations of the technology, developing a keen awareness of the issues at the intersection between code and the law, as well as the law’s readiness in this area, will be of great advantage to them and their clients in this rapidly evolving area at the intersection of technology, commerce and law.
Tien Tuan Anh Dinh, Ji Wang, Gang Chen, Rui Liu · 6 authors
Blockchain technologies are taking the world by storm. Public blockchains, such as Bitcoin and Ethereum, enable secure peer-to-peer applications like crypto-currency or smart contracts. Their security and performance are well studied. This paper concerns recent private blockchain systems designed with stronger security (trust) assumption and performance requirement. These systems target and aim to disrupt applications which have so far been implemented on top of database systems, for example banking, finance applications. Multiple platforms for private blockchains are being actively developed and fine tuned. However, there is a clear lack of a systematic framework with which different systems can be analyzed and compared against each other. Such a framework can be used to assess blockchains' viability as another distributed data processing platform, while helping developers to identify bottlenecks and accordingly improve their platforms. In this paper, we first describe BlockBench, the first evaluation framework for analyzing private blockchains. It serves as a fair means of comparison for different platforms and enables deeper understanding of different system design choices. Any private blockchain can be integrated to BlockBench via simple APIs and benchmarked against workloads that are based on real and synthetic smart contracts. BlockBench measures overall and component-wise performance in terms of throughput, latency, scalability and fault-tolerance. Next, we use BlockBench to conduct comprehensive evaluation of three major private blockchains: Ethereum, Parity and Hyperledger Fabric. The results demonstrate that these systems are still far from displacing current database systems in traditional data processing workloads. Furthermore, there are gaps in performance among the three systems which are attributed to the design choices at different layers of the software stack.
Over past decade cloud services have enabled individuals and organizations to perform different types of tasks such as online storage, email services, on-demand movies and TV shows. The cloud services has also enabled on-demand deployment of applications, at cheap cost with elastic and scalable, fault tolerant system. These cloud services are offered by cloud providers who use authentication, authorization and accounting framework based on client-server model. Though this model has been used over decades, study shows it is vulnerable to different hacks and it is also inconvenient to use for the end users. In addition, the cloud provider has total control over user data which they are able to monitor, trace, leak and even modify at their will. Thus, the user data ownership, digital identity and use of cloud services has raised privacy and security concern for the users. In this thesis, Blockchain and its applications are studied and alternative model for authentication, authorization and accounting is proposed based on Ethereum Blockchain. Furthermore, a prototype is developed which enables users to consume cloud services by authenticating, authorizing and accounting with a single identity without sharing any private user data. Experiments are run with the prototype to verify that it works as expected. Measurements are done to assess the feasibility and scalability of the solution. In the final part of the thesis, pros and cons of the proposed solution are discussed and perspectives for further research are sketched.