Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: Multiple address creation from a single passphrase #13

Open
RobKohr opened this issue Jan 4, 2015 · 3 comments
Open

Suggestion: Multiple address creation from a single passphrase #13

RobKohr opened this issue Jan 4, 2015 · 3 comments

Comments

@RobKohr
Copy link

RobKohr commented Jan 4, 2015

It would be great if instead of creating just one address, you could bulk create a large set of addresses (let's say you need a thousand for a website).

The first one would be created using scrypt like it is currently. The second one for speed would be the SHA256 of the first's private key. The third would be the SHA256 of the second, and so on...

Of course if one of the private key's were discovered, the remainder of the set would be easily obtainable.

Alternatively, lets say the single passphrase was "password". The first key would be generated by warpwallet('password'). The second would be warpwallet('password1')... etc.

This would make it so the private key being discovered for any individual address would not unlock the rest of the set. The downside is it might take a few hours to generate a few thousand addresses.

@malgorithms
Copy link
Contributor

you should check out HD wallets. In particular: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

we've talked about doing something like this with warp wallet, although we're pretty busy with Keybase right now. So for at least the short term, warp is staying as a single address. Still, you could use warp wallet as a library in software of your choice and generate a lot of them.

@gabridome
Copy link

+1 for BIP38 in Warp Wallet.
You should advice in that case that the entropy requested by the BIP is much stronger with the one achievable by a human generated passphrase:
"Generate a seed byte sequence S of a chosen length (between 128 and 512 bits; 256 bits is advised) from a (P)RNG." (https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki).
I personally think this is partially mitigated by the fact that the "seed stretching" warp wallet uses (scrypt + pbkdf2 +salt) is much stronger than a simple SHA512.

@lirazsiri
Copy link

Much stronger yes, but still vulnerable to attack for users choosing naive passphrases. Easy to make that mistake. With a salt, the economics change dramatically though, so Warpwallet should encourage that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants