Author

Topic: Mycelium Bitcoin Wallet - page 111. (Read 586368 times)

Jan
legendary
Activity: 1043
Merit: 1002
January 07, 2014, 09:09:14 AM
Can you ask how blockchain.info does it?
piuk very seldomly responds.
My guess is that they go for a happy-go-lucky approach. If you search for stuck transactions and blockchain.info you get quite a few hits.
hero member
Activity: 668
Merit: 501
January 07, 2014, 05:37:51 AM
Bug report:

When attempting to send from this address: https://blockchain.info/address/1K3bMZ7SvkzoGZTYD5EpYPKbN8PPQKqidG

which currently contains 2.48345024 BTC
and hitting the "max" button to send everything
it will only allow me to send 1.91515024 BTC

Any attempt to enter any larger amount will be denied with "insufficient funds to pay fee".

This address contains only a dozen outputs and a fee of 0.5683 BTC (over 400 Euro!) seems a bit high to me.

Edit: is it maybe the unusual pay-to-pubkey format of some of the unspent outputs? These were generated by Schildbach when It moved coins internally between 2 addresses (this is a key that was formerly used in my Schildbach wallet and was imported into Mycelium). If this is the case then you need to fix it so that it can use these types of outputs as transaction inputs. You will need a different type of signature script for these inputs, only the signature and not the pubkey because the pubkey will come from the output script, see wiki: https://en.bitcoin.it/wiki/Script#Standard_Generation_Transaction_.28pay-to-pubkey.29

Edit2: This will most likely happen more often when people start importing keys from Schildbach. These pay-to-pubkey transactions are generated by Schildbach when it does its emergency transactions, when funds are sent to an old address that was flagged as insecure (due to the Android bug) it will immediately sweep the funds into a new secure address and it will use pay-to-pubkey for it. All these pay-to-pubkey transactions you can see arriving in my above address result from this.

sounds like a bug to me. the fees should not be that high. we will try to reproduce it, but i don't expect a fix extremely soon (realistically, i'd work on that week 20.1-24.1) as a workaround, i'd recommend importing the key  to bitcoin-qt and consolidating the funds there.
hero member
Activity: 938
Merit: 500
https://youengine.io/
January 06, 2014, 05:47:50 PM
Bug report:

When attempting to send from this address: https://blockchain.info/address/1K3bMZ7SvkzoGZTYD5EpYPKbN8PPQKqidG

which currently contains 2.48345024 BTC
and hitting the "max" button to send everything
it will only allow me to send 1.91515024 BTC

Any attempt to enter any larger amount will be denied with "insufficient funds to pay fee".

This address contains only a dozen outputs and a fee of 0.5683 BTC (over 400 Euro!) seems a bit high to me.

Edit: is it maybe the unusual pay-to-pubkey format of some of the unspent outputs? These were generated by Schildbach when It moved coins internally between 2 addresses (this is a key that was formerly used in my Schildbach wallet and was imported into Mycelium). If this is the case then you need to fix it so that it can use these types of outputs as transaction inputs. You will need a different type of signature script for these inputs, only the signature and not the pubkey because the pubkey will come from the output script, see wiki: https://en.bitcoin.it/wiki/Script#Standard_Generation_Transaction_.28pay-to-pubkey.29

Edit2: This will most likely happen more often when people start importing keys from Schildbach. These pay-to-pubkey transactions are generated by Schildbach when it does its emergency transactions, when funds are sent to an old address that was flagged as insecure (due to the Android bug) it will immediately sweep the funds into a new secure address and it will use pay-to-pubkey for it. All these pay-to-pubkey transactions you can see arriving in my above address result from this.
legendary
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
January 06, 2014, 05:29:06 PM
There is still the private key export function in the menu of the keys view. Thus exported keys are not encrypted. There is also the reverse function, key import, activated by the new key icon.

if you like to view the private key directly (without the 2-factor pdf) one of the best ways to secure the key is to take a photo with a old-fashioned (digital) camera and print it.

if you like analog, you need to develop it yourself though Wink

