Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: DaveF on June 27, 2021, 10:46:58 PM



Title: Who is paying very very large fees when not needed and why?
Post by: DaveF on June 27, 2021, 10:46:58 PM
I have been seeing more and more very large fees paid for transactions at times well over 20x what is needed to get into the next block.
Is this just badly broken software doing fee estimation or something else?

Looking at: https://btc.com/000000000000000000076e53c720e850cc46fcbc42a65f7aa0917755daec3c22
We have 2 transactions at over 2k sat/vbyte
1 at 800+
1 at 500+
and dozens at 200 to 300+
You could have gotten into the block @ 30 sat
If you wanted to be SURE, then do 60 sat.

WTF?

This seems to be happening a lot lately, either I am just paying more attention to it and it has always been happening or???

-Dave


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Bitcoin_Arena on June 27, 2021, 10:58:47 PM
1. Perhaps someone who doesn't know what the fee rate of sats/byte is?
So. when they see a fee rate suggestion of 2000 sats/byte they have no freakin Idea what it is or how low the optimal transaction fee rate is right now.

2. With the exception of very few transactions, Most of the high fee rate transactions seem to be spend huge amounts of BTC. So the people transacting don't care about such fee rates as they still seem to small as compared to what they are spending.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Quickseller on June 27, 2021, 11:54:54 PM
I have been seeing more and more very large fees paid for transactions at times well over 20x what is needed to get into the next block.
Is this just badly broken software doing fee estimation or something else?

