From e3d046457b53fa1dc5b0cd446ebdeb9b22e2dfe7 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Fri, 26 May 2023 09:25:03 -0300 Subject: moving into taler-crpto --- packages/exchange-backoffice-ui/src/account.ts | 34 +++++++++++++------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'packages/exchange-backoffice-ui/src') diff --git a/packages/exchange-backoffice-ui/src/account.ts b/packages/exchange-backoffice-ui/src/account.ts index 019c0bb43..6c3766940 100644 --- a/packages/exchange-backoffice-ui/src/account.ts +++ b/packages/exchange-backoffice-ui/src/account.ts @@ -1,4 +1,12 @@ -import { decodeCrock, encodeCrock } from "@gnu-taler/taler-util"; +import { + bytesToString, + createEddsaKeyPair, + decodeCrock, + encodeCrock, + encryptWithDerivedKey, + getRandomBytesF, + stringToBytes, +} from "@gnu-taler/taler-util"; /** * Create a new session id from which it will @@ -55,27 +63,19 @@ export async function unlockAccount( * @returns */ export async function createNewAccount(password: string) { - const { privateKey } = await createPair(); + const { eddsaPriv } = createEddsaKeyPair(); const salt = createSalt(); - const protectedPrivKey = await protectWithPassword( - privateKey, + const key = stringToBytes(password); + + const protectedPrivKey = await encryptWithDerivedKey( + getRandomBytesF(24), + key, + eddsaPriv, salt, - password, ); - // const privRaw = await crypto.subtle - // .exportKey("pkcs8", privateKey) - // .catch((e) => { - // throw new Error(String(e)); - // }); - - // const pubRaw = await crypto.subtle.exportKey("spki", publicKey).catch((e) => { - // throw new Error(String(e)); - // }); - - // const pub = btoa(ab2str(pubRaw)); - const protectedPriv = btoa(ab2str(protectedPrivKey)); + const protectedPriv = bytesToString(protectedPrivKey); return { accountId: protectedPriv, salt }; } -- cgit v1.2.3