Feature: Human-friendly share links
See original GitHub issueIs your feature request related to a problem? Please describe. I have just recently tried to transfer a file from my laptop to my PC via IPFS. I have done this, without any knowledge of this project and have thus first done this:
$ ipfs add myFile.js
On my Laptop and then typed every letter of the following CIDv0 in by hand on my PC.
$ ipfs cat <CID>
That is tedious work and I don’t want to do it again.
Describe the solution you’d like My idea for a solution is to create more easily available links, that can also be easily typed by hand. I imagine this not to be a hash of some kind, that can not be remembered by the lazy mind, but instead a human readable link, that can be entered by the user themselves.
How to implement this. Imagine a Peer I (for example my Laptop) tries to send a File A to Peer II (my PC) and the only connection they have is that they have IPFS Daemons running:
- Peer I adds A to IPFS:
ipfs add A
- Peer II subscribes to a pubsub topic called /sharing/A:
ipfs pubsub sub /sharing/A
- Peer I publishes the CID to A from 1. to /sharing/A:
ipfs pubsub pub /sharing/A <cid>
- Peer II receives the CID of A and gets that File from IPFS
I am not aware, if this will work with the current pubsub system and I know, if you do not enter a sufficiently long name, this system will fail, similar to how Jitsi Sessions are insecure, if their names are too short.
Perhaps this diagram is helpful at explaining this concept.
Describe alternatives you’ve considered I saw, that there is already an issue for creating QR Codes from those links, which does go in the same direction ipfs-shipyard/ipfs-share-files#78, but it is not sufficient I believe, because in my use case, it would not help me at all, to have a QR Code instead of a link.
Another alternative would be, of course, to use some kind of a reversible hashing function, that reduces a CID to only a few characters, but these functions have the disadvantage mentioned of being not human readable still.
Additional context IPFS PubSub is a subsystem introduced three years ago and I do not know, how reliable it is as a subsystem by now.
Issue Analytics
- State:
- Created 3 years ago
- Comments:10 (4 by maintainers)
Top GitHub Comments
I have done that here and provided some further documentation to the PoC repository.
We could set up a proxy server with webui for implementing this “ipns” type functionality at a specific path, so then users would just access
http://myIpfsHost:port/localIPNS/myLocalOnlyKey