Pages:
Author

Topic: Electrum returns me transaction error on send (Read 378 times)

legendary
Activity: 1512
Merit: 7340
Farewell, Leo
I have noticed from your screenshots that you are using mBTC as your base unit and not BTC. You might want to change that in the options menu of your Electrum app as it might create confusions for you down the line.

I am not 100% sure of the correct path but you should be able to find the base unit field somewhere along Tools > Preferences...

BTC and mBTC are just units. And no, I do not receive very frequently bitcoins to be a problem  Tongue
legendary
Activity: 2730
Merit: 7065
I have noticed from your screenshots that you are using mBTC as your base unit and not BTC. You might want to change that in the options menu of your Electrum app as it might create confusions for you down the line.

I am not 100% sure of the correct path but you should be able to find the base unit field somewhere along Tools > Preferences...
legendary
Activity: 1876
Merit: 3132
Yes but nodes will remove it from their mempool after 2 weeks or whatever time period it requires. So what's the point? All of these thousands TXs will go to the deep of the mempool and no miner will deal with them.

Still, why would you waste bandwidth which is not unmetered for everyone and allow inflating the transaction fees? It would be also bad if the nodes could potentially crash.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Yes but nodes will remove it from their mempool after 2 weeks or whatever time period it requires. So what's the point? All of these thousands TXs will go to the deep of the mempool and no miner will deal with them.
legendary
Activity: 1876
Merit: 3132
Oh I now got it. Imagine having 1BTC and wanting to spam for 1 satoshi. Yeah that would not be nice but it wouldn't ruin the network. Right? It would just burden the nodes' reveiced information.

The mempool would quickly fill with 1 sat/byte transaction and other people would end up filling the mempool with transactions with much higher fees so the spam transactions would be dropped eventually. Apparently, it also used to crash nodes.

Who determines those minimum values? Bitcoin core developers?

Bitcoin Core developers set a default value. Every node operator is free to change the DUST_RELAY_TX_FEE parameter. The default value might be lowered in the future once the default minRelayTxFee value gets lowered.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Oh I now got it. Imagine having 1BTC and wanting to spam for 1 satoshi. Yeah that would not be nice but it wouldn't ruin the network. Right? It would just burden the nodes' reveiced information.

