Edit: To be clear, it is now known after review that FlexFarmer does not send keys to FlexPool and that the farmer continues to sign farmed blocks locally.
After FlexPool released their FlexFarmer software into open beta yesterday. It works completely differently, architecturally, from the official Chia client. Instead of having every farmer act as their node and participate in the network directly, FlexFarmer runs a central high performance node and farmers submit all their work there over the internet. Because this difference goes against Chia Network’s philosophy towards their blockchain I wanted to get their impressions about this new development.
And oh boy. Gene Hoffman was not shy in expressing how he felt about the new software, saying
Farmers should sign their own blocks. Full stop.
now, farmer on the remote end that can get the mempool from a central node – that’s ok
No farmer should trust a close sourced block creation. What censorship is in there?
and the central node handing the farmer a block hash to just sign is exactly what no real farmer should want. “Here sign this. Don’t worry, we didn’t exclude transactions that would have been valuable to you…. No….”
Farmers right now are myopic on block rewards but, assuming things go as they should, fees go to the farmer… Sure you trust your pool to not hold the juicy fee transactions to when their farmer wins?Gene Hoffman, President and COO Chia Network, Inc
They seem very intent on their distributed architecture, which really does drive the efficiency of their network way down. Also the security implications of having a million or so computers, half of them running Windows as admin users, with open ports into a python shell are pretty staggering. I honestly think it is only a matter of time until a wormable exploit hits the Chia network and we all suffer for it.
That being said, the points he makes are good ones, and one that I never even considered. The decentralization argument is what I expected, and it is a solid point. I don’t think it matters to people as much as he thinks though, or at least not everyone, and I honestly don’t think that idea scales with a blockchain that grows forever. Yes, the bluebox timelords are working their little butts off to compress the chain, but that doesn’t change the scalability issue just the timeframe.
The argument I actually find most persuasive is something I had not considered before. Once the network is in full swing and its mostly just a few pools finding blocks there will be an additional avenue for Miner Extracted Value (MEV) for the pools – and that’s from their own farmers. Because of the “farmer keeps the fees” structure that Chia has gone with, that means they would be extracting that value from their own farmers.
I think what Gene means about re-ordering transactions is that pools have no incentive to get their farmers the best transactions in the mempool, only themselves. Its actually makes no difference to them if the juicy transaction blocks go to their farmers or to another pool’s farmer. But if they can snag it with their in-house farmers then there is extra value there for them. So they have an incentive to put the smallest transactions possible into a block on behalf of their own farmers in the hopes that they hit the next block themselves. And if all pools were to do this, then only pool-approved farmers would get the juicy transaction blocks. I had to think about this for a bit, but its actually true. A weird dilemma, but one that doesn’t exist while farmers are signing their own blocks. It also means that transactions with the highest fees will take the longest to confirm, which is also odd.
All in all, I don’t think anyone is surprised that Chia Network is unhappy with this development. I don’t think they are surprised though after Hpool and definitely expected more of this.