I wonder if you could get light sensitive paper and lay the phone upside-down on top of it for a few minutes Smiley

I have printed the backup directly from the phone before.
hero member
Activity: 938
Merit: 500
https://youengine.io/
January 06, 2014, 11:47:02 AM
Feature request:

If the wallet has multiple keys (addresses) and they have labels then please show the label of the receiving address in the transaction history instead of the sending address. The sending addresses are pretty much meaningless (to me at least and I guess to most other people too), I would rather like to see which of my own addresses has just received a payment. Currently there is no way to determine that information easily, even if I select the transaction details from the menu it won't show me the label, it will only show me the address (which I can't remember, that's why I have given them names in the first place).

Schildbach wallet suffers from the same problem (it has address labels but doesn't actually use them for anything and its author doesn't seem to be interested in fixing it), that's why I moved 5 Keys from Schildbach to Mycelium today, hoping it would work as expected but now I'm a little bit disappointed to see the exact same problem here :-(
legendary
Activity: 1680
Merit: 1035
January 05, 2014, 07:42:17 PM
Can you ask how blockchain.info does it?
Jan
legendary
Activity: 1043
Merit: 1002
January 05, 2014, 08:38:49 AM
I second this. Sometimes I just want to move funds between my own accounts. Besides, with merchant services options coming out soon, you guys are having to work on custom set fees, anyway, right?...
I am not certain what you mean by "merchant services options".

Where the merchant requests the transaction, the transaction is signed by the sender and transferred to the merchant, and the merchant verifies it before broadcasting it to the network. Thus the merchant is able to demand a certain custom sized fee, and decline a transaction if the fee they want is not included.
Regarding zero fees, why not do what blockchain.info does, and allow zero fee transactions, and if they don't get confirmed after 24 hours, scrap the transaction and make the coins spendable again.

Is it so easy to scrap a tx? If it's in everyones mem-pool, would it likely get replaced by a double-spend one with a fee?
Correct. The a relaying node (or miner for that matter) will regard another transaction using the same inputs as a double spend. The transaction has to get removed from the memory pool of receiving nodes before you can send out a version with a higher fee using some of the same inputs. This happens naturally over time (as nodes get rebooted) but it is hard to tell when that will be. So basically some of your inputs are stuck.

(real) Transaction replacement was part of the original Bitcoin protocol, but was disabled pretty early on (if it was ever fully enabled).

Jan
legendary
Activity: 1043
Merit: 1002
January 05, 2014, 08:28:28 AM
I am not certain what you mean by "merchant services options".

Where the merchant requests the transaction, the transaction is signed by the sender and transferred to the merchant, and the merchant verifies it before broadcasting it to the network. Thus the merchant is able to demand a certain custom sized fee, and decline a transaction if the fee they want is not included.
...
Ahh, yes, the payment protocol. We cannot really rely on it right now as it is not really used much yet. Going forward this is likely to change.
donator
Activity: 2772
Merit: 1019
January 05, 2014, 06:57:35 AM
I second this. Sometimes I just want to move funds between my own accounts. Besides, with merchant services options coming out soon, you guys are having to work on custom set fees, anyway, right?...
I am not certain what you mean by "merchant services options".

Where the merchant requests the transaction, the transaction is signed by the sender and transferred to the merchant, and the merchant verifies it before broadcasting it to the network. Thus the merchant is able to demand a certain custom sized fee, and decline a transaction if the fee they want is not included.
Regarding zero fees, why not do what blockchain.info does, and allow zero fee transactions, and if they don't get confirmed after 24 hours, scrap the transaction and make the coins spendable again.

Is it so easy to scrap a tx? If it's in everyones mem-pool, would it likely get replaced by a double-spend one with a fee?
legendary
Activity: 1680
Merit: 1035
January 05, 2014, 02:21:09 AM
I second this. Sometimes I just want to move funds between my own accounts. Besides, with merchant services options coming out soon, you guys are having to work on custom set fees, anyway, right?...
I am not certain what you mean by "merchant services options".

Where the merchant requests the transaction, the transaction is signed by the sender and transferred to the merchant, and the merchant verifies it before broadcasting it to the network. Thus the merchant is able to demand a certain custom sized fee, and decline a transaction if the fee they want is not included.
Regarding zero fees, why not do what blockchain.info does, and allow zero fee transactions, and if they don't get confirmed after 24 hours, scrap the transaction and make the coins spendable again.
legendary
Activity: 980
Merit: 1004
Firstbits: Compromised. Thanks, Android!
January 04, 2014, 05:04:10 PM
The thing is that your transaction may not only "get somewhat delayed", it may never confirm at all. By paying 0.0001 for each 1000 bytes of transaction size (round up) it stays above the minimum relay fee required by nodes relaying the transaction to miners. Those are the rules of the network.
If we don't follow those rules users will experience transactions getting stuck. "freeing" your coins after that can be a nightmare, there are many threads on this forum on this topic. This will hit us (the developers) with a slew of angry users, as they will blame the wallet, and I really hate having angry users.

I support keeping the mandatory minimum 0.0001 fee. There are plenty or reasons for it to stay, and it's worth it to maintain the simplicity of the app.


Message signing is in the works.

Nice!


Is there a way to get rid of the "backup missing" message?
The "backup missing" message is shown as long as you have a private key which was created by the wallet and which hasn't been backed up with verification.
Private keys imported (e.g. from paper) are verified by default, as you have proven to have an external source (backup) of the key. One way to get around this is to create a private key by external means and import it to the wallet, and then delete the automatically generated initial key.

The "backup missing" message may look annoying, but I think it makes sense to not change the requirements for removing it.
Jan
legendary
Activity: 1043
Merit: 1002
January 04, 2014, 05:13:17 AM
Is there a way to get rid of the "backup missing" message?
The "backup missing" message is shown as long as you have a private key which was created by the wallet and which hasn't been backed up with verification.
Private keys imported (e.g. from paper) are verified by default, as you have proven to have an external source (backup) of the key. One way to get around this is to create a private key by external means and import it to the wallet, and then delete the automatically generated initial key.

Why do you need to print off the PDF and then scan it in to verify? I don't want to make a print of it.
You don't have to print the PDF. You can scan it from the display of your computer.
The reason for verifying is that you may have made a mistake when you made the backup.
  • The PDF send to a wrong email address, or you accidentally deleted it before printing ...
  • The password not written down correctly/readable
A backup that does not work is worse than no backup at all, as you think you are good.

More coins have been lost due to lack of backups than due to theft. We really want to help users not loosing coins.
Jan
legendary
Activity: 1043
Merit: 1002
January 04, 2014, 05:00:10 AM
Any updates on message signing with mycelium? copy/paste buttons on the gui would be handy too (for message signing, and generally copying addresses)

Message signing is in the works.
Jan
legendary
Activity: 1043
Merit: 1002
January 04, 2014, 04:59:25 AM
I second this. Sometimes I just want to move funds between my own accounts. Besides, with merchant services options coming out soon, you guys are having to work on custom set fees, anyway, right?...
I am not certain what you mean by "merchant services options".
In the fee space bitcoin-qt 0.9 will have some changes for getting a "fee market" going, which will calculate fees dynamically depending on fees paid in previous blocks. We will implement something along those lines. Here are some of my thoughts on this topic: https://bitcointalksearch.org/topic/to-fee-or-not-to-fee-166302
Jan
legendary
Activity: 1043
Merit: 1002
January 04, 2014, 04:32:43 AM
Fee
The fee is calculated to be 0.0001 for each 1000 bytes of transaction size. This way the fee matches the minimum relay fee enforced by bitcoin nodes. If you go below that you risk that your transaction gets stuck in the network and never confirms. If we allow users to go below that, and blame it on us when their transactions get stuck.
I totally get your point.

Nonetheless, can you please (only in Expert mode, and perhaps with the information from your quote above as warning) add the possibility to customize the fee? How about: in Export mode by default still use 0.1 mBTC per 1000 bytes, but make it editable, and mention "recommended fee = xxx" in the edit fee screen/popup.

There are many occasions where I really don't care if a tx gets somewhat delayed or not (when transferring funds to myself, for example) and in Expert mode, one can be assumed to understand the difference.
The thing is that your transaction may not only "get somewhat delayed", it may never confirm at all. By paying 0.0001 for each 1000 bytes of transaction size (round up) it stays above the minimum relay fee required by nodes relaying the transaction to miners. Those are the rules of the network.
If we don't follow those rules users will experience transactions getting stuck. "freeing" your coins after that can be a nightmare, there are many threads on this forum on this topic. This will hit us (the developers) with a slew of angry users, as they will blame the wallet, and I really hate having angry users.

Fees in Bitcoin are quite complex and most users who consider themselves experts do not understand how it works.

All that said there is something we can do. The rules of the relaying nodes are not there to guarantee the miner some mining profit. The rules are there to limit transaction spam... a DOS attack filter, that prevents someone to send transactions to himself indefinitely, filling up the memory pool of relaying nodes. When the relay rules were introduced a portion of the memory pool / block size was reserved for what is called priority transactions. In short a transaction gets a priority according to the "age" of its inputs. If the "age" is sufficiently "old" (details here). Nodes will relay a priority transaction with a zero fee. Relaying does not guarantee inclusion in a block, and if the network continues to grow without the 1 MB block limit rising (or some other technical advancement) then the fees are bound to rise above the minimum relay fee.

Until now Mycelium has not considered zero fee high priority transactions. Something to work on.
hero member
Activity: 784
Merit: 501
January 03, 2014, 08:54:52 PM
Is there a way to get rid of the "backup missing" message? Why do you need to print off the PDF and then scan it in to verify? I don't want to make a print of it.
legendary
Activity: 1680
Merit: 1035
January 03, 2014, 12:24:50 AM
I second this. Sometimes I just want to move funds between my own accounts. Besides, with merchant services options coming out soon, you guys are having to work on custom set fees, anyway, right?...
legendary
Activity: 1176
Merit: 1011
January 02, 2014, 08:44:11 AM
Fee
The fee is calculated to be 0.0001 for each 1000 bytes of transaction size. This way the fee matches the minimum relay fee enforced by bitcoin nodes. If you go below that you risk that your transaction gets stuck in the network and never confirms. If we allow users to go below that, and blame it on us when their transactions get stuck.
I totally get your point.

Nonetheless, can you please (only in Expert mode, and perhaps with the information from your quote above as warning) add the possibility to customize the fee? How about: in Export mode by default still use 0.1 mBTC per 1000 bytes, but make it editable, and mention "recommended fee = xxx" in the edit fee screen/popup.

There are many occasions where I really don't care if a tx gets somewhat delayed or not (when transferring funds to myself, for example) and in Expert mode, one can be assumed to understand the difference.
newbie
Activity: 57
Merit: 0
January 02, 2014, 02:05:04 AM
Any updates on message signing with mycelium? copy/paste buttons on the gui would be handy too (for message signing, and generally copying addresses)
donator
Activity: 2772
Merit: 1019
December 30, 2013, 12:10:43 PM
Christmas is over, and I hope you had a good one!

Would BIP32 be an option for mycelium?

I really don't like the single address (well, multiple single address) approach any more. It's just not good for anyones privacy.

I know this would be a huge change, both on the usability side as well as on your server infrastructure, but is it something you have considered and why did you decide against it? Are the reasons related to the bitcoincard somehow?


BIP32 is part of the plans for Mycelium, but as you say it is a big change, and we simply haven't gotten there yet. Our focus right now are features that allow new users to discover bitcoin and make it easy to get some coins (get their feet wet).
Andreas and I working on Mycelium full time, but we can see that we really need some more man-power, in particular developers. So if you are a skilled developer who is not afraid of Java and Android, and live in the Vienna neighborhood, send me a PM.


If I wasn't fully booked I'd probably jump on this offer. Couple months of Vienna working on a bitcoin wallet sounds nice.

It's good to hear you're on BIP32 integration.

I hope you will also consider integrating import of an extended public key into the address book so we can use that for recurring payments as described in this use case.
Jump to: