So I’ve been doing some thinking recently about starting to build up alternative arrangements to the traditional Internet (not that they can’t overlay on top of it for now, but I think there’s a good argument to be made to start creating other forms of linkage and practice as well). Important aspects would be:
- Low bandwidth requirements,
- Efficient communications mechanisms,
- Infrequent and intermittent connectivity, and
- Efficient information organization and retrieval.
Existing ideas such as gopher, usenet, listservs (along with email-based search) and other tech are applicable here - obviously there are improvements that could be made.
One thing I’ve been doing additional thinking on is how to improve the idea of “email”, as the concept of a mailbox-based messaging platform is central to a lot of these “intermittent-connection” type networks - a storage queue for messages is critical. That said, how to prevent an immediate spike in spam? So, along these lines, I’ve thought of an idea which I wanted to float as well - consider it one of many important aspects to building up a low-bandwidth workable post-internet: consent-based communication.
Here’s how it works in theory:
- Your inbox is effectively “keyed” (like a locking post office box). Except that in that case, the post office has the key and so anything they’re willing to carry can go in your box. In this case, you can generate effectively infinite keys - and can revoke them at will also.
- You cannot be communicated with if the sender does not have a key that works in your box.
- Since the post-internet is largely request-based and connection-oriented rather than large-scale widespread comms, you would not be necessarily giving out “an email address” - instead you would give out a unique key which grants access to contact you - it could, obviously, include your email address as a component.
- The communication flow is as follows: A. You give a key to someone. B. They send you a communication. C. During the initial conversation from their client to your box, their client hands your box the key, which is then immediately cancelled and used to authorize the generation of a private key pairing used for communication only between the two of you. D. The key is no longer useful to anyone else, and the pairing from that key is recorded using the signature of the sender so you know to whom the key was ultimately assigned, as compared to whom you gave it. E. That sender can now send you messages until you revoke the key - at which point if they try to send you any further messages they are notified that it was revoked. You can also silently revoke in which case your box will simply route their messages to /dev/null.
- So there are a few big questions and a lot of little details to deal with. The first big question is: how do random people contact me with actually useful information? I think a layer of vetting is useful here: if someone or some organization has a key to your box, they’re allowed to request that you grant a key for the as-yet-unconnected third party.
So let’s say that you’re a researcher at an organization (company, uni, whatever) and you publish a paper in a journal or you write an article and it gets shared on a listserv or whatever. Someone else reads it in the journal or the listserv. If they want to respond to you, they can either: contact you via the listserv (which would make the request on it’s behalf, through the grant you gave them to email you) or the journal (ostensibly the same). If you’re members of a common organization (e.g. the IEEE) a similar mechanism could apply. For highly vetted orgs who don’t have a horrid advertising policy (NOT the IEEE, lol) you could optionally tell your client to always grant requests automatically so you don’t need to deal with manual approvals.
The pitfalls here are the typical nefarious spammer types: a spammer joins a listserv and then uses that to fish the members. Due to the fact that the listserv ideally requires some sort of human-like performance to join, and the fact that the consent is 1:1 between the spammer and the listserv, it is easy to identify the source of spam (the listserv itself will have to proxy the requests to other members so it is a first line of defence and can enact this through throttling, logging, or other statistical analysis). Reporting and banning can then follow on a manual or automated basis by the end user clients as well. Same thing for organizations: say the IEEE has decided (as they do) to start spamming you with crap ads. They risk you revoking or blackholing their consent - which is serious business now, since you’d have to intentionally go grant it again, so it serves as a greater deterrent - and you know exactly through whom it came, too, so you can hold them more directly accountable. There’s also the issue of getting spammed with requests for consent, but again, since you know the vetting channel, it is easier to throttle and gatekeep these and to inform the party that they’re being used as a harassment campaign. Last but not least, any individual can proxy a request for any other, so Sally, who has consent to communicate with Lisa, can introduce Joe to Lisa via a proxy communication request (embedded in a cover email, for instance) which Lisa can accept or not.
Implied in all this is a layer of public/private cryptography. I don’t see this as particularly troublesome - there don’t have to be single master keys for each mailbox, key rotation and exchange is pretty well sorted now, although as always the devil is in the details as they say, and given that the ideal situation is for clients to be offline most of the time, messages will remain fully encrypted (except for the delivery layer itself, which is encrypted separately by the consent key framework) on the holding servers, and since most people communicate within intentionally managed groups already, there’s no reason this system of consent should prevent important communications of any kind. The only complication would be handing out your email address in a low-tech way to someone - and here you could either generate a little card with tear-off consent keys precomputed or use other low-tech means for creating acceptable keys - perhaps you could even define a personal coding scheme so that you could mnemonically generate keys at will. This part is likely best left to the user to customize.
While I’m open to people shooting holes in this (I know there are challenges to solve) I’m as interested in positive expansion of ideas here as I am in nitpicking a theory to death. We all know nothing is perfect and every communication system has it’s own challenges, so if you’d like to toss your hat in the ring and weigh in on the feasibility of this idea, I’d appreciate it to be in the spirit of construction - as in, if you have a criticism, a concern, or see a glaring hole, submit it with at least one idea to fix it and continue towards the common goal of consent-based, low-bandwidth, intermittent-friendly communication modes. And don’t forget that this component (offline-stored messaging) is only one of many important aspects to the whole framework - so let’s make sure we cover all the bases.