3 ms·
You've been thinking about it longer and probably more in-depth than I have. There was a project awhile back called localhost that made me think about it. It wa
by calcnerd256 17y ago
You've been thinking about it longer and probably more in-depth than I have. There was a project awhile back called localhost that made me think about it. It wasn't as transparent as what I would like to see, though. 4chan also made me think about it. The content there has a very high turnover, and many of the users painstakingly mirror the parts of the site that they care about. It would be nice if they had a tool they could use from their browser to share out their mirrors so that those pages never 404. The next step would be to implement the way localhost intentionally allows poisoning (or as I call it, "controversy") or versioning, and a trust network would round out the implementation to deliver the most-probably-preferred version upon the first visit, with the option to choose. I don't know if this would be a browser extension or a new RFC surrounding HTTP and bittorrent, but it's what I think WebDAV should be.
- kragen 17y agoThat's awesome. Yeah, I've been thinking along pretty similar lines. 4chan is basically a "paging channel" or "advertisement channel": anybody can post, which means it can't provide reliable delivery (any message can be swamped by spam) or archival, but that's the only way to establish communication between people who don't have a pre-existing relationship (either directly or through their social network). Poisoning/controversy is inherent in human-readable, non-centrally allocated, shared namespaces. (See Zooko's triangle.) It's not always a problem — Google shows that your suggested approach of using a trust network to choose among the candidate versions can work pretty well — but in the cases where it is a problem, you can reduce the magnitude of the problem by using self-certifying names (like SHA1 sums), unshared namespaces (like petnames), or centrally-allocated names (like DNS). Nick Szabo's "Secure Property Titles" proposal is the only plausible alternative I've seen. (I don't know enough about social dynamics to predict whether it would work as he predicts.) One of the advantages of hash-addressed data (data named with a self-certifying name that consists of a secure hash of its contents) is that it can be replicated to many peers without any particular concern for integrity or timeliness. (And in Freenet and BitTorrent, it is.) So it might be good to use hash-addressed data for as much of the system as possible. Localhost only stores filenames in directory nodes, then uses Kademlia to look up the .torrent infohashes associated with various versions of the filename; it would be good to often provide durable links consisting of the infohash itself. The other thing I think is needed is a way to publish a mutable resource that only you can update. Such a resource can have a self-certifying (but non-human-readable) name consisting of the hash of your public key, possibly an ID number, and a timestamp. Localhost, for those who are wondering what we're talking about: http://p2p.cs.mu.oz.au/software/Localhost/thesis.pdf http://p2p.cs.mu.oz.au/software/Localhost/thesis.pdf