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

Add electrum mnemonic support #499

Closed
thecodefactory opened this issue Sep 23, 2017 · 5 comments · Fixed by #527
Closed

Add electrum mnemonic support #499

thecodefactory opened this issue Sep 23, 2017 · 5 comments · Fixed by #527
Assignees
Milestone

Comments

@thecodefactory
Copy link
Member

Implement support for electrum mnemonic and seeds with additional bx commands electrum-to-seed and electrum-new.

@thecodefactory thecodefactory added this to the 4.0 milestone Sep 23, 2017
@thecodefactory thecodefactory self-assigned this Sep 23, 2017
@skaht
Copy link
Contributor

skaht commented Sep 23, 2017

It is worth noting that Electrum seeds are fully invertible unlike BIP 39 technology.

@thecodefactory
Copy link
Member Author

@skaht @evoskuil I'm still trying to determine if we need to support electrum 1.x mnemonics (which libbitcoin implemented in the past but deprecated in v2 and removed in v3 I believe), or the newer electrum 2.x mnemonics, which are somewhat similar to BIP39, but include a version prefix.

If the former, we can just revive the previously existing electrum mnemonic code, dust it off and call it a day. If the latter, I spent some time working on that and have working code in a private libbitcoin branch, but need some feedback on how best to expose it from bx. Either way, I think we'll be covered, but we need to get to the bottom of what's really needed here. Perhaps we need to support both versions? I don't have any clue how much use either version may have in the wild.

@evoskuil
Copy link
Member

evoskuil commented Oct 1, 2017

I see no reason to support older electrum mnemonics as IIRC electrum can upgrade them.

@evoskuil
Copy link
Member

evoskuil commented Oct 1, 2017

WRT seeding, the implementation should only accept a seed as a parameter and should follow the conventions of existing commands that use seeds.

@thecodefactory
Copy link
Member Author

Update on this (as someone asked on the IRC channel):

The draft implementation I have is here:

https://github.com/thecodefactory/libbitcoin/tree/electrum-mnemonic

I need to do a once over, as it's been a while since I looked at this. I also need to clean up the draft explorer support. Pull requests coming sometime after that.

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

Successfully merging a pull request may close this issue.

3 participants