From 3910e808663828803111538ac40654d2aeb963ab Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Sat, 14 Feb 2026 17:25:11 -0800 Subject: fix: pass Uint8Array to finalizeEvent and nip04 (nostr-tools API change) Co-Authored-By: Claude Opus 4.6 --- src/lib/nostr.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/lib') diff --git a/src/lib/nostr.ts b/src/lib/nostr.ts index 6343bc9e..df67bf6b 100644 --- a/src/lib/nostr.ts +++ b/src/lib/nostr.ts @@ -8,7 +8,7 @@ import { signer as $signer, } from "$lib/store"; import { post, wait } from "$lib/utils"; -import { bytesToHex } from "@noble/hashes/utils.js"; +import { bytesToHex, hexToBytes } from "@noble/hashes/utils.js"; import { type EventTemplate, finalizeEvent, @@ -154,7 +154,8 @@ const signingMethods = { params: [JSON.stringify(event)], }; - const content = await nip04.encrypt(sk, pk, JSON.stringify(signEvent)); + const skBytes = hexToBytes(sk); + const content = await nip04.encrypt(skBytes, pk, JSON.stringify(signEvent)); const signedSignEvent = finalizeEvent( { @@ -164,7 +165,7 @@ const signingMethods = { content, tags: [["p", pk]], }, - sk, + skBytes, ); const relay = await Relay.connect(nostrConnectRelay); @@ -177,9 +178,9 @@ const signingMethods = { try { let response; try { - response = JSON.parse(await nip04.decrypt(sk, pk, event.content)); + response = JSON.parse(await nip04.decrypt(hexToBytes(sk), pk, event.content)); } catch (e) { - const ck = await getConversationKey(sk, pk); + const ck = await getConversationKey(hexToBytes(sk), pk); response = JSON.parse(await nip44decrypt(event.content, ck)); } @@ -193,7 +194,7 @@ const signingMethods = { }, async nsec(event, { sk }) { - return finalizeEvent(event, sk); + return finalizeEvent(event, hexToBytes(sk)); }, async extension(event) { -- cgit v1.2.3