Skip to content
This repository was archived by the owner on Feb 8, 2023. It is now read-only.
This repository was archived by the owner on Feb 8, 2023. It is now read-only.

Human Friendly Names #286

Open
Open
@olizilla

Description

@olizilla

We've been adding IPFS support to browsers via ipfs-companion, and I lean heavily on autocomplete to find things; I'll type out the first few characters to reduce the list of matches and then pick the one I want from the list.

My browser url bar autocomplete history now looks like

screenshot 2018-03-12 11 25 05

Seeing that reminded me of the wisdom of xkcd:

Password Strength

So @alanshaw and I got excited about the idea of adding an xkcd correct-horse-battery-staple style multibase encoding, that would let us represent IPFS CIDs as sequences of random words rather than cryptic base58 hashes.

We used mnemonic.js to map byte arrays to words, so we called called it the mnemonic base, and we got it successfully encoding and decoding in mutlibase as CID, and got a POC to have ipfs generate and resolve addresses in mnemonic base.

mnemonic

On announcing the idea, we were introduced to the already built in support for proquint encoding for IPNS PeerIds. From the IPFS whitepaper section 3.7.2 Human Friendly Names:

proquint flavour IPNS

It would be useful to have a spec for how to support human-friendly encodings in IPFS CIDs and multibase. As a minimum it would be a win for consistency to support proquint encoded IPFS CIDs as they are already supported by go-ipfs.

Having tried out mnemonic encodings, they felt more natural and memorable than proquint. I'm not yet convinced that proquint is much better than base58, so I'm keen to see if there is any support for further investigation in to the ergonomics of a better human-friendly CID multibase encoding.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions