Author

Topic: electrum technical question (Read 1000 times)

member
Activity: 91
Merit: 10
April 15, 2013, 10:38:57 PM
#13
 Angry Sad
sr. member
Activity: 448
Merit: 254
April 12, 2013, 08:40:25 PM
#12
I just opened Electrum with the network disabled and was able to export private keys, so I could have imported them into bitcoin-qt or something and never used Electrum again, no problem.  Like you say, you should probably test it yourself and more thoroughly than I did.

Well... I've been programming for about 30 years on systems large and small, but that doesn't mean much -- being a programmer doesn't magically impart knowledge about everything computer-related. It also doesn't imply having time to delve into the code of every open-source project that I want to use.

Trust is a spectrum, not binary. My trust for Bitcoin as a currency system is different than my trust for a Web-based wallet, for example. And I do use the bitcoin-qt client, which also falls somewhere along that trust spectrum. I'm just trying to efficiently refine my understanding of where on that spectrum I should be placing Electrum. If it's more trustworthy than I originally assessed, then I will use it more, as it does have usability advantages over bitcoin-qt.

True, I'm a programmer myself, though less experienced than you.  Sometimes I "audit" programs I'm using, but I kind of laugh at myself because it's such a cursory inspection, like I'm looking for
Code:
#### This is where we steal the keys ####
serverUrl = "http://evil.com/keys"

Like you say, it's impractical to really know and check everything there is to check.  People with dozens of years of crypto experience routinely find little weaknesses in algorithms their peers created.

I suppose to be really safe, you might want to "practice" transferring the Electrum keys from just the seed.  Perhaps download a utility that can do it and make sure you understand it and see that it has no reliance on Electrum servers.
newbie
Activity: 50
Merit: 0
April 12, 2013, 08:33:53 PM
#11
Like you said, it comes down to the seed.  The client is locally regenerating your private keys on the phone, from the seed.  It can then derive all the public addresses and have the Electrum server search the blockchain for relevant transactions, to "synchronize" between devices.

But if the servers are all gone, there's no server to do that. Can an Electrum client independently regenerate everything it needs to export funds without having any server access?

Yes, exactly. The key generation from the seed is done in the client with no need for a connection to the server. Then you could export the private keys and import them into another wallet. Then that wallet can scan the blockchain to recreate the accounting of your balance.

OK, that makes sense -- and that would make my first response in this thread incorrect. I should be able to test this myself, rather than trusting anybody's word on it, by disconnecting from the network, firing up a fresh Electrum client, and verifying that I can get my funds into a different wallet. (That opens up some new questions, but I'll research those separately.)

Thanks for your help.
sr. member
Activity: 382
Merit: 253
April 12, 2013, 08:28:05 PM
#10
Like you said, it comes down to the seed.  The client is locally regenerating your private keys on the phone, from the seed.  It can then derive all the public addresses and have the Electrum server search the blockchain for relevant transactions, to "synchronize" between devices.

But if the servers are all gone, there's no server to do that. Can an Electrum client independently regenerate everything it needs to export funds without having any server access?

Yes, exactly. The key generation from the seed is done in the client with no need for a connection to the server. Then you could export the private keys and import them into another wallet. Then that wallet can scan the blockchain to recreate the accounting of your balance.
newbie
Activity: 50
Merit: 0
April 12, 2013, 08:22:02 PM
#9
Like you said, it comes down to the seed.  The client is locally regenerating your private keys on the phone, from the seed.  It can then derive all the public addresses and have the Electrum server search the blockchain for relevant transactions, to "synchronize" between devices.

But if the servers are all gone, there's no server to do that. Can an Electrum client independently regenerate everything it needs to export funds without having any server access?

If you're a newbie/non-programmer, I suppose you can't really trust anything, but you apparently trust the Bitcoin network.  If you're worried about it, use the bitcoin-qt client, as you're already indirectly trusting it to be the backbone of the network.

Well... I've been programming for about 30 years on systems large and small, but that doesn't mean much -- being a programmer doesn't magically impart knowledge about everything computer-related. It also doesn't imply having time to delve into the code of every open-source project that I want to use.

Trust is a spectrum, not binary. My trust for Bitcoin as a currency system is different than my trust for a Web-based wallet, for example. And I do use the bitcoin-qt client, which also falls somewhere along that trust spectrum. I'm just trying to efficiently refine my understanding of where on that spectrum I should be placing Electrum. If it's more trustworthy than I originally assessed, then I will use it more, as it does have usability advantages over bitcoin-qt.
sr. member
Activity: 448
Merit: 254
April 12, 2013, 07:37:57 PM
#8
Electrum doesn't host your wallet, just the blockchain.

