How the two differ
- File names: NIP-96 servers choose their own URLs. Blossom names every file by the sha256 of its bytes, so the same file has the same name everywhere.
- Moving servers: with NIP-96, a file is only at the URL its server gave it. With Blossom, a client can find the same hash on any of your other servers, and BUD-04 mirroring copies files between servers in one request.
- Your server list: Blossom users publish their servers in a kind 10063 event, so every client knows where to upload and where to look for your files.
- Auth: NIP-96 uses NIP-98 HTTP auth. Blossom uses kind 24242 events scoped to an action, a hash and an expiry (BUD-11).
Which should you use?
Use Blossom. The nostr ecosystem has moved its media uploads to Blossom, and the main clients let you pick Blossom servers. Hash addressing means your files outlive any one server, which is the point of using nostr in the first place.
blosstr is a Blossom server. It still accepts NIP-98 auth on its Blossom endpoints so older clients can upload.
Questions
Can a NIP-96 client show Blossom media?
Yes. A Blossom URL is an ordinary HTTPS link to the file, so any client can display it.
Do I need to re-upload my files to switch?
Not by hand. A Blossom server can copy a file from any URL (BUD-04 mirroring), so a client or script can move your library server to server.