Bitcoin Cash fork procedure, and preventing replay attacks

News updates about the Prohashing pool
User avatar
Steve Sokolowski
Posts: 3316
Joined: Wed Aug 27, 2014 3:27 pm
Location: State College, PA
Contact:

Bitcoin Cash fork procedure, and preventing replay attacks

Postby Steve Sokolowski » Mon Nov 12, 2018 3:02 pm

The Bitcoin Cash fork procedure

Bitcoin Cash will fork into two new coins, BCHSV and BCHABC, around November 15. Currently, BCHABC is projected to be about four times as valuable as BCHSV, despite BCHSV projecting to start out with twice as much hashrate as BCHABC. The difference between these two is that BCHABC is being supported by most major exchanges and merchants, while more and more mining pools are claiming that they will mine BCHSV at a loss.

This absurd starting situation, where there could be at an 8-16x profitability increase in SHA-256 mining for a period of time, is something that we will make sure to take advantage of. Unlike with previous forks, Chris will be awake regardless of the time that this fork occurs so that we can immediately begin mining to take advantage of this huge imbalance.

Here is what you need to know:

  • The coin currently called "BitcoinCash" will be discontinued at the time of the fork. All static coin miners currently mining Bitcoin Cash will be disconnected from the mining servers. To avoid this from happening to you, enable dynamic mining or statically mine a different coin before November 15.
  • Sometime within 24 hours of the fork, all customers with BCH balances will be credited an equal amount of two new coins, "BitcoinCashSV" and "BitcoinCashABC."
  • All miners with payout proportions of Bitcoin Cash will see that payout proportion redistributed equally across the two forks. Those earning 33% bitcoins and 66% BCH will now see their proportions read 33% bitcoins, 34% BCHSV, and 33% BCHABC. These customers will begin earning an equal amount of both coins immediately at the time of the fork. If you don't wish to earn both coins, then you can later remove the one you don't want to earn, or you can remove Bitcoin Cash from your payout proportions before the fork occurs so that the automated distribution is not applied to your account.
  • The system will begin mining both coins immediately beginning at the fork block and converting mined blocks to the payout coins, taking advantage of the expected mismatch between price and difficulty.
  • If you want to use mining power to support one of the forks, then you can use the password argument "c=bitcoincash[whatever]." This will earn you less money than omitting the "c=" password argument.
  • If you want to drive down the price of the fork you don't support, and make less money by not mining the most profitable coin, you can use password argument "c=bitcoincash[whatever]" and elect 100% payout proportions in the other fork.
  • If exchanges lock their wallets for one of the forks, and we have not found enough blocks in that fork, then payouts for that fork will be delayed until we can withdrawal the debt that we owe to customers. Exchanges frequently lock wallets when forks occur. Be aware of this possibility, because it is out of our control.


You can use us to prevent replay attacks

Finally, payout addresses will be duplicated for both forks for those who have addresses entered. If you are currently earning Bitcoin Cash, you will see two rows with the same address.

Replay attacks are a way that anyone can steal money from your wallet when you spend it. You can use our payout system to safely protect a wallet from replay attacks. Just wait until you receive payouts on one of the forks. Then, in your wallet software, send the entire balance of the wallet to yourself on that network. It is not necessary to send money to yourself on the other network. You must send the entire balance of the wallet, not just a small portion of it. Sending part of the balance will provide no protection.

In the Bitcoin ABC client, for example, you can call ./bitcoincash-cli getbalance to get the full balance, after waiting for six confirmations. Then, ./bitcoincash-cli sendtoaddress [your wallet address] [amount returned from getbalance - 0.000001 to account for fees)]. Then wait for six confirmations and you are protected on both networks forever after, despite not having sent a transaction on the other network.

After you've sent the entire balance, any future transactions you send from the wallet will not be subject to replay attacks, which could have resulted in losing your money in the other fork. You are also protected against replays from the initial full-wallet send, which is complex to pull off without using this method.
Last edited by Steve Sokolowski on Tue Nov 13, 2018 9:59 am, edited 4 times in total.
User avatar
GregoryGHarding
Posts: 654
Joined: Sun Apr 16, 2017 3:01 pm
Contact:

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby GregoryGHarding » Mon Nov 12, 2018 7:05 pm

are you currently signaling support for both forks?
ajs
Posts: 15
Joined: Sat Jun 16, 2018 2:43 pm

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby ajs » Mon Nov 12, 2018 8:39 pm

Thank you for this, and the other explanation. I am still confused (bear with me, I am new to all this.) I hope someone can explain this to me.

I currently have a BCH wallet. In theory after the fork, I will have a BCHABC and a BCHSV wallets with the same address. Some wallet software (ElectronCash?) can deal with them separately, but some will only deal with it as if it is BCH. I keep the address in my ledger.

You will mine things into a BCHABC and BCHSV coins, and will send them to my BCH address.
So now I have a BCHABC wallet with my original coins plus the BCHABC you sent me, and
an BCHSV wallet with my original coins plus the BCHSV coins you sent me, but these are all tied to the same address? What is the "total coin count of that wallet? How does it know what is what type of BCH?

When I send the whole thing to myself, I will now have a wallet address that has both BCH, BCHABC and BCHSV in it.

