In 1.8.6 (the last version Android was updated), the "Show Seed" window would display a QR code that contained the hex version of the seed. Note that this is not just the hex representation of the english letters of the seed, there is a calculation algorithm using the indices of the words on a wordlist and calculates the hex seed.
In 1.9.8 the "Show Seed" window displays a QR code that contains the English words of the seed (iow. the seed BEFORE being converted into hex)
Because of this, scanning the "Show Seed" window's QR to restore the Android version creates a different wallet from the actual wallet.
This can be avoided in the Android client by typing in the 12 word seed manually with your device's keyboard.
I created my wallet in 1.9.8 so the QC code would work? Still, when typing in the seed manually, other wallets like Wallet32 didn't recognize it because it wasn't in a mnemonic word list, so setting aside the QC issue and just looking at the 12 words what could cause that kind of mismatch? What's the likelihood that future versions won't be able to recognize the 12 words created today? I took a look at the hex values and you are right. It's not a straight hex representation. So does the calculation algorithm update making old versions unable to be restored?
No. It merely means that if someone has your seed (the 12 word phrase given to you on startup) they can generate all your private keys. This is why you must protect your 12 word phrase as if it was your private keys. (because it is ALL your private keys)
The password you enter AFTER the phrase is ONLY to encrypt the seed on your computer. That way if anyone hacks into your computer and finds your wallet file, they can't see your 12 word phrase, because it is encrypted with your password (the one you entered AFTER the seed)
Oh, I see. So I don't have to have the password and seed memorized, just the seed. That's very good to know. If I backup the wallet file would it follow the same encryption?
I read on Coindesk that when the FBI seized the Silk Road wallets they could see how many Bitcoins were in one of them, but couldn't move it because it was encrypted. Is that true? That without figuring out the password there is no way that they could use the money even if they have access to the Bitcoin wallet file? And if that's true wouldn't that mean that, technically, he will get all his money back in 30 years when he gets out of prison just by memorizing his seed?
In general, I gauge security based on a government's inability to break it. I trust Truecrypt because the government can't break it. If they can't it becomes less likely that a less organized attacker could. Knowing that the government can't freeze assets even with the wallet file in their possession makes Bitcoin feel more secure if true.
Your second paragraph makes no sense, (or at least I couldn't understand it) but it doesn't matter, because the premise (that someone can derive your private keys just from your addresses) is false.
I see. I misunderstood you. I thought that you could learn something from the addresses because of the math, so I thought that if you could randomize the address list in some user controlled way that would improve things, but if you can't derive anything from the sequence it wouldn't matter anyway.
Now, I don't suppose the new Electrum App will have any merchant features? Or a merchant version? I tried the Coinbase Merchant app, but it had too many errors to really be suitable for business use.
Electrum has a merchant script that you can use on your own server. But you need enough programming knowledge to run your own server and run the electrum merchant script.
That's good to know. I'm not there yet myself. (I have limited experience in C, C++, C#, Visual Basic .NET, and ASM) My primary major is in genetic engineering, but I have a second major in computer science so I will eventually want to work with programming like that. I have some ideas for genetic databases that would really benefit from P2P network protocols so I really should learn all about this stuff eventually. Just not right now.
There's no clean package like Coinbase etc.
I wouldn't really consider what they have "clean". It looks clean, but there were multiple errors and infinite loops. I wasn't able to complete a single test transaction and usability is more important than appearance.
Ok since I see there is a pretty active discussion going here, I also have a question which I want to ask which relates to security.
Is this possible that when an attacker knows all the list of addresses that belong to the same seed, the attacker can actually find a way to decrypt or reverse engineered (assuming based on the predetermined sequence) and find out the 12-word seed. Let's give an example, everytime you spend you generate a change address. If you spend from the same wallet address repeatedly many times, you will end up with quite a number of change addresses which are all originating from the same seeds. Assuming an attacker finds out these addresses belongs to electrum from the same seed, using the combination of addresses will the guy be able to reverse engineer and decode the seed?
No.
Then what, if anything, can be determined from knowing a long sequential list of used addresses? Assuming of course an attacker knew exactly what each address was and that they all belonged to the same wallet?