Reversing Transactions

19 replies 498 views
Posts: 3 · Reputation: 135
#1Dec 26, 2024, 07:04 AM
To make blockchain a bit easier for us humans, we should think about adding an "undo" option for transactions. This undo feature could be activated within 5 blocks of the original transaction. After that, you can't reverse it anymore. For Bitcoin, this means users would have about 50 minutes to trigger the undo. Once the original transaction gets its 6th confirmation, you're out of luck if you didn't get the undo into the 2nd, 3rd, 4th, 5th, or 6th block after the first one.
4 Reply Quote Share
RogueDegenFull Member
Posts: 74 · Reputation: 309
#2Dec 26, 2024, 12:06 PM
Sounds like a useless waste of time and effort.  If I hand you a $10 bill and you walk away, is there an undo for that? What if the person issuing the undo makes a mistake? Should we allow another 5 blocks to undo the undo?
3 Reply Quote Share
coin_sigmaLegendary
Posts: 1275 · Reputation: 5553
#3Dec 26, 2024, 05:28 PM
5 confirmations, then you can undo the transaction? I think that's impossible. I don't think there's any wallet that can do this except for transactions with 0 confirmation. Electrum can cancel the transaction, but the process is by replacing the old transaction to send BTC back to your wallet with a higher TX fee.
2 Reply Quote Share
leo.wolfHero Member
Posts: 540 · Reputation: 2813
#4Dec 27, 2024, 06:24 AM
First clarification is 50minutes doesn’t mean your transaction will be in the 5th block already. Yes the average time to mine a block is ten minutes but that is not constant and it varies, you can still be have one single block mined in whole 50 minutes. Now base on your question, I think undo transaction can lead to double spending which will be a very bad flaw if a blockchain has it, take for example bitcoin Been treated as means for payment and when the payment is done imagine the sender going behind to double spend such transaction what happens to the seller who got double played will they use bitcoin as means of payment again? Even traditional banks don’t release wrong transactions immediately they check to see if it was genuine mistake before they process the reversal. So undo transaction isn’t a good move to me
6 Reply Quote Share
fox100Senior Member
Posts: 165 · Reputation: 1050
#5Dec 27, 2024, 11:19 AM
Just never sign a transaction unless its locktimed for at least 5 blocks in the future. TADA "undo".  Enjoy.
6 Reply Quote Share
im_apeHero Member
Posts: 629 · Reputation: 3824
#6Dec 27, 2024, 12:18 PM
When you read the whitepaper and study Bitcoin more you realize that one of the principles which is the central idea behind Bitcoin was its irreversibility. It is actually addressing an existing problem with previous payment systems (eg. PayPal) where the transactions can be reversed very easily and the problems such a feature creates for its users specifically the merchants (receiving payments). What you are suggesting goes against that principle.
5 Reply Quote Share
c0in23Full Member
Posts: 115 · Reputation: 374
#7Dec 27, 2024, 01:50 PM
50 minutes and an "undo" option? That doesn’t seem like something the community would support. Bitcoin’s whole purpose is to scale and provide fast, irreversible transactions. A 50-minute wait time and the ability to cancel transactions go completely against that purpose. It would make things messy, like following the model of some fiat digital wallets. In our country, one of the wallet providers actually introduced something similar, and while it may work for fiat, it feels out of place for Bitcoin. Some users like it, but we are not fiat, we are bitcoin,, so we don't follow their style.
1 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#8Dec 27, 2024, 03:20 PM
This is not currently possible and probably never will be in the foreseeable future because of the simple reason of once you send a transaction to another address, you no longer have the private keys to spend that sent BTC. So any proposal that implements an "undo" transaction will not work out because then anybody could do chargebacks, and normal people would no longer be able to trust that untrustworthy actors have sent their BTC and won't try to take it back fraudulently.
4 Reply Quote Share
humbleledgerLegendary
Posts: 1027 · Reputation: 6554
#9Dec 27, 2024, 09:38 PM
I like it! OP could even patch one of the open source wallets to do this for him. I won't use it though: it'll just be annoyingly slow. Waiting for 1 confirmation already feels slow when I order something. Scammers will love this feature!
1 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#10Dec 28, 2024, 01:38 AM
As usual, i see you make unique suggestion/idea on technical board. I can't wait coffee shop require 6 (5 + 1) confirmation and exchange require 11 (5 + 6) confirmation, once your idea implemented on Bitcoin network. Jokes aside, people already can "undo" or "cancel" their unconfirmed transaction thanks to existence of RBF and full-RBF. They just need to use wallet which support such feature, such as Electrum.
1 Reply Quote Share
real_guruFull Member
Posts: 120 · Reputation: 363
#11Dec 28, 2024, 03:26 AM
Don't you think that if this is implemented in the bitcoin network, it will give some people the room to malicious undo transactions which can pave way for double spending and hence create confusion in the network. You are trying to destroy one of the unique attributes of bitcoin as I learnt, i.e irreversibility. This feature makes bitcoin fit for ai and machine integration in the future. Edit: Just noticing that pooya87 has said similar thing above.
3 Reply Quote Share
BasedGasHero Member
Posts: 460 · Reputation: 2335
#12Dec 28, 2024, 05:32 AM
You can undo the TX with RBF, the difference is, it's possible only with zero confirmations. Adding 5 blocks doesn't solve the problem at all but just elongate the waiting time period for confirmation. Let's see if user can undo TX on or before 5 confirmations then it's obvious that people will accept only TX with 6 or more confirmations. If you don't want to make mistake then don't do mistakes just as simple as that.
3 Reply Quote Share
real_guruFull Member
Posts: 120 · Reputation: 363
#13Dec 30, 2024, 08:54 AM
My idea of RBF is when your transaction is unconfirmed after a long time of being initiated, maybe miners dropped it because of low transaction fee, you can initiate another transaction with a higher fee to replace the former. If this happens, it means the later transaction is still going to be broadcasted in the network. How then do we replace the former and ensure that the later is also not processed in the network. Sorry if my question appears amateur. Last week I read about RBF (Replace by Fee) and CPFP (Child Pay for Parent).
0 Reply Quote Share
humbleledgerLegendary
Posts: 1027 · Reputation: 6554
#14Dec 30, 2024, 01:24 PM
Even Protonmail has an "Undo" option now after sending. You can't undo email to external providers, so all this means is they've added an extra time delay before really sending the email. More and more services are doing that, and all it does is make email slower. Your wallet could add a delay before broadcasting, but that's just moving the "you should check it"-part and makes your transaction slower.
2 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#15Dec 30, 2024, 06:10 PM
If you want to ensure both former (1st) and later (2nd) transaction never confirmed, you justneed to create 3rd transaction using RBF or full-RBF feature. Some people already complain their transaction isn't confirmed fast enough, so i doubt wallet provider would do that. IMO it's more likely wallet provider either add more warning or more detailed transaction preview.
4 Reply Quote Share
humbleledgerLegendary
Posts: 1027 · Reputation: 6554
#16Dec 30, 2024, 10:43 PM
Adding more warnings will just make people click through it without reading. Any warning that you see many times, gets ignored. I like the Linux CLI default of never asking for confirmation. If you're not sure about something, don't tell your computer to do it. Bitcoin Core lets me wait about 3 seconds before I can click the final button, and that feels kinda slow There's a bigger problem with this: "if you design something to be foolproof, the universe will create a a bigger fool" (I don't know who originally came up with this quote). More disclaimers and warnings just lead to dumber people who don't think, because they expect to be protected everywhere. I'd much rather see people think before they do something.
4 Reply Quote Share
real_guruFull Member
Posts: 120 · Reputation: 363
#17Dec 31, 2024, 01:15 AM
Thanks, I'll read about full-RBF feature, else I will be tempted to ask how the 3rd transaction will not enter the network. I just imagined a world without noobs where everyone is an expert. There's no room for errors because experts will likely behave like machines. Even experts atimes makes errors or dramatically changes their mind. A 3 second delay could be infinitesimal.
3 Reply Quote Share
humbleledgerLegendary
Posts: 1027 · Reputation: 6554
#18Dec 31, 2024, 04:29 AM
It's not about not making mistakes, it's about thinking before doing something. If you need more than 3 seconds, think for more than 3 seconds. If you can't do that, no amount of popups is going to stop you.
1 Reply Quote Share
real_guruFull Member
Posts: 120 · Reputation: 363
#19Dec 31, 2024, 06:12 AM
Ok, I understand the logic. You think before you act, and not wanting a wait time to reconsider your decision after you have acted.
5 Reply Quote Share
davealphaSenior Member
Posts: 257 · Reputation: 975
#20Dec 31, 2024, 11:13 AM
Bitcoin is not for human errors, there was no place for it when it was created but later some things changed and at some point, it's forgiving to human errors. For example, there was no Replace By Fee and now, with Replace By Fee option, you can increase the transaction fee in case it doesn't get confirmed and you can also reverse the transaction before it gets confirmed in the next block. i.e. if you aren't unlucky and your transaction doesn't get confirmed immediately, you have some time to reverse transaction by paying a little higher fee. What you describe is the problem that Bitcoin tried to solve (double spend). So, that can't be implemented in Bitcoin. It doesn't work like that, it doesn't count minutes, it counts confirmation and also by following your idea, it will take lots of time to get Bitcoin transactions confirmed but majority of people want to get it confirmed ASAP, so many businesses that offer instant deposit, won't be able to show you deposit for at least 50 minutes.
3 Reply Quote Share

Related topics