Yeah, the HMAC thing was discussed in the audit. I don't fully understand why paul went that direction, but it does work as long as it's in an event
Discussion
well i'm just telling you that that the go implementation is definitely divergent from the javascript version
and the javascript version seems to not be referred to by the NIP actually, i know your codebase has it but it's not pointed to by the NIP
there really should be an interop test for this, preferably one that uses randomly generated content so it's only repeatable if it's correct
The javascript version comes from paul miller's reference implementation, it's basically copied over into nostr-tools
of course i don't know it because javascript is the most abominable language ever invented, and i curse Griesemer, he only avoids hell by helping build Go