Bitcoin Forum
May 03, 2024, 06:43:52 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Make transactions with unusually high miners fees non-standard  (Read 885 times)
drazvan (OP)
Full Member
***
Offline Offline

Activity: 191
Merit: 100



View Profile WWW
November 13, 2013, 12:23:40 AM
 #1

I'm not sure if this has been proposed before, but I think it would be a good idea to make transactions with unusually high transaction fees attached to them non-standard.

Unless I am missing some legitimate use cases for very high transaction fees, they are almost always the result of a mistake or malware (like in the case of hardware wallets that do not verify the transaction chain but do verify the value of the output - those are vulnerable to a denial of service type of attack by lying about the value of the inputs and making them pay a lot of money in fees).

Are there any legitimate reasons for someone to pay 1 BTC (or even 0.1 BTC at today's exchange rates) for a regular transaction? 0.1 BTC would mean a transaction size of 1MB (at 0.0001/kB).
1714761832
Hero Member
*
Offline Offline

Posts: 1714761832

View Profile Personal Message (Offline)

Ignore
1714761832
Reply with quote  #2

1714761832
Report to moderator
1714761832
Hero Member
*
Offline Offline

Posts: 1714761832

View Profile Personal Message (Offline)

Ignore
1714761832
Reply with quote  #2

1714761832
Report to moderator
The network tries to produce one block per 10 minutes. It does this by automatically adjusting how difficult it is to produce blocks.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714761832
Hero Member
*
Offline Offline

Posts: 1714761832

View Profile Personal Message (Offline)

Ignore
1714761832
Reply with quote  #2

1714761832
Report to moderator
1714761832
Hero Member
*
Offline Offline

Posts: 1714761832

View Profile Personal Message (Offline)

Ignore
1714761832
Reply with quote  #2

1714761832
Report to moderator
1714761832
Hero Member
*
Offline Offline

Posts: 1714761832

View Profile Personal Message (Offline)

Ignore
1714761832
Reply with quote  #2

1714761832
Report to moderator
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4158
Merit: 8382



View Profile WWW
November 13, 2013, 12:37:08 AM
Last edit: November 13, 2013, 12:49:43 AM by gmaxwell
 #2

I'm not sure if this has been proposed before, but I think it would be a good idea to make transactions with unusually high transaction fees attached to them non-standard.
Unless I am missing some legitimate use cases for very high transaction fees, they are almost always the result of a mistake or malware
Mistakes can be avoided totally locally, and its preferable to do things locally because it doesn't constrain what other people can do.

Malware doesn't care about non-standard. For the malware author to profit from tricking a dumb client to pay away their coins to fees they'll need to privately sell the high fee transaction to a miner, thus bypassing the standardness rules.
jl2012
Legendary
*
Offline Offline

Activity: 1792
Merit: 1093


View Profile
November 13, 2013, 05:49:15 AM
 #3

Mistakes can be avoided totally locally,

Initially I thought the OP suggestion was bad, but now I think it is good with your comment. This is exactly the reason for us to make it non-standard. Since bitcoind won't broadcast non-standard transactions, we could avoid it locally by making them non-standard

its preferable to do things locally because it doesn't constrain what other people can do.

Agreed. We may have separate non-standard criteria: one for broadcasting, one for relaying, one for mining. Most of the time the rules are the same, but we may prohibit the broadcast of some transactions, such as having >0.1BTC miners fee. The rest of the network would still relay and mine these transactions

Donation address: 374iXxS4BuqFHsEwwxUuH3nvJ69Y7Hqur3 (Bitcoin ONLY)
LRDGENPLYrcTRssGoZrsCT1hngaH3BVkM4 (LTC)
PGP: D3CC 1772 8600 5BB8 FF67 3294 C524 2A1A B393 6517
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4158
Merit: 8382



View Profile WWW
November 13, 2013, 06:31:29 AM
 #4

Initially I thought the OP suggestion was bad, but now I think it is good with your comment. This is exactly the reason for us to make it non-standard. Since bitcoind won't broadcast non-standard transactions, we could avoid it locally by making them non-standard
Do you often kill flys with hammers?  Bitcoin git was changed so that sendrawtransaction wouldn't emit txn with insane fees without an explicit override flag more than a month ago. This requires nothing about changing relay rules and avoids adversely impacting other parties.
jl2012
Legendary
*
Offline Offline

Activity: 1792
Merit: 1093


View Profile
November 13, 2013, 06:37:30 AM
 #5

Initially I thought the OP suggestion was bad, but now I think it is good with your comment. This is exactly the reason for us to make it non-standard. Since bitcoind won't broadcast non-standard transactions, we could avoid it locally by making them non-standard
Do you often kill flys with hammers?  Bitcoin git was changed so that sendrawtransaction wouldn't emit txn with insane fees without an explicit override flag more than a month ago. This requires nothing about changing relay rules and avoids adversely impacting other parties.

Really? I don't notice there is a change but I think this is exactly what I'm proposing

Donation address: 374iXxS4BuqFHsEwwxUuH3nvJ69Y7Hqur3 (Bitcoin ONLY)
LRDGENPLYrcTRssGoZrsCT1hngaH3BVkM4 (LTC)
PGP: D3CC 1772 8600 5BB8 FF67 3294 C524 2A1A B393 6517
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4158
Merit: 8382



View Profile WWW
November 13, 2013, 07:06:42 AM
 #6

https://github.com/bitcoin/bitcoin/pull/2949
jl2012
Legendary
*
Offline Offline

Activity: 1792
Merit: 1093


View Profile
November 13, 2013, 07:24:06 AM
 #7


It might be even better to allow users to define the value of insane fee. IMO 1BTC is too high.

Donation address: 374iXxS4BuqFHsEwwxUuH3nvJ69Y7Hqur3 (Bitcoin ONLY)
LRDGENPLYrcTRssGoZrsCT1hngaH3BVkM4 (LTC)
PGP: D3CC 1772 8600 5BB8 FF67 3294 C524 2A1A B393 6517
Bitalo_Maciej
Member
**
Offline Offline

Activity: 80
Merit: 10


Lead developer


View Profile WWW
November 13, 2013, 08:25:50 AM
 #8

I second that this feature is useful. I've once mistakely sent $1000 worth of fees by using create/send rawtransaction. I was fortunate though, because it was mined by ASICMiner, who sent it back to me, which I'm very grateful for. And I've heard about at least two similar cases in the past. This feature doesn't hurt anyone, while still protecting from dumb mistakes.

Web wallets get hacked all the time. Computer wallets get hacked all the time as well.
Solution? Hybrid P2SH wallets - safer than your online and offline wallets combined. Check it out, store and trade your Bitcoins with ease of mind!
Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526
Merit: 1129


View Profile
November 13, 2013, 10:34:59 AM
 #9

Unit testing people!!

Anyway, all-fee transactions have a number of uses that we will want to explore in future. Making them non-standard would significantly hurt our ability to innovate. People who are working directly with money at the API level need testing to avoid mistakes like this.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4615



View Profile
November 14, 2013, 02:10:26 AM
 #10

Unit testing people!!

Anyway, all-fee transactions have a number of uses that we will want to explore in future. Making them non-standard would significantly hurt our ability to innovate. People who are working directly with money at the API level need testing to avoid mistakes like this.

I agree completely, however sanity checks aren't a bad thing when interfacing with human beings.  Even a configurable setting in bitcoin.conf that allows a user to set a MAX_FEE would be useful.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!