-
Notifications
You must be signed in to change notification settings - Fork 719
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
[Docs][Qt][Tests][Wallet] Adding Seed phrases #2785
Conversation
Just getting into this now and as the start goes this is an concept uTACK! A few things along the way for the basics of this before we get into the next TODO's src/wallet/bip39_english.txt what if we do a JSON CPP file? IMO, it would look much cleaner. Do you like that idea? In src/wallet.h we have the following enum class for "wallet versioning"
We should add a new For testing purposes, if we add RPC for validating/creating seeds would be helpful vs the current validation of a hard coded seed and make sure it can be repeated. Partial review, before digging further I think these are some possible feature additions for this current portion to iron out and we can look into the other options. Will update later here or in successive comment after testing! |
With this commit seedphrases are fully supported on pivxd as well. |
You will be able to import/generate bip39 seedphrases once this PR is merged and the new wallet version comes out (probably with 6.0 I'd say). The feature is basically completed/working I only need to design a better UI interface because it is too small. Also I'm currently working on DMNs (and I'm a Qt noob) so I don't know when I will finish. For the bip32 AFAIK there is no "easy" way to import the master key or seed (as it should be since it is very easy to make mistake with a random sequence of bytes) |
@panleone, is there a way to do this through the console right now? |
At the moment (v5.5) the most you can do is choosing the hd seed with the rpc command: sethdseed, but beware that some action (for example locking the wallet with a password) will change the seed again. |
@panleone Understood. Better to wait for the next release. Any hopes of dropping a release candidate? |
@panleone I'm not seeing this anywhere in the milestone section, are you certain this will be making its way into the v6 release? |
If other devs agree to release it into v6 yes |
@Fuzzbawls Think we can get this included in the next core release? Kinda feel like we are behind the curve with bip39, most other wallets can derive PIVX seed phrases, but not the core app... This would encourage those who've collected PIV on those mnemonic wallets to simply input them into the core if they feel like earning stake rewards on them and better decentralize the network for the rest of us. Seems like most of the work is already done, what's left that needs to happen to get this pushed out to production? |
Because of the way child keys are derived, these seed phrases aren't compatible with other wallets |
@Duddino Interesting... but still a modern improvement over the current wallet file system. Looking at my dumpwallet over the past PIVX wallet overhauls has left my wallet a jumbled, semi-functional mess. I have PIV I can see on the block explorer that don't show up in my native wallet. I plan on creating a new wallet, once this here seedphrase mechanism is in production, and moving my PIV there for a (hopefully) better experience. Seems like this derivation method should handle wallet upgrades a little better... or (for stability's sake) should I create a new wallet the legacy way and start fresh from there? |
Current status of this PR: Finally after 2 months I fixed all suggested changes, i.e. added support for multi languages seedphrases (at the moment there is italian and english) and improved the qt in general with the help of Liquid. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tACK 24b6009
Much better since the recent Qt fixes, I think we are ready now!
@Liquid369 @Duddino @panleone I'm really looking forward to this release! I recently earned enough PIV for a masternode, but wallet was born 1H2017. Keep up the great work team, I think the PIVX DMN is going to be a game changer for decentralized governance. Who's going to jump on the podcasts to announce the changes? This should be news shared far and wide within the PoS community. |
This PR should be split up into at least 2 distinct PRs: first PR would implement the BIP39 functionality on the network level, part 2 would add GUI functionality. Also, including multi-language hard-coded string translations directly in the source tree needs more consideration and evaluation. |
what's the alternative of including the words directly in the source code? |
Bonus points if we can get full language support for seedphrase generation AND full special character (extended ASCII) support for optional bip39 seed password. The team at Horizontal Systems have got it figured out for their wallet, so there is a template there: |
Coauthored with @Duddino
The aim of this pull request is adding seed phrases support with the BIP39 standard.
What I have done:
EDIT:
we should discuss external compatibility in another PR