According to their site, "Electrum... protects you from losing coins in a backup mistake or computer failure, because your wallet can be recovered [and you] can use the same wallet on different computers, it will auto-synchronize."

If I can lose my PC in a fire and use an Android client for Electrum to access my wallet, how is it that Electrum is not storing my wallet, i.e., controlling the private keys, allowing them to walk away with my funds if that was their intent? I understand (to a limited degree) this is connected to the seed that is generated when the wallet is created, but if Electrum disappeared (i.e., if I could never again access any servers), how is that seed going to help me and what would happen to the funds in the wallet?

This may be a newbie question, but it directly affects how much I trust Electrum for storage of non-trivial balances.


Like you said, it comes down to the seed.  The client is locally regenerating your private keys on the phone, from the seed.  It can then derive all the public addresses and have the Electrum server search the blockchain for relevant transactions, to "synchronize" between devices.  Neither the seed, nor your private keys, ever go to the Electrum server (well, that's the claim -- I haven't actually verified the code. And why would you trust me if I said I did?)  If their servers disappear, you can still open the client and locally export private keys into another client you trust, without a connection to their servers.

If you're a newbie/non-programmer, I suppose you can't really trust anything, but you apparently trust the Bitcoin network.  If you're worried about it, use the bitcoin-qt client, as you're already indirectly trusting it to be the backbone of the network.
newbie
Activity: 50
Merit: 0
April 12, 2013, 07:18:30 PM
#7
Electrum doesn't host your wallet, just the blockchain.

According to their site, "Electrum... protects you from losing coins in a backup mistake or computer failure, because your wallet can be recovered [and you] can use the same wallet on different computers, it will auto-synchronize."

If I can lose my PC in a fire and use an Android client for Electrum to access my wallet, how is it that Electrum is not storing my wallet, i.e., controlling the private keys, allowing them to walk away with my funds if that was their intent? I understand (to a limited degree) this is connected to the seed that is generated when the wallet is created, but if Electrum disappeared (i.e., if I could never again access any servers), how is that seed going to help me and what would happen to the funds in the wallet?

This may be a newbie question, but it directly affects how much I trust Electrum for storage of non-trivial balances.
newbie
Activity: 13
Merit: 0
April 12, 2013, 06:24:28 PM
#6
So if the Electrum servers (there are multiple) all went down what you would do is export your private keys from your Electrum wallet and import them into another wallet. Then you would be able to spend your bitcoins again.
[/quote]

That's good to know.  I was also wondering what would happen if all of the Electrum servers were to disappear someday.
sr. member
Activity: 382
Merit: 253
April 12, 2013, 06:04:59 PM
#5
If Electrum hosts your wallet (technically, your private keys) and they disappear, I do believe that means your money disappears with them. There's no way to spend/sell coins that you don't control. It's not as insecure as Instawallet was, but it's not like having direct control over your wallet (keys). It may be good for convenience, but when you start talking about real money (which is personally defined -- what I consider "real money" others would consider petty cash -- it's basically an amount you'd really hate to lose), you'd better move those funds to something over which you have direct control.


Electrum doesn't host your wallet, just the blockchain.

Traditional wallets hold both your private keys and a copy of the blockchain. But the blockchain is huge and getting bigger all the time.

So if the Electrum servers (there are multiple) all went down what you would do is export your private keys from your Electrum wallet and import them into another wallet. Then you would be able to spend your bitcoins again.
newbie
Activity: 50
Merit: 0
April 12, 2013, 04:01:19 AM
#4
encounter the same issue

Encounter what issue? OP was not saying there was a problem, nor was I. It was a hypothetical question.
newbie
Activity: 10
Merit: 0
April 12, 2013, 03:58:39 AM
#3
encounter the same issue
newbie
Activity: 50
Merit: 0
April 12, 2013, 02:10:38 AM
#2
If Electrum hosts your wallet (technically, your private keys) and they disappear, I do believe that means your money disappears with them. There's no way to spend/sell coins that you don't control. It's not as insecure as Instawallet was, but it's not like having direct control over your wallet (keys). It may be good for convenience, but when you start talking about real money (which is personally defined -- what I consider "real money" others would consider petty cash -- it's basically an amount you'd really hate to lose), you'd better move those funds to something over which you have direct control.

Edit: See discussion below.
newbie
Activity: 29
Merit: 0
April 12, 2013, 01:08:36 AM
#1
Total noob question.  As I understand it, Electrum is the easy way to get a wallet.  What happens if Electrum disappears tomorrow?  Since the Electrum site is helping me get the wallet, what happens to the wallet and all my bitcoins if Electrum is gone?  How do I access and sell those bitcoins without Electrum?  Please a step by step guide for a non-techie would be helpful.
Jump to: