45
votes
Accepted
How does Bitcoin Cash implement replay protection?
Bitcoin Cash (aka Bitcoin ABC aka UAHF) provides two methods of replay protection, both of which are opt in. If you do not create transactions which use these features, then your transactions are ...
15
votes
What would happen if you send Bitcoin (BTC) to a Bitcoin Cash (BCH, aka BCC) address?
As of what happens if someone send BTC from a BTC wallet to BCC wallet address, the transactions go through.
But you can only see that transaction in the Bitcoin Blockchain rather than Bitcoin cash ...
12
votes
Accepted
What is transaction replay and replay protection?
What is a transaction replay
In the context of forks, transaction replay is when a transaction is valid on both sides of the fork. So a transaction can be played (i.e. broadcast) on both chains after ...
8
votes
What would happen if you send Bitcoin (BTC) to a Bitcoin Cash (BCH, aka BCC) address?
There is nothing which distinguishes a BCC address from a BTC address; they are both the same format and refer the the same keys, thus a BCC address is a BTC address and vice versa. This means that if ...
7
votes
Accepted
How does Bitcoin Gold implement replay protection?
I don't believe any replay protection has yet been implemented, they still have an issue open for it on the BitcoinGold repository here:
https://github.com/BTCGPU/BTCGPU/issues/51
I haven't dug into ...
6
votes
What would happen if you send Bitcoin (BTC) to a Bitcoin Cash (BCH, aka BCC) address?
As long as both chains adhere to the same address format, which I believe they do for now, there is no such thing as a BTC or a BCC address -- both are valid on both chains. What enables you to split ...
6
votes
Accepted
Can I do a replay attack to spend my testnet bitcoin on the mainnet?
The answer is no, you can't, because the two chains don't share a common history.
Internally, transactions don't spend "from" an address. Instead, they refer to a specific output created by an ...
6
votes
What is the best way to prevent replay attacks in the event of a bitcoin hard fork?
One solution we brainstormed, was using some coins that were only valid on one chain (for example newly mined coins) and adding 1 satoshi of "taint" to all generated transactions. This would work but ...
5
votes
What should I do if my friend runs a Bitcoin business but doesn't understand how it works?
He should listen to his engineer. I think that's just about it.
5
votes
If I reuse the same address can a previously used transaction be reused?
Can somebody take the transaction tx0 I signed and publish it in order to spend the new coins with the old transaction?
No.
Firstly, the transaction inputs are already known to have been used. Any ...
5
votes
Accepted
how does bitcoin solve the same chain replay attack?
In all cases what you are describing is a double-spend. Bitcoin uses a UTXO model (not an account based model) which means that there is a set of coins also known as the UTXO set or Unspent ...
4
votes
after hard fork won't every new transaction go on both chains?
Let's diagram an example hard fork block chain:
A <-- B <-- C <-- D (current consensus rules chain, "original chain")
^---- C' <-- D' (new consensus rules chain, "new ...
4
votes
Accepted
after hard fork won't every new transaction go on both chains?
This actually happened on Ethereum when they had a hard fork. If a transaction is valid on both chains (spends outputs from before the fork), and gets propagated to both chains, then yes, there is no ...
4
votes
Accepted
Does BIP148 (UASF) offer any replay attack protection?
No. BIP 148 is a soft fork as the BIP 148 chain is valid to all non-BIP148 nodes and can wipe out the non-BIP 148 chain if it were to be longer than it. Because it is a soft fork, there cannot be any ...
4
votes
Accepted
What prevents one from replaying a BCC transaction by nulling the SIGHASH_FORKID bit?
First of all the sighashType field with (or without) any bit fields is used in source data while for signing. The signature does not sign itself, but it signs sighashType. So, changing sighashType ...
4
votes
Accepted
If Btc2x doesn't have replay protection does that mean all transactions can be automatically replayed in btc2x?
Since 2x has decided not to implement replay protection, transactions will be indeed compatible to both chains. If a transactions is simply broadcast to the other chain, it will enter the mempools ...
4
votes
What prevents a malicious user creating a new transaction using signatures of an old mined transaction if the inputs have the exact same balance?
The transaction ID and output index of the second 1 BTC that was sent to A's address will be different from the first 1 BTC that was sent there. Since transactions refer to inputs by their txid and ...
3
votes
How does the Segwit2x fork implement replay protection?
segwit2x temporarily had an opt-in replay protection, but chose to remove it.
it is intentional, as part of their strategy to make only one fork survive.
3
votes
Accepted
Limit tx to SegWit1x or 2x chain
All transactions would be replayable on both chains even after one was confirmed in a block on one chain, because since both chains start with the same UTXO set, the transactions spending those UTXOs ...
3
votes
How do we "exchange coins on one blockchain for those on the other"?
There are two ways to avoid transaction replay (besides something being built into the fork to begin with). You can taint your coins or double spend.
Tainting your coins requires you to get access to ...
3
votes
How does Bitcoin prevent replay-attacks?
A transaction contains a reference to the output that it is spending from. So all you would be doing is just rebroadcasting the same transaction over and over again. Since transactions are identified ...
3
votes
Accepted
What prevents a malicious user creating a new transaction using signatures of an old mined transaction if the inputs have the exact same balance?
Every full node keeps track of all unspent transaction outputs (UTXO). UTXO are identified via their outpoint txid:vout, where txid is the transaction identifier of the transaction that created it, ...
2
votes
What is the best way to prevent replay attacks in the event of a bitcoin hard fork?
A)
Currently, Unlimited retains the 100K MAX_STANDARD_TX_SIZE policy limit https://github.com/BitcoinUnlimited/BitcoinUnlimited/blob/release/src/policy/policy.h#L23 so it would be difficult to ...
2
votes
What is the best way to prevent replay attacks in the event of a bitcoin hard fork?
Here is the github ticket where we've been thinking about this problem for Zcash. Compared to Bitcoin, Zcash has the luxury of a smaller installed base and a longer runway before any probable ...
2
votes
Accepted
How does the transaction signature prevent transaction duplication?
When Alice creates a transaction of 1 BTC to Bob, she is giving him a specific bitcoin, by using an unspent transaction output that she has the key to. The blockchain tracks the flow of coins from ...
2
votes
Accepted
Why do hard forks need special rules to allow replay protection?
It's true that what you propose would effectively split the coins and prevent further replays, if it succeeded.
However, it suffers the following problems:
Every person who wants to split their ...
2
votes
Why do hard forks need special rules to allow replay protection?
The LegacyCoin network and NewCoin network are not distinctly separate from each other. Unless network magic and ports are changed, LegacyCoin nodes will be able to connect to NewCoin nodes and likely ...
2
votes
Accepted
Is there a time limit how long a signed transaction is valid?
Bitcoin is not an account based currency like Ethereum, which track the balance in addresses. Instead it is a UTXO based currency. In a UTXO-based currency, funds are tracked in portions called "...
2
votes
Accepted
Is it possible to copy transactions between Bitcoin's forks blockchain?
Yes, some people call this a 'Replay Attack'. But it's not literally an attack, but the desired outcome. If a fork don't want this to happen it can change the rules to prevent it.
You can also avoid ...
2
votes
Does BitcoinABC implement replay protection for the upcoming November 15th hardfork
Yes, there's OP_CHECKDATASIG in ABC's code and OP_MUL in SV's code.
There's already a coin splitting tool.
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
replay-attack × 33blockchain-fork × 13
bitcoin-cash × 6
transactions × 4
utxo × 4
segwit2x × 4
bitcoin-gold × 3
doublespend × 2
transaction-input × 2
cross-chain-recovery × 2
bip148-uasf × 2
security × 1
segregated-witness × 1
bitcoin-core-development × 1
signature × 1
testnet × 1
transaction-verification × 1
ethereum × 1
coinbase-transaction × 1
address-reuse × 1
p2pkh × 1
utxo-set × 1
activation-mechanism × 1
canonical-question × 1
coinomi × 1