Looking at: https://btc.com/000000000000000000076e53c720e850cc46fcbc42a65f7aa0917755daec3c22
We have 2 transactions at over 2k sat/vbyte
I think cf6ddaf4318de8ffeb8f917c2f877eeffe5b2eb80aaa9763b72148ba16c1ab38 (https://btc.com/cf6ddaf4318de8ffeb8f917c2f877eeffe5b2eb80aaa9763b72148ba16c1ab38) is either Binance or a customer of Binance. IMO 485d09130be0ce79d825e118dc6c26463d934e278eb782114ae5e11463d0269c (https://btc.com/485d09130be0ce79d825e118dc6c26463d934e278eb782114ae5e11463d0269c) is probably also Binance, but the link to other transactions involving the sending address is less conclusive.

Poloniex paid (https://btc.com/333aa5eb8296cef811496a96c8d68930d8c081b7bf2b8e995d1191ade78bb92d) 350+ sat/vByte in that block.

It seems that Poloniex is behind the 300+ sat/vByte transactions. I think Binance is probably behind the 800 sat/vByte and higher transactions in the block you cite. My guess is they have a misconfigured wallet that creates transactions. The majority of their withdrawals are handled via automation, and as long as their wallet balance matches what their records say it should be, there probably isnt anyone who is actually looking at the transactions they process unless someone complains about something.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BitMaxz on June 28, 2021, 02:45:46 AM
I think it's not misconfigured they intentionally paying a large transaction fee to help and rewarded miners. I just heard in a tweet before about that I don't know which exchanges said that but my guess it's from CEO Binance tweet to attract miners to mine on their pool.

About that block, the 2nd and 3rd transaction that pays 2,283 Sats/vByte transacted almost 5-6 million in value so paying with that fee is fair enough it's around 162.99
in USD. So my guess it was being made from a Binance customer that doesn't know how to calculate the transaction fee and doesn't want their transaction to stuck on the network.

Take note Binance is now operating a pool so they have control over the transaction which one will include on the block so they look for transactions with higher fees to include them in the blocks they mined(To earn more rewards).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: pooya87 on June 28, 2021, 02:49:33 AM
I believe most of the times this is poor design combined with the sender not wanting to have their transaction stuck. For example a service making payments wanting to avoid the headache of answering the customer why their money "hasn't arrived yet" that also has a terrible backend with a poor code that suggests much higher fees than just paying a slightly higher one.

Sometimes they (both some services and some phone wallets I've seen) use malicious third party fee estimation services such as bitcoinfees.earn.com that intentionally report a ridiculously higher fee.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: nc50lc on June 28, 2021, 03:27:19 AM
WTF?
I noticed that their absolute fee are all too "exact", suggests that they've set the total fee when creating the txns, not the fee rate.
Sender(s) may be unaware that the prioritization is based from the fee rate or doesn't care about the extra fee and most likely using a client that can input/edit absolute fee other than the fee rate.

For example, those first three with 2,291sat/vB (x2) and 822.0sat/vB have a 0.005BTC fee, and some of the rest with extremely high fee looks the same but lower (0.002BTC absolute fee).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: HCP on June 28, 2021, 04:54:02 AM
Yeah, it looks like some preconfigured system that is setup using absolute fees as opposed to calculating fee rates. Not sure why you would do that, but there you go... As someone mentioned above, when you're transacting millions, nickel and diming on fees isn't really a concern. What's $150-200 when you're shifting $5mil worth of coins? :P

Aside from these cases of absolute fees being used by what appears to be commercial entities... another common scenario I have noted for ridiculously high fees, is malware/theft. The thieves tend to send with very high fees to (I assume) try and prevent any chance of a double spend and, of course, guarantee next block inclusion of their transaction.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Quickseller on June 28, 2021, 05:12:20 AM
As someone mentioned above, when you're transacting millions, nickel and diming on fees isn't really a concern. What's $150-200 when you're shifting $5mil worth of coins? :P
These are exchanges that are most likely processing withdrawal transactions. This is not the exchange's actual money that is being moved, it is money they are hold for and on behalf of their customers, and will have to make up for high transaction fees in the form of trading fees (or other fees) paid by their customers.


If they are paying $200 when they could have paid $2 10,000 times, all of a sudden, they have paid almost $2 million extra worth of transaction fees.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: franky1 on June 28, 2021, 05:27:12 AM
I have been seeing more and more very large fees paid for transactions at times well over 20x what is needed to get into the next block.
Is this just badly broken software doing fee estimation or something else?

Looking at: https://btc.com/000000000000000000076e53c720e850cc46fcbc42a65f7aa0917755daec3c22
We have 2 transactions at over 2k sat/vbyte

if you look at the first few transactions
bc1qmex.. bc1qmex bc1qmex

its the bitmex exchange
they seems to be shuffling funds around in their coldwallets

strangely they pay 0.005btc for 190 and 160btc
0.005 for 1.4btc
0.002 for 24btc



Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on June 28, 2021, 10:12:28 AM
I think it's not misconfigured they intentionally paying a large transaction fee to help and rewarded miners. I just heard in a tweet before about that I don't know which exchanges said that but my guess it's from CEO Binance tweet to attract miners to mine on their pool.
This doesn't really make sense. They aren't holding back their own transactions to only be mined by their own mining pool. Doing so would introduce huge delays as their transaction would only be confirmed when their mining pool found a block, which could take hours. They are broadcasting their transactions normally, meaning they are not incentivizing miners on their pool specifically.

Take note Binance is now operating a pool so they have control over the transaction which one will include on the block so they look for transactions with higher fees to include them in the blocks they mined(To earn more rewards).
All pools do this, with the exception of mining their own transactions with a lower fee. Again, this does not explain these high fee transactions.



Exchanges shoulder most of the blame for this, but they also start a vicious circle. Lots of people use automatic fee suggestions without paying attention or maybe not understanding what an appropriate fee is. These algorithms see some transactions paying 100 sats/vbyte and think they need to match that, so they do, and people blindly accept it. This starts a chain reaction of people paying high fees, which just makes it worse and worse until we reach a weekend and things settle down a bit. If everyone paid attention to what they were paying, everyone could constantly save about 90% of their fees.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: DaveF on June 28, 2021, 11:25:48 AM
WTF?
I noticed that their absolute fee are all too "exact", suggests that they've set the total fee when creating the txns, not the fee rate.
Sender(s) may be unaware that the prioritization is based from the fee rate or doesn't care about the extra fee and most likely using a client that can input/edit absolute fee other than the fee rate.

For example, those first three with 2,291sat/vB (x2) and 822.0sat/vB have a 0.005BTC fee, and some of the rest with extremely high fee looks the same but lower (0.002BTC absolute fee).

Did not think of that for some reason.
It's been a while since I did any real trading on exchanges and while I do remember some of them charging high fees I also remember a lot of them not actually paying them. It was just another profit center...

You would think that they would stiff be charging .005 and paying .000005 and pocketing the difference. That's just good business.


As someone mentioned above, when you're transacting millions, nickel and diming on fees isn't really a concern. What's $150-200 when you're shifting $5mil worth of coins? :P
These are exchanges that are most likely processing withdrawal transactions. This is not the exchange's actual money that is being moved, it is money they are hold for and on behalf of their customers, and will have to make up for high transaction fees in the form of trading fees (or other fees) paid by their customers.


If they are paying $200 when they could have paid $2 10,000 times, all of a sudden, they have paid almost $2 million extra worth of transaction fees.

And if you have outside investors that is when bad things happen at times to management....

Yeah, it looks like some preconfigured system that is setup using absolute fees as opposed to calculating fee rates. Not sure why you would do that, but there you go...

Aside from poor preconfigured system, it's also possible it's set up by intern or worker who're underpaid.


Or they were undertrained. Or overworked.

Well thanks everyone I guess that answerers what I asked.

-Dave



Title: Re: Who is paying very very large fees when not needed and why?
Post by: Kakmakr on July 01, 2021, 04:48:44 PM
I can tell you from first hand experience that "mistakes" does happen, because I have paid huge fees, without even noticing. I have swept a Paper wallet with 1 bitcoin once and paid $1000 in fees. The fee estimation on some of these wallets are crazy and you have to double check your fees (convert it to Fiat currency value) to realize how high it is.

Things like this happens when you are in a hurry and you just accept the default fee settings and when you check your balance, you realize that $1000+ was charged in damn fees.  >:(


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BlackHatCoiner on July 02, 2021, 12:11:51 PM
I have swept a Paper wallet with 1 bitcoin once and paid $1000 in fees.
Cheers to the miner who confirmed it.  :P

Exchanges shoulder most of the blame for this, but they also start a vicious circle. Lots of people use automatic fee suggestions without paying attention or maybe not understanding what an appropriate fee is. These algorithms see some transactions paying 100 sats/vbyte and think they need to match that, so they do, and people blindly accept it. This starts a chain reaction of people paying high fees, which just makes it worse and worse until we reach a weekend and things settle down a bit. If everyone paid attention to what they were paying, everyone could constantly save about 90% of their fees.
So whose fault is it? Exchanges? People who blindly follow them? The developers who coded algorithms of falsely fee estimation? There are even some wallets that don't show you what's the total amount of coins you'll pay in mining fees. They only reveal you the sat per byte which won't assist the average user. 

Then you have another problem to face; most of the exchanges haven't adopted SegWit native yet, which makes their users not doing it too.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: d5000 on July 02, 2021, 11:01:33 PM
another common scenario I have noted for ridiculously high fees, is malware/theft. The thieves tend to send with very high fees to (I assume) try and prevent any chance of a double spend and, of course, guarantee next block inclusion of their transaction.
Some weeks ago I listened to an interview with J. Schnelli (core dev/maintainer) and he suspected this may be an issue. It seems that some Chinese mining pools like Bitmain (not only the infamous Marathon pool) already use black lists for some addresses they relate to criminal activity, reacting to requests from the government, and thus some criminals broadcast their transactions with ridiculously high fees to be included within the next block not mined by one of the "blacklisting" pools.

It may be more an effect of these people "panicking" than a real necessity of them, because blacklisting pools are still not the overwhelming majority, so with a high, but "normal" fee even a blacklisted entity should get confirmed their transactions in a few blocks.

This may however not apply to the transactions the OP linked to.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: pooya87 on July 03, 2021, 03:26:47 AM
and thus some criminals broadcast their transactions with ridiculously high fees to be included within the next block not mined by one of the "blacklisting" pools.
I'm not sure what rate you have in mind when you say "ridiculously high fees" but this makes no sense!
1) If they pay a high fee (like 1000 sat/vbyte for a 10 sat/vbyte priority) it won't affect the decision of the mining pools. If any of them is ignoring the transaction they will continue ignoring it and the rest will see it as a high paying tx no matter where it is coming from. In this case if they pay the high priority fee (11 sat/vbyte) it will have the same exact effect!
2) If they pay a very high fee (like 0.1-1BTC) then it may start affecting the decision of the mining pools, for example the one that is ignoring the transaction will have enough incentive to change their mind.

Apart from a handful of transactions in second group (which were never linked to anything criminal AFAIK and were most probably mistakes) the rest are in group 1.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: hugeblack on July 03, 2021, 09:45:01 AM
The reason is that many people use a multi-currency wallet to store as many cryptocurrencies as possible, and those wallets are poor in estimating fees, and many users focus on the speed of transfer rather than paying lower fees because they mostly use Bitcoin for speculation.

These wallets are evolving in terms of accepting more coins and not in making fees looser because it is not what users want.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 03, 2021, 10:36:43 AM
So whose fault is it? Exchanges? People who blindly follow them? The developers who coded algorithms of falsely fee estimation?
All of the above. Exchanges tend to start the process since they just pay the same ridiculous flat fee all the time, but other people not paying attention is what perpetuates the cycle.

There are even some wallets that don't show you what's the total amount of coins you'll pay in mining fees. They only reveal you the sat per byte which won't assist the average user.
I actually don't think this is necessarily a bad thing. Lots of users incorrectly think of fees as a total amount, instead of a rate. Saying "I paid 10,000 sats in fees" is a meaningless statement without knowledge of the transaction. People paying 10,000 sats for every transaction, think that is a "fast fee" will result in some being vastly underpaid and others being vastly overpaid.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: d5000 on July 03, 2021, 03:14:27 PM
1) If they pay a high fee (like 1000 sat/vbyte for a 10 sat/vbyte priority) it won't affect the decision of the mining pools. If any of them is ignoring the transaction they will continue ignoring it and the rest will see it as a high paying tx no matter where it is coming from. In this case if they pay the high priority fee (11 sat/vbyte) it will have the same exact effect!
My explanation would be: If we really had the situation that 95% of the mining pools (better: the mining pools with 95% of the hashrate) were censoring transactions coming from blacklisted addresses, then it becomes crucial for the blacklisted entities to get included into any possible block mined by the remaining 5%. They cannot know how the evolution of the fee will be until the next block found by the few non-blacklisting pools, so it would be rational to choose a higher fee than the current "high priority fee", perhaps as high as the highest "threshold" in the last 24 hours or so, i.e. the block whose minimal fee for inclusion in the block was highest.

But as I wrote in the second paragraph, I don't believe we have this situation currently, blacklisting pools may make up perhaps 50-60% of the hashrate. Instead it could be a mix of high margins (of the criminal activity) and a sense of panic/urgence.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 03, 2021, 04:22:32 PM
But as I wrote in the second paragraph, I don't believe we have this situation currently, blacklisting pools may make up perhaps 50-60% of the hashrate. Instead it could be a mix of high margins (of the criminal activity) and a sense of panic/urgence.
As far as I am aware, blacklisting pools make up a much smaller percentage of the hashrate than that. And even if we reached the point of 95% as you suggest, then the logical option for such blacklisted users is to simply enable RBF and broadcast at a fee within 1 vMB of the tip. If they don't get confirmed for several blocks and the fees change markedly, they can bump their fee with RBF. There is no need for them to be paying ridiculously high fees.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: hosseinimr93 on July 03, 2021, 05:04:33 PM
And even if we reached the point of 95% as you suggest, then the logical option for such blacklisted users is to simply enable RBF and broadcast at a fee within 1 vMB of the tip.
If blacklisting pools own 95% of the total hashrate, they can simply reject the blocks mined by the 5% non-blacklisting pools too.

Let's say my transaction is rejected by blacklisting pools and it's included by a non-blacklisting pool.
Most probably, the 95% blacklisting pools won't add any block to the chain including my transaction. We will have a hard fork, then? Or maybe even non-blacklisting pools will join the blacklisting pools and will add the new blocks to the longer chain?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 03, 2021, 06:08:57 PM
If blacklisting pools own 95% of the total hashrate, they can simply reject the blocks mined by the 5% non-blacklisting pools too.
Also very true. We discussed this before when MARA pool were still mining their nonsense "OFAC compliant" blocks, although rejecting other blocks is a step above refusing to mine certain transactions.

We will have a hard fork, then? Or maybe even non-blacklisting pools will join the blacklisting pools and will add the new blocks to the longer chain?
It depends, I think, on why the transactions are being blacklisted and the percentage of hash power which is doing the blacklisting. 51% blacklisting because of government rules? Then I would suspect a chain split. 95% blacklisting? The remaining 5% will almost certainly fall in line, since the minority chain they are mining will rapidly lose value, and with it, their incentive to keep mining it. However, the day when the network starts unanimously deciding to blacklist certain transactions permanently, is the day bitcoin is no longer a peer to peer currency without any trusted third parties. Let's hope it never comes to that.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: d5000 on July 03, 2021, 08:57:51 PM
As far as I am aware, blacklisting pools make up a much smaller percentage of the hashrate than that. [50-60%]
As far as I remember, Schnelli confirmed blacklisting only for Bitmain pools, which make up ~20% of the current hashrate, but said it was due to requests of the government. So it may apply to all China-based pools, thus my 50-60% estimation. This percentage may however have declined due to the miner flight out of China (after all, chinese mining farms tend to use a chinese pool, too, or to be directly controlled by Bitmain etc.).

And even if we reached the point of 95% as you suggest, then the logical option for such blacklisted users is to simply enable RBF and broadcast at a fee within 1 vMB of the tip.
If they have the time and tranquility to stay rational. They may be on a hurry, and in the case of bigger thefts, maybe not having even reliable (and safe/private!) Internet connection because they're hiding somewhere. Again, the high fees may be avoidable for them, but I could perfectly understand if they chose a significantly higher fee than normal as consequence of their sense of urgency or panic to get their txes included as fast as possible. this does of course not mean that I'm in favour of any kind of criminal activity ...

If blacklisting pools own 95% of the total hashrate, they can simply reject the blocks mined by the 5% non-blacklisting pools too.
This is of course possible in a "dystopian" scenario where blacklisting pools form a cartel and only accept blocks of their peers. I think however miners and pool operators would like to avoid that unless their governments explicitly required it, and even moving to other countries before taking that extreme measure, because this would eliminate the "uncensorable" attribute Bitcoin benefits from, and thus, probably would have severe consequences for the Bitcoin price (and thus their own business model).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: PrimeNumber7 on July 04, 2021, 01:59:36 AM
But as I wrote in the second paragraph, I don't believe we have this situation currently, blacklisting pools may make up perhaps 50-60% of the hashrate. Instead it could be a mix of high margins (of the criminal activity) and a sense of panic/urgence.
As far as I am aware, blacklisting pools make up a much smaller percentage of the hashrate than that. And even if we reached the point of 95% as you suggest, then the logical option for such blacklisted users is to simply enable RBF and broadcast at a fee within 1 vMB of the tip. If they don't get confirmed for several blocks and the fees change markedly, they can bump their fee with RBF. There is no need for them to be paying ridiculously high fees.
Based on ds5000's post (https://bitcointalk.org/index.php?topic=5346270.msg57372089#msg57372089), and based on known criminal uses for bitcoin, I would think the blacklists probably relate to addresses that often receive coin via malware, meaning that criminals try to infect others' machines with malware that will send coin secured by any private keys it finds to address 3xxx...x, and 3xxx...x will be the blacklisted address. From the point of view from the malware creates, they would not want to use RBF transactions so it would be more difficult for the legitimate owner of the coin being stolen to create a competing transaction that would prevent the loss of their coin.


To get this thread back on topic, I would point out that block 688970 (https://btc.com/btc/block/000000000000000000076e53c720e850cc46fcbc42a65f7aa0917755daec3c22) was mined by the binance pool, and the transactions paying crazy fees are likely associated with binance. I might suggest this means that binance was testing their pool software and did not effectively actually pay 2200 sat/vByte.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: pooya87 on July 04, 2021, 03:08:37 AM
As far as I remember, Schnelli confirmed blacklisting only for Bitmain pools,
Is there any proof of this I can study. For example what were the transactions they rejected why and who picked them up?

Quote
This is of course possible in a "dystopian" scenario where blacklisting pools form a cartel and only accept blocks of their peers. I think however miners and pool operators would like to avoid that unless their governments explicitly required it, and even moving to other countries before taking that extreme measure, because this would eliminate the "uncensorable" attribute Bitcoin benefits from, and thus, probably would have severe consequences for the Bitcoin price (and thus their own business model).
It won't just be the "price consequences" for their business, if majority of hashrate try to maliciously attack bitcoin (which censoring transactions is an example) either bitcoin dies or the community takes drastic measures such as a hard fork to brick their ASICs overnight.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 04, 2021, 09:59:08 AM
As far as I remember, Schnelli confirmed blacklisting only for Bitmain pools, which make up ~20% of the current hashrate, but said it was due to requests of the government. So it may apply to all China-based pools, thus my 50-60% estimation.
In which case, miners leaving China may be an even better thing for bitcoin than expected. Let's hope they don't all come over here and then get hit with even more ridiculous requirements like the ones OFAC wanted to enforce.

Are there any data regarding why transactions were being blacklisted or the criteria which were being used?

meaning that criminals try to infect others' machines with malware that will send coin secured by any private keys it finds to address 3xxx...x, and 3xxx...x will be the blacklisted address.
This would be fairly trivial for a scammer to circumvent. The Electrum malware, for example, could simply be updated every day to use a different address, just as they were constantly updating the web address which was displayed in the malicious message they sent to users. They could have the malware connect to a server and fetch a brand new address every time.

Still, I take your point that scammers will use a huge fee with RBF disabled to ensure that their stolen funds make it to their wallet ASAP with minimal chance of intervention from the owner of the coins. We've got to assume that such transactions are very much in the minority though, and do not explain the vast numbers of grossly overpaying transactions we see.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: PrimeNumber7 on July 04, 2021, 02:09:14 PM
meaning that criminals try to infect others' machines with malware that will send coin secured by any private keys it finds to address 3xxx...x, and 3xxx...x will be the blacklisted address.
This would be fairly trivial for a scammer to circumvent. The Electrum malware, for example, could simply be updated every day to use a different address, just as they were constantly updating the web address which was displayed in the malicious message they sent to users. They could have the malware connect to a server and fetch a brand new address every time.

Still, I take your point that scammers will use a huge fee with RBF disabled to ensure that their stolen funds make it to their wallet ASAP with minimal chance of intervention from the owner of the coins. We've got to assume that such transactions are very much in the minority though, and do not explain the vast numbers of grossly overpaying transactions we see.
Once the government gets a single copy of malware, they can blacklist the address the malware is sending coin to. If the malware were to update the address based on the date, the government could simply infect a decoy computers that have system dates in the future. If the malware were to query a server with the address to send coin to, the government could use a decoy computer to learn the address that coin should be sent to. The latter is less ideal for attackers because it will increase the time it takes to steal coin, and makes it more likely that countermeasures will detect malicious activity, and cutoff internet access to the infected machine.

All of the above is hypothetical and is likely not the reason for the transactions noted in the OP. The transactions in question are almost certainly being paid to the pool operator. This could be described as similar to someone taking money out of their right pocket and into their left pocket. There have been discussions in the past about miners taking payment in order to confirm a transaction that would not otherwise normally get confirmed, but I don't think there have been discussions where high transaction volume businesses receive payments for providing high transaction fee transactions.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 04, 2021, 06:29:33 PM
The transactions in question are almost certainly being paid to the pool operator. This could be described as similar to someone taking money out of their right pocket and into their left pocket.
I'm not sure this is necessarily the case.

Take a look at the following address, for example: 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s

We know this address belongs to Binance, as they stated in this tweet: https://twitter.com/binance/status/961666467325358081

Now, if we look at the transactions out of this address over the last several hours, we see they all pay around 100 sats/vbyte when 2 sats/vbyte would have been sufficient, they are being mined in almost every block regardless of the pool finding those blocks, and there are a number of unconfirmed ones visible, meaning they are obviously being broadcast normally. So these transactions at least are just Binance needlessly pushing the fees up. I have no doubt there are a handful of transactions being paid to their own pool as you state, but I think such transactions are very much in the minority.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BrewMaster on July 05, 2021, 01:21:18 PM
I can assume that among those who pay groundlessly big fee for their transactions are  those people who sporadically  use coinb.in This wallet  requires some preliminary knowledge on the setting correct change address/es and amount of BTC to be send there. If all of that were not set properly all transaction change would go to  miners as their reward.

coinb.in is more like a web tool than a bitcoin wallet though and it demands a certain level of advanced users who pay more attention to what they pay as fee in their transactions. besides i don't think that many people are using this tool to begin with.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: DaveF on July 06, 2021, 11:23:42 AM
I made a comment elsewhere but it seems to be valid that it looks like there are some wallets that are responding poorly to other high fees.
Last night when the mempool was almost empty there were transactions coming in that were 1 or 2 sat/byte. Once there were a few transactions that had a fee higher then the needed one the fees started to go up a bit closer to 4+ sat/byte. Even though the mempool was empty.

It was almost like the wallet was taking an average or something of what was in the block instead of looking at the fees.
Could be a bunch of lazy programming. Almost like adding the highest 10 fees that should you see going into the next block and add them to the lowest 10 fees you see going into the next block and divide by 20.

-Dave


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BrewMaster on July 06, 2021, 12:51:30 PM
It was almost like the wallet was taking an average or something of what was in the block instead of looking at the fees.

i remember this a couple of years ago when some people were actually discussing how to implement fee estimation based on the last block that was mined. it was based on the average fee that the block had, like saying min fee is the minimum fee in that block and average is the median fee, etc.
but i don't think we can make a conclusion that this is the case with the transactions you saw because it may easily be something like a gambling site paying its gamblers as they cash out with a higher fee.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 06, 2021, 02:36:20 PM
It was almost like the wallet was taking an average or something of what was in the block instead of looking at the fees.
Could be a bunch of lazy programming. Almost like adding the highest 10 fees that should you see going into the next block and add them to the lowest 10 fees you see going into the next block and divide by 20.
Services are almost always paying extra fees for their transactions. It is far easier to pay more and avoid any problems if the transaction stays unconfirmed for an extended period of time. After all, the users are footing the bill, no harm done to them. RBF is not possible with withdrawal transactions, not technically, just that it'll cause even more confusion.

i remember this a couple of years ago when some people were actually discussing how to implement fee estimation based on the last block that was mined. it was based on the average fee that the block had, like saying min fee is the minimum fee in that block and average is the median fee, etc.
but i don't think we can make a conclusion that this is the case with the transactions you saw because it may easily be something like a gambling site paying its gamblers as they cash out with a higher fee.
Bitcoin Core groups the transactions from the mempool into a bucket, and tracks how long it takes for them to be included in a block. It lags behind the actual situation for me; predicting 10sat/vbyte for the next block with 2sat/vbyte being 1vMB from the tip. They tend to be more conservative with the fees, but there is a higher confidence for it to be included within the X blocks.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: d5000 on July 06, 2021, 02:55:37 PM
Is there any proof of this I can study. For example what were the transactions they rejected why and who picked them up?
Are there any data regarding why transactions were being blacklisted or the criteria which were being used?
Not that I know. It was supposedly only affecting few addresses, but I think they won't disclose which, and which transactions were rejected. There is also generally surprisingly few information about Bitmain's blacklisting behavior in the Web, if I'm not missing something.

Still, I take your point that scammers will use a huge fee with RBF disabled to ensure that their stolen funds make it to their wallet ASAP with minimal chance of intervention from the owner of the coins. We've got to assume that such transactions are very much in the minority though, and do not explain the vast numbers of grossly overpaying transactions we see.
Agree here.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 06, 2021, 08:08:12 PM
Services are almost always paying extra fees for their transactions. It is far easier to pay more and avoid any problems if the transaction stays unconfirmed for an extended period of time. After all, the users are footing the bill, no harm done to them. RBF is not possible with withdrawal transactions, not technically, just that it'll cause even more confusion.
True, and I can understand why centralized exchanges and other such services overpay their withdrawal transactions, but the amount they overpay is often ridiculous. Sure, if the average fees are bouncing around 20-30 sats/vbyte in each block, then 100 sats/vbyte is not an unreasonable fee to pretty much guarantee confirmation in the next block. But when the mempool is emptying with every block, and 1 sat/vbyte transactions are being entirely cleared in each block for several days in a row, to still pay 100 sats/vbyte is just plain stupid. I refuse to believe that Binance can't come up with a better algorithm than "Pay 100 sats/vbyte for everything until it gets really bad".

RBF may be technically challenging, but CPFP is easy for such transactions. Binance could cut all their fees in half right now and save thousands of dollars worth of bitcoin a day, and still perform CPFP with the change output from their withdrawal transactions in the very rare case that 50 sats/vbyte doesn't confirm within a few hours when the mempool is currently empty.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 06, 2021, 10:55:05 PM
True, and I can understand why centralized exchanges and other such services overpay their withdrawal transactions, but the amount they overpay is often ridiculous. Sure, if the average fees are bouncing around 20-30 sats/vbyte in each block, then 100 sats/vbyte is not an unreasonable fee to pretty much guarantee confirmation in the next block. But when the mempool is emptying with every block, and 1 sat/vbyte transactions are being entirely cleared in each block for several days in a row, to still pay 100 sats/vbyte is just plain stupid. I refuse to believe that Binance can't come up with a better algorithm than "Pay 100 sats/vbyte for everything until it gets really bad".
In all fairness, they're not the only ones overpaying for their fees. Bitcoin Core's floating fees was going up to 80 sat/vbyte for a confirmation within 3 blocks if the user chose conservative mode. That has a fairly high confidence level though, so the fees will always be inflated.
RBF may be technically challenging, but CPFP is easy for such transactions. Binance could cut all their fees in half right now and save thousands of dollars worth of bitcoin a day, and still perform CPFP with the change output from their withdrawal transactions in the very rare case that 50 sats/vbyte doesn't confirm within a few hours when the mempool is currently empty.
They know users won't want to wait for a few hours or more than a block or two. CPFP is probably quite easy but as a user, I'll be quite unhappy to be waiting for an extended period of time after paying 0.0005BTC per withdrawal and they're choosing a very low fee, given that withdrawals are already batched. They can probably reduce the fees even more, or introduce a variable fee structure. Probably won't be happening though.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 07, 2021, 10:23:48 AM
They know users won't want to wait for a few hours or more than a block or two.
Some users, sure, but there are a lot of times I am trading peer to peer that I will message the other party if I trust them and tell them to send with a small fee since I am in no hurry. I'm sure there will be plenty of Binance users who would happily wait a day or two for a withdrawal if it meant saving >95% of their fee.

CPFP is probably quite easy but as a user, I'll be quite unhappy to be waiting for an extended period of time after paying 0.0005BTC per withdrawal and they're choosing a very low fee, given that withdrawals are already batched.
I'd already be annoyed if I were a Binance user knowing they are charging me 50,000 sats per withdrawal and pocketing the majority of that as pure profit, even with the hyperinflated transaction fees they pay. Even if they leave all their withdrawal transactions at their flat 100 sats/vbyte fee, they should still be reducing the price they charge customers.

But even if they don't want to implement a better fee estimation algorithm, no reason they couldn't implement a "Fast/Average/Slow" withdrawal structure, with flat fees of (say) 100 sats/vbyte, 30 sats/vbyte, and 5 sats/vbyte, so users aren't left over paying so much and they don't fill the mempool with so many ridiculously unnecessary transactions.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BlackHatCoiner on July 07, 2021, 10:40:38 AM
They can probably reduce the fees even more, or introduce a variable fee structure. Probably won't be happening though.
The first thing they should do is use Segwit Native instead. Can you imagine the amount of transactions they broadcast everyday? They'd save thousands of dollars. Still, Binance keeps the fame of the richest exchange.

I'd already be annoyed if I were a Binance user knowing they are charging me 50,000 sats per withdrawal and pocketing the majority of that as pure profit, even with the hyperinflated transaction fees they pay.
I have never used Binance. Do they charge 50,000 sats for withdrawing or for just making a Bitcoin (on-chain) transaction?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 07, 2021, 10:43:39 AM
The first thing they should do is use Segwit Native instead. Can you imagine the amount of transactions they broadcast everyday? They'd save thousands of dollars. Still, Binance keeps the fame of the richest exchange.
I'm almost certain they use Bech32 for deposits.
I have never used Binance. Do they charge 50,000 sats for withdrawing or for just making a Bitcoin (on-chain) transaction?
For Bitcoin withdrawal only.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 07, 2021, 02:00:46 PM
I'm almost certain they use Bech32 for deposits.
A lot of their internal transactions all take place on legacy addresses. As I established above, 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s is their hot wallet addres. Take a look at the consolidation transactions just from the last few hours depositing coins in to this address:

https://mempool.space/tx/11fd262c9670bcea97cb58262ed0ed934fc88756b3ce9586c3cdf3df2cad75df
https://mempool.space/tx/39558624185310a16d3166574069dfe6105590fa37a3b9559331dea23fa2a5fc
https://mempool.space/tx/7d8b6e13039d3c5e0189fa2d82d57aa017ae91de3b7d4be2657147f1150949e6
https://mempool.space/tx/db4472426fe6e46f36aa6ee5db481595a848501cbb8313c3c001367d47e720bc

All of them are sweeping multiple legacy addresses in to their main legacy address from which withdrawals are processed.

So yeah, legacy transactions at way over the going fee rate. At least they batch their withdrawals, but Binance (and all exchanges) are responsible for a significant amount of mempool bloat.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: DaveF on July 07, 2021, 02:24:33 PM
...
So yeah, legacy transactions at way over the going fee rate. At least they batch their withdrawals, but Binance (and all exchanges) are responsible for a significant amount of mempool bloat.

Makes you wonder if anyone sat down and did a cost analysis of hiring programmers and re-doing some things to reduce the fees they pay and possibly increase privacy a bit by not moving funds as much, vs. the cost of dong the things the way they do now.

Probably not, but you never know.

-Dave


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 07, 2021, 02:36:53 PM
A lot of their internal transactions all take place on legacy addresses. As I established above, 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s is their hot wallet addres. Take a look at the consolidation transactions just from the last few hours depositing coins in to this address:

https://mempool.space/tx/11fd262c9670bcea97cb58262ed0ed934fc88756b3ce9586c3cdf3df2cad75df
https://mempool.space/tx/39558624185310a16d3166574069dfe6105590fa37a3b9559331dea23fa2a5fc
https://mempool.space/tx/7d8b6e13039d3c5e0189fa2d82d57aa017ae91de3b7d4be2657147f1150949e6
https://mempool.space/tx/db4472426fe6e46f36aa6ee5db481595a848501cbb8313c3c001367d47e720bc

All of them are sweeping multiple legacy addresses in to their main legacy address from which withdrawals are processed.

So yeah, legacy transactions at way over the going fee rate. At least they batch their withdrawals, but Binance (and all exchanges) are responsible for a significant amount of mempool bloat.
I'd have to say the fault partially lies with Binance. IIRC, binance used to offer legacy address by default, and the user can choose to use bc1 if they want. Not sure if this changed, so do CMIIW. There are no incentives for the user to be changing to bech32 addresses; you don't get any discount by doing so and most of the people who uses binance don't realize the full benefits of using Segwit nor do they really care about doing so. It'll inevitably result in a far greater percentage of users using legacy instead of bc1. The easiest solution to this is just to make bech32 the default, giving people an option for either nested SW or legacy (probably nested SW would do).

There is still a number of users who uses Segwit: c68338dfc5ced3b876de31bacd3227404b88fb49f6a1fb020767f179c29ad946, for example but the ratio is far lower. Binance introduced Segwit really late as well, services like that are part of the problem, and they just won't change. Blockchain.info is another notable example.

Binance is not the worst offender by the way, Bitmex uses P2SH (with 3-of-4 MultiSig with uncompressed PKs). I don't think they have too significant of an impact, or at least I can't really tell without an extended observation. As with every exchange, if they aren't losing money, they're happy to just spend a little more to stick with whatever is working.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 07, 2021, 04:08:27 PM
Makes you wonder if anyone sat down and did a cost analysis of hiring programmers and re-doing some things to reduce the fees they pay and possibly increase privacy a bit by not moving funds as much, vs. the cost of dong the things the way they do now.
I can understand that they don't actually care about bloating the mempool and forcing everyone else to pay more fees, but since their users seem happy to be fleeced such ridiculous withdrawal fees, then Binance are throwing away their own money by overpaying to such a high degree and processing thousands of transactions a day on legacy instead of segwit. Even if you ignore the intricacies of accurate fee estimations, just switching all their wallets from legacy to segwit, while time consuming, wouldn't require hiring any new programmers or engineers, and could easily save them a third or more on all their fees.

The easiest solution to this is just to make bech32 the default, giving people an option for either nested SW or legacy (probably nested SW would do).
Yeah, agreed. There are still some awful exchanges and services which still don't support segwit, but I've never heard of any which don't support P2SH addresses. Bech32 as default, nested segwit if you really need it.

There is still a number of users who uses Segwit: c68338dfc5ced3b876de31bacd3227404b88fb49f6a1fb020767f179c29ad946, for example but the ratio is far lower.
And they get swept back to a legacy address, haha. That hot wallet address has made over a million transactions. Think of the amount of fees which could have been saved!

Who knows, maybe they are just going to bypass segwit and switch straight to taproot. :P ::)


Title: Re: Who is paying very very large fees when not needed and why?
Post by: odolvlobo on July 10, 2021, 10:33:11 PM
One source of excessive fees might be closing of Lightning Network channels. It's all automatic. I just closed one and paid 30 s/b.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: franky1 on July 11, 2021, 01:14:24 AM
alot of people here think that bitmex could save money if it changed to segwit..
(facepalm)
if they bothered to check the bitmex transactions dont care about bytes per sat or weight per sat.
they are paying fixed amount per transaction no matter what the byte/weight is
so the transaction format or the cludgy math of not counting bytes as bytes has no meaning or impact

it seems that they just prefer to pay rounded fee's amounts as a flat rate. no matter if they are using legacy, bech or p2sh
its either 0.005, 0.002 or 0.0022

it seems to me their philosophy is more so the bitmex server hot/cold
their 3bmex is flatrate no matter size
their bc1qmex is flatrate no matter size
however
their 1/3[rand] -> 1ND is more 23sat/byte orientated (in to cold)
their  1ND-> 1/3[rand] is more 100 sat/vbyte orientated (in to hot)

which just reveals the managers of the 1nd use separate wallet software to the custodial bc1dmex/3bmex hot/cold wallets more closely associated to bitmex exchange

and not at all about giving a crap about segwit or not


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Rath_ on July 11, 2021, 10:40:53 AM
One source of excessive fees might be closing of Lightning Network channels. It's all automatic. I just closed one and paid 30 s/b.

If you are using c-lightning then you can modify the negotiation strategy of your node and make it more aggressive. It's very likely that the other peer forced you to overpay.

https://lightning.readthedocs.io/lightning-close.7.html#description - see [fee_negotiation_step]


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BlackHatCoiner on July 11, 2021, 04:37:06 PM
One source of excessive fees might be closing of Lightning Network channels. It's all automatic. I just closed one and paid 30 s/b.

I confirm this. I just paid lots for closing a lightning channel from electrum. Is there an option to change that (probably) hard coded value?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 11, 2021, 05:34:32 PM
One source of excessive fees might be closing of Lightning Network channels. It's all automatic. I just closed one and paid 30 s/b.
I confirm this. I just paid lots for closing a lightning channel from electrum. Is there an option to change that (probably) hard coded value?
This is one of the reasons I gave up on opening my own LN-channels. By using either custodial (BlueWallet) or an "automated" (Phoenix) wallet does does everything for me in exchange for a small fee, I don't need to worry about having to close channels anymore (although now that you mention it, I wouldn't know if I'd lose anything to fees when Phoenix Wallet closes a channel).



I've seen many consolidation transactions from exchanges or payment processors that easily pay thousands of dollars per transaction in fees. I can only imagine their business is so profitable, they simply don't care. It seems like a waste though.

We know this address belongs to Binance
they all pay around 100 sats/vbyte when 2 sats/vbyte would have been sufficient,
So these transactions at least are just Binance needlessly pushing the fees up.
What if it's just to push people towards their own made-up coin (https://coinmarketcap.com/currencies/binance-coin/) that miraculously is worth 50 billion dollars?
When withdrawing, Binance shows this:
https://loyce.club/other/withdraw.png
(old screenshot, despite low fees (http://ridiculous), Binance now charges even more to withdrawal Bitcoin.
They show 3 fake centralized tokens with real Bitcoin hidden somewhere in between. They make withdrawing Bitcoin ridiculously expensive. If they pay a few million dollars in Bitcoin fees, and it increases the value of their own made-up tokens by a few billion dollars, that's a very easy way to make a huge profit.



There is hope: at least some services are using the opportunity when fees are low:


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BlackHatCoiner on July 11, 2021, 05:52:06 PM
By using either custodial (BlueWallet)
What exactly do you mean by saying custody in lightning channels? That it doesn't allow you to pick a lightning node by your own or that it generally keeps your money?

There shouldn't be any custody in the lightning network; isn't it ironic that you've given up its main purpose of existence and still support it as a protocol?

I've seen many consolidation transactions from exchanges or payment processors that easily pay thousands of dollars per transaction in fees. I can only imagine their business is so profitable, they simply don't care. It seems like a waste though.
It sounds excessive. Would you mind giving me a transaction hash to check?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 11, 2021, 06:16:50 PM
What exactly do you mean by saying custody in lightning channels? That it doesn't allow you to pick a lightning node by your own or that it generally keeps your money?
LN on BlueWallet (https://bluewallet.io/features/) is custodial. That means a user can instantly receive a LN payment, or make an on-chain deposit. If they decide to run away, I lose my funds. But I'm totally okay with that risk for a small amount (don't forget people trust exchanges with tens of billions).

Quote
There shouldn't be any custody in the lightning network; isn't it ironic that you've given up its main purpose of existence and still support it as a protocol?
The protocol works fine. My custodial wallet can make payments to non-custodial services. So I can use it to buy coffee, without the hassle of dealing with channels and balancing capacity. Slightly off-topic here, but I don't think LN will reach mass-adoption if the average user has to setup their own node.

Quote
It sounds excessive. Would you mind giving me a transaction hash to check?
It's been a while since I used one, so I don't have a txid ready. I remember following my payment at the fee-peak in 2017: it was consolidated (by Bitpay) with a $6000 fee.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: khaled0111 on July 11, 2021, 06:41:01 PM
^^
BlueWallet lightning wallets are custodial indeed. When you fund your lightning wallet, you don't really create a channel, in fact you send the bitcoin to them and they will use their own nodes to open a channel for you (it's possible that they don't even do that). Therefore, your Bitcoin is in their custody (although they prefer the term hosted) and they can do whatever they want with it.
It's not really a big deal but if you're not fine with it, you can always run your own LN node.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: BlackHatCoiner on July 11, 2021, 06:47:48 PM
If they decide to run away, I lose my funds.
Well... that was an anticlimax.

The protocol works fine. My custodial wallet can make payments to non-custodial services.
The thing confuses itself if we agree that the protocol works if another party holds your money. Essentially, you aren't making payments, independently; you need the BlueWallet nodes to be online, otherwise you can't use the protocol. In other words, the requisition of the third party that is being prevented in the protocol is now clearly not.

When you fund your lightning wallet, you don't really create a channel, in fact you send the bitcoin to them and they will use their own nodes to open a channel for you
That's why I got curious when I saw that “Multi-Sig” SegWit Native be so short.

It's not really a big deal but if you're not fine with it, you can always run your own LN node.
I can always run my own LN node, but I can't connect it to my BlueWallet. It'll take me some time to find another wallet so user-friendly as that.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 11, 2021, 07:20:22 PM
I just paid lots for closing a lightning channel from electrum. Is there an option to change that (probably) hard coded value?
I'm not sure about in Electrum, since I haven't used Electrum for Lightning yet, but yes, you can choose the fee your settlement transaction pays. The issue is that sometimes your settlement transaction may have been signed days, weeks, or even months, before it is broadcast, so whatever fee you pick could end up being very inaccurate. The solution to this is the use of anchor outputs: https://bitcoinops.org/en/topics/anchor-outputs/. These essentially allow you to sign a settlement transaction with a fee which is intentionally low and then to bump it if necessary after you have broadcast it.

What if it's just to push people towards their own made-up coin (https://coinmarketcap.com/currencies/binance-coin/) that miraculously is worth 50 billion dollars?
I mean, not only is their coin obviously centralized trash, but they still have the audacity to charge a withdrawal fee on it, despite the fact they run the entire network and are literally just changing numbers on a spreadsheet? Who in their right mind falls for this trash?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 11, 2021, 08:10:30 PM
The protocol works fine. My custodial wallet can make payments to non-custodial services.
The thing confuses itself if we agree that the protocol works if another party holds your money. Essentially, you aren't making payments, independently; you need the BlueWallet nodes to be online, otherwise you can't use the protocol. In other words, the requisition of the third party that is being prevented in the protocol is now clearly not.
From my perspective, it's simple: I have a choice :) I can choose to use a custodial wallet, I can choose to run my own node, or I can choose any of the options in between. In the end, all of them can send payments to each other, so from a user's perspective everything works just fine.

Quote
It's not really a big deal but if you're not fine with it, you can always run your own LN node.
I can always run my own LN node, but I can't connect it to my BlueWallet.
I haven't tried it, but you can actually connect BlueWallet to your own full node (https://www.reddit.com/r/Bitcoin/comments/cmnn8g/bluewallet_now_allows_you_to_connect_to_your_own/).

Quote
It'll take me some time to find another wallet so user-friendly as that.
Try Wallet of Satoshi, or Phoenix Wallet.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Rath_ on July 11, 2021, 08:20:01 PM
[...] but yes, you can choose the fee your settlement transaction pays. The issue is that sometimes your settlement transaciton may have been signed days, weeks, or even months, before it is broadcast, so whatever fee you pick could end up being very inaccurate.

It sounds like you are confusing a commitment transaction with a mutual close. A mutual close involves only one transaction while commitment transaction needs two (see more detailed explanation (https://bitcointalk.org/index.php?topic=5202798.msg57399376#msg57399376)). You cannot choose a fee for both of them. The fee is negotiated between you and the other party automatically (based on your feerate which you should constantly be updating). A new commitment transaction is signed whenever you or the other party adjust the feerate.

I confirm this. I just paid lots for closing a lightning channel from electrum. Is there an option to change that (probably) hard coded value?

You cannot specify the fee of the closing transaction in Electrum. It probably relies on the estimates provided by the Electrum server you are connected to. By the way, I wrote a walkthrough for the Electrum implementation of the LN (https://bitcointalk.org/index.php?topic=5259973.msg54732922#msg54732922); you might have missed it.

I can always run my own LN node, but I can't connect it to my BlueWallet. It'll take me some time to find another wallet so user-friendly as that.

Actually, you can! You need to be running LND and you need to install LNDHub (https://github.com/BlueWallet/LndHub), and then you can point BlueWallet to your node in the settings. While I was running LND before I had switched to c-lightning, I was using Zap Wallet (https://zaphq.io/). It integrates well with LND, but it was a real pain to set up. LND has a lot of fancy stuff, but it does not have as many "power user features" as c-lightning, which lacks those fancy things.

[...] and they will use their own nodes to open a channel for you (it's possible that they don't even do that).

Here (http://lndhub.io/) you can see all of their channels and their liquidity. They opened a few channels in advance.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 11, 2021, 08:37:03 PM
-snip-
Perhaps I should have been more specific with my terminology. My understanding was that a mutual close settlement transaction can have any fee you like, since you are negotiating it in real time with the other party, and so you would simply both agree on an appropriate fee. A forced closed settlement transaction will potentially have been signed well in advance, and so the fee is fixed at whatever you chose at the time, which may or may not still be an appropriate fee to pay. This is where anchor outputs come in, allowing you to set a low fee which you can later bump. Am I mistaken?


Title: Re: Who is paying very very large fees when not needed and why?
Post by: Rath_ on July 11, 2021, 09:03:00 PM
Perhaps I should have been more specific with my terminology. My understanding was that a mutual close settlement transaction can have any fee you like, since you are negotiating it in real time with the other party, and so you would simply both agree on an appropriate fee. A forced closed settlement transaction will potentially have been signed well in advance, and so the fee is fixed at whatever you chose at the time, which may or may not still be an appropriate fee to pay. This is where anchor outputs come in, allowing you to set a low fee which you can later bump. Am I mistaken?

Sounds good! Sorry for nitpicking. I just wanted to make sure no one else gets confused. The negotiation part is very tricky, though. I still haven't figured out how not to overpay by a lot. I have recently closed a channel with a 60 sat/vbyte fee while 2 sat/vbyte was enough for a fast confirmation. Next time, I will try adjusting the negotiation strategy manually (by the way, such a feature is available only in c-lightning).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: DaveF on July 16, 2021, 02:02:03 PM
I don't know if it's always been there and I never saw it or if it's something new, but mempool.space now shows how much people overpaid on fees if you click on the transaction.

https://i.imgur.com/k3itphih.jpg

Kind of interesting, if sad to look at.
Looking through the last few blocks, there are still a lot of large fees paid when they don't need to be.

-Dave


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 17, 2021, 07:39:53 AM
Looking through the last few blocks, there are still a lot of large fees paid when they don't need to be.
It's at time like these, when the mempool is emptying out with each block, which really highlights just how stupid people are being with their fees.

Look at the mempool activity since the last block was mined and the mempool totally emptied out. 5 minutes later, and the mempool is still only 0.3 vMB in size, however we have almost 70 transactions paying upwards of 100 sats/vbyte, and over 300 paying upwards of 10 sats/vbyte. Ridiculous. The mempool has emptied out with almost every block for the last 12 hours, meaning 1 sat/vbyte has always been enough for a fast confirmation. Which algorithms/user see this, see a total mempool of under 0.3 vMB, of which more than half is paying less than 3 sats/vbyte, and decide pn fees of over 100 sats/vbyte? What a waste of money.

Every single one of those users could pay 1 sat/vbyte, get confirmed in the exact same length of time, and save >90% on their fees.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 17, 2021, 08:05:07 AM
Which algorithms/user see this, see a total mempool of under 0.3 vMB, of which more than half is paying less than 3 sats/vbyte, and decide pn fees of over 100 sats/vbyte? What a waste of money.
Those algorithms are what pushes up fees so quickly once blocks are full. If a block is filled with 1 sat/byte transactions, you could get priority over those by paying only a little more (say 1.1 sat/byte). That could lead to a very slow increase of fees (1.2, 1.3, ...... 2.0), but instead it quickly goes to 10, 50, 100 and more. I don't mind people wasting their money, but they drag others with them too.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 17, 2021, 08:26:13 AM
Which algorithms/user see this, see a total mempool of under 0.3 vMB, of which more than half is paying less than 3 sats/vbyte, and decide pn fees of over 100 sats/vbyte? What a waste of money.
Poorly implemented ones or those that don't know any better and has a fixed fee rate.
Those algorithms are what pushes up fees so quickly once blocks are full. If a block is filled with 1 sat/byte transactions, you could get priority over those by paying only a little more (say 1.1 sat/byte). That could lead to a very slow increase of fees (1.2, 1.3, ...... 2.0), but instead it quickly goes to 10, 50, 100 and more. I don't mind people wasting their money, but they drag others with them too.
If you're in a hurry, it is simply not an option for you to increment fees slowly nor is it for those services where withdrawals/coin movement are time-sensitive. You can't really compromise in this aspect; if your algorithm guarantees a confirmation within the next block, your algorithm should suggest a fee which does exactly that. Slowly incrementing the fees for the algorithm simply won't work and would probably result in far longer wait before a confirmation for most. There should not be a scenario where the algorithm suggests a fee that risks not hitting the target, some services doesn't really have a choice; CPFP makes the TX unnecessarily expensive, RBF is not an option. The penalty for them is unnecessary costs with their transaction and the user has to be the ones boycotting them.

Currently, Bitcoin Core suggests a fee of 1sat/vbyte for a confirmation within the next block. Not all algorithms are flawed. If they are paying fees that are excessively high, then they probably already know about this and would rather spend more on the fees than to change the algorithm or having users complaining about their withdrawal.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 17, 2021, 09:10:35 AM
if your algorithm guarantees a confirmation within the next block, your algorithm should suggest a fee which does exactly that. Slowly incrementing the fees for the algorithm simply won't work and would probably result in far longer wait before a confirmation for most. There should not be a scenario where the algorithm suggests a fee that risks not hitting the target, some services doesn't really have a choice; CPFP makes the TX unnecessarily expensive, RBF is not an option.
I disagree on the CPFP part. If - say - Binance now pays 100 sat/byte for a transaction with 100 outputs, they could easily to for 10 sat/byte and still get into the next block about 90% of the time (https://jochen-hoenicke.de/queue/#BTC,24h,weight). For the 10% they don't make it, they could instantly do CPFP onces fees in mempool go up. If they quickly bump the average fee to 25 sat/byte, they can still make it into the next block, and depending on the state of mempool, they can increase fees by as much as needed.
The cost of an incidental CPFP is tiny compared to the amount they save on total fees.

Implementing this would just be a bit more work. In Binance's case, I'm pretty sure (https://bitcointalk.org/index.php?topic=5334883.msg56930687#msg56930687) the millions of dollars they waste on fees are totally worth the billions of dollars they earn from promoting their own centralized shitcoin (https://bitcointalk.org/index.php?topic=5334883.msg56924278#msg56924278).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ranochigo on July 17, 2021, 09:26:01 AM
I disagree on the CPFP part. If - say - Binance now pays 100 sat/byte for a transaction with 100 outputs, they could easily to for 10 sat/byte and still get into the next block about 90% of the time (https://jochen-hoenicke.de/queue/#BTC,24h,weight). For the 10% they don't make it, they could instantly do CPFP onces fees in mempool go up. If they quickly bump the average fee to 25 sat/byte, they can still make it into the next block, and depending on the state of mempool, they can increase fees by as much as needed.
The cost of an incidental CPFP is tiny compared to the amount they save on total fees.
The users are paying 0.0005BTC per withdrawal. Granted that includes the fees from moving the deposits around, I would assume that the first course of action is for them to reduce the withdrawal fees for the user. Even if they decrease the fees that they are going to use, users are going to complain that they are skimping on the fees.

How ever much they spend isn't any of our business; it affects their profit margin and screws their users over. Them adding additional TXes into the mix doesn't necessarily bode well for the rest of us, there is another transaction to compete with the rest of the network. Even if they were to pay the high fees, it doesn't necessarily affect the remainder of the user. Algorithms don't look at the average fees being paid, rather, they devise their estimates from the bulk of the fees that the network is paying through fee buckets. Having a fraction of the blocks being occupied by a few high fee-rate transactions isn't a problem for the rest of the network, as long as the bulk of the transactions are still paying a normal fee rate.

Implementing this would just be a bit more work. In Binance's case, I'm pretty sure (https://bitcointalk.org/index.php?topic=5334883.msg56930687#msg56930687) the millions of dollars they waste on fees are totally worth the billions of dollars they earn from promoting their own centralized shitcoin (https://bitcointalk.org/index.php?topic=5334883.msg56924278#msg56924278).
I mean they aren't wasting any money, the user foots the bill.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 17, 2021, 09:38:23 AM
The users are paying 0.0005BTC per withdrawal. Granted that includes the fees from moving the deposits around, I would assume that the first course of action is for them to reduce the withdrawal fees for the user.
Lol, they've increased withdrawal fees to 0.00057 BTC.
But what I really dislike about them is the "Select withdrawal network" when withdrawing Bitcoin. Their site is now designed to confuse uneducated users into thinking there is more than one way to withdraw Bitcoin, while 75% of their options are fake.

Quote
How ever much they spend isn't any of our business; it affects their profit margin and screws their users over.
As a user, it is my business ;) And as a Bitcoin user, it influences my transaction fees (when fees go up) even if I don't use Binance. All of this makes me avoid Binance whenever I can :) Just like Bitpay for instance, which (apart from KYC requirements) charges users a consolidation fee that's much higher than needed.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 17, 2021, 09:41:48 AM
The cost of an incidental CPFP is tiny compared to the amount they save on total fees.
It would actually be fairly trivial to write a script which places their transactions at 0.1 vMB from the tip of the mempool, and then constantly watches the mempool. As soon as the transaction falls below 0.7 vMB from the tip (example numbers), then they broadcast a CPFP which puts it back at 0.1 vMB from the tip. They would still be guaranteed the same confirmation times that they currently get by overpaying their fees by 10-100x, they would save a bunch of money, they would stop bloating the mempool so much, and they could pass huge savings on to their users.

But, as you say, they have no incentive to do that, since their users seem quite happy to be utterly fleeced with their ridiculous withdrawal fees, and it plays in to their narrative of promoting their centralized shitcoin.

Having a fraction of the blocks being occupied by a few high fee-rate transactions isn't a problem for the rest of the network, as long as the bulk of the transactions are still paying a normal fee rate.
That's kind of the problem though - the bulk aren't paying a "normal" fee rate. Every transaction in the last 12 hours could have paid 1 sat/vbyte and taken at most 2 blocks to be confirmed, whereas we only have around 10-20% of transactions paying this amount, meaning 80-90% of transactions are overpaying to some degree. If you want to over pay 2-5 sats/vbyte because you desperately want confirmed in 1 block and not 2, sure, I can appreciate that. But paying 10-500 sats/vbyte is just plain stupid.

Lol, they've increased withdrawal fees to 0.00057 BTC.
Hahaha, what? Taking a look at their last withdrawal transaction which was broadcast: https://mempool.space/tx/8d6454fbdfe1ba950ebbfbd79a2a389640a63074effcff9060180bcfe690f24f
38 outputs, total fee of 48*0.00057 = 0.02736 BTC. Even with their ridiculous 100x overpayment fee of 0.002009, they still make a nice profit of 0.025351 BTC, almost $800 at current prices, on a single transaction. They have made 20 such transactions in the last hour alone. $16,000 an hour taken from their users for no reason.

Binance users are idiots for putting up with this.

Edit: I mistyped the number of inputs (38 rather than 48). Fixed the math - it is even more ridiculous now.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: LoyceV on July 17, 2021, 09:52:56 AM
Lol, they've increased withdrawal fees to 0.00057 BTC.
Hahaha, what? Taking a look at their last withdrawal transaction which was broadcast: https://mempool.space/tx/8d6454fbdfe1ba950ebbfbd79a2a389640a63074effcff9060180bcfe690f24f
38 outputs, total fee of 38*0.0057 = 0.02166 BTC. Even with their ridiculous 100x overpayment fee of 0.002009, they still make a nice profit of 0.019651 BTC, over $600 at current prices, on a single transaction. They have made 20 such transactions in the last hour alone. $12,000 an hour taken from their users for no reason.
To be fair: they also pay to consolidate inputs, but that's not included in this transaction. I've said it before, but again: a much fairer system would be to charge a fee on deposits, but that doesn't fit their business model: they want deposits, and they don't want withdrawals.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 17, 2021, 10:48:57 AM
To be fair: they also pay to consolidate inputs, but that's not included in this transaction.
Their consolidation transactions are trivial in comparison. Take a look at some of the ones they've made today:

https://mempool.space/tx/bcc8340c2fe86ed684cdbdebb06c4c97c5f77948177c7999e655c1995d406def
https://mempool.space/tx/0dcb6b2c3a5fb76c958158c0b7728f5175d0da5c8d1dba827f37a1276def38fa
https://mempool.space/tx/1aad2a9666dba36e8111e78c7c9267866ac7a3ff9914bd5369fb3bf3cc5769ea
https://mempool.space/tx/55893c880c16fdae2b026826f1bf8651c5511b480388047ffd4812a2d6166ed2
https://mempool.space/tx/87aa69969d59cdde3393dcfc7081db161f98688de49a679ca5168d28d4444fca

All paying 2.3 sats/vbyte. 162 inputs in total, and the combined fee of all those transactions is still less than the price they charge for a single withdrawal from a single user. So even considering that, the profit from one withdrawal transaction only drops from $800 down to $780 (I fixed my math in the post above).


Title: Re: Who is paying very very large fees when not needed and why?
Post by: PrimeNumber7 on July 17, 2021, 11:07:05 PM
Lol, they've increased withdrawal fees to 0.00057 BTC.
They are only charging (https://www.binance.com/en/fee/cryptoFee) the higher amount if you withdraw to a non-SegWit address. If you withdraw to a SegWit address, the withdrawal fee remains at 0.0005.
But what I really dislike about them is the "Select withdrawal network" when withdrawing Bitcoin. Their site is now designed to confuse uneducated users into thinking there is more than one way to withdraw Bitcoin, while 75% of their options are fake.
I would compare binance allowing customers to withdraw "bitcoin" via ETC20 and their two BEP blockchains as something similar to how exchanges allow customers to withdraw stablecoins. When someone withdraws a stablecoin, they are receiving a token that is backed 1:1 with Dollars, is redeemable for dollars at the same rate, and customers most frequently receive stablecoins with the intention of later depositing the stablecoin on an exchange that supports said stablecoin when market conditions warrant. The customer does not have to wait for the slow banking system, nor have to deal with the costs associated with using the banking system every time they want to temporarily move "dollars" off their exchange account, or when they want to move dollars between exchanges.

No, an ERC20 token, nor a BEP20 token that represents bitcoin is not bitcoin. Someone receiving a "bitcoin" withdrawal via one of the smart contract blockchains most likely intends to later deposit said coin back onto their binance account, or another exchange account that supports said blokchain deposits. With that being said, I would rather a trader who understands the difference, and the risks of holding onto their "bitcoin" this way, and who can be described as the above, receive their "bitcoin" withdrawals this way so to lower transaction fees for everyone else who is using the actual bitcoin blockchain.

Taking a look at their last withdrawal transaction which was broadcast: https://mempool.space/tx/8d6454fbdfe1ba950ebbfbd79a2a389640a63074effcff9060180bcfe690f24f
38 outputs, total fee of 48*0.00057 = 0.02736 BTC. Even with their ridiculous 100x overpayment fee of 0.002009, they still make a nice profit of 0.025351 BTC, almost $800 at current prices, on a single transaction. They have made 20 such transactions in the last hour alone. $16,000 an hour taken from their users for no reason. y
There are costs associated with processing a withdrawal above transaction fees. Binance (or any other exchange or business that processes withdrawals) needs to invest in means to ensure that withdrawal amounts do not exceed available balances, and an automated means to actually create withdrawal transactions. Neither of these are free. The costs associated with withdrawals is disclosed to their customers prior to them creating an account at binance, and binance deserves to earn a profit on services it offers. Binance is one of the largest crypto exchanges, so I think it is probably fair to say the value of the services their exchange provides exceeds the costs of their overpriced bitcoin withdrawals.

While we are on the topic of fees binance charges, someone making 100 BTC worth of trades in a month is going to pay 0.1 BTC in trading fees. My guess is the profit margin on trading fees far outweighs their profit margins on withdrawal fees.

My guess is binance is paying high transaction fees because they can afford to based on how much they are charging. They are probably also trying to limit the amount of information the server that signs transactions receives. Any information a hot wallet receives is a potential attack vector.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: o_e_l_e_o on July 18, 2021, 07:17:08 AM
They are only charging (https://www.binance.com/en/fee/cryptoFee) the higher amount if you withdraw to a non-SegWit address. If you withdraw to a SegWit address, the withdrawal fee remains at 0.0005.
So an extra 7,000 sats for an output which costs an additional 3 vbytes of transaction space, for a cool 2,333.33 sats/vbyte. That seems reasonable. ::) Although I shouldn't really be complaining if they are incentivizing people to use Segwit, regardless of just how stupid that incentive is.

When someone withdraws a stablecoin, they are receiving a token that is backed 1:1 with Dollars
Or in some cases, such as with Tether, a token which has been proven in court not to be backed up 1:1 with dollars at all.

To address the rest of those two paragraphs - correct me if I'm wrong, but when you click on the "Withdraw" button next to bitcoin on Binance, you are presented with four chains for withdrawing your BTC: BTC, ETH, BNB, and BSC. This is misleading at best, but more likely, deliberately deceitful. When someone wants to withdraw a stablecoin, there is no doubt that they have bought USDT, USDC, whatever, and that is what they are withdrawing. It is not difficult to see how a newbie would click on "Withdraw bitcoin", be presented four options with different fees, and pick the cheapest one, without understanding they are not actually withdrawing bitcoin at all. If someone wants to withdraw a bitcoin token on the BSC chain, for example, then they should first have to go through a swap process to turn their real bitcoin in to tokenized bitcoin before they can then withdraw it, just as they would have to sell their bitcoin for a stablecoin if that is what they want to withdraw.

Neither of these are free.
Sure, but they also don't cost $16,000 an hour.

and binance deserves to earn a profit on services it offers.
Of course they do. But looking back over their withdrawal transactions, thanks to batching each output averages out as only around 50 sats/vbyte. Even at Binance's ridiculous overpayment of 100 sats/vbyte, there is no justification at all for charging 57,000 sats per withdrawal.


Title: Re: Who is paying very very large fees when not needed and why?
Post by: ndalliard on July 18, 2021, 07:21:57 AM
I don't know if it's always been there and I never saw it or if it's something new, but mempool.space now shows how much people overpaid on fees if you click on the transaction.
https://i.imgur.com/k3itphih.jpg
i am running my own lightning node since some days/weeks and i closed one channel (first to practice, but also for other reasons) and the mutual closing transaction looked a lot like the screenshot posted above. well i paid not that much, but it also stated "overpaid by 20x". i need to figure out how to get the "starting fee" the other node will propose as soon as the two nodes enter the "negotiation phase". sorry this is a lightning network question and a little bit offtopic. but i think the theory about lightning node useres paying too much to close channels might be right, it happend to me now at least once  :D

and binance deserves to earn a profit on services it offers
i wouldn't call getting access to bitcoin you bought a service, okay it is a service, but not a service about which you can say: look at me, i allow withdrawals of bitcoin you bought which aren't yours if you dont withdraw them - they earn probably most of their revenue with trading fees - imo it is "bad business" wanting to earn a profit with withrawal fees (not sure they do or want to do that - i am just replying to the quoted statement


Title: Re: Who is paying very very large fees when not needed and why?
Post by: nibor on July 23, 2021, 11:34:32 AM
and the mutual closing transaction looked a lot like the screenshot posted above. well i paid not that much, but it also stated "overpaid by 20x". i need to figure out how to get the "starting fee" the other node will propose as soon as the two nodes enter the "negotiation phase".

Remember with lighting the case is very different to a "normal" user.

With lighting you can be in a situation where you MUST get your transaction confirmed in a block within a certain number of blocks or the other side of the channel "could" steel all you coins.
So the downside of underestimating is not just the inconvenience of having to wait - but could be loss of all the funds in the channel.
In this situation saving a few sat may not be worth the risk.

Although for a Mutual close should not be the case!