diff --git a/apps/extension/src/background/keyring/crypto.ts b/apps/extension/src/background/keyring/crypto.ts index 28eb6e54a5..9cd4385bfc 100644 --- a/apps/extension/src/background/keyring/crypto.ts +++ b/apps/extension/src/background/keyring/crypto.ts @@ -23,6 +23,7 @@ type CryptoArgs = { password: string; text: string; type: AccountType; + publicKey?: string; }; export class Crypto { @@ -38,6 +39,7 @@ export class Crypto { password, text, type, + publicKey, } = args; const { params, key, iv, salt } = this.encryptionParams(password); @@ -54,6 +56,7 @@ export class Crypto { path, crypto, type, + publicKey }; } diff --git a/apps/extension/src/background/keyring/keyring.ts b/apps/extension/src/background/keyring/keyring.ts index 0a8799ed0e..824f00a055 100644 --- a/apps/extension/src/background/keyring/keyring.ts +++ b/apps/extension/src/background/keyring/keyring.ts @@ -235,7 +235,10 @@ export class KeyRing { const account = hdWallet.derive(bip44Path); const stringPointer = account.private().to_hex(); const sk = readStringPointer(stringPointer, this._cryptoMemory); - const address = new Address(sk).implicit(); + const address = new Address(sk); + const implicitAddress = address.implicit(); + const publicKey = address.public(); + const { chainId } = this; // Generate unique ID for new parent account: @@ -253,13 +256,14 @@ export class KeyRing { const mnemonicStore = crypto.encrypt({ id, alias, - address, - owner: address, + address: implicitAddress, + owner: implicitAddress, chainId, password, path, text: phrase, type: AccountType.Mnemonic, + publicKey, }); await this._keyStore.append(mnemonicStore); diff --git a/apps/namada-interface/src/App/AccountOverview/AccountOverview.tsx b/apps/namada-interface/src/App/AccountOverview/AccountOverview.tsx index 75d2eed42a..3348aaf90a 100644 --- a/apps/namada-interface/src/App/AccountOverview/AccountOverview.tsx +++ b/apps/namada-interface/src/App/AccountOverview/AccountOverview.tsx @@ -76,6 +76,14 @@ export const AccountOverview = (): JSX.Element => { withConnection( async () => { const accounts = await integration?.accounts(); + + if (accounts?.[0]) { + const { publicKey, address } = accounts[0]; + + console.log(publicKey); + console.log(address); + } + if (accounts) { dispatch(addAccounts(accounts as Account[])); dispatch(fetchBalances());