For decentralised P2P networks, it is very important to have a mechanism in place that allows the nodes to control resource usage and prevent flooding and denial-of-service attacks with spam. In this paper, we discuss and compare the different approaches to fully decentralised resource control that are used by projects in the cryptocurrency space. The introduced methods are then applied to design a decentralised exchange for Namecoin names (or more generally, crypto assets) as an example.
Astrid Nieße, Norman Ihle, Stephan Balduin, Matthias Postina · 6 authors
Congestion management in distribution grids is an important task for distribution grid operators, both from a financial and a technological perspective. Whereas large generation units and large controllable loads might in general be controllable in a manual way, this is no option for small distributed generators and loads. With flexibility control in multiple owner scenarios, documentation, transparency and automation are of crucial importance. In this work, we present a fully automated congestion management approach based on a combination of distributed ledger technology and distributed algorithms in an agent-based architectural approach. We present a case study focused on the visualization of the concept and discuss the advantages and possible challenges for this approach. Whereas distributed ledger technology has been introduced for peer-to-peer energy trading within the last years, no similar approach has been presented yet for stable distribution grid management.
Blockchain has emerged as a trusted and secure distributed ledger for transactions while also being decentralised, distributed and its legitimacy not guaranteed by a trusted authority. Since the appearance of Bitcoin, Blockchain has known many implementations based on P2P architectures. This paper presents how the blockchain and smart contracts technologies can be integrated into the SwarmESB ecosystem. SwarmESB is a framework that helps building distributed applications, which benefit from privacy and scalability features. Our proposal will present the flexibility in building not only microservices based applications, but also decen-tralised applications employing blockchain and smart-contracts by modeling a sample Dapp.
Off-chain scaling techniques allow mutually distrustful parties to execute a contract locally among themselves instead of on the global blockchain. Parties involved in the transaction maintain a multi-signature fraud-proof off-chain replicated state machine, and only resort to on-chain consensus when absolutely necessary (e.g., when two parties disagree on a state). Off-chain scaling is the only way to support fully scale-out decentralized applications ("dApps") with better privacy and no compromise on the trust and decentralization guarantees. It is the inflection point for blockchain mass adoption, and will be the engine behind all scalable dApps. Celer Network is an Internet-scale, trust-free, and privacy-preserving platform where everyone can quickly build, operate, and use highly scalable dApps. It is not a standalone blockchain but a networked system running on top of existing and future blockchains. It provides unprecedented performance and flexibility through innovation in off-chain scaling techniques and incentive-aligned cryptoeconomics. Celer Network embraces a layered architecture with clean abstractions that enable rapid evolution of each individual component, including a generalized state channel and sidechain suite that supports fast and generic off-chain state transitions; a provably optimal value transfer routing mechanism that achieves an order of magnitude higher throughput compared to state-of-the-art solutions; a powerful development framework and runtime for off-chain applications; and a new cryptoeconomic model that provides network effect, stable liquidity, and high availability for the off-chain ecosystem.
Despite growing adoption of cryptocurrencies, making fast payments at scale remains a challenge. Payment channel networks (PCNs) such as the Lightning Network have emerged as a viable scaling solution. However, completing payments on PCNs is challenging: payments must be routed on paths with sufficient funds. As payments flow over a single channel (link) in the same direction, the channel eventually becomes depleted and cannot support further payments in that direction; hence, naive routing schemes like shortest-path routing can deplete key payment channels and paralyze the system. Today's PCNs also route payments atomically, worsening the problem. In this paper, we present Spider, a routing solution that "packetizes" transactions and uses a multi-path transport protocol to achieve high-throughput routing in PCNs. Packetization allows Spider to complete even large transactions on low-capacity payment channels over time, while the multi-path congestion control protocol ensures balanced utilization of channels and fairness across flows. Extensive simulations comparing Spider with state-of-the-art approaches shows that Spider requires less than 25% of the funds to successfully route over 95% of transactions on balanced traffic demands, and offloads 4x more transactions onto the PCN on imbalanced demands.
Permissionless blockchains reach decentralized consensus without requiring pre-established identities or trusted third parties, thus enabling applications such as cryptocurrencies and smart contracts. Consensus is agreed on data that is generated by the application and transmitted by the system's (peer-to-peer) network layer. While many attacks on the network layer were discussed so far, there is no systematic approach that brings together known attacks, the requirements, and the design space of the network layer. In this paper, we survey attacks on the network layer of permissionless blockchains, and derive five requirements: 1) performance; 2) low cost of participation; 3) anonymity; 4) DoS resistance; and 5) topology hiding. Furthermore, we survey the design space of the network layer and qualitatively show the effect of each design decisions on the fulfillment of the requirements. Finally, we pick two aspects of the design space, in-band peer discovery and relay delay, and demonstrate possible directions of future research by quantitatively analyzing and optimizing simplified scenarios. We show that while most design decisions imply certain tradeoffs, there is a lack of models that analyze and formalize these tradeoffs. Such models could aid the design of the network layer of permissionless blockchains. One reason for the lack of models is the deliberately limited observability of deployed blockchains. We emphasize that simulation based approaches cope with these limitations and are suited for the analysis of the network layer of permissionless blockchains.
Blockchain has received great attention in recent years and motivated innovations in different scenarios. However, many vital issues which affect its performance are still open. For example, it is widely convinced that high level of security and scalability and full decentralization are still impossible to achieve simultaneously. In this paper, we propose Bicomp, a bilayer scalable Nakamoto consensus protocol, which is an approach based on high security and pure decentralized Nakamoto consensus, and with a significant improvement on scalability. In Bicomp, two kinds of blocks are generated, i.e., microblocks for concurrent transaction packaging in network, and macroblocks for leadership competition and chain formation. A leader is elected at beginning of each round by using a macroblock header from proof-of-work. An elected leader then receives and packages multiple microblocks mined by different nodes into one macroblock during its tenure, which results in a bilayer block structure. Such design limits a leader's power and encourages as many nodes as possible to participate in the process of packaging transactions, which promotes the sharding nature of the system. Furthermore, several mechanisms are carefully designed to reduce transaction overlapping and further limit a leader's power, among which a novel transaction diversity based metric is proposed as the second level criteria besides the longest-chain-first principle on selecting a legitimate chain when fork happens. Security issues and potential attacks to Bicomp are extensively discussed and experiments for evaluation are performed. From the experimental results based on 50 nodes all over the world, Bicomp achieves significant improvement on scalability than that of Bitcoin and Ethereum, while the security and decentralization merits are still preserved.
Blockchain is based on a P2P network, supporting decentralized consensus of current cryptocurrencies. Since bitcoin and altcoins all utilize an underlying blockchain, they are therefore greatly affected by the performance of the P2P network. In bitcoin, the miners are engaged in a time-sensitive competition to solve a Proof-of-Work problem to extend the blockchain. This consequently raises a critical problem to minimize the time between the propagation of a winning block and the beginning of the next round of the competition. This paper proposes a method that selects a node's closest neighbors to make messages propagate in the whole network in time. The method measures the distance from a node to its neighbor using transmission latency; thus, the lower the latency, the closer the neighbor. Simulations showed a good rate of decrease in average propagation latency and maximum propagation latency, compared to the classic method. Furthermore, this paper not only proposes the principle of establishing connections based on latency, but also evaluates the influence of the number of simultaneously established connections.
A wide range of services and applications can be improved and/or solved by\nusing distributed ledger technology (DLT). These services and applications have\nwidely varying quality of service (QoS) requirements. However, most existing\nDLT systems do not distinguish different QoS requirements, resulting in\nsignificant performance issues such as poor scalability and high cost. In this\nwork, we present vDLT -- a service-oriented blockchain system with\nvirtualization and decoupled management/control and execution. In vDLT,\nservices and applications are classified into different classes according to\ntheir QoS requirements, including confirmation latency, throughput, cost,\nsecurity, privacy, etc. This is a paradigm shift from the existing\n"blockchain-oriented" DLT systems to next generation "service-oriented" DLT\nsystems. Different QoS requirements are fulfilled by advanced schemes inspired\nby the development of the traditional Internet, including classification,\nqueuing, virtualization, resource allocation and orchestration, and\nhierarchical architecture. In addition, management/control and execution of\nsmart contracts are decoupled to support QoS provisioning, improve\ndecentralization, and facilitate evolution in vDLT. With virtualization,\ndifferent virtual DLT systems with widely varying characteristics can be\ndynamically created and operated to accommodate different services and\napplications.\n
Price stability has often been cited as a key reason that cryptocurrencies\nhave not gained widespread adoption as a medium of exchange and continue to\nprove incapable of powering the economy of decentralized applications (DApps)\nefficiently. Exeum proposes a novel method to provide price stable digital\ntokens whose values are pegged to real world assets, serving as a bridge\nbetween the real world and the decentralized economy.\n Pegged tokens issued by Exeum - for example, USDE refers to a stable token\nissued by the system whose value is pegged to USD - are backed by virtual\nassets in a virtual asset exchange where users can deposit the base token of\nthe system and take long or short positions. Guaranteeing the stability of the\npegged tokens boils down to the problem of maintaining the peg of the virtual\nassets to real world assets, and the main mechanism used by Exeum is\ncontrolling the swap rate of assets. If the swap rate is fully controlled by\nthe system, arbitrageurs can be incentivized enough to restore a broken peg;\nExeum distributes statistical arbitrage trading software to decentralize this\ntype of market making activity. The last major component of the system is a\ncentral bank equivalent that determines the long term interest rate of the base\ntoken, pays interest on the deposit by inflating the supply if necessary, and\nremoves the need for stability fees on pegged tokens, improving their\nusability.\n To the best of our knowledge, Exeum is the first to propose a truly\ndecentralized method for developing a stablecoin that enables 1:1 value\nconversion between the base token and pegged assets, completely removing the\nmismatch between supply and demand. In this paper, we will also discuss its\napplications, such as improving staking based DApp token models, price stable\ngas fees, pegging to an index of DApp tokens, and performing cross-chain asset\ntransfer of legacy crypto assets.\n
This thesis focuses on aspects related to the functioning of the gossip\nnetworks underlying three relatively popular cryptocurrencies: Ethereum, Nano\nand IOTA.\n We look at topics such as automatic discovery of peers when a new node joins\nthe network, bandwidth usage of a node, message passing protocols and storage\nschemas and optimizations for the shared ledger. We believe this is a topic\nthat is often overlooked in works about blockchains and cryptocurrencies.\nVulnerabilities and inefficiencies attain a higher significance than ones in a\nregular open source project because of the rather direct financial implications\nof these projects. Barring Bitcoin, a network that has been around for nearly\n10 years, no other project has substantial documentation for its operational\ndetails other than scattered and sparse pages in the source code repositories.\nAlmost all of the content described here has been extracted by studying the\nsource code of the reference implementations of these projects.\n We evaluate the use of Invertible Bloom Lookup Tables and the Graphene\nprotocol to decrease block propagation times and bandwidth usage of certain\nmessages. We perform realistic simulations that show significant improvements.\nWe provide a complete implementation of Graphene in Geth, Ethereum's main node\nsoftware and test this implementation against the main Ethereum blockchain.\n We also crawled the chosen cryptocurrency networks for publicly visible nodes\nand provide an Autonomous System-level breakdown of these nodes with the end\ngoal of estimating the ease of performing attacks such as BGP hijacks and their\nimpact.\n Code written for implementing Graphene in Geth, performing various\nsimulations and for other miscellaneous tasks has been uploaded to Github at\nhttps://github.com/sunfinite/masters-thesis.\n
Bitcoin is a decentralized crypto-currency, which is based on the peer-to-peer network, and was introduced by Satoshi Nakamoto in 2008. Bitcoin transactions are written by using a scripting language. The hash value of a transaction’s script is used to identify the transaction over the network. In February 2014, a Bitcoin exchange company, Mt. Gox, claimed that they had lost hundreds of millions US dollars worth of Bitcoins in an attack known as transaction malleability. Although known about since 2011, this was the first known attack that resulted in a company loosing multi-millions of US dollars in Bitcoins. Our reason for writing this paper is to understand Bitcoin transaction malleability and to propose an efficient solution. Our solution is a softfork (i.e., it can be gradually implemented). Towards the end of the paper we present a detailed analysis of our scheme with respect to various transaction malleability-based attack scenarios to show that our simple solution can prevent future incidents involving transaction malleability from occurring. We compare our scheme with existing approaches and present an analysis regarding the computational cost and storage requirements of our proposed solution, which shows the feasibility of our proposed scheme.
Aug 1, 2018·2018 17th IEEE International Conference On Trust, Security And Privacy In Computing And Communications/ 12th IEEE International Conference On Big Data Science And Engineering (TrustCom/BigDataSE)
Saqib Ali, Guojun Wang, Bebo White, Roger Leslie Cottrell
The blockchain is an innovative technology which opened doors to new applications for solving numerous problems in distributed environments. In this work, we design a blockchain-based data storage and access framework for PingER (worldwide end-to-end Internet performance measurement project) to remove its total dependence on a centralized repository. We use the permissioned blockchain and Distributed Hash Tables (DHT) for this purpose. In the proposed framework, metadata of the files are stored on the blockchain whereas the actual files are stored off-chain through DHT at multiple locations using a peer-to-peer network of PingER Monitoring Agents. This will provide decentralized storage, distributed processing, and efficient lookup capabilities to the PingER framework.
Francesco Bortolussi, Zeger Hoogeboom, Frank W. Takes
Cryptocurrencies such as Bitcoin and Ethereum have recently gained a lot of popularity, not only as a digital form of currency but also as an investment vehicle. Online marketplaces and exchanges allow users across the world to convert between dozens of different cryptocurrencies and regular currencies such as euros or dollars. Due to the novelty of this concept, the volatility of these markets and the differences in maturity and usage of particular marketplaces, currency pairs may appear at multiple marketplaces but at different trading prices. This paper proposes a novel algorithmic approach to take advantage of these mispricings and capitalize upon the pricing differences that exist between exchanges and currency pairs. To do so, we model each combination of a currency and a market as one node in a graph. A directed link between two nodes indicates that a conversion between these two currency/market pairs is possible. The weight of the link relates to the exchange rate of executing this particular currency exchange. To leverage the mispricings, we seek for cycles in the graph such that upon multiplying the weights of the links in the cycle, a value greater than 1 is found and thus a profit can be made. Our goal is to do this efficiently, without exhaustively enumerating all possible cycles in the graph. Therefore, we convert our data and address the problem in terms of finding minimum weight triangles in graphs with integer weights, for which efficient algorithms can be utilized. We experiment with parameter settings (heuristics) related to the conversion of exchange rate data into integer weight values. We show that our approach improves upon a reasonable baseline algorithm in terms of computation time. Furthermore, using a real-world dataset, we demonstrate how the obtained minimal weight cycles indeed unveil a number of currency exchange cycles that result in a net profit.
Owing to Satoshi Nakamoto's brilliant idea, a P2P public ledger is shown to be implementable in anonymous network. Any Internet user can then join the anonymous network and contribute to the P2P public ledger by providing their computing power or proof-of-work. The proof-of-work is a clever implementation of one-CPU-one-vote by anonymous participants, and it protects the Bitcoin ledger from illegal modification. To compensate the nodes for their work, a cryptocurrency called Bitcoin is issued and given to nodes. However, the very nature of anonymity of the ledger and the cryptocurrency prevent the technology from being used in fiat money economy. Cryptocurrencies are not traceable even if they are used for money laundering or tax evasion, and the value of cryptocurrencies is not stable but fluctuates wildly. In this white paper, we introduce Gruut, a P2P ledger to implement a universal financial platform for fiat money. For this purpose, we introduce a new consensus algorithm called `proof-of-population,' which is one instance of `proof of public collaboration.' It can be used for multiple purposes; as a P2P ledger for banks, as a powerful tool for payment, including micropayment, and as a tool for any type of financial transactions. Even better, it distributes the profit obtained from transaction fee, currently dominated by a third party, to peers that cannot be centralized. Energy requirements of Gruut are so low that it is possible to run our software on a smartphone or on a personal computer without a graphic card.
David Vangulick, Bertrand Cornélusse, Damien Ernst
Energy communities and peer-to-peer energy exchangesare expected to play an important role in the energy transition. In this context, the blockchain approach can be employed to foster this decentralized energy market. In [1],we evaluated several designs that should allow a Distribution System Operator (DSO) to accept peer-to-peer energyexchanges supported by this technology. This acceptanceis based on criteria such as a strong link with the wholesale/retail market, the resilience of the consensus to approve a block, the accuracy, traceability, privacy and security of the proposed schemes. We concluded that proof-ofstake (PoS), where the choice of node that creates a block isbased on a measure of its wealth, is the only method to fulfill these requirements. In the present paper, we clarify theidentification and estimation of bidding models to ensurethat the PoS that we are developing is a correct responseto two major issues with the PoS methodology, namely theconcentration of wealth and the ”nothing to stake” issue.1
Blockchains have become an integral part of many distributed applications, providing a new platform for interaction between system components. Blockchains are perhaps most known for their use in crypto-currency systems, such as Bitcoin and Ethereum, where pseudo-anonymous parties engage in transactions without a trusted third party. Blockchain systems often struggle to meet performance demands of real-word applications, rendering them inappropriate for performance sensitive applications.\nThere is also concerns regarding the immense amount of electrical energy required to securely run existing public blockchain systems. Bitcoin alone consumes more than small countries. Private systems have higher throughput and avoid excessive energy consumption, but have closed membership and do not scale to the same extent.\n\nBoth public and private blockchains rely on some form of membership mechanism providing peers with a view of other participants. Existing systems often employ partial view protocols due to their natural scalability. However, recent work have shown that full view protocols are feasible in practice, and can scale to thousands of participants. With full membership, applications can send messages directly to their destination without any intermediate hops.\n\nThis thesis presents FireChain, which combines a Byzantine fault-tolerant gossip service and full membership, with a proposal for blockchain systems that does not consume excessive energy. We evaluate FireChain's performance through experiments on PlanetLab, and show that it scales beyond hundreds of members.
In recent years, the increasing concerns around the centralized cloud web services (e.g. privacy, governance, surveillance, security) have triggered the emergence of new distributed technologies, such as IPFS or the Blockchain. These innovations have tackled technical challenges that were unresolved until their appearance. Existing models of peer-to-peer systems need a revision to cover the spectrum of potential systems that can be now implemented as peer-to-peer systems. This work presents a framework to build these systems. It uses an agent-oriented approach in an open environment where agents have only partial information of the system data. The proposal covers data access, data discovery and data trust in peer-to-peer systems where different actors may interact. Moreover, the framework proposes a distributed architecture for these open systems, and provides guidelines to decide in which cases Blockchain technology may be required, or when other technologies may be sufficient.
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.
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.
We review the so called selfish mining strategy in the Bitcoin network and compare its profitability to honest mining.We build a rigorous profitability model for repetition games. The time analysis of the attack has been ignored in the previous literature based on a Markov model,but is critical. Using martingale's techniques and Doob Stopping Time Theorem we compute the expected duration of attack cycles. We discover a remarkable property of the bitcoin network: no strategy is more profitable than the honest strategy before a difficulty adjustment. So selfish mining can only become profitable afterwards, thus it is an attack on the difficulty adjustment algorithm. We propose an improvement of Bitcoin protocol making it immune to selfish mining attacks. We also study miner's attraction to selfish mining pools. We calculate the expected duration time before profit for the selfish miner, a computation that is out of reach by the previous Markov models.
The past decade has witnessed the rapid evolution in blockchain technologies, which has attracted tremendous interests from both the research communities and the industry. The blockchain network was originated in the Internet finical sector as a decentralized, immutable ledger system for transactional data ordering. Nowadays, it is envisioned as a powerful backbone/framework for decentralized data processing and data-driven self-organization in flat, open-access networks. In particular, the plausible characteristics of decentralization, immutability and self-organization are primarily owing to the unique decentralized consensus mechanisms introduced by blockchain networks. This survey is motivated by the lack of a comprehensive literature review on the development of decentralized consensus mechanisms in blockchain networks. In this survey, we provide a systematic vision of the organization of blockchain networks. By emphasizing the unique characteristics of incentivized consensus in blockchain networks, our in-depth review of the state-of-the-art consensus protocols is focused on both the perspective of distributed consensus system design and the perspective of incentive mechanism design. From a game-theoretic point of view, we also provide a thorough review on the strategy adoption for self-organization by the individual nodes in the blockchain backbone networks. Consequently, we provide a comprehensive survey on the emerging applications of the blockchain networks in a wide range of areas. We highlight our special interest in how the consensus mechanisms impact these applications. Finally, we discuss several open issues in the protocol design for blockchain consensus and the related potential research directions.
Doriane Perard, Jérôme Lacan, Yann Bachy, Jonathan Detchart
The concept of a decentralized ledger usually implies that each node of a blockchain network stores the entire blockchain. However, in the case of popular blockchains, which each weigh several hundreds of GB, the large amount of data to be stored can incite new or low-capacity nodes to run lightweight clients. Such nodes do not participate to the global storage effort and can result in a centralization of the blockchain by very few nodes, which is contrary to the basic concepts of a blockchain. To avoid this problem, we propose new low storage nodes that store a reduced amount of data generated from the blockchain by using erasure codes. The properties of this technique ensure that any block of the chain can be easily rebuild from a small number of such nodes. This system should encourage low storage nodes to contribute to the storage of the blockchain and to maintain decentralization despite of a globally increasing size of the blockchain. This system paves the way to new types of blockchains which would only be managed by low capacity nodes.
Eleftherios Kokoris-Kogias, Philipp Jovanovic, Linus Gasser, Nicolas Gailly · 6 authors
Designing a secure permissionless distributed ledger (blockchain) that performs on par with centralized payment processors, such as Visa, is a challenging task. Most existing distributed ledgers are unable to scale-out, i.e., to grow their total processing capacity with the number of validators; and those that do, compromise security or decentralization. We present OmniLedger, a novel scale-out distributed ledger that preserves longterm security under permissionless operation. It ensures security and correctness by using a bias-resistant public-randomness protocol for choosing large, statistically representative shards that process transactions, and by introducing an efficient cross-shard commit protocol that atomically handles transactions affecting multiple shards. OmniLedger also optimizes performance via parallel intra-shard transaction processing, ledger pruning via collectively-signed state blocks, and low-latency "trust-but-verify" validation for low-value transactions. An evaluation of our experimental prototype shows that OmniLedger's throughput scales linearly in the number of active validators, supporting Visa-level workloads and beyond, while confirming typical transactions in under two seconds.