The future of multi-blockchain architecture depends on the emergence of new protocols that achieve communication between trustless cross-chain participants. However, interoperability between blockchains remains an open problem. Existing approaches provide integration through solutions using a middleware system, which makes it harder to gain confidence mainly in terms of security and correctness of the process. A cross-chain protocol needs to provide a self-verifiable state-proof that embeds trust in the transfer process. We propose a Burn-to-Claim cross-chain protocol to seamlessly exchange assets between networks. Our scheme transfers assets from one blockchain system to another in a way that the asset is burned from the source blockchain and claimed on the destination blockchain. Our mechanism employs combinations of crypto mechanisms such as digital signatures and time lock to operate the protocol in a distributed manner. We provide an analysis which proves that our cross-chain protocol transfers assets correctly and securely.
J Dharani, K Sundarakantham, Kunwar Singh, S. Mercy Shalinie
Blockchain technology has gained its attention from its application in bitcoin which circumvented the problem of double spending that existed in the prior digital currencies, through validation. Particularly permissioned blockchain framework became popular with organizations forming consortium that allowed only authorized entities to participate in the network. Hyperledger Fabric, a popular distributed ledger technology hosted by Linux Foundation has remarkable features because of the fact that it is open source. It stands out from other frameworks as it focuses on the privacy-preserving requirements of the enterprises. Apart from only allowing authenticated organizations to participate in the network it implements channels that allows a subset of organizations to communicate concealing the existence of such a channel to other members. Optionally fabric also provides anonymity and unlinkability of the participating clients through a cryptographic protocol suite called Idemix that operates based on zero-knowledge proofs. Fabric follows the execute-order-validate transaction flow as opposed to order-execute flow that had certain limitations in other platforms. For executing the transactions submitted by the clients, fabric has designated endorsing peers which holds the smart contract - programmable business logic. Endorsing peers or endorsers execute the transactions and attach their signatures to the results for validation purpose. But revealing the endorser identities may be a problem when there is conflict of interest among the enterprises. Hence to have an unbiased flow of work it is important to conceal the endorser identity. According to [1] anonymization of endorsing peers is still a open problem in fabric community. We propose a solution to this problem which uses linkable threshold ring signatures that conceals the identity of endorsers. Ring signatures are known for preserving the privacy of the signer in a group. Threshold ring signature allows t-out-of-n signers to collaborate on the signing procedure. Employing threshold ring signature implicitly addresses one more problem stated in [10] where the verifiers need to manually count the valid ring signature that increases the verification time. This process of separately verifying each of the signatures and checking if the number of signatures is more than the threshold value is replaced by having just one threshold signature collaboratively signed by the required endorsers.
Blockchain platforms are coming into use for processing critical transactions among participants who have not established mutual trust. Many blockchains are programmable, supporting smart contracts , which maintain persistent state and support transactions that transform the state. Unfortunately, bugs in many smart contracts have been exploited by hackers. Obsidian is a novel programming language with a type system that enables static detection of bugs that are common in smart contracts today. Obsidian is based on a core calculus, Silica, for which we proved type soundness. Obsidian uses typestate to detect improper state manipulation and uses linear types to detect abuse of assets. We integrated a permissions system that encodes a notion of ownership to allow for safe, flexible aliasing. We describe two case studies that evaluate Obsidianâs applicability to the domains of parametric insurance and supply chain management, finding that Obsidianâs type system facilitates reasoning about high-level states and ownership of resources. We compared our Obsidian implementation to a Solidity implementation, observing that the Solidity implementation requires much boilerplate checking and tracking of state, whereas Obsidian does this work statically.
Elizabeth Nathania Witanto, Yustus Eko Oktian, Sang-Gon Lee, Jin-Heung Lee
As the usage growth rate of Internet of Things (IoT) devices is increasing, various issues related to these devices need attention. One of them is the distribution of the IoT firmware update. The IoT devicesâ software development does not end when the manufacturer sells the devices to the market. It still needs to be kept updated to prevent cyber-attacks. The commonly used firmware update process, over-the-air (OTA), mostly happens in a centralized way, in which the IoT devices directly download the firmware update from the manufacturerâs server. This central architecture makes the manufacturerâs server vulnerable to single-point-of-failure and latency issues that can delay critical patches from being applied to vulnerable devices. The Open Connectivity Foundation (OCF) is one organization contributing to providing interoperability services for IoT devices. In one of their subject areas, they provide a firmware update protocol for IoT devices. However, their firmware update process does not ensure the integrity and security of the patches. In this paper, we propose a blockchain-based OCF firmware update for IoT devices. Specifically, we introduce two types of firmware update protocol, direct and peer-to-peer updates, integrated into OCF firmware update specifications. In the direct scenario, the device, through the IoT gateway, can download the new firmware update from the manufacturerâs server. Meanwhile, in the peer-to-peer scheme, the device can query the update from the nearby gateways. We implemented our protocol using Raspberry Pi hardware and Ethereum-based blockchain with the smart contracts to record metadata of the manufacturerâs firmware updates. We evaluated the proposed systemâs performance by measuring the average throughput, the latency, and the firmware update distributionâs duration. The analysis results indicate that our proposal can deliver firmware updates in a reasonable duration, with the peer-to-peer version having a faster completion time than the direct one.
Recursive Length Prefix (RLP) is used to encode a wide variety of data in Ethereum, including transactions. The work described in this paper provides a formal specification of RLP encoding and a verified implementation of RLP decoding, developed in the ACL2 theorem prover. This work has led to improvements to the Ethereum documentation and additions to the Ethereum test suite.
Massimiliano Sala, Domenica Sogiorno, Daniele Taufer
We show how a small subgroup confinement-like attack may be mounted on the Bitcoin addresses generation protocol, by inspecting a special subgroup of the group associated to point multiplication. This approach does not undermine the system security but highlights the importance of using fair random sources during the private key selection.
Blockchain protocols differ in fundamental ways, including the mechanics of selecting users to produce blocks (e.g., proof-of-work vs. proof-of-stake) and the method to establish consensus (e.g., longest chain rules vs. Byzantine fault-tolerant (BFT) inspired protocols). These fundamental differences have hindered "apples-to-apples" comparisons between different categories of blockchain protocols and, in turn, the development of theory to formally discuss their relative merits. This paper presents a parsimonious abstraction sufficient for capturing and comparing properties of many well-known permissionless blockchain protocols, simultaneously capturing essential properties of both proof-of-work (PoW) and proof-of-stake (PoS) protocols, and of both longest-chain-type and BFT-type protocols. Our framework blackboxes the precise mechanics of the user selection process, allowing us to isolate the properties of the selection process that are significant for protocol design. We demonstrate the utility of our general framework with several concrete results: 1. We prove a CAP-type impossibility theorem asserting that liveness with an unknown level of participation rules out security in a partially synchronous setting. 2. Delving deeper into the partially synchronous setting, we prove that a necessary and sufficient condition for security is the production of "certificates," meaning stand-alone proofs of block confirmation. 3. Restricting to synchronous settings, we prove that typical protocols with a known level of participation (including longest chain-type PoS protocols) can be adapted to provide certificates, but those with an unknown level of participation cannot. 4. Finally, we use our framework to articulate a modular two-step approach to blockchain security analysis that effectively reduces the permissionless case to the permissioned case.
The novel feature of Bitcoin [N + 08] as a currency is that it is designed to be decentralised, i.e., to be run without the use of a central bank, or any centralised point of control. Beyond simply serving as currencies, however, cryptocurrencies like Bitcoin are really protocols for reaching consensus over a decentralised network of users. While running currencies is one possible application of such protocols, one might consider broad swathes of other possible applications. As one example, we have already seen
Michael Neuder, Daniel J. Moroz, Rithvik Rao, David C. Parkes
Blockchains are intended to be immutable, so an attacker who is able to delete transactions through a chain reorganization (a malicious reorg) can perform a profitable double-spend attack. We study the rate at which an attacker can execute reorgs in the Tezos Proof-of-Stake protocol. As an example, an attacker with 40% of the staking power is able to execute a 20-block malicious reorg at an average rate of once per day, and the attack probability increases super-linearly as the staking power grows beyond 40%. Moreover, an attacker of the Tezos protocol knows in advance when an attack opportunity will arise, and can use this knowledge to arrange transactions to double-spend. We show that in particular cases, the Tezos protocol can be adjusted to protect against deep reorgs. For instance, we demonstrate protocol parameters that reduce the rate of length-20 reorg opportunities for a 40% attacker by two orders of magnitude. We also observe a trade-off between optimizing for robustness to deep reorgs (costly deviations that may be net profitable because they enable double-spends) and robustness to selfish mining (mining deviations that result in typically short reorgs that are profitable even without double-spends). That is, the parameters that optimally protect against one make the other attack easy. Finally, we develop a method that monitors the Tezos blockchain health with respect to malicious reorgs using only publicly available information.
<p class="0abstract">One of the new promising technologies for the future is blockchain. It has become one of the popular techniques for various transactions and applications in many different areas such as economy, business, and government. Blockchain technology started with cryptocurrency and bitcoin applications for a safe and transparent environment. Blockchain is a hybrid technology that incorporates various technologies and tools such as mathematics, peer-peer networking, cryptography algorithms, and consensus algorithms. This survey highlights the latest studies in blockchain and consensus algorithms. The study covers the most recent blockchain applications in various domains and sectors. Furthermore, the study gives an insight into the latest adoption of the blockchain in the real world.</p>
The CAP theorem says that no blockchain can be live under dynamic participation and safe under temporary network partitions. To resolve this availability-finality dilemma, we formulate a new class of flexible consensus protocols, ebb-and-flow protocols, which support a full dynamically available ledger in conjunction with a finalized prefix ledger. The finalized ledger falls behind the full ledger when the network partitions but catches up when the network heals. Gasper, the current candidate protocol for Ethereum 2.0's beacon chain, combines the finality gadget Casper FFG with the LMD GHOST fork choice rule and aims to achieve this property. However, we discovered an attack in the standard synchronous network model, highlighting a general difficulty with existing finality-gadget-based designs. We present a construction of provably secure ebb-and-flow protocols with optimal resilience. Nodes run an off-the-shelf dynamically available protocol, take snapshots of the growing available ledger, and input them into a separate off-the-shelf BFT protocol to finalize a prefix. We explore connections with flexible BFT and improve upon the state-of-the-art for that problem.
In the present scenario, it is vital for any organization, especially the financial organizations, to understand customers and their financial dealings better. KYC is a process to verify identity and related details of corresponding customers. The current KYC mechanism has a severe concern in financial institutions as it requires separate ledger for the separate financial organizations. Every institution has its KYC process, which sometimes may include third-party, which may cause increased maintenance cost, time and redundancy. There is considerable wastage of costs in the form of opportunity cost, maintenance cost, customer verification cost and many more of around $27 million according to an economic survey. The current KYC process is very time-consuming, and it decreases the user experience. We have proposed an enhanced KYC system using blockchain technology to improve the existing KYC system. An inherent feature of the DLT is used to remove the third-party involvement, and smart contracts are used to build our logic in the mobility of the data. Blockchain technology has various types of cryptographic security which provide a safer place to transact over an unsecured channel. Using the facility of DLT, cryptography and consensus mechanism of blockchain, the proposed model of KYC process can optimize storing, updating, sharing of data and accessing operations along with enhanced security, transparency and privacy. It also enhances customer ownership and improves customer experience. It not only reduces the time duration and document update problem but also saves opportunity cost, aggregation, cost, maintenance cost and many more costs, which can affect the performance of any organization.
Proof of stake (PoS), aiming at replacing Proof of work (PoW) in blockchain consensus, has drawn great attention from academia and industry. We present âBaguenaâ, a novel PoS protocol for public blockchain with high practicality and security. It uses a special designed algorithm with properties of uniqueness and anonymity for leader selection, and uses the longest chain rule for chain selection. Besides, entropy is introduced to prevent manipulation of leader selection process by simulating a random beacon based on Publicly verifiable secret sharing (PVSS) and threshold signature with only a linear number of exponentiations. We analyze the protocol's security by a threat model and design a robust delegation mechanism based on triple Elliptic curve digital signature algorithm (ECDSA) proxy signature. We implement Baguena and evaluate its performance on 100 Amazon EC2 virtual machines simulating 50k users, which shows that Baguena confirms transactions in 2 minutes, achieves 2.16x of Algorand's throughput and 6.95x of Ouroboros' throughput.
Vicent Cholvi, Antonio Fernåndez Anta, Chryssis Georgiou, Nicolas Nicolaou · 6 authors
A Distributed Ledger Object (DLO) is a concurrent object that maintains a totally ordered sequence of records, and supports two operations:APPEND, which appends a record at the end of the sequence, andGET, which returns the whole sequence of records. The work presented in this article is made up of two main contributions.The first contribution is a formalization of aByzantine-tolerantDistributed Ledger Object(BDLO), which is a DLO in which clients and servers processes may deviate arbitrarily from their intended behavior (i.e. they may be Byzantine). The proposed formal definition is accompanied by algorithms that implementBDLOs on top of an underlying Byzantine Atomic Broadcast service.The second contribution is a suite of algorithms, based on the previous BDLO implementations, that solve the Atomic Appends problem in the presence of asynchrony, Byzantine clients and Byzantine servers. This problem occurs when clients have a composite record (set of basic records) to append to different BDLOs, in such a way that either each basic record is appended to its BDLO (and this must occur in good circumstances),or no basic record is appended. Distributed algorithms are presented, which solve the Atomic Appends problem when the clients (involved in theAtomic Appends) and the servers (which maintain the BDLOs) may be Byzantine.
There is a growing interest from both the academia and industry to employ distributed ledger technology in the Internet-of-Things domain for addressing security-related and performance challenges. Distributed ledger technology enables non-trusted entities to communicate and reach consensus in a fully distributed manner through a cryptographically secure and immutable ledger. However, significant challenges arise mainly related to transaction processing speed and user privacy. This work explores the interplay between Internet-of-Things and distributed ledger technology, analysing the fundamental characteristics of this technology and discussing the related benefits and challenges.
Asset custody is a core financial service in which the custodian holds in-safekeeping assets on behalf of the client. Although traditional custody service is typically endorsed by centralized authorities, decentralized custody scheme has become technically feasible since the emergence of digital assets, and furthermore, it is greatly needed by new applications such as blockchain and DeFi (Decentralized Finance). In this work, we propose a framework of decentralized asset custody scheme that is able to support a large number of custodians and safely hold customer assets of multiple times the value of the total security deposit. The proposed custody scheme distributes custodians and assets into many custodian groups via combinatorial designs, where each group fully controls the assigned assets. Since every custodian group is small, the overhead cost is significantly reduced. The liveness is also improved because even a single alive group would be able to process transactions. The security of this custody scheme is guaranteed under the rational adversary model, such that any adversary corrupting a bounded fraction of custodians cannot move assets more than the security deposit paid. We further analyze the security and performance of our constructions from both theoretical and experimental sides and give explicit examples with concrete numbers and figures for a better understanding of our results.
Laurens Van Hoye, Tim Wauters, Filip De Turck, Bruno Volckaert
Summary Organizations share data in a crossâorganizational context when they have the goal to derive additional knowledge by aggregating different data sources. The collaborations considered in this article are shortâlived and ad hoc, that is, they should be set up in a few minutes at most (e.g., in emergency scenarios). The data sources are located in different domains and are not publicly accessible. When a collaboration is finished, it is however unclear which exchanges happened. This could lead to possible disputes when dishonest organizations are present. The receipt of requests/responses could be falsely denied or their content could be point of discussion. In order to prevent such disputes afterwards, a logging mechanism is needed which generates a replicated irrefutable proof of which exchanges have happened during a single collaboration. Distributed database solutions can be taken from third parties to store the generated logs, but it can be difficult to find a party which is trusted by all participating organizations. Permissioned blockchains provide a solution for this as each organization can act as a consensus participant. Although the consensus mechanism of the permissioned blockchain Hyperledger Fabric (versions 1.0â1.4) is not fully decentralized, which clashes with the fundamental principle of blockchain, the framework is used in this article as an enabler to set up a distributed database, and a proposal for a logging mechanism is presented which does not require the third party to be fully trusted. A proof of concept is implemented which can be used to experiment with different data exchange setups. It makes use of generic web APIs and behaves according to a Markov chain in order to create a fully automated data exchange scenario where the participants explore their APIs dynamically. The resulting mechanism allows a dataâdelivering organization to detect missing logs and to take action, for example, (temporarily) suspend collaboration. Furthermore, each organization is incentivized to follow the steps of the logging mechanism as it may lose access to data of others, otherwise. The created proof of concept is scaled to 10 organizations, which autonomously exchange different data types for 10 min, and evaluation results are presented accordingly.
We propose a new Proof-of-Stake consensus protocol based on a Sequential Proof-of-Work constructed with a verifiable random function (VRF) and a verifiable delay function (VDF) that has the following properties: a) all addresses with positive stake can participate; b) is fair because the coin stake is proportional to the distribution of rewards; c) is resistant to several classic blockchain attacks such as Sybil attacks, Nothing-at-stake attacks and Winner-takes-all attacks. We call it Vixify Consensus. We introduce a variant of sequential Proof-of-Work puzzles with applications on Distributed Randomness Beacons.
We propose a new Proof-of-Stake consensus protocol constructed with a verifiable random function (VRF) and a verifiable delay function (VDF) that has the following properties: a) all addresses with positive stake can participate; b) is fair because the coin stake is proportional to the distribution of rewards; c) is resistant to several classic blockchain attacks such as Sybil attacks, "Nothing-at-stake" attacks and "Winner-takes-all" attacks. We call it Vixify Consensus.
Blockchains help to build trust among a decentralized network of unknown and untrusted peers who need to agree on a common protocol and trust the correctness and compatibility of the corresponding software implementations. The software engineering discipline cannot ignore this trend, as it fundamentally affects the way software is designed, developed, deployed, and delivered.1 As with the emergence of the Internet, software smart contracts for solving new classes of real-world problems, as opposed to introducing blockchains everywhere, where they may be unnecessary, or provide an inefficient and environmentally unsound solution.4
Vaivaswatha Nagaraj, Jacob Johannsen, Anton Trunov, George Pßrlea · 6 authors
Scilla is a higher-order polymorphic typed intermediate level language for implementing smart contracts. In this talk, we describe a Scilla compiler targeting LLVM, with a focus on mapping Scilla types, values, and its functional language constructs to LLVM-IR. The compiled LLVM-IR, when executed with LLVM's JIT framework, achieves a speedup of about 10x over the reference interpreter on a typical Scilla contract. This reduced latency is crucial in the setting of blockchains, where smart contracts are executed as parts of transactions, to achieve peak transactions processed per second. Experiments on the Ackermann function achieved a speedup of more than 45x. This talk abstract is aimed at both programming language researchers looking to implement an LLVM based compiler for their functional language, as well as at LLVM practitioners.
This paper proposes an architecture and a protocol suite for a permissioned blockchain for a local IoT network. The architecture is based on a sealed Sequencer and a Fog Server running (post-quantum) Guy Fawkes protocols. The blocks of the blockchain are stored in networked Content Addressable Storage alongside any user data and validity proofs. We maintain that a typical IoT device can, despite its resource limitations, use our blockchain protocols directly, without a trusted intermediary. This includes posting and monitoring transactions as well as off-chain (post-quantum) emergency communications without an explicit public key. Keywords: blockchain, Guy Fawkes protocol, post-quantum, HORS-OTS, LoRa, concurrent transmission
Private and permissioned blockchains are conceptualized and mostly assembled for fulfilling corporationsâ demands and needs in the context of their own premises. This paper presents a complete and sophisticated end-to-end permissioned blockchain application for governance and management of musical rights endorsed by smart contract development. In a music industry use case, this disclosed solution monitors and regulates conflicting musical rights of diverse entities under a popular permissioned distributed ledger technology network. The proposed implementation couples various and distinct business domains across the music industry organizations and non-profit blockchain associations.
Jelle Hellings, Daniel P. Hughes, Joshua Primero, Mohammad Sadoghi
To enable high-performance and scalable blockchains, we need to step away from traditional consensus-based fully-replicated designs. One direction is to explore the usage of sharding in which we partition the managed dataset over many shards that independently operate as blockchains. Sharding requires an efficient fault-tolerant primitive for the ordering and execution of multi-shard transactions, however. In this work, we seek to design such a primitive suitable for distributed ledger networks with high transaction throughput. To do so, we propose Cerberus, a set of minimalistic primitives for processing single-shard and multi-shard UTXO-like transactions. Cerberus aims at maximizing parallel processing at shards while minimizing coordination within and between shards. First, we propose Core-Cerberus, that uses strict environmental requirements to enable simple yet powerful multi-shard transaction processing. In our intended UTXO-environment, Core-Cerberus will operate perfectly with respect to all transactions proposed and approved by well-behaved clients, but does not provide any guarantees for other transactions. To also support more general-purpose environments, we propose two generalizations of Core-Cerberus: we propose Optimistic-Cerberus, a protocol that does not require any additional coordination phases in the well-behaved optimistic case, while requiring intricate coordination when recovering from attacks; and we propose Pessimistic-Cerberus, a protocol that adds sufficient coordination to the well-behaved case of Core-Cerberus, allowing it to operate in a general-purpose fault-tolerant environments without significant costs to recover from attacks. Finally, we compare the three protocols, showing their potential scalability and high transaction throughput in practical environments.