Ruckus42
Newbie
Offline
Activity: 3
Merit: 0
|
|
September 23, 2014, 05:11:39 AM |
|
Problem: I'm trying to send 0.00619512 BTC. I have 0.28831103 BTC. Mycelium tells me I have "insufficient funds." Make sure the funds have more than 0 confirmations (swipe to the right and check that the topmost transaction has some confirmations), and that you are not spending from a watch only address. 2 transactions. One with 5200 confirmations, one with 14477. What's a watch only address? I have one address set as the main address. I loaded it in from a backup.
|
|
|
|
trasla
|
|
September 23, 2014, 06:49:48 AM |
|
When you go to the Keys tab, is there a key icon next to the address you are trying to send from? If not, you have probably scanned the address from your backup instead of the private key. Does the correct balance show on the main screen? In which way do you try to send? Do you hit send, use clipboard, just scan with the scan button, use the cold storage functionality?
|
|
|
|
RustyNomad
|
|
September 23, 2014, 04:20:39 PM |
|
HELP Something I encountered today on the 2.0 RC1 version. I tried to make a backup. Wrote down the seed words and was asked to enter word 1 of 12. I entered the word and nothing. Pressed 'Done' on the keyboard and still nothing. Tried to enter all the words but same result. So not sure whether this option has been 'replaced' with the 'Secure My Funds'. I did try the 'Secure My Funds' but cannot go through that at present as I still have my old key and I'm waiting for a payment on it before moving everything to the HD wallet.
|
|
|
|
trasla
|
|
September 24, 2014, 12:05:20 AM |
|
When entering the words, autocomplete suggestions are shown, based on the list of possible words. Just select the matching one.
|
|
|
|
|
Rassah
Moderator
Legendary
Offline
Activity: 1680
Merit: 1035
|
|
September 24, 2014, 07:32:01 AM |
|
We had an issue with Server 1, again. We decided to finally replace it. If something like this happens to your wallet again, exit out of Mycelium and start it again. It will pick another server at random, and will probably pick a different one from the one that locked up.
|
|
|
|
Ruckus42
Newbie
Offline
Activity: 3
Merit: 0
|
|
September 24, 2014, 11:03:51 AM |
|
When you go to the Keys tab, is there a key icon next to the address you are trying to send from? If not, you have probably scanned the address from your backup instead of the private key. Does the correct balance show on the main screen? In which way do you try to send? Do you hit send, use clipboard, just scan with the scan button, use the cold storage functionality?
Ah, no, I don't see the key icon. I thought I had scanned my private key. Yes, the correct balance does show on the main screen. So do I have to load my backup again in a different way? Only scan the private key? I was trying to send via QR scan. The keyboard/clipboard functions seem to be missing too. Screenshot: https://i.imgur.com/ugVeQmN.pngEdit: Deleted the address. Scanned private key from backup and used decryption code. All working again.
|
|
|
|
Richy_T
Legendary
Offline
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
September 24, 2014, 02:25:22 PM Last edit: September 24, 2014, 02:36:17 PM by Richy_T |
|
I had to wipe my phone the other day. I did have a full backup of the data dir first though. I have a QR backup of my main Bitcoin account but since I also had a couple of watch-only addresses and I'm sitting at the computer anyway, I'm wondering if/how I can pull it out of the backup. I'm comfortable using SQLite though data.xml looks like a more likely candidate. Anyone know exactly how to pull these things out?Answered previously, here. https://bitcointalk.org/index.php?topic=309895.0Thanks apetersson
|
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
|
Rassah
Moderator
Legendary
Offline
Activity: 1680
Merit: 1035
|
|
September 24, 2014, 03:22:55 PM |
|
For future reference, this is what it looks like if you select a watch only address. You can receive to it, but not send from it, so the send button disappears.
|
|
|
|
Richy_T
Legendary
Offline
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
September 24, 2014, 05:38:51 PM Last edit: September 24, 2014, 05:50:30 PM by Richy_T |
|
Hi guys, I was having a little trouble working out a nice, safe way to get my private keys out of the data.xml for importation back into Mycelium. I think I could have used bitaddress.org but I decided to write something to do it for me. I'm letting it out to the public in case anyone else might find it useful (it also might be interesting to study for other purposes). It must be run in the same directory as the data.xml and it will spit out a list of the public, private and WIF encoded keys to the terminal and will create a webpage with the public and private keys listed on it as QR codes ready for scanning (I would recommend using a browser on the local filesystem to open it and not having it on a live web server (unless you're totally internet disconnected and probably not even then)). This may be useful for creating a paper backup even. You may want to increase the level of the QR code in that case. Currently set to "L" for low. #!/usr/bin/perl #Copyright 2014 Richard Thomas #Free for noncommercial use #Commercial license available on request. #Tips to: 13qnEgPTxJW6mm88dLpnHXZyryN5EXBciq
use XML::Simple qw(:strict); use Imager::QRCode; use Math::GMP; use Digest::SHA qw{sha256}; use strict; use warnings;
my $qrcode = Imager::QRCode->new( size => 4, margin => 2, version => 1, level => 'L', casesensitive => 1, lightcolor => Imager::Color->new(255, 255, 255), darkcolor => Imager::Color->new(0, 0, 0), );
my $p1 = XMLin('data.xml',KeyAttr => { string => 'name' },ForceArray=>['string']); my $c=$p1->{'string'}->{'records'}->{'content'}; my @v=split('\\|',$c); my $p=2; open (my $fp, ">" ,"index.html") or die ("Must be writeable"); print $fp "<html><head><title>My keys</title></head><body>\n"; print $fp "<table>\n"; print $fp "<tr><td>Wallet</td><td>Public</td><td>Private</td></tr>\n"; while($p<scalar(@v)){ print $fp "<tr><td>$v[$p]</td><td><img src=\"$v[$p].gif\"></td><td>"; print "$p $v[$p] $v[$p+2] " , key2wif($v[$p+2]) . "\n"; my $img=$qrcode->plot($v[$p]); $img->write(file=>"$v[$p].gif"); if($v[$p+2]){ $img=$qrcode->plot(key2wif($v[$p+2])); $img->write(file=>"$v[$p]_private.gif"); print $fp "<img src=\"$v[$p]_private.gif\">"; } print $fp "</td></tr>\n"; $p+=8 } print $fp "</table>\n"; print $fp "</body>\n"; close $fp;
sub key2wif{ my $key=shift; my $out = hex2bin($key); my $out2=$out= "\x80" . $out; $out=sha256($out); $out=sha256($out);
$out=$out2.substr($out,0,4); $out=gmpdec58(bin2hex($out)); return $out; }
sub bin2hex{ my $b=shift; return unpack("H*",$b); } sub hex2bin{ my $h=shift; return pack("H*" ,unpack("A*" ,$h)); } sub gmpdec58{ my $h=shift; my $base58chars = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"; my $t=''; my $remain=Math::GMP->new("$h",16); my $c=0; while($remain!=0 && $c++<2000){ my $last=$remain%58; $remain=$remain/58; $t=substr($base58chars,$last,1).$t; } return $t; }
|
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
|
Jan (OP)
Legendary
Offline
Activity: 1043
Merit: 1002
|
|
September 24, 2014, 07:09:37 PM |
|
Hi guys, I was having a little trouble working out a nice, safe way to get my private keys out of the data.xml for importation back into Mycelium. I think I could have used bitaddress.org but I decided to write something to do it for me. I'm letting it out to the public in case anyone else might find it useful (it also might be interesting to study for other purposes). It must be run in the same directory as the data.xml and it will spit out a list of the public, private and WIF encoded keys to the terminal and will create a webpage with the public and private keys listed on it as QR codes ready for scanning (I would recommend using a browser on the local filesystem to open it and not having it on a live web server (unless you're totally internet disconnected and probably not even then)).
This may be useful for creating a paper backup even. You may want to increase the level of the QR code in that case. Currently set to "L" for low.
Pretty cool stuff With Mycelium 2.0 we migrate away from using data.xml and store stuff in a sqlite database instead, so there will be a bit of coding to get it out going forward.
|
Mycelium let's you hold your private keys private.
|
|
|
Richy_T
Legendary
Offline
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
September 24, 2014, 08:11:27 PM |
|
Hi guys, I was having a little trouble working out a nice, safe way to get my private keys out of the data.xml for importation back into Mycelium. I think I could have used bitaddress.org but I decided to write something to do it for me. I'm letting it out to the public in case anyone else might find it useful (it also might be interesting to study for other purposes). It must be run in the same directory as the data.xml and it will spit out a list of the public, private and WIF encoded keys to the terminal and will create a webpage with the public and private keys listed on it as QR codes ready for scanning (I would recommend using a browser on the local filesystem to open it and not having it on a live web server (unless you're totally internet disconnected and probably not even then)).
This may be useful for creating a paper backup even. You may want to increase the level of the QR code in that case. Currently set to "L" for low.
Pretty cool stuff With Mycelium 2.0 we migrate away from using data.xml and store stuff in a sqlite database instead, so there will be a bit of coding to get it out going forward. Yeah, I looked in the dbs first. I'm good with all kinds of SQL so that wouldn't be a problem but really, this is a last-ditch kind-of effort anyway and proper backups is the ideal. And if the keys are ever encrypted, it won't help much (though it might still be possible to provide some interface there). Ah well, it was more an excuse to play with keys and QR codes anyway Hey, if you have another round of hiring, you'll announce it here, right? I almost submitted my CV last time.
|
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
|
OnkelPaul
Legendary
Offline
Activity: 1039
Merit: 1005
|
|
September 25, 2014, 07:28:32 AM |
|
Hey, if you have another round of hiring, you'll announce it here, right? I almost submitted my CV last time.
You should probably submit your CV right now anyway, so you're first in line when a new hiring round starts Looks like they're a cool company to work for. Onkel Paul
|
|
|
|
trasla
|
|
September 25, 2014, 08:24:24 AM |
|
Looks like they're a cool company to work for.
They definitely are!
|
|
|
|
gtraah
|
|
September 25, 2014, 12:32:57 PM |
|
Hi,
I just want to figure something out. In the normal classic version, I did a test transaction from a cold storage -- when I send BTC, I have 1 = Input Address & 2 outputs
1 input = 0.2264032 <<< Whats this? Where did this amount come from, it does not match the amount I have in my cold storage
2 Outputs = 0.00049719 & 0.02204313
Now it seems that the 2nd output is the Change, is this correct? Well then now I am confused, How can this be correct when I have more than this change in my wallet I used to send the BTC? Where the HELL did this input amount come from? All I did was send 0.00049719 to an address
Interestingly I did the same test in the new wallet, And the input amount is the amount that's in my wallet, the 2 outputs Equal the amount of the input which then equals the amount in this wallet. It seems like the change wallet is in effect big time in the new wallet, but the current version with non-hd wallet, which I happen to prefer does not make sense at all, I thought the change address was always in act but the old version just automatically sent it back to the same address. Then why cant I see all my change? All I see is this weird random amount of 0.22++
|
|
|
|
trasla
|
|
September 25, 2014, 12:45:51 PM |
|
Hi,
I just want to figure something out. In the normal classic version, I did a test transaction from a cold storage -- when I send BTC, I have 1 = Input Address & 2 outputs
1 input = 0.2264032 <<< Whats this? Where did this amount come from, it does not match the amount I have in my cold storage
2 Outputs = 0.00049719 & 0.02204313
Now it seems that the 2nd output is the Change, is this correct? Well then now I am confused, How can this be correct when I have more than this change in my wallet I used to send the BTC? Where the HELL did this input amount come from? All I did was send 0.00049719 to an address
Interestingly I did the same test in the new wallet, And the input amount is the amount that's in my wallet, the 2 outputs Equal the amount of the input which then equals the amount in this wallet. It seems like the change wallet is in effect big time in the new wallet, but the current version with non-hd wallet, which I happen to prefer does not make sense at all, I thought the change address was always in act but the old version just automatically sent it back to the same address. Then why cant I see all my change? All I see is this weird random amount of 0.22++
The balance of your wallet consists of all "unspent outputs" you have. Showing a single balance is just a convenient way of displaying information to you, technically the coins exist as "chunks". Whenever someone sends money to you, you get one of those chunks. So, what happened in the first case? You wanted to send money, the wallet selected one of the outputs ("chunks") big enough, and created a transaction, which sends out two new outputs, one to the recipient, one with change to you. So the 0.22... was just a part of your balance, but at some point prior to your transaction, you probably have received exactly that amount from someone. In the second case, the reason for the input exactly matching your balance is, that you just have one single unspent output on that address.
|
|
|
|
gtraah
|
|
September 25, 2014, 12:51:25 PM |
|
Hi,
I just want to figure something out. In the normal classic version, I did a test transaction from a cold storage -- when I send BTC, I have 1 = Input Address & 2 outputs
1 input = 0.2264032 <<< Whats this? Where did this amount come from, it does not match the amount I have in my cold storage
2 Outputs = 0.00049719 & 0.02204313
Now it seems that the 2nd output is the Change, is this correct? Well then now I am confused, How can this be correct when I have more than this change in my wallet I used to send the BTC? Where the HELL did this input amount come from? All I did was send 0.00049719 to an address
Interestingly I did the same test in the new wallet, And the input amount is the amount that's in my wallet, the 2 outputs Equal the amount of the input which then equals the amount in this wallet. It seems like the change wallet is in effect big time in the new wallet, but the current version with non-hd wallet, which I happen to prefer does not make sense at all, I thought the change address was always in act but the old version just automatically sent it back to the same address. Then why cant I see all my change? All I see is this weird random amount of 0.22++
The balance of your wallet consists of all "unspent outputs" you have. Showing a single balance is just a convenient way of displaying information to you, technically the coins exist as "chunks". Whenever someone sends money to you, you get one of those chunks. So, what happened in the first case? You wanted to send money, the wallet selected one of the outputs ("chunks") big enough, and created a transaction, which sends out two new outputs, one to the recipient, one with change to you. So the 0.22... was just a part of your balance, but at some point prior to your transaction, you probably have received exactly that amount from someone. In the second case, the reason for the input exactly matching your balance is, that you just have one single unspent output on that address. AHH Wow thanks for the lesson. Nice 1! I learnt something new. So the 1 input = 0.2264032 is actually a transaction or a combination of a few transactions that I have received once before, to the address that I am now sending from?
|
|
|
|
Richy_T
Legendary
Offline
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
September 25, 2014, 01:37:25 PM |
|
Hey, if you have another round of hiring, you'll announce it here, right? I almost submitted my CV last time.
You should probably submit your CV right now anyway, so you're first in line when a new hiring round starts Looks like they're a cool company to work for. Onkel Paul I don't know. I've cold submitted a few in the past and in my experience "We will keep your CV on file" never leads anywhere. Which is understandable. Hiring is usually a process.
|
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
|
Richy_T
Legendary
Offline
Activity: 2576
Merit: 2267
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
September 25, 2014, 01:46:24 PM |
|
AHH Wow thanks for the lesson. Nice 1! I learnt something new.
So the 1 input = 0.2264032 is actually a transaction or a combination of a few transactions that I have received once before, to the address that I am now sending from?
Yeah, change is kinda funky when you first learn about it. Even more fun is that many wallets actually generate a new change address to send the change to (So you end up with many different private keys in a wallet). I prefer the way Mycelium does it though.
|
1RichyTrEwPYjZSeAYxeiFBNnKC9UjC5k
|
|
|
trasla
|
|
September 25, 2014, 01:55:35 PM |
|
So the 1 input = 0.2264032 is actually a transaction or a combination of a few transactions that I have received once before, to the address that I am now sending from?
The input is the output of another transaction, so its probably the full amount sent to you in one single transaction. (Technically, someone could also create a transaction with multiple outputs to the same address, thus dividing the amount you get into several chunks, but I see no reason someone should do that.) If you want to learn more: https://en.bitcoin.it/wiki/Transaction#Input
|
|
|
|
|