Once again, I am becoming more confident that #nostr and its signed event model is the right way to go. This time around, the model has helped to clarify the distinction between #identifier and #identity.

We’ve all been guilty of using these terms interchangeably, if not as equivalent. I often refer to my npub as my ‘identity’, the shorthand way of referring to my ‘identifier’. I also think of them as being the same, with the knowledge that my ‘identity’ actually exists outside of any one system.

Now with #nostr, the distinction has been clarified: my ‘identifier’ is my npub (straightforward enough) however my ‘identity’ is my npub PLUS a set of events of events signed by my npub.

At its most rudimentary level, my identity is my npub + a kind 0 event with metadata. What is interesting, my identity can change over time if I sign and publish a new kind 0 event.

As well, my identity might look different to different people - the best example is a signed nip04 event that is encrypted and readable by only one other npub. My identity is different to that one npub as it would be to another npub that does not have access to that nip04 message.

This line of thinking about ‘identity’ opens up a way to rotate npubs (use a different identifier), yet keep the same ‘identity’. A possible approach is to create a new npub that signed in a way to be used next in the chain if the old npub is compromised.

Anyway, just some thoughts on the distinction between ‘identifier’ and ‘identity’ - it’s the addition of signed events.