5

Is it possible to prevent mining on a closed block chain, in a sense that only a set of addresses are allowed to perform transactions but are not allowed to mine?

Mining should always be done by a preselected number of nodes with known addresses.

The solution would be preferable to use pyethapp or pyethereum.

  • 1
    You can setup geth such that it will no discover new nodes and has a maximus set of peers, with a list of predefined static nodes (ethdocs.org/en/latest/network/connecting-to-the-network.html). Althought this setup will not reject invalid nodes. Together with firewall rules to drop connections from unknown locations may work for a tests. – Ismael Jun 3 '16 at 21:45
  • Thanks. I was thinking at a solution based on white listing; allow only transactions from a known set of addresses and discard all others. I wonder if that is possible in the python implementations? – Sebi Jun 3 '16 at 21:57
7

What you are searching for is a permissioned blockchain. Default node clients like geth, eth or pyehtereum does not implement this kind of functionality, so you need something more complex that implements a permission layer.

Some good starting points are the Eris platform (my preferred, I like the overall architecture and the Docker approach) or the BlockApps STRATO platform, Ethereum platform out-of-the-box and Microsoft Azure ready.

See this post by Vitalik Buterin for more info about public and private blockchains.

2

You basically can start some geth with and some without --mine. If you really want to enforce this then you should configure the machines with privileges so that they can only start a script that mines and some who don't. Simple Sysadmin task right?

  • No, it is not a simple task since it violates the distributed principle of the block chain. My setup is that I have an instance on pyethapp running on a machine and one on a separate machine (these boxes have distinct network addresses) and the one that initially stores the block chain should not allow the other to mine. – Sebi Jun 3 '16 at 9:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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