Can someone break down Steve's advice above about preventing replay attacks? I am sure this is simple, but I am dense today.
User avatar
CSZiggy
Posts: 602
Joined: Wed Jan 31, 2018 2:44 pm

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby CSZiggy » Mon Nov 12, 2018 11:38 pm

AJS...just let the pool send the coins to you, after a day or so you should be fine to send coins like normal, but for the first day or two after the fork, just let the pool handle it and then you should be set. I thought you would need a new wallet for both of the new coins to be sent to on exchanges but that part seems kind of fuzzy to me also after reading through it all. So maybe 1 wallet supports the old coins and new address/wallet will be needed for the new coins? but if both are renaming then I really dont know if the old BCH wallets will work with either of the new coins. Anyone know?

Check where you have your BCH coins at now, depending where they are, some places will or will not honor a fork. If they don't honor it, they will likely keep all the new coins split off and just leave you with what you had pre-fork in BCH. I've had to move coins previously to another exchange on bitcoin forks to get the new free coins made off the splits when my primary pool wouldn't support/honor the fork.
User avatar
Steve Sokolowski
Posts: 3316
Joined: Wed Aug 27, 2014 3:27 pm
Location: State College, PA
Contact:

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby Steve Sokolowski » Tue Nov 13, 2018 7:54 am

You don't need a new wallet. You can use the same address on both networks safely, but only after you receive a payout from us on one of the networks and send all of the money on that network to yourself. CSZiggy is incorrect that all you have to do is wait for a payout, and I bolded this because a mistake here could cause lost money. You must wait for a payout to confirm, and on that network you must send all of the money in your wallet to yourself, and then wait for that transaction to confirm in order to be protected against replay attacks.

It isn't necessary to do anything on the other network. Once you have sent all the money, not just part of it as CSZiggy said, to yourself on one of the networks, then you will not be subject to replay attacks even if you use the same address.
ultiman2
Posts: 6
Joined: Wed Oct 31, 2018 9:43 am

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby ultiman2 » Tue Nov 13, 2018 11:42 am

i cant say i understand how it will work with this fork but i will wait after its done
User avatar
CSZiggy
Posts: 602
Joined: Wed Jan 31, 2018 2:44 pm

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby CSZiggy » Tue Nov 13, 2018 1:04 pm

Steve Sokolowski wrote:Then, in your wallet software, send the entire balance of the wallet to yourself on that network. It is not necessary to send money to yourself on the other network.

Steve Sokolowski wrote:You must wait for a payout to confirm, and on that network you must send all of the money in your wallet to yourself, and then wait for that transaction to confirm in order to be protected against replay attacks.

It isn't necessary to do anything on the other network.


You see how this is still conflicting information right?

You tell us we need to send all the money on the network after we get the money from prohashing back to ourselves on that same network?
And then right under it....We don't have to do anything....So which is it, do we send or not do anything?

I thought there was just Prohashing sending money, to a wallet on a network, then that whole balance once a prohashing payment was received, you send back to yourself on that SAME network? Seems like somewhere along the way we have picked up a 2nd network that we maybe do or do nothing on? How can we send the entire balance to ourselfs, and its not necessary to send money to myself on the network.

Make up my mind?
Maybe specify or use some examples of the NETWORK so its less confusing, specify the networks in question maybe?
User avatar
Steve Sokolowski
Posts: 3316
Joined: Wed Aug 27, 2014 3:27 pm
Location: State College, PA
Contact:

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby Steve Sokolowski » Tue Nov 13, 2018 4:38 pm

It doesn't matter which network you choose. All you have to do is to spend all your wallet's inputs on one of the networks.

If you have a wallet that doesn't have a payout from us, then someone can simply copy the transaction you send to yourself onto the other network, and you won't have severed your wallets. If you include the payout input, which doesn't exist on the other network, then the transaction that sends all the money to yourself is not valid on the other network. Therefore, you can safely send this transaction without worrying about it being copied.

Once you send that transaction, you've invalidated all the inputs into your wallet because you spent them along with the payout transaction. Your wallet on this network now only has one valid input - the one you just sent to yourself. Your wallet on the other network has the inputs from before the fork, which are now only valid on that network.

You've just safeguarded your wallets, even though they are both the same address, because there is no longer an unspent input that is valid on both networks.
User avatar
CSZiggy
Posts: 602
Joined: Wed Jan 31, 2018 2:44 pm

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby CSZiggy » Wed Nov 14, 2018 2:52 am

I guess the term NETWORK is what is throwing me for a loop.
I was confused and using exchanges instead of network...the network I sell my coins on...the network I do the mining on.


When you say NETWORK I'm guessing you mean COIN FORK. That makes it a lot more clearer now.
Thanks.
Muleslayer
Posts: 15
Joined: Wed Apr 18, 2018 10:07 am

Re: Bitcoin Cash fork procedure, and preventing replay attacks

Postby Muleslayer » Wed Nov 14, 2018 3:41 am

I am currently being paid in bitcoin cash. To a wallet on coin base.
What I got from the above conversation is the fork will only affect me if I am mining bitcoin cash.
Correct?
Do I need to sell out of my existing bitcoin cash coins?
P.S. all my miners are in dynamic mode

Who is online

Users browsing this forum: No registered users and 2 guests