From 22c9ccd8f17815c960e797a545ab3cb1385ffcf8 Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Wed, 21 Jan 2026 16:05:02 +0000 Subject: fix: use hex format for pubkey in NIP-11 document The NIP-11 specification requires the pubkey field to be a 64-character hex string, but we were incorrectly using npub (bech32) format. Changes: - Add Config::relay_owner_pubkey_hex() method to get hex format - Update NIP-11 document to use hex format instead of npub - Update test to verify 64-char hex string instead of npub format Fixes nak relay command error: 'must be a hex string of 64 characters' --- src/config.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/config.rs') diff --git a/src/config.rs b/src/config.rs index 4b1e8d9..271a340 100644 --- a/src/config.rs +++ b/src/config.rs @@ -574,7 +574,13 @@ impl Config { Keys::parse(nsec).context("Invalid relay_owner_nsec") } - /// Get the relay owner's public key (npub format) for NIP-11 + /// Get the relay owner's public key (hex format) for NIP-11 + pub fn relay_owner_pubkey_hex(&self) -> Result { + let keys = self.relay_owner_keys()?; + Ok(keys.public_key().to_hex()) + } + + /// Get the relay owner's public key (npub format) pub fn relay_owner_npub(&self) -> Result { let keys = self.relay_owner_keys()?; Ok(keys.public_key().to_bech32()?) -- cgit v1.2.3