diff --git a/crates/sui-keys/src/keystore.rs b/crates/sui-keys/src/keystore.rs index 11d02b2b45de7..78d56119ae557 100644 --- a/crates/sui-keys/src/keystore.rs +++ b/crates/sui-keys/src/keystore.rs @@ -122,13 +122,14 @@ pub trait AccountKeystore: Send + Sync { phrase: &str, key_scheme: SignatureScheme, derivation_path: Option, + alias: Option, ) -> Result { let mnemonic = Mnemonic::from_phrase(phrase, Language::English) .map_err(|e| anyhow::anyhow!("Invalid mnemonic phrase: {:?}", e))?; let seed = Seed::new(&mnemonic, ""); match derive_key_pair_from_path(seed.as_bytes(), derivation_path, &key_scheme) { Ok((address, kp)) => { - self.add_key(None, kp)?; + self.add_key(alias, kp)?; Ok(address) } Err(e) => Err(anyhow!("error getting keypair {:?}", e)), diff --git a/crates/sui-keys/tests/tests.rs b/crates/sui-keys/tests/tests.rs index 0484eae84bb69..bf22dea55c17b 100644 --- a/crates/sui-keys/tests/tests.rs +++ b/crates/sui-keys/tests/tests.rs @@ -204,7 +204,7 @@ fn mnemonic_test() { let keystore_path_2 = temp_dir.path().join("sui2.keystore"); let mut keystore2 = Keystore::from(FileBasedKeystore::new(&keystore_path_2).unwrap()); let imported_address = keystore2 - .import_from_mnemonic(&phrase, SignatureScheme::ED25519, None) + .import_from_mnemonic(&phrase, SignatureScheme::ED25519, None, None) .unwrap(); assert_eq!(scheme.flag(), Ed25519SuiSignature::SCHEME.flag()); assert_eq!(address, imported_address); @@ -222,7 +222,7 @@ fn sui_wallet_address_mnemonic_test() -> Result<(), anyhow::Error> { let mut keystore = Keystore::from(FileBasedKeystore::new(&keystore_path).unwrap()); keystore - .import_from_mnemonic(phrase, SignatureScheme::ED25519, None) + .import_from_mnemonic(phrase, SignatureScheme::ED25519, None, None) .unwrap(); let pubkey = keystore.keys()[0].clone(); diff --git a/crates/sui-sdk/tests/tests.rs b/crates/sui-sdk/tests/tests.rs index 208bef68d422f..9d7e13fd1f492 100644 --- a/crates/sui-sdk/tests/tests.rs +++ b/crates/sui-sdk/tests/tests.rs @@ -17,7 +17,7 @@ fn mnemonic_test() { let keystore_path_2 = temp_dir.path().join("sui2.keystore"); let mut keystore2 = Keystore::from(FileBasedKeystore::new(&keystore_path_2).unwrap()); let imported_address = keystore2 - .import_from_mnemonic(&phrase, SignatureScheme::ED25519, None) + .import_from_mnemonic(&phrase, SignatureScheme::ED25519, None, None) .unwrap(); assert_eq!(scheme.flag(), Ed25519SuiSignature::SCHEME.flag()); assert_eq!(address, imported_address); diff --git a/crates/sui/src/keytool.rs b/crates/sui/src/keytool.rs index 24f86bd2cd2b5..2a1421185c182 100644 --- a/crates/sui/src/keytool.rs +++ b/crates/sui/src/keytool.rs @@ -639,6 +639,7 @@ impl KeyToolCommand { &input_string, key_scheme, derivation_path, + alias, )?; let skp = keystore.get_key(&sui_address)?; let key = Key::from(skp);