Accessing content by hash!

I am experimenting with ipfs these days. And one thing I wanna clarify is that in ipfs everything is referenced using a hash ( content hash). But hashes are very long, hard to remember. Is there any way I can refer the content I am retrieving by its name (I know, it can’t be refer by its name) or something else.
And how do I refer the content when using ipfs in my application (JS or Go)? Do I store the hash of every content that is put into the application or there is some other mechanisms to achieve that?
What is ipns and can it help me here?

Yes, you probably want to do research into IPNS, it will allow you to turn that hash into something that looks like a domain name.

Another option:

Thanks ipfs files was really helpful. I can do some stuff around it.
But let’s say I am building a webapp on IPFS and some guy writes a few article and their hashes are generated. Now if he opens the webapp again, he should see a list of the articles he wrote.
My ques here is - How do i retrive content from the ipfs? Do I store the hashes somewhere?

You probably will be interested in CRDTs and IPFS pubsub.
These resources should be a good starting point:

Hm, not really. IPNS is not something that looks like a domain, it will still have a long hash (your Peer ID) that you need to reference.

I think what you’re getting at, is that you can use DNS to bind a domain name to a IPFS hash, then you get a readable name. It can also be coupled with IPNS so you don’t have to update DNS when you have a new hash to publish, but then loading times tends to be a bit longer, so we normally recommend using IPFS hash instead of IPNS. (For example, our websites are always using the IPFS hash rather than IPNS, for performance reasons)

You can see a example of using IPFS and DNS together here:


I don’t like the hashes either and I just wrote an article on this subject:

Please let me know what you think!

Slow link here http://localhost:8080/ipns/ :slight_smile:

1 Like