Expand description
This module implements encoding proofs for the Avid-M Scheme.
Structs§
- MalEncoding
Proof - A proof of incorrect encoding.
When the disperser is malicious, he can disperse an incorrectly encoded block, resulting in a merkle root of
a Merkle tree containing invalid share (i.e. inconsistent with shares from correctly encoded block). Disperser
would disperse them to all replicas with valid Merkle proof against this incorrect root, or else the replicas
won’t even vote if the merkle proof is wrong. By the time of reconstruction, replicas can come together with
at least
threshold
shares to interpolate back the original block (in polynomial form), and by recomputing the corresponding encoded block on this recovered polynomial, we can derive another merkle root of encoded shares. If the merkle root matches the one dispersed earlier, then the encoding was correct. If not, this mismatch can serve as a proof of incorrect encoding. - NsProof
- A proof of a namespace payload. It consists of the index of the namespace, the namespace payload, and a merkle proof of the namespace payload against the namespaced VID commitment.