Posted by Thy Shizzle
Mar 23, 2015/10:06 UTC
The problem of pseudo-nodes has been discussed and the easiest solution would be to request some kind of resource consumption on each peer to be allowed to connect to other peers. Gmaxwell proposed Proof of Storage, which was further improved by Sergio Lerner as "Proof of Local Storage". The protocol allows a node to prove another peer that it is storing a local copy of a public file, such as the blockchain, without needing to waste additional resources. The main idea is to use asymmetric-time-encoding, which encodes the blockchain in a way that takes 100 times more time to write than to read. Two protocols can be performed to prove local possession. The first protocol requires both the prover and verifier to pay a small cost, while the second protocol requires the prover to pay a high cost and the verifier to pay a negligible cost. Both protocols can be made available by the client under different states. The important difference between this protocol and classical remote software attestation protocols is that the time gap between a good peer and a malicious peer can be made arbitrarily high, picking a larger p. This proposal has advantages over GMaxwell's proposal, as each peer builds a single table (the encrypted blockchain), so it could still be possible to establish thousands of connections to the network from a single peer.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback