532 research outputs found
Erasure code-based low storage blockchain node
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 rebuilt 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 bemanaged by low capacity nodes
Overview of Polkadot and its Design Considerations
In this paper we describe the design components of the heterogenous
multi-chain protocol Polkadot and explain how these components help Polkadot
address some of the existing shortcomings of blockchain technologies. At
present, a vast number of blockchain projects have been introduced and employed
with various features that are not necessarily designed to work with each
other. This makes it difficult for users to utilise a large number of
applications on different blockchain projects. Moreover, with the increase in
number of projects the security that each one is providing individually becomes
weaker. Polkadot aims to provide a scalable and interoperable framework for
multiple chains with pooled security that is achieved by the collection of
components described in this paper
Coded Merkle Tree: Solving Data Availability Attacks in Blockchains
In this paper, we propose coded Merkle tree (CMT), a novel hash accumulator
that offers a constant-cost protection against data availability attacks in
blockchains, even if the majority of the network nodes are malicious. A CMT is
constructed using a family of sparse erasure codes on each layer, and is
recovered by iteratively applying a peeling-decoding technique that enables a
compact proof for data availability attack on any layer. Our algorithm enables
any node to verify the full availability of any data block generated by the
system by just downloading a byte block hash commitment and
randomly sampling bytes, where is the size of the data
block. With the help of only one connected honest node in the system, our
method also allows any node to verify any tampering of the coded Merkle tree by
just downloading bytes. We provide a modular library for CMT
in Rust and Python and demonstrate its efficacy inside the Parity Bitcoin
client.Comment: To appear in Financial Cryptography and Data Security (FC) 202
Keyword-Based Delegable Proofs of Storage
Cloud users (clients) with limited storage capacity at their end can
outsource bulk data to the cloud storage server. A client can later access her
data by downloading the required data files. However, a large fraction of the
data files the client outsources to the server is often archival in nature that
the client uses for backup purposes and accesses less frequently. An untrusted
server can thus delete some of these archival data files in order to save some
space (and allocate the same to other clients) without being detected by the
client (data owner). Proofs of storage enable the client to audit her data
files uploaded to the server in order to ensure the integrity of those files.
In this work, we introduce one type of (selective) proofs of storage that we
call keyword-based delegable proofs of storage, where the client wants to audit
all her data files containing a specific keyword (e.g., "important"). Moreover,
it satisfies the notion of public verifiability where the client can delegate
the auditing task to a third-party auditor who audits the set of files
corresponding to the keyword on behalf of the client. We formally define the
security of a keyword-based delegable proof-of-storage protocol. We construct
such a protocol based on an existing proof-of-storage scheme and analyze the
security of our protocol. We argue that the techniques we use can be applied
atop any existing publicly verifiable proof-of-storage scheme for static data.
Finally, we discuss the efficiency of our construction.Comment: A preliminary version of this work has been published in
International Conference on Information Security Practice and Experience
(ISPEC 2018
- …