<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nostr.git/internal, branch main</title>
<subtitle>zero-dependency Go library for the Nostr protocol</subtitle>
<id>https://code.northwest.io/nostr.git/atom?h=main</id>
<link rel='self' href='https://code.northwest.io/nostr.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://code.northwest.io/nostr.git/'/>
<updated>2026-03-08T23:32:53+00:00</updated>
<entry>
<title>feat: NIP-04 encrypt/decrypt using internal secp256k1</title>
<updated>2026-03-08T23:32:53+00:00</updated>
<author>
<name>Clawd</name>
<email>ai@clawd.bot</email>
</author>
<published>2026-03-08T23:32:53+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/nostr.git/commit/?id=cc7637b833bb66cd8715d466e615a23ec0f05c92'/>
<id>urn:sha1:cc7637b833bb66cd8715d466e615a23ec0f05c92</id>
<content type='text'>
</content>
</entry>
<entry>
<title>embed secp256k1: replace btcec with internal pure-go implementation</title>
<updated>2026-02-21T02:52:08+00:00</updated>
<author>
<name>Clawd</name>
<email>ai@clawd.bot</email>
</author>
<published>2026-02-21T02:52:08+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/nostr.git/commit/?id=d641f4566f051656bae79e406155c4f7f65ec338'/>
<id>urn:sha1:d641f4566f051656bae79e406155c4f7f65ec338</id>
<content type='text'>
This removes all external dependencies by embedding the secp256k1-learn
implementation into internal/secp256k1.

Changes:
- Add internal/secp256k1 with field arithmetic, curve ops, keys, schnorr
- Update keys.go to use internal secp256k1 package
- Remove btcec/btcutil dependencies (go.mod is now clean)
- All tests pass

Tradeoffs:
- ~10x slower crypto ops vs btcec (acceptable for nostr use case)
- Not constant-time (documented limitation)
- Zero external dependencies

Refs: code.northwest.io/secp256k1-learn
</content>
</entry>
<entry>
<title>fix: correct WebSocket GUID constant (RFC 6455)</title>
<updated>2026-02-08T18:25:39+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-02-08T18:25:39+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/nostr.git/commit/?id=7fba76d7e4e63e0c29da81d6be43330743af1aaf'/>
<id>urn:sha1:7fba76d7e4e63e0c29da81d6be43330743af1aaf</id>
<content type='text'>
Fixed typo in WebSocket GUID that was causing handshake failures.
The GUID had '5AB5' instead of 'C5AB0' in the middle section.

Correct value: 258EAFA5-E914-47DA-95CA-C5AB0DC85B11

This also includes the implementation of an internal WebSocket client
to replace the external dependency, providing a minimal implementation
tailored for Nostr relay connections.
</content>
</entry>
</feed>
