An Internet Mirroring Protocol

What I know about Internet protocols can be written on the back of a postage stamp, but that doesn’t stop me from wondering about them. Wikileaks’s recent call for mirrors (link may be down, obviously) got me thinking about the general possibility of a web site mirroring protocol that would make automatic the distribution and discovery of content beyond the reach of censorship.

It strikes me that there are already a clutch of open protocols that could be put together or modified to do this. DNS (or DNSSEC), BitTorrent and rsync, all tied together with public key encryption. So, Wikileaks might add an “M” (for “mirror”) entry in their zone file, setting off a chain reaction enabling others to create similar entries in their zones that would trigger a mirror of Wikileaks’s content to the mirror server (a bit like zone transfers today) and an entry of the new, mirrored, host record into the DNS. Clients going to or one of its mirrors and finding it unresponsive would then be redirected to the next available mirror host until a successful connection was established. Whenever the holder of Wikileaks’s private key needed to update their site, they would be able to upload changes to one or more of the participating mirrors, which would then distribute those changes to the rest of the mirroring network.

Or something like that anyway. Not sure how clients would use the DNS to find mirrors though, since it would seem to need some sort of reverse DNS to do that (host to domain rather than domain to host).