Post
Topic
Board Announcements (Altcoins)
Re: [NEM] NEM -New Economy Movement - No Envy Movement - Updates+Discussion thread
by
gimre
on 01/02/2014, 11:20:33 UTC
   3.  ‘normal’ client - for users, that want to participate in the network, but don’t want to deal with DB setup. This one would keep blockchain in memory, BUT it would rely on “snapshots”
               a. snapshot would be created every X days (I was thinking about X=10)
               b. they would contain information about state (of accounts), but would drop all the history
               c. snapshots (for new clients) could be propagated in torrent-like fashion.

1.3 In principle I would agree, snapshots which get propagate are open for attacks and easy targets to fake snapshots

not to repeat myself, read what's below and think about it, I think it would be possible to do that (and do that securely):

Do I understand this correctly that the blockchain would only be stored on the "server version" of the client and not by every client ? I'm not sure that's a good idea. I don't know how people would feel about that and also doesn't that make the whole thing less secure especially in the beginning where fewer servers are running ? Say 10 servers are runnin initially. What if i whip up 20 VMs on my computer and make them servers....could I then not controll the network ? Not to mention that if the client doesn't hold the blockchain mim attackes could to a crapload of damage especially if coordinated well.

What's the point of having outdated snapshots in the client ? So the update from the DBs won't take as long ?

Nope, you don't need whole chain for security purposes.

Also 'normal' clients would also be part of the network.
They just wouldn't store whole history, only those snapshots + blockchain history since last snapshot till present.
Most people don't need whole history anyway (i.e. compare to btc, where download of whole the blockchain takes days if not weeks...)

When you would receive initial snapshot, there would be additional step of verification,
that the snapshot you've received is actually CORRECT one (there are number of ways this could be done),
to make sure the peers from which you've received it are not EVIL ones.



Sorry for uber long quote, but I've just noticed CfB in specific aspect has similar opinion to mine:

It sounds like we can't go much past 100TPS, thats 100KB of bandwidth. If a node every falls behind, how will it catch up?

This sounds like a fundamental limitation if the total TPS is limited by the slowest node. Or maybe only a few nodes can keep up with the 1000TPS and there is a way for slower nodes to catch up somehow? If BCNext solved this, it will be total NXT domination.

Lightweight clients don't need full blockchain. That's why we need public nodes that will become Service Providers in the future.