To do anything more meaningful, code needs to interact with the real world. And this is generally the point at which blockchain apps lose all of their purported benefits, like decentralization, immutability, reliability and so on.
To do anything more meaningful, code needs to interact with the real world. And this is generally the point at which blockchain apps lose all of their purported benefits, like decentralization, immutability, reliability and so on.
Asset issuance, voting, wills, identity/reputation systems, land registries.
Fundamentally, a blockchain is just public, transparent immutable data history. Of the above sample cases, all it takes is for the powers to be to recognize the data as a reflection of the real world; which is a barrier outside of the technology.
And sidenote, decentralized oracles will literally tie outside world to the blockchain.
All of which reach beyond the blockchain. No-one is going to care that a 'smart contract' says that Alice owns a plot of land when Bob holds the real-world deeds.
The real world and the blockchain can only be linked when, as you say, 'the powers that be' decide to recognise the data. But then you've lost all of the advantages that the blockchain was claimed to possess. For example, if we need an entity to recognise that the land registry smart contract is valid, there's no more decentralization, and we might as well let that entity store the land registry in their own simple database. The blockchain becomes pointless and wasteful.
That's a very wide brush stroke to paint. You just have to analyze each use case independently.
In the same example of land registry, just a transparent history is a huge value add when dealing with corrupt government officials. Here's a case study https://s3.amazonaws.com/ipri2016/casestudy_collindres.pdf . Voting transparency even with the government as the part of centralization is a huge value add imo.
Further, even allowing centralization in certain points, like a SpaceX IPO (which should def be centralized), allows whoever holds a share to make arbitrary, trustless mediums and rules of exchange.
With Ethereum, one way to do it is to make the voting weight non-transferable, meaning to give someone else your vote you'd need to give your private key.
It would be of course crazy to do that; like giving someone your bank card and PIN number to give them cash.