We describe the verification of an existing smart contract for a simple casino application, using the Whiley specification and programming language, with a fully automated verification engine based on Boogie and Z3. After finding and fixing several specification and code issues in the smart contract, we are able to verify all the operations of the smart contract.
We previously proposed a cross-referencing method for enabling multiple peer-to-peer network domains to manage their own public blockchains and periodically exchanging the state of the latest fixed block in the blockchain with hysteresis signatures among all the domains via an upper network layer. In this study, we evaluated the effectiveness of our method from three theoretical viewpoints: decentralization, scalability, and tamper resistance. We show that the performance of the entire system can be improved because transactions and blocks are distributed only inside the domain. We argue that the transaction processing capacity will increase to 56,000 transactions per second, which is as much as that of a VISA credit card system. The capacity is also evaluated by multiplying the number of domains by the average reduction in transaction-processing time due to the increase in block size and reduction in the block-generation-time interval by domain partition. For tamper resistance, each domain has evidence of the hysteresis signatures of the other domains in the blockchain. We introduce two types of tamper-resistance-improvement ratios as evaluation measures of tamper resistance for a blockchain and theoretically explain how tamper resistance is improved using our cross-referencing method. With our method, tamper resistance improves as the number of domains increases. The proposed system of 1,000 domains are 3-10 times more tamper-resistant than that of 100 domains, and the capacity is 10 times higher. We conclude that our method enables a more scalable and tamper-resistant public blockchain balanced with decentralization.
Blockchain technology is gaining prominence after its first famous implementation as part of the digital currency Bitcoin. It is made up of a series of blocks (the ledger) that give a secure, unchangeable, and auditable list of records. Once a block is recorded using encryption and a distributed database, it cannot be modified. The ledger in the case of Bitcoin stores the history of all monetary transactions. In three sections, this paper provides a review of blockchain technology for an interface design audience: (1) The fundamentals that enable block-chain technology are briefly discussed. (2) Specific examples include the use of HCI in blockchain research and development. (3) In the form of a fledgling research agenda, opportunities and difficulties for HCI and interface design are presented.
Numerous indexing databases keep track of the number of publications, citations, etc. in order to maintain the progress of science and individual. However, the choice of journals and articles varies among these indexing databases, hence the number of citations and h-index varies. There is no common platform exists that can provide a single count for the number of publications, citations, h-index, etc. To overcome this limitation, we have proposed a weighted unified informetrics, named "conflate". The proposed system takes into account the input from multiple indexing databases and generates a single output. Here, we have used the data from Scopus and WoS to generate a conflate dataset. Further, a comparative analysis of conflate has been performed with Scopus and WoS at three levels: author, organization, and journal. Finally, a mapping is proposed between research publications and distributed ledger technology in order to provide a transparent and distributed view to its stakeholders.
The Bitcoin blockchain is managed by an under- lying peer-to-peer network. This network is responsible for the propagation of transactions carried out by users via the blocks (which contain the validated transactions), and to ensure consensus between the different nodes. The quality and safety of this network are therefore particularly essential. In this work, we present an open dataset on the peers composing the Bitcoin P2P Network that was made following a well defined and reproducible methodology. We also provide a first analysis of the dataset on three criteria: the number of public nodes and their client version and geographical distribution.
Periklis Kostamis, Andreas Sendros, Pavlos S. Efraimidis
The cost of using a blockchain infrastructure as well as the time required to search and retrieve information from it must be considered when designing a decentralized application. In this work, we examine a comprehensive set of data management approaches for Ethereum applications and assess the associated cost in gas as well as the retrieval performance. More precisely, we analyze the storage and retrieval of various-sized data, utilizing smart contract storage. In addition, we study hybrid approaches by using IPFS and Swarm as storage platforms along with Ethereum as a timestamping proof mechanism. Such schemes are especially effective when large chunks of data have to be managed. Moreover, we present methods for low-cost data handling in Ethereum, namely the event-logs, the transaction payload, and the almost surprising exploitation of unused function arguments. Finally, we evaluate these methods on a comprehensive set of experiments.
It is widely accepted that blockchain systems cannot execute calls to external systems or services due to each node having to reach a deterministic state. However, in this paper we show that this belief is preconceived by demonstrating a method that enables blockchain and distributed ledger technologies to perform calls to external systems initiated from the blockchain/DLT itself.
In a corpus of 45,821 app reviews of the top five mobile cryptocurrency wallets, we identified and qualitatively analyzed 6,859 reviews pertaining to the user experience (UX) with those wallets. Our analysis suggests that both new and experienced users struggle with general and domain-specific UX issues that, aside from frustration and disengagement, might lead to dangerous errors and irreversible monetary losses. We reveal shortcomings of current wallet UX as well as users’ misconceptions, some of which can be traced back to a reliance on their understanding of conventional payment systems. For example, some users believed that transactions were free, reversible, and could be canceled anytime, which is not the case in reality. Correspondingly, these beliefs often resulted in unmet expectations. Based on our findings, we provide recommendations on how to design cryptocurrency wallets that both alleviate the identified issues and counteract some of the misconceptions in order to better support newcomers.
Since its advent in 2009, Bitcoin, a cryptography-enabled peer-to-peer digital payment system, has been gaining increasing attention from both academia and industry. An effort designed to overcome a cluster of bottlenecks inherent in existing centralized financial systems, Bitcoin has always been championed by the crypto community as an example of the spirit of decentralization. While the decentralized nature of Bitcoin's Proof-of-Work consensus algorithm has often been discussed in great detail, no systematic study has so far been conducted to quantitatively measure the degree of decentralization of Bitcoin from an asset perspective -- How decentralized is Bitcoin as a financial asset? We present in this paper the first systematic investigation of the degree of decentralization for Bitcoin based on its entire transaction history. We proposed both static and dynamic analysis of Bitcoin transaction network with quantifiable decentralization measures developed based on network analysis and market efficiency study. Case studies are also conducted to demonstrate the effectiveness of our proposed metrics.
Distributed Ledger Technologies (DLT) and Decentralized File Storages (DFS) are becoming increasingly used to create common, decentralized and trustless infrastructures where participants interact and collaborate in Peer-to-Peer interactions. A prominent use case is represented by decentralized data marketplaces, where users are consumers and providers at the same time, and trustless interactions are required. However, data in DLTs and DFS are usually unstructured and there are no efficient mechanisms to query a certain type of data for the search in the market. In this paper, we propose the use of a Distributed Hash Table (DHT) as a layer on top of DLTs where, once the data are acquired and stored in the ledger, these can be searched through multiple keyword based queries, thanks to the lookup functionalities offered by the DHT. The DHT network is a hypercube overlay structure, organized for an efficient processing of multiple keyword-based queries. We provide the architecture of such solution for a decentralized data marketplace and an analysis based on a simulation that proves the viability of the proposed approach.
As an append-only distributed database, blockchain is utilized in a vast variety of applications including the cryptocurrency and Internet-of-Things (IoT). The existing blockchain solutions show downsides in communication and storage scalability, as well as decentralization. In this article, we propose LightChain , which is the first blockchain architecture that operates over a Distributed Hash Table (DHT) of participating peers. LightChain is a permissionless blockchain that provides addressable blocks and transactions within the network, which makes them efficiently accessible by all peers. Each block and transaction is replicated within the DHT of peers and is retrieved in an on-demand manner. Hence, peers in LightChain are not required to retrieve or keep the entire ledger. LightChain is fair as all of the participating peers have a uniform chance of being involved in the consensus regardless of their influence such as hashing power or stake. We provide formal mathematical analysis and experimental results (simulations and cloud deployment) to demonstrate the security, efficiency, and fairness of LightChain , and show that LightChain is the only existing blockchain that can provide integrity under the corrupted majority power of peers. As we experimentally demonstrate, compared to the mainstream blockchains such as Bitcoin and Ethereum, LightChain requires around 66 times smaller per node storage, and is around 380 times faster on bootstrapping a new node to the system, and each LightChain node is rewarded equally likely for participating in the protocol.
Distributed Ledger Technologies (DLTs) have become an important driving force towards the creation of novel distributed applications aimed at solving problems that range from digital currency tools to self governing digital democracy systems. Our thesis is that Satoshi cryptocurrencies, i.e., Bitcoin and its variants, can be used to endow several popular distributed services with strong privacy, anonymity and censorship resistance properties that evade current solutions. To this end, we first study the design of Satoshi cryptocurrency mining protocols, and discover and document privacy and integrity vulnerabilities of Stratum, the de-facto pooled mining protocol. We have developed tools that exploit these vulnerabilities and have measured their impact and effectiveness under a rigorous academic context. Further, we have designed and implemented Bedrock, a solution that addresses these vulnerabilities. We have evaluated Bedrock in the live Bitcoin ecosystem and show that it achieved orders of magnitude better performance than traditional solutions like TLS and blanket encryption. We further introduce DLSS, a censorship-resistant, distributed ledger storage system that embeds client content into Satoshi transactions and organize it for fast search, recovery and reconstruction among hundreds of millions of financial transactions. DLSS distinguishes and exploits the singularities of different types of communications under censorship conditions. We design, implement and evaluate novel smart contracts tailored to the needs of censored users. For instance, we introduce difficult to censor and undetectable techniques to embed small quantities of data on Satoshi transactions, to be used for communications flowing out of the censored area that need to avoid detection by all-powerful censors. We also introduce techniques that prioritize cost optimization for storing large content flowing into the censored area, where uncensorability is the only priority. Further, we leverage our blockchain-writing constructs to introduce a novel perspective for traditionally hard problems of censorship resistance, private e-mail and secure port-knocking with surreptitious authentication and logging. We prove the security, privacy and anonymity of our smart contracts, and argue they impose unpalatable collateral damage to would-be censors. We build a monitoring and instrumentation framework for evaluating our constructs in the Litecoin cryptocurrency. We evaluate our blockchain-writing constructs by persisting hundreds of MBs of BBC news articles and censored software in the live Litecoin blockchain, where they are available to access for free anywhere in the world. We show that our solutions achieve storage throughput, blockchain utilization, and cost efficiency that improve by 2-4 orders of magnitude on state-of-the-art blockchain-writing solutions.
Currently, the P2P method is that its software runs on a P2P hardware environment. However, the software is not a P2P one. It is difficult to match the scenarios in which the users’ requirements change often. Meanwhile, if the software is out of service, all participants are affected. Thus, in this paper, we propose the fully decentralized application model, in which a P2P software runs in a P2P hardware environment. It is based on the blockchain, as a blockchain provides a secured P2P hardware environment. We focus on its P2P software (the P2P smart contract). A P2P smart contract is formed by smart contracts from its participants instead of a third party. It allows each participant to specify its requirement in a turning-complete way and the failure of one smart contract does not affect other smart contracts. We first describe the requirement of the P2P smart contract and the dependence among them. Then, we propose different ways to pair associated smart contracts. At last, we verify the proposed P2P smart contract model, and it shows more flexibility and robustness than the centralized software method.
Abstract Practical Byzantine Fault-tolerant Algorithm (PBFT) is the most widely used consensus algorithm in alliance chain, which has the advantages of fault tolerance and large throughput. However, PBFT also has some problems that can’t be ignored in specific blockchain applications, such as bad behavior of master node, high network communication overhead and low system flexibility. In this paper, the improvement measures of PBFT consensus algorithm are summarized from many aspects, and then compared with traditional PBFT algorithm. Finally, the development direction and trend of PBFT algorithm are prospected, hoping to provide reference for the research and innovation of PBFT consensus algorithm in the future.
Matthias Grundmann, Hedwig Amberg, Hannes Hartenstein
Bitcoin is based on a P2P network that is used to propagate transactions and blocks. While the P2P network design intends to hide the topology of the P2P network, information about the topology is required to understand the network from a scientific point of view. Thus, there is a natural tension between the 'desire' for unobservability on the one hand, and for observability on the other hand. On a middle ground, one would at least be interested on some statistical features of the Bitcoin network like the number of peers that participate in the propagation of transactions and blocks. This number is composed of the number of reachable peers that accept incoming connections and unreachable peers that do not accept incoming connections. While the number of reachable peers can be measured, it is inherently difficult to determine the number of unreachable peers. Thus, the number of unreachable peers can only be estimated based on some indicators. In this paper, we first define our understanding of unreachable peers and then propose the PAL (Passive Announcement Listening) method which gives an estimate of the number of unreachable peers by observing ADDR messages that announce active IP addresses in the network. The PAL method allows for detecting unreachable peers that indicate that they provide services useful to the P2P network. In conjunction with previous methods, the PAL method can help to get a better estimate of the number of unreachable peers. We use the PAL method to analyze data from a long-term measurement of the Bitcoin P2P network that gives insights into the development of the number of unreachable peers over five years from 2015 to 2020. Results show that about 31,000 unreachable peers providing useful services were active per day at the end of the year 2020. An empirical validation indicates that the approach finds about 50 % of unreachable peers that provide useful services.
Dániel Kondor, Nikola Bulatovic, József Stéger, István Csabai · 5 authors
Bitcoin and Ethereum transactions present some of the largest real-world complex networks that are publicly available for study, including a detailed picture of their time evolution. As such, they have received a considerable amount of attention from the network science community along with analyses from economic and cryptographic perspectives. Among these studies, in an analysis on the early instance of the Bitcoin network, we have shown the clear presence of the preferential attachment, or the “rich-get-richer” phenomenon. Now, we revisit this question, using a recent version of the Bitcoin network that has grown almost 100-fold since our original analysis. Furthermore, we additionally carry out a comparison with Ethereum, the second most important cryptocurrency. Our results show that preferential attachment continues to be a key factor in the evolution of both the Bitcoin and Ethereum transactoin networks. To facilitate further analysis, we publish a recent version of both transaction networks, and an efficient software implementation that is able to evaluate linking statistics necessary for learn about preferential attachment on networks with several hundred million edges.
Dániel Kondor, Nikola Bulatović, József Stéger, István Csabai · 5 authors
Bitcoin and Ethereum transactions present one of the largest real-world\ncomplex networks that are publicly available for study, including a detailed\npicture of their time evolution. As such, they have received a considerable\namount of attention from the network science community, beside analysis from an\neconomic or cryptography perspective. Among these studies, in an analysis on\nthe early instance of the Bitcoin network, we have shown the clear presence of\nthe preferential attachment, or "rich-get-richer" phenomenon. Now, we revisit\nthis question, using a recent version of the Bitcoin network that has grown\nalmost 100-fold since our original analysis. Furthermore, we additionally carry\nout a comparison with Ethereum, the second most important cryptocurrency. Our\nresults show that preferential attachment continues to be a key factor in the\nevolution of both the Bitcoin and Ethereum transactoin networks. To facilitate\nfurther analysis, we publish a recent version of both transaction networks, and\nan efficient software implementation that is able to evaluate linking\nstatistics necessary for learn about preferential attachment on networks with\nseveral hundred million edges.\n
Peer-to-peer (p2p) content delivery is promising to reduce the cost of traditional CDNs and complement the decentralized storage networks such as Filecoin. However, reliable p2p delivery requires proper enforcement of delivery fairness, i.e., the deliverers should be rewarded according to their in-time delivery. Unfortunately, most existing studies on delivery fairness are based on non-cooperative game-theoretic assumptions that are arguably unrealistic in the ad-hoc p2p setting. We for the first time put forth the expressive yet still minimalist securities for p2p content delivery, and give two efficient solutions FairDownload and FairStream via the blockchain for p2p downloading and p2p streaming scenarios, respectively. Our designs not only guarantee delivery fairness to ensure deliverers be paid (nearly) proportional to his in-time delivery, but also ensure the content consumers and content providers to be fairly treated. The fairness of each party can be guaranteed when the other two parties collude to arbitrarily misbehave. Moreover, the systems are efficient in the sense of attaining asymptotically optimal on-chain costs and optimal deliverer communication. We implement the protocols to build the prototype systems atop the Ethereum Ropsten network. Extensive experiments done in LAN and WAN settings showcase their high practicality.
Alex Auvolat, Yérom-David Bromberg, Davide Frey, François Taı̈ani
Recent works have proposed new Byzantine consensus algorithms for blockchains based on epidemics, a design which enables highly scalable performance at a low cost. These methods however critically depend on a secure random peer sampling service: a service that provides a stream of random network nodes where no attacking entity can become over-represented. To ensure this security property, current epidemic platforms use a Proof-of-Stake system to select peer samples. However such a system limits the openness of the system as only nodes with significant stake can participate in the consensus, leading to an oligopoly situation. Moreover, this design introduces a complex interdependency between the consensus algorithm and the cryptocurrency built upon it. In this paper, we propose a radically different security design for the peer sampling service, based on the distribution of IP addresses to prevent Sybil attacks. We propose a new algorithm, $\scriptstyle{BASALT}$, that implements our design using a stubborn chaotic search to counter attackers' attempts at becoming over-represented. We show in theory and using Monte Carlo simulations that $\scriptstyle{BASALT}$ provides samples which are extremely close to the optimal distribution even in adversarial scenarios such as tentative Eclipse attacks. Live experiments on a production cryptocurrency platform confirm that the samples obtained using $\scriptstyle{BASALT}$ are equitably distributed amongst nodes, allowing for a system which is both open and where no single entity can gain excessive power.
Blockchain-based Distributed Ledgers (DLs) promise to transform the existing financial system by making it truly democratic. In the past decade, blockchain technology has seen many novel applications ranging from the banking industry to real estate. However, in order to be adopted universally, blockchain systems must be scalable to support a high volume of transactions. As we increase the throughput of the DL system, the underlying peer-to-peer network might face multiple levels of challenges to keep up with the requirements. Due to varying network capacities, the slower nodes would be at a relative disadvantage compared to the faster ones, which could negatively impact their revenue. In order to quantify their relative advantage or disadvantage, we introduce two measures of network fairness, $p_f$, the probability of frontrunning and $α_f$, the publishing fairness. We show that as we scale the blockchain, both these measures deteriorate, implying that the slower nodes face a disadvantage at higher throughputs. It results in the faster nodes getting more than their fair share of the reward while the slower nodes (slow in terms of network quality) get less. Thus, fairness and scalability in blockchain systems do not go hand in hand. In a setting with rational miners, lack of fairness causes miners to deviate from the "longest chain rule" or undercut, which would reduce the blockchain's resilience against byzantine adversaries. Hence, fairness is not only a desirable property for a blockchain system but also essential for the security of the blockchain and any scalable blockchain protocol proposed must ensure fairness.
The popularity of smartphones has led to the growth of mobile app markets, creating a need for enhanced transparency, global access, and secure downloading. This paper introduces AGChain, a blockchain-based gateway that enables trustworthy app delegation within existing markets. AGChain ensures that markets can continue providing services while users benefit from permanent, distributed, and secure app delegation. During its development, we address two key challenges: significantly reducing smart contract gas costs and enabling fully distributed IPFS-based file storage. Additionally, we tackle three system issues related to security and sustainability. We have implemented a prototype of AGChain on Ethereum and Polygon blockchains, achieving effective security and decentralization with a minimal gas cost of around 0.002 USD per app upload (no cost for app download). The system also exhibits reasonable performance with an average overhead of 12%.
Online social networks (OSN) are becoming more important in people's daily life, however, all popular OSNs are centralized, and this raises a series of security, privacy and management issues. A decentralized architecture based on blockchain technology provides the ability to solve above issues. In this paper, an OSN service is developed based on blockchain technology in order to make it operate decentralized. Large volume of data normally required low-security requirements can be stored in Interplanetary Filesystem (IPFS) to make data decentralized. A decentralized autonomous organization is developed for user autonomy, users can self-manage the OSN in a democratic way.
The distributed ledger technology (DLT) has been envisioned to be a disruptive technology with applications in various industries. For the DLTs to be effectively used in practice, it is crucial to assess their performance in different use cases and scenarios. In this thesis, we first conduct a systematic survey on the performance evaluation of distributed ledgers. Then we identify and present the performance evaluation techniques, the most important performance metrics, and the bottlenecks of various well-known DLTs. Finally, we present a list of possible directions for future research. Our survey identifies the lack of a detailed performance evaluation for DAG-based distributed ledgers presented so far. Compared to blockchains, DAG-based DLTs offer better performance and scalability by design. In the second part of this thesis, we focus on the performance evaluation of IOTA, which is the prominent implementation of DAG-based distributed ledgers. In this work, we investigate the impact of different design parameters on the performance of an IOTA network. We then propose a layered model to help the users determine the optimal waiting time to resend an unconfirmed transaction. The results can be used by both system designers and users to support their decision making. In the third part of this thesis, we use the findings from the previous two parts to design an open blockchain-based serverless computing platform called ChainFaaS that runs on personal computers. To better understand the capacity of personal computers, we conducted a survey that aims to find their unused computational power. The results indicate that the typical CPU utilization of a personal computer is only 24.5% and, on average, a personal computer is only used 4.5 hours per day. This shows a significant computational potential that can be used towards distributed computing. In this work, we introduce ChainFaaS with the motivation to use the computational capacity of personal computers as well as to improve developers' experience of internet-based computing services by reducing their costs, enabling transparency, and providing reliability. We propose the design of ChainFaaS and then implement and evaluate a prototype of this platform to show the feasibility of this paradigm. The current implementation of ChainFaaS provides payment using a monetary smart contract on the blockchain network. For this platform to be used in practice, ChainFaaS needs to support payment in established cryptocurrencies. As a result, the blockchain network in ChainFaaS needs to interoperate with other distributed ledger technologies to enable such payments. In the last part of this thesis, we investigate a possible solution to enable interoperability in blockchains. We propose a blockchain interoperability solution for permissioned blockchains based on the publish/subscribe architecture. We then implement a prototype of the proposed solution and evaluate its performance. The result of this research not only enables ChainFaaS to support payments in established cryptocurrencies, but it also allows any other blockchain-based application to interoperate with other blockchain networks and use the data and information available on them.