29 research outputs found
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
Neurodevelopmental disorders in children aged 2-9 years: Population-based burden estimates across five regions in India.
BACKGROUND: Neurodevelopmental disorders (NDDs) compromise the development and attainment of full social and economic potential at individual, family, community, and country levels. Paucity of data on NDDs slows down policy and programmatic action in most developing countries despite perceived high burden. METHODS AND FINDINGS: We assessed 3,964 children (with almost equal number of boys and girls distributed in 2-<6 and 6-9 year age categories) identified from five geographically diverse populations in India using cluster sampling technique (probability proportionate to population size). These were from the North-Central, i.e., Palwal (N = 998; all rural, 16.4% non-Hindu, 25.3% from scheduled caste/tribe [SC-ST] [these are considered underserved communities who are eligible for affirmative action]); North, i.e., Kangra (N = 997; 91.6% rural, 3.7% non-Hindu, 25.3% SC-ST); East, i.e., Dhenkanal (N = 981; 89.8% rural, 1.2% non-Hindu, 38.0% SC-ST); South, i.e., Hyderabad (N = 495; all urban, 25.7% non-Hindu, 27.3% SC-ST) and West, i.e., North Goa (N = 493; 68.0% rural, 11.4% non-Hindu, 18.5% SC-ST). All children were assessed for vision impairment (VI), epilepsy (Epi), neuromotor impairments including cerebral palsy (NMI-CP), hearing impairment (HI), speech and language disorders, autism spectrum disorders (ASDs), and intellectual disability (ID). Furthermore, 6-9-year-old children were also assessed for attention deficit hyperactivity disorder (ADHD) and learning disorders (LDs). We standardized sample characteristics as per Census of India 2011 to arrive at district level and all-sites-pooled estimates. Site-specific prevalence of any of seven NDDs in 2-<6 year olds ranged from 2.9% (95% CI 1.6-5.5) to 18.7% (95% CI 14.7-23.6), and for any of nine NDDs in the 6-9-year-old children, from 6.5% (95% CI 4.6-9.1) to 18.5% (95% CI 15.3-22.3). Two or more NDDs were present in 0.4% (95% CI 0.1-1.7) to 4.3% (95% CI 2.2-8.2) in the younger age category and 0.7% (95% CI 0.2-2.0) to 5.3% (95% CI 3.3-8.2) in the older age category. All-site-pooled estimates for NDDs were 9.2% (95% CI 7.5-11.2) and 13.6% (95% CI 11.3-16.2) in children of 2-<6 and 6-9 year age categories, respectively, without significant difference according to gender, rural/urban residence, or religion; almost one-fifth of these children had more than one NDD. The pooled estimates for prevalence increased by up to three percentage points when these were adjusted for national rates of stunting or low birth weight (LBW). HI, ID, speech and language disorders, Epi, and LDs were the common NDDs across sites. Upon risk modelling, noninstitutional delivery, history of perinatal asphyxia, neonatal illness, postnatal neurological/brain infections, stunting, LBW/prematurity, and older age category (6-9 year) were significantly associated with NDDs. The study sample was underrepresentative of stunting and LBW and had a 15.6% refusal. These factors could be contributing to underestimation of the true NDD burden in our population. CONCLUSIONS: The study identifies NDDs in children aged 2-9 years as a significant public health burden for India. HI was higher than and ASD prevalence comparable to the published global literature. Most risk factors of NDDs were modifiable and amenable to public health interventions
Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction
Regenerating codes are a class of distributed storage codes that allow for efficient repair of failed nodes, as compared to traditional erasure codes. An [n, k, d] regenerating code permits the data to be recovered by connecting to any k of the n nodes in the network, while requiring that a failed node be repaired by connecting to any d nodes. The amount of data downloaded for repair is typically much smaller than the size of the source data. Previous constructions of exact-regenerating codes have been confined to the case n = d + 1. In this paper, we present optimal, explicit constructions of (a) Minimum Bandwidth Regenerating (MBR) codes for all values of [n, k, d] and (b) Minimum Storage Regenerating (MSR) codes for all [n, k, d >= 2k - 2], using a new product-matrix framework. The product-matrix framework is also shown to significantly simplify system operation. To the best of our knowledge, these are the first constructions of exact-regenerating codes that allow the number n of nodes in the network, to be chosen independent of the other parameters. The paper also contains a simpler description, in the product-matrix framework, of a previously constructed MSR code with [n = d + 1, k, d >= 2k - 1]
A Flexible Class of Regenerating Codes for Distributed Storage
In the distributed storage setting introduced by Dimakis et al., B units of data are stored across n nodes in the network in such a way that the data can be recovered by connecting to any k nodes. Additionally one can repair a failed node by connecting to any d nodes while downloading at most beta units of data from each node. In this paper, we introduce a flexible framework in which the data can be recovered by connecting to any number of nodes as long as the total amount of data downloaded is at least B. Similarly, regeneration of a failed node is possible if the new node connects to the network using links whose individual capacity is bounded above by beta(max) and whose sum capacity equals or exceeds a predetermined parameter gamma. In this flexible setting, we obtain the cut-set lower bound on the repair bandwidth along with a constructive proof for the existence of codes meeting this bound for all values of the parameters. An explicit code construction is provided which is optimal in certain parameter regimes
Explicit codes minimizing repair bandwidth for distributed storage
We consider the problem of minimizing the bandwidth required to repair a failed node when data is stored across n nodes in a distributed manner, so as to facilitate reconstruction of the entire data by connecting to any k out of the n nodes. We provide explicit and optimal constructions which permit exact replication of a failed systematic node
Enabling node repair in any erasure code for distributed storage
Erasure codes are an efficient means of storing data across a network in comparison to data replication, as they tend to reduce the amount of data stored in the network and offer increased resilience in the presence of node failures. The codes perform poorly though, when repair of a failed node is called for, as they typically require the entire file to be downloaded to repair a failed node. A new class of erasure codes, termed as regenerating codes were recently introduced, that do much better in this respect. However, given the variety of efficient erasure codes available in the literature, there is considerable interest in the construction of coding schemes that would enable traditional erasure codes to be used, while retaining the feature that only a fraction of the data need be downloaded for node repair. In this paper, we present a simple, yet powerful, framework that does precisely this. Under this framework, the nodes are partitioned into two types and encoded using two codes in a manner that reduces the problem of node-repair to that of erasure-decoding of the constituent codes. Depending upon the choice of the two codes, the framework can be used to avail one or more of the following advantages: simultaneous minimization of storage space and repair-bandwidth, low complexity of operation, fewer disk reads at helper nodes during repair, and error detection and correction