Adding db persistence for all SecretFormat of vault keys as well as supporting derivations
- Added "/.idea" exclusion in .gitignore (for when using JetBrains IDEs)
- Added dialoguer dependency for easier user input handling (see in inputs.rs)
- Added sea-orm dependency to allow having DB entity mappings and use a local sqlite file database
- Added rstest test dependency for parameterized tests support
- Added derivation tests for each SecretFormat (including cesium v1 key derivation, using sp_core::ed25519::Pair)
- Made a lot of changes to add vault_account and vault_derivation db tables to persist vault keys & derivations
- Added support for KeyPair::Ed25519 linking to sp_core::ed25519::Pair which can be created from secret seed retrieved from nacl::sign::Keypair (which is created from cesium id + secret)
- This was necessary to allow deriving keys from "cesium v1" keys (to be reviewed - it might be a bad idea to permit that from a security point of view)
- Only kept original (substrate) keyfiles support for migration (use "vault list-files" and "vault migrate")
- Added possibility to give either "-a" Address or "-v" Vault Name as general option
- Added extra commands in Vault
- list-files: (deprecated)List available key files (needs to be migrated with command "vault migrate" in order to use them)
- migrate: (deprecated)Migrate old key files into db (will have to provide password for each key)
- 'list' now has sub-commands 'all' or 'root' to show all keys or only root keys (without derivation path)
- use: "Use specific vault key (changes the config address)", which will have the same behaviour as
gcli <-a <Address>|-v <VaultName>> config save
(left a FIXME in there to review) - derivation: Add a derivation to an existing (root) vault key
- rename: Give a meaningful vault name to a vault key or derivation
- remove: Remove a vault key (and potential derivations if it's a root key)
- Had to bubble up "await" and "async" in a lot of places
- ...
Merge request reports
Activity
Filter activity
mentioned in merge request !40 (closed)
added 1 commit
- badf52ce - Adding db persistence for all SecretFormat of vault keys as well as supporting derivations
Cleanup of MR: !40 (closed) (and without using a forked repository)
added 1 commit
- 5493a681 - Adapted sr25519 seed derivation test to use a different (newly generated for test) base mnemonic
Added post in forum asking for review: https://forum.duniter.org/t/request-for-review-adding-db-persistence-for-all-secretformat-of-vault-keys-as-well-as-supporting-derivations/12829
added 1 commit
- 90dce380 - Reusing `inquire` dependency (which I didn't see in the first place) for user inputs
added 1 commit
- 747e02da - Reusing `inquire` dependency (which I didn't see in the first place) for user inputs
added 1 commit
- 1a3f46e4 - * Adapted to have more coherent commands descriptions and added `long_about`...
added 1 commit
- f5944995 - * Adapted to have more coherent commands descriptions and added `long_about`...
added 1 commit
- 37d6c374 - * Adapted to have more coherent commands descriptions and added `long_about`...
added 1 commit
- cf7a4292 - * Adapted to have more coherent commands descriptions and added `long_about`...
added 1 commit
- 262ea4c5 - * Fixed small bug after switching from `dialoguer` to `inquire`: using...
added 1 commit
- b3c0e13c - * Added a test to verify we don't need the nacl::sign::Keypair to handle...
added 1 commit
- 90f5f2aa - * Renaming to refer to "<Account>" instead of "<Root> derivation" to avoid confusion.
added 1 commit
- 4eafec2a - Removed `nacl` dependency and now using sp_core::ed25519::Pair instead of nacl::sign::Keypair.
added 1 commit
- 4752e207 - Renamed vault_account CryptoType enum values and encrypted_private_key field into encrypted_suri
added 1 commit
- a44be2f0 - Added extra confirmation when importing a G1v1/Cesium key; showing the old G1v1 public key
added 1 commit
- a5069df9 - Made an extra check of derivation path to make sure it's not linking to the...
Please register or sign in to reply