From 3f436d2a86297a4c9d892c505cc490cdd6c76361 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Mon, 12 May 2025 05:59:21 -0300 Subject: [PATCH] nip13: fix leading zeroes check (remainings from hex era). --- nip13/nip13.go | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/nip13/nip13.go b/nip13/nip13.go index f5b2bcb..e557882 100644 --- a/nip13/nip13.go +++ b/nip13/nip13.go @@ -3,7 +3,6 @@ package nip13 import ( "context" "crypto/sha256" - "encoding/hex" "errors" "math/bits" "runtime" @@ -39,16 +38,12 @@ func CommittedDifficulty(event nostr.Event) int { // Difficulty counts the number of leading zero bits in an event ID. func Difficulty(id nostr.ID) int { var zeros int - var b [1]byte - for i := 0; i < 32; i += 2 { + for i := 0; i < 32; i++ { if id[i] == 0 { zeros += 8 continue } - if _, err := hex.Decode(b[:], []byte{id[i], id[i+1]}); err != nil { - return -1 - } - zeros += bits.LeadingZeros8(b[0]) + zeros += bits.LeadingZeros8(id[i]) break } return zeros