|
|
|
|
|
by tzpardi
3652 days ago
|
|
<<< Because most of the logic is run by peers, its the peers who decide how the system evolves, not the original designers. >>> I think it is the misunderstanding of how decentralized applications work. The seeds decide about nothing during runtime. In an ideal scenario the seeds execute the application without being able to make any decisions terms of the business logic. That's how the trust between seeds can be established by executing the common functions i.e. Bitcoin mining or performing the Ethereum smart contracts by executing the application. The issue is, we do not want the peers decide anything or be able to modify anything term of business logic. The objective is that all seeds execute "the" honest, published version of the software. Because such cannot be guaranteed, fundamental security issues exist in decentralized computing, some node can act dishonestly, and therefore vulnerability to 51% attacks and Byzantine Generals Problem exist. |
|
To take the WWW as an example, the W3C once tried to unilaterally update the system with XHTML2 and utterly failed, because none of the peers were adopting the change. But even the browser vendors don't have (or didn't have at least) the full control: they were bound by backwards compatibility of existing sites and by the threat of new browsers or forks emerging. Finally, the peers can change what they are executing by using extensions or forked browsers.