The Nostr protocol can be split into 3 separate interoperability layers:

1. Core event data structure with canonicalization, hashing, sign and verify operations

2. Relay network publishing, filters, and authentication with expected client/relay behaviors and event kind ranges.

3. Event kind registry: kinds, common tags, expected behaviors, encrypt / decrypt operations, etc.

There is only one way of implementing 1. This is what defines Nostr as a social-first protocol and the reason we are all here.

There are a few possible protocols for 2. The relay network is our layer-1, but there will be others.

There are thousands of options on 3. Here is where apps shine.

GM.

Reply to this note

Please Login to reply.

Discussion

Ohio 🌞🍁

"Canonicalization"???

Good morning!

The independence of the three rights, the user has the private key account, the client has the right to edit and write information, the repeater has the right to store data, non-interference, and the user has all the rights of the account. Simple and powerful.

GM☕️

I see private full stack implementation viable for business.

I am working on a design for business to run their own internal nostr implementation for micro incentives.

I’m not a developer, so the best I can create is an operating model.

Maybe someone is interested to join hands in building it.

thx, great note

Brilliantly put. This should be a blog entry on the official website or something if it’s not already.