3 ms·
Let me recommend two more features: - universal human-assignable names As long as you're replacing IPs, replace DNS, too. When you tell a friend about this
by dsr_ 5y ago
Let me recommend two more features:
- universal human-assignable names
As long as you're replacing IPs, replace DNS, too. When you tell a friend about this great new site, make sure you can tell them with something closer to "pasciencia y fe" than "fe88-2533-a210-dead-b33f-3301-3412-4dc1"
- universal anycast
Big services will need scale and distribution; if it's built in early and well, that makes it easier to adopt.
- lijogdfljk 5y ago> universal human-assignable names Any implementations of this you'd recommend? I write a lot of hash (content addressable/etc) code in my spare time and i'd be curious to toy with identifiers (256bit hashes) being provided to humans in human-friendly ways.
- redleader55 5y agoThe first thing that pops in my mind is choosing a dictionary of 2^n words and making an identifier that maps the 256 bit hash space to a k-tuple of words, where k = 256/n.
- djbusby 5y agoLike this? https://github.com/singpolyma/mnemonicode https://github.com/singpolyma/mnemonicode
- RL_Quine 5y agoYou might like bech32, which encodes data (nominally hashes) into strings which include error detection and error correction, while being optimized for human use and typing by avoiding homogylphs and capitalization. https://en.bitcoin.it/wiki/Bech32 https://en.bitcoin.it/wiki/Bech32
- MayeulC 5y agoWhile I agree with the second, this is an implementation "detail" of the routing layer. Universal multicast is much more interesting as an usage, though I am not sure about the feasibility. As far as human-assignable names go, I am not sure. "pet names" would be a good fit: you "pin" a service using your name or someone else's. Sure, you can also use a ready-made mapping from words to binary like https://what3words.com/inferior.chapels.nerve https://what3words.com/inferior.chapels.nerve for instance, but I feel like picking one is a separate endeavor with its own pitfalls (not everyone speaks English, etc). You're asking for a solution to Zooko's triangle: https://en.wikipedia.org/wiki/Zooko's_triangle https://en.wikipedia.org/wiki/Zooko's_triangle
- dsr_ 5y agoI'm willing to throw away "decentralized" in the "DNS is centralized" sense in order to have a meaningful alias system. If I can't talk about a service in normal conversation, it will be difficult for me to tell people about it. "You should check out correct horse battery staple" vs "You should check out news.ycombinator.com" -- one of those requires me to maintain a meaningless mapping in my head, and the other contains structure and clues even if it isn't "Hacker News".
- MayeulC 5y agoIf that's the case though, why not keep DNS for now, especially for the initial handshake? Then, similar to HSTS, the browser could remember the mapping and use the DNS name as a pet name for the target. Another alternative would be to use "phonebooks". One could trust a few trusted websites for the initial handshake: "oh, just google battery horse to find my blog". Or: I'm linked on John's blog. That goes well with pet names, but is a bit more involved. In any case, as long as the underlying identifier is secure and unique, you can just share that trough other means (links, Qr codes, messages, etc).
- munro 5y agoI love this idea of pub keys for connecting to sockets. I wish we could standardize on something, yggdrasil looks very interesting as well. > - universal human-assignable names Seems like if we wanted to add human names, DNS would work just fine--it could just be a new record. And IDK if there really is a better way to manage multiple people wanting the same names, other than our existing system. These systems can remain orthogonal too. dig SPORK news.ycombinator.com or maybe :) dig YGGDRASIL news.ycombinator.com