Who determines those minimum values? Bitcoin core developers?
HCP
legendary
Activity: 2086
Merit: 4361
[But why? Even if it takes days to get confirmed why is it forbidden by nodes?
To go back to this point... and a quick "history" lesson.

The concept of "dust" and the resulting implementation of the "minDustRelayFee" was to prevent 'spam'... there was an instance back in the day where the network was "attacked" (some say 'tested' Tongue) by someone sending vast amounts of very very very small transactions. Think about it... if you wanted to "DoS" Bitcoin, what better way than to flood the network with 100000's of transactions... which would cost you next to nothing if you could send just 1 sat, and use something less than 1 sat/byte.

Thus the minimums were set.


Yes... currently it's 546 sats.
It's (148+34)*3=546 sats for legacy transactions. For segwit it's (67+31)*3=294 sats.
https://github.com/bitcoin/bitcoin/blob/master/src/policy/policy.cpp#L16
[/quote]
SegWit... making nice and easy explanations "difficult" since 2017 Roll Eyes Tongue

Seriously tho, thanks for expanding on my quick and dirty explanation... I think it is an important point that SegWit has more benefits than just "smaller fees" Wink
legendary
Activity: 1848
Merit: 2033
Crypto Swap Exchange
Wait, what dust outputs means? Too few bitcoins?
Yes... currently it's 546 sats.
It's (148+34)*3=546 sats for legacy transactions. For segwit it's (67+31)*3=294 sats.
https://github.com/bitcoin/bitcoin/blob/master/src/policy/policy.cpp#L16
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
--snip--


Now what? How insufficient? I have 609 satoshi...

Well, if you read my previous post, that's what i told you...

Electrum will only allow you to create a tx with 1 sat/byte, your transaction has a size that's over 63 bytes, so there is insufficient funds

Oh I now got it. 113 TX bytes. So 113 satoshi aren't enough...

I added a ridiculous fee just because I was curious  Grin :

--snip--

Okay, I admit my inadequacy...

No problem, everybody has to learn someday.

In your case, you would have needed an unspent output with minimum value of 659 sats:
546 sats (to get over the dust limit) + 113 sat (as a minmum tx fee since you tx is 113 bytes and tx's with a fee under 1 sat/byte will not be created by electrum's gui interface).

It IS possible to manually create a transaction with a 63 sat fee, altough it probably will be rejected by most nodes.
It IS possible to manually create a transaction with an unspent output under the dust limit, altough it probably will be rejected by most nodes.

Your wallet is just anticipating on the fact allmost all  nodes will reject such transactions, and it is programmed not to create such transactions from the gui.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
--snip--


Now what? How insufficient? I have 609 satoshi...

Well, if you read my previous post, that's what i told you...

Electrum will only allow you to create a tx with 1 sat/byte, your transaction has a size that's over 63 bytes, so there is insufficient funds

Oh I now got it. 113 TX bytes. So 113 satoshi aren't enough...

I added a ridiculous fee just because I was curious  Grin :



Okay, I admit my inadequacy...
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
--snip--


Now what? How insufficient? I have 609 satoshi...

Well, if you read my previous post, that's what i told you...

Electrum will only allow you to create a tx with 1 sat/byte, your transaction has a size that's over 63 bytes, so there is insufficient funds. Electrum has this minimum because the developer knows that a tx with a fee of less than 1 sat/byte will also be rejected by most nodes.

Your transaction is probably ~140 bytes, so if you chose a 1 sat/byte fee and want to fund an address with 546 sat, you'll need a balance of ~686 sat, which you don't have.

That's why my previous post clearly indicated that those funds are more or less "stuck" unless you fund your wallet with some extra sat's... The only thing you did was prove what i said before.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
So in a nutshell, I can't send any amount to any address with the my current balance.

You have 0.00609 mBTC, thats 609 satoshi's. Any output value under 546 will be considered dust.
609-546 = 63

So, you could create a tx funding an address with 546 satoshi's, this transaction would not violate the rule you're currently violating. However, most nodes also have a rule not to relay transaction that do not have a minimum fee per vbyte. Most likely your transaction sending 546 satoshi's would break THAT rule instead since you only have 63 satoshi's left for the fee and even a 1 input 1 output transaction from a native segwit wallet is to big to be relayed with a 63 sat fee.

I'm pretty sure you only have one unspent output funding your wallet, since 609 sat is not dividable in 2 unspent outputs that do not break the dust relay setting. But yeah, that one unspent output is more or less "stuck".



Now what? How insufficient? I have 609 satoshi...
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
So in a nutshell, I can't send any amount to any address with the my current balance.

You have 0.00609 mBTC, thats 609 satoshi's. Any output value under 546 will be considered dust.
609-546 = 63

So, you could create a tx funding an address with 546 satoshi's, this transaction would not violate the rule you're currently violating. However, most nodes also have a rule not to relay transaction that do not have a minimum fee per vbyte. Most likely your transaction sending 546 satoshi's would break THAT rule instead since you only have 63 satoshi's left for the fee and even a 1 input 1 output transaction from a native segwit wallet is to big to be relayed with a 63 sat fee.

I'm pretty sure you only have one unspent output funding your wallet, since 609 sat is not dividable in 2 unspent outputs that do not break the dust relay setting. But yeah, that one unspent output is more or less "stuck" (until you fund one of the addresses of this wallet with more unspent outputs).
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
So in a nutshell, I can't send any amount to any address with the my current balance.
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC

Aren't signatures be written to the blockchain? Even encrypted so only the sender and the receiver can read it.

nope, not the kind of signatures you are talking about.

How else could it arrive to the receiver except

By email? By text message? in a PM? Posted on a forum? Carved in stone?

So, is there a minimum amount I can spend? What number is it?
HCP already answered this in this very thread: https://bitcointalksearch.org/topic/m.54428683
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Does the receiver has to verify it with his signature in order to read it? Can't be publicly seen with a blockchain explorer?

It can't be seen any block explorer. You need to provide the recipient with the signature, signed message and the address which you used for signing.


Aren't signatures be written to the blockchain? Even encrypted so only the sender and the receiver can read it. How else could it arrive to the receiver except blockchain?



Quote
In your case, you don't have to look at any unspent outputs funding change addresses tough... You're trying to send 100 satoshi's, meaning you're trying to fund an address with an unspent output of 100 sat, this in itself is dust and will cause your transaction to be rejected.

But why? Even if it takes days to get confirmed why is it forbidden by nodes?

You're mixing up the unspent output that's being created and the fee. If you'd try to send 100 satoshi's and payed a 500000000 sat/vbyte fee, it would still be rejected.

It's because all those unspent outputs have to be stored in all the node's utxo db. There is/was a concensus that nobody wanted to waste space on an unspent output of a couple satoshi's.

So, is there a minimum amount I can spend? What number is it?
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC

Quote
In your case, you don't have to look at any unspent outputs funding change addresses tough... You're trying to send 100 satoshi's, meaning you're trying to fund an address with an unspent output of 100 sat, this in itself is dust and will cause your transaction to be rejected.

But why? Even if it takes days to get confirmed why is it forbidden by nodes?

You're mixing up the unspent output that's being created and the fee. If you'd try to send 100 satoshi's and payed a 500000000 sat/vbyte fee, it would still be rejected.

It's because all those unspent outputs have to be stored in all the node's utxo db's. IIRC, there is/was a general concensus that nobody wanted to waste space on an unspent output of a couple satoshi's. That's why they chose a "minimum" unspent output value that they felt comfortable spending space on and decided not to accept transactions under said minimum into their mempool, nor would they relay them to other nodes.

It would be possible to run a node with a much lower limit, if you found a node witch has altered the default value, you could probably broadcast your transaction to that node, but that node wouldn't be able to relay the tx to other nodes, since the other nodes would reject it (due to dust output)
legendary
Activity: 1876
Merit: 3132
Does the receiver has to verify it with his signature in order to read it? Can't be publicly seen with a blockchain explorer?

It can't be seen on any block explorer. You need to provide the recipient with the signature, signed message and the address which you used for signing. The recipient can read your message without verifying it since it is not encrypted, but the whole point of signing a message is proving that you are in control of a certain address.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Quote
Yes, have a look under "Tools -> Sign/verify Message"... Note that this doesn't involve creating or sending a transaction. It's just digitally signing a given message with a given address.

Does the receiver has to verify it with his signature in order to read it? Can't be publicly seen with a blockchain explorer?

Quote
In your case, you don't have to look at any unspent outputs funding change addresses tough... You're trying to send 100 satoshi's, meaning you're trying to fund an address with an unspent output of 100 sat, this in itself is dust and will cause your transaction to be rejected.

But why? Even if it takes days to get confirmed why is it forbidden by nodes?
legendary
Activity: 3584
Merit: 5243
https://merel.mobi => buy facemasks with BTC/LTC
In your case, you don't have to look at any unspent outputs funding change addresses tough... You're trying to send 100 satoshi's, meaning you're trying to fund an address with an unspent output of 100 sat, this in itself is dust and will cause your transaction to be rejected by allmost all nodes.
Pages:
Jump to: