Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: xabbix on December 19, 2013, 11:06:08 AM



Title: Security comparison between Bitcoin-QT and BIP38
Post by: xabbix on December 19, 2013, 11:06:08 AM
If you had to put your wallet out in the open, which is more secure?

1. Encrypt your wallet.dat using bitcoin-qt using a 30 character password
2. Encrypt your private key using BIP38 with the same password from point no. 1

Thanks,


Title: Re: Security comparison between Bitcoin-QT and BIP38
Post by: wumpus on December 19, 2013, 11:44:33 AM
It's hard to say. Both BIP38 and bitcoin-qt use key strengthening to make brute forcing more expensive.

bitcoin-qt uses a minimum of 25000 iterations of SHA512, and defaults to number of iterations possible in 1/10 of a second on the machine that sets the passphrase.

BIP38 uses scrypt with some fairly difficult parameters.

Apart from security there are practical differences, of course, so it depends on what you want to use it for. The biggest difference is that in the case of BIP38 you have only one key encrypted, and bitcoin-qt encrypts an entire wallet.

This means that the BIP38 encrypted "wallet" is only usable once (given no address reuse, as recommended), whereas the encrypted Bitcoin-Qt wallet can be used over and over again and generates new encrypted keys as you go.


Title: Re: Security comparison between Bitcoin-QT and BIP38
Post by: xabbix on December 19, 2013, 12:32:51 PM
Thanks for replying,

Yes I understand that BIP38 is used for a single address. I forgot to mention in my original post that I would like to use just one address under the bitcoin-qt wallet.

My question originates from coldcoins.co, they provide stainless steel ('paper') wallets, their model requires me to send them both the public and private key (encrypted with BIP38).

So I was wondering if sending that info to them via email/form is more secure than taking my bitcoin-qt wallet, encrypting it and saving it in my gmail for example.

From what I understand after reading your answer that it's not a clear cut, meaning they are both pretty hard to crack but one is not MUCH better than the other, correct?


Title: Re: Security comparison between Bitcoin-QT and BIP38
Post by: Rassah on December 19, 2013, 05:12:31 PM
Is it possible to BIP38 a BIP32?

(I swear, bitcoin is becoming more and more like Cosby talk, with a bippity here and a bippity there...)


Title: Re: Security comparison between Bitcoin-QT and BIP38
Post by: StarfishPrime on December 19, 2013, 05:54:59 PM
If you had to put your wallet out in the open, which is more secure?

1. Encrypt your wallet.dat using bitcoin-qt using a 30 character password
2. Encrypt your private key using BIP38 with the same password from point no. 1

Thanks,

In terms of brute-force resistance (dictionary attack etc.) BIP38 should be marginally more secure since each attempt would typically take longer than the BitcoinQT target difficulty of 100ms - mainly due to the Scrypt parameters used for BIP38.


Title: Re: Security comparison between Bitcoin-QT and BIP38
Post by: fbueller on December 21, 2013, 09:45:01 AM
Is it possible to BIP38 a BIP32?

(I swear, bitcoin is becoming more and more like Cosby talk, with a bippity here and a bippity there...)

I'm thinking of something along similar lines. I am working on providing multisig addresses for escrow transactions. the output of which (to the merchant, all going well) would be going to either a BIP32 deterministic address, or a BIP38.

For what it's worth, I love the fact that BIP38 can support deterministic addresses also. No site should have an online wallet, I beleive their only purpose should be to create the transaction which others sign. Get em off the site and into a two factor offline wallet!