Author

Topic: Electrum returns me transaction error on send (Read 389 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: 3139
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: 3139
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: 4363
[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: 3612
Merit: 5297
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: 3612
Merit: 5297
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: 3612
Merit: 5297
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: 3612
Merit: 5297
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: 3612
Merit: 5297
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: 3139
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: 3612
Merit: 5297
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.
HCP
legendary
Activity: 2086
Merit: 4363
Wait, what dust outputs means? Too few bitcoins?
Yes... currently it's 546 sats. The vast majority of nodes will reject any transaction that creates an output that is less than this amount. That includes "change" outputs!


Quote
Oh, no I didn't know that. Can't you sign messages with wallets?
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.
copper member
Activity: 1652
Merit: 1325
I'm sometimes known as "miniadmin"
Wait, what dust outputs means? Too few bitcoins?
Kind of. You are trying to move 0.001mBTC, with a fee of 0.04mBTC. Total transaction will move 0.00552mBTC, and 0.00057mBTC will be left in the wallet. Seeing how many satoshis you have to pay in fees, that remaining 0.00057mBTC will never be able to be used; and if I don't remember it wrong,g that is the "dust".


Quote
Oh, no I didn't know that. Can't you sign messages with wallets?
Signing a message and using a tag are 2 complete different things. You can sign a message, mostly to verify that an address is yours. You then have to provide the person that will verify it with the message, the signature, and the address. It's not like you sign a message and everyone can see it (they can, if you provide the already mentioned things)
legendary
Activity: 3612
Merit: 5297
https://merel.mobi => buy facemasks with BTC/LTC
--snip--
Wait, what dust outputs means? Too few bitcoins?

yes. It's creating an output with a value that's to low. A node could potentially change the default value, but i think it used to be around ~500 sats. Any transaction creating an unspent output smaller than this value would be rejected by nodes having the default configuration.

--snip--
Oh, no I didn't know that. Can't you sign messages with wallets?
Signing messages, sure... But i think you're getting a bit confused about some key concepts here.

The description you're entering in your wallet is basically just a piece of text that will be saved in YOUR wallet file. It does not end up in any transaction that's being generated. It is for your reference only. Even if you delete your wallet and restore it from the seed, those pieces of text will be gone.

Signing a message is using your private key and a piece of text as an input, and creating a signature as output. Using the address belonging to the private key, any individual can verify the signature, but they cannot create a signature with the address alone.

If you want data to be stored in the blockchain, i'd probably point you here: https://en.bitcoin.it/wiki/OP_RETURN

There are also block explorers that allow you to enter metadata for an address/transaction/... This metadata is stored in the (relational) database belonging to the block explorer. It is also not stored into the blockchain, it's just private data belonging to the explorer, data they can show, hide, delete, update,...
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
You forgot to read third line from popups. Transaction couldn't broadcasted due to dust outputs.

Wait, what dust outputs means? Too few bitcoins?

Nodes have a rule against creating dust outputs, you're breaking it.

You know the Description is stored in your wallet only, right? Nobody else will ever see the text "are you alive", it is not broadcasted, it is not included into any blocks, it will never be shown to anybody

Oh, no I didn't know that. Can't you sign messages with wallets?
legendary
Activity: 3612
Merit: 5297
https://merel.mobi => buy facemasks with BTC/LTC
Nodes have a rule against creating dust outputs, you're breaking it.

You know the Description is stored in your wallet only, right? Nobody else will ever see the text "are you alive", it is not broadcasted, it is not included into any blocks, it will never be shown to anybody (well, it's shown to us in the screenshot you created, but that's simply because you created a screenshot)
legendary
Activity: 2408
Merit: 2226
Signature space for rent
You forgot to read third line from popups. "Transaction couldn't broadcasted due to dust outputs."

You may read here what is the bitcoin dust?

Edit,
Wait, what dust outputs means? Too few bitcoins?
You may read from below quote.

Quote
DEFINITION of Bitcoin Dust
Bitcoin dust refers to the small amount of bitcoin which is lower than the minimum limit of a valid transaction.
I am quite sure you are trying to ensure that everything working fine by broadcast a small transaction. So you have to increase your output value, I don't know exactly but you may try several times.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo


I would like to send 1 cent to an address and pay 452 satoshi as a fee but it doesn't let me.

This is the error:



Note that I have changed servers several times but it's still the same...
Jump to: