Replying to Avatar nomadshiba⚡

there is a reddit and 4chan like social media protocol on ipfs, its a bit more wild west. it uses pubsubs.

but its nothing like nostr, nostr is more profile based, and a lot more closer to regular social media. just better in general.

and ipfs problematic when you share something alone from your own node, it takes a long while for others to discover it. but sometimes it also works fast, just like that.

i think one problem with nostr right now is all media is just http links to a cdn.

they are not distributed, and link have nothing to do with the content, makes it impossible to verify. so i think sharing a hash instead of some random centralized id makes more sense. and we already have ipfs hash and uri. so if we shared ipfs uri instead of http url i think it would just work.

like relay lists, we can also have ipfs api and gateway lists. clients can ask all of the gateways for the content until finding it at one. ipfs gateways allow HEAD requests, so you can know if the content exists and its size before fetching it.

you can easily backup/pin your own content on another gateway you pay for as well if you want to.

main thing is its hash based, and distributed.

right now if i post a media on primal, they will host it via their cdn, and all of the other nostr clients will fetch it from a url to that cdn. cdn can censor, remove the content, and in the future even cdn itself can shutdown. there is no way to access that content other than that cdn. but and ipfs uri is hash based, so anyone can host if for you. if the content is lost, you can verify it again once you find it, etc. primal can just host an ipfs gateway instead of a regular cdn.

i know not many clients support ipfs, or have a list of ipfs gateways to use. but what you can do is share an a gateway https url, and anyone can still parse, it and say that "its an ipfs url".

ipfs url formats are known, it can be in bafy subdomain type or bafy and Qm type with /ipfs/ pathname prefixes. you can extract the hash from there and try it on multiple gateways. and clients that doesn't support ipfs would still work, because its basically a https url to an ipfs gateway.

i plan on hosting one in the future for nostr, with my own client.

When I first started with Nostr back in 2023, IPFS sounded like a perfect match. But the more I played with it, the more convinced I became that IPFS is a broken and failed project. Nostr needs something simpler and more straightforward—and then nostr:nprofile1qqszv6q4uryjzr06xfxxew34wwc5hmjfmfpqn229d72gfegsdn2q3fgpr3mhxue69uhhxct5v4kxc6t5v5hxs7njvscngwfwvdhk6tcpzfmhxue69uhkummnw3e82efwvdhk6tcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsk7wj75's Blossom came.

Ever since then, I've been dreaming about redundant decentralized storage with file fragmentation—something like what StorJ describes in their white paper:

"All data is encrypted and sharded using Reed Solomon erasure coding. The resulting pieces are distributed around the world. A typical large file is divided into 64 MB encrypted segments, and each encrypted segment is divided into 80 erasure-coded pieces—any 29 of these are sufficient to reconstruct the original file. Each of these 80 pieces is stored on a different drive globally, spread across diverse geographies, operators, power supplies, and networks."

In Blossom, this would be a killer feature. You would offer space on your server to others, and in exchange, get redundancy for your own files, or you would simply pay for it. File metadata could be published as a specific kind hosted by relays.

Reply to this note

Please Login to reply.

Discussion

can you elaborate on IPFS brokenness? out of interest

It is almost impossible to get content synced over the network. Try to sync a simple picture from your home node to a node in your laptop when you are on different networks... It will take hours or it will never happen.

I mean what I said was just getting content from well connected gateways anyway, or uploading to one, like nostr client providers can have their own default gateways and etc. i wasnt talking about p2p ipfs experience.

anyway I checked blossom, (first time hearing about it).

seems similar to what i was thinking with ipfs.

but instead its a cdn protocol basically, i think. didnt deep dive in it yet.

so i believe its like a normal cdn but hash based and has a known format, endpoints. so you can extract the hash (like i said in ipfs). and then check other blossom compatible cdns.

and of course user can give list of blossom cdns on their profile as well.

tbh blossom looks more lightweight and easier to implement for already existing cdn solutions. i see no problems with it.

seems like a more lightweight solution. i liked it.

i still see no problem with supporting both or more. similarly you can share a media with a https ipfs gateway URL, so it works everywhere.

and then while viewing extract the hash and check multiple other gateways with that hash as well using HEAD method.

which would also make those gateways search for the content. distributing the GET traffic more later when more users ask for same thing.

but yeah blossom looks nice, maybe better.

Did you ever try to use Storj? I'm intending to give it a spin for some personal back up, at least.