1

Background

I downloaded the Ethereum wallet client software and when opening, it downloads the entire blockchain of 4 million+ blocks which takes up several GB of storage.

This is fine for me, but might not be fine for other users who I'd like to make use of a private blockchain. They might not have the patience or storage space for this and since I only need for them to use it for certain transactions, they don't need to be a fully-functional node.

Question

Can the blockchain itself be hosted centrally and then just grant client access for making transactions?

Of course, the miners would still be distributed, they would just be adding blocks to a centralized chain.

Thanks in advance.

1
  • One of the benefits provided by a decentralized blockchain is that you do not have to trust someone else. Every transaction can be verified independently. If it is hosted centrally then you have to trust the host will act in good faith.
    – Ismael
    Jul 22, 2017 at 21:06

3 Answers 3

2

Infura is an example of an approach to have centralized copy of a block chain at the trustful provider. They host a copy of the blockchain for you and provide you API interface. Multiple apps use that infrastructure, e.g. Metamask You don't need granted access to use this infrastructure because you sign transactions on your side and they act only as a transport.

0

Can the blockchain itself be hosted centrally and then just grant client access for making transactions?

Some websites propose to host your wallet (here for example) so you don't have to download the whole blockchain to start to use ethereum (with contract or transactions). It is some kind of centralization here. To my knowledge there is no "ethereum cloud API" that propose you to just use their blockchain data and let all the "cool" part of ethereum on your computer (your keystore / publishing contract ...)

But keep in mind that a public blockchain (ethereum here) is just a public record that everyone can see and write on it. The security of this public blockchain is (in part) ensure by the fact that nobody "control" and store alone the whole blockchain. The more of different people are being client node of the network (-> download the whole blockchain) the more the blockchain is secure.

For you, I don't know if you would like to trust this third party as possessing the right blockchain.

Of course, the miners would still be distributed, they would just be adding blocks to a centralized chain.

There exists cases where miners form "pool mining" to be more efficient on their mining task and shared their processing power and storage (and so their blockchain). You can join one if you want : you give them your processing power, they give you some of the ether mined.

0

To me it seems like the user role you are describing is simply an end user of your business application being built on a permission-ed, private Ethereum.

If they don't have to play the role of a miner or a validator as a node, and you have other users fulfilling these roles (miner or validator) - then your UI application should take care of these business users to generate transactions and your centralized app should update the private Ethereum once validator nodes have confirmed transactions.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.