Jeff Garzik [ARCHIVE] on Nostr: 📅 Original date posted:2011-12-17 🗒️ Summary of this message: Storing the ...
📅 Original date posted:2011-12-17
🗒️ Summary of this message: Storing the blockchain in a distributed hash table (DHT) is not feasible due to the difficulty in guaranteeing against data loss or manipulation. Verification of the full blockchain allows the client to trust no one. However, the blockchain data is self-validating, and as long as the latest block's hash is known, all other blockchain data can be downloaded from an untrusted source.
📝 Original message:On Sat, Dec 17, 2011 at 7:44 PM, Jordan Mack <jordanmack at parhelic.com> wrote:
> While using DHT for storage of the block chain is an intriguing concept,
> I do not see how it is feasible. As Gavin noted, DHT is a system that is
> difficult to impossible to guarantee against data loss or manipulation.
>
> Even if we found a way to store the block chain in DHT, how would
> transactions be verified? As Gavin noted, you could ask the network, but
> cannot necessarily trust the peers you are connected to. Verification of
> the full block chain allows the client to trust no one.
Well, the block chain data itself is internally self-validating. As
long as you know the latest block's hash -- a big "if" -- there is no
problem downloading all other block chain data from DHT or any other
untrusted source.
In a malicious case, you would notice latest-hash differs from
non-malicious and wind up downloading multiple chains, when walking
hashes backwards through a DHT/lookup table. So, a bit more work but
nothing fundamentally less secure _on a trust basis_.
Of course, I was focusing on data validation, which ignores other
factors such as DoS'ing the DHT.
--
Jeff Garzik
exMULTI, Inc.
jgarzik at exmulti.com
🗒️ Summary of this message: Storing the blockchain in a distributed hash table (DHT) is not feasible due to the difficulty in guaranteeing against data loss or manipulation. Verification of the full blockchain allows the client to trust no one. However, the blockchain data is self-validating, and as long as the latest block's hash is known, all other blockchain data can be downloaded from an untrusted source.
📝 Original message:On Sat, Dec 17, 2011 at 7:44 PM, Jordan Mack <jordanmack at parhelic.com> wrote:
> While using DHT for storage of the block chain is an intriguing concept,
> I do not see how it is feasible. As Gavin noted, DHT is a system that is
> difficult to impossible to guarantee against data loss or manipulation.
>
> Even if we found a way to store the block chain in DHT, how would
> transactions be verified? As Gavin noted, you could ask the network, but
> cannot necessarily trust the peers you are connected to. Verification of
> the full block chain allows the client to trust no one.
Well, the block chain data itself is internally self-validating. As
long as you know the latest block's hash -- a big "if" -- there is no
problem downloading all other block chain data from DHT or any other
untrusted source.
In a malicious case, you would notice latest-hash differs from
non-malicious and wind up downloading multiple chains, when walking
hashes backwards through a DHT/lookup table. So, a bit more work but
nothing fundamentally less secure _on a trust basis_.
Of course, I was focusing on data validation, which ignores other
factors such as DoS'ing the DHT.
--
Jeff Garzik
exMULTI, Inc.
jgarzik at exmulti.com