Author

Topic: Replay protection ; Can it be done like this? (Read 780 times)

hero member
Activity: 1232
Merit: 738
Mixing reinvented for your privacy | chipmixer.com
November 11, 2017, 06:46:09 PM
#13
wasnt it like :
sending a little btc amount to your big money btc wallet
so that the btc and the btc2x money arent the same amount -
and then you send the overall btc amount to another wallet ?
so the btc2x money wouldnt sent because of not insufficent funds ?

won't work, there is no guarantee that your little amount is not replayed on the other chain
your method was already covered on the other thread this post
that little amount can be replay first then replay the whole thing

I was thinking how about something like mixing coin in your own (single) address?
for e.g. I have an address with 5 unspents: u1, u2, u3, u4, u5, then make these transactions:
on BTC chain: send u1+u2+u3 back to its own address resulting u6btc
on bcc chain: send u1+u4+u5 back to its own address resulting u6bcc

similar transaction but different set, and must be done simultaneously at the same time
that would make whatever unspent on one network cannot be replayed on another chain
this is similar to spending on 2 chain to 2 different addresses
but instead, just one address is used and only half of unspent outputs needed to be spent on each chain
would this work? is there a flaw on my method?
member
Activity: 164
Merit: 19
>> so as soon as you broadcast one transaction on one chain it will instantly get relayed on to the other
bad thing if all forks use same rules for accepting tx. shows that the fork is an attack not an upgrade or anything
newbie
Activity: 7
Merit: 0
wasnt it like :
sending a little btc amount to your big money btc wallet
so that the btc and the btc2x money arent the same amount -
and then you send the overall btc amount to another wallet ?
so the btc2x money wouldnt sent because of not insufficent funds ?
hero member
Activity: 854
Merit: 500
As far as i know, there is no escape from this attacks. I am sure that a lot of people will try this and it will cause a small chaos after the hardfork. This is done on purpose so people eventually get one shot to chose which chain they see as "real bitcoin". It is disrespectful and completely against the whole idea of Bitcoin. It is not up to anyone else to limit my economic decisions.
legendary
Activity: 1498
Merit: 1007
November 08, 2017, 03:21:48 AM
#9
I agree with those who things that Bitcoin is in danger due to hardfork without a reply protection. I don't say never in computer science but it is very unlikely that we can find a solution for these attacks. I don't think it will be the end of Bitcoin, but i am very certain that Bitcoin will have difficult days following the hardfork. I hope time will prove me wrong.


jr. member
Activity: 43
Merit: 1
November 08, 2017, 02:58:02 AM
#8
Would you kindly provide a link to those better options?

See discussion here:
https://bitcointalksearch.org/topic/m.23977271

Also, a sure way (baring reorganizations) is to include in the transaction a tainted coin, a coin that is valid on one chain only. Either because it was already split or it is a freshly mined coin on one of the chains.

Quote
Also would it be possible not to broadcast transaction, but send them directly to certain miners to avoid being replayed then sit and wait till this miner finds a block that will include your transaction.

Do you have a direct link to certain miners? Are you sure they are not going to rebroadcast the transaction?

And always, there is a risk of chain reorganizations.
member
Activity: 392
Merit: 41
This text is irrelevant
November 08, 2017, 02:25:41 AM
#7
3. If during that time you get replayed, go back to step one. You still have access to all of your coins since you own the private key.
It is not a matter of "if". It will undoubtedly happen as long as the transaction is valid on both chains, so as soon as you broadcast one transaction on one chain it will instantly get relayed on to the other.
There are better "replay protections" than yours, just read the forums.

Would you kindly provide a link to those better options?

Also would it be possible not to broadcast transaction, but send them directly to certain miners to avoid being replayed then sit and wait till this miner finds a block that will include your transaction.
Edit: That won't work, because attacker can read blockchain and immidiatley replay transaction... damn.
legendary
Activity: 1386
Merit: 1053
Please do not PM me loan requests!
November 07, 2017, 05:37:52 PM
#6
Quote
It will undoubtedly happen as long as the transaction is valid on both chains, so as soon as you broadcast one transaction on one chain it will instantly get relayed on to the other..
Interesting, and why is that?
All it takes is one single person to replay ALL of the transactions across both networks. So if one person is doing it, it doesn't matter how many times you make transactions, they will be on both chains. And it's more than likely that more than one person will do it, whether for fun or ulterior motives.

I'm betting your idea is a lot more likely to work if you skip step 2. Have two transactions at the same time, one on each chain, each going to a different address, and then repeat until one is confirmed on the main chain and the other is confirmed on the fork.
member
Activity: 96
Merit: 18
November 07, 2017, 04:47:22 PM
#5
Quote
The thing is, there is great incentive to run scripts that automatically replay all network transactions ...

Yes you are right. I guess the miners have incentive to replay transactions.

legendary
Activity: 1806
Merit: 1521
November 07, 2017, 04:14:01 PM
#4
Is it possible to protect against replay protection by the following simple steps:

1. Send your coins on one side of the forked chain into any address that you own.
2. Wait until the transaction is confirmed.
3. If during that time you get replayed, go back to step one. You still have access to all of your coins since you own the private key.
4. If you are not replayed, send the coins on the other chain to a different address.
5. Wait until confirmed... done, your coins are split.

Is that correct?

I believe you are correct. But presumably if the transaction wasn't replayed on the second chain, it will be replayed momentarily or is already in node mempools.

The thing is, there is great incentive to run scripts that automatically replay all network transactions, to give the appearance of significant network activity. The 2X side doesn't want to give the appearance of a dead network, and there is no fee disincentive to discourage replaying transactions. It's a free attack. So I wouldn't expect your plan to be viable most of the time. You might end up wasting a bunch of time and fees.
member
Activity: 96
Merit: 18
November 07, 2017, 03:56:48 PM
#3
Quote
It will undoubtedly happen as long as the transaction is valid on both chains, so as soon as you broadcast one transaction on one chain it will instantly get relayed on to the other..
Interesting, and why is that?
hero member
Activity: 935
Merit: 1002
November 07, 2017, 01:23:33 PM
#2
3. If during that time you get replayed, go back to step one. You still have access to all of your coins since you own the private key.
It is not a matter of "if". It will undoubtedly happen as long as the transaction is valid on both chains, so as soon as you broadcast one transaction on one chain it will instantly get relayed on to the other.
There are better "replay protections" than yours, just read the forums.
member
Activity: 96
Merit: 18
November 07, 2017, 01:02:06 PM
#1
Is it possible to protect against replay protection by the following simple steps:

1. Send your coins on one side of the forked chain into any address that you own.
2. Wait until the transaction is confirmed.
3. If during that time you get replayed, go back to step one. You still have access to all of your coins since you own the private key.
4. If you are not replayed, send the coins on the other chain to a different address.
5. Wait until confirmed... done, your coins are split.

Is that correct?
Jump to: