A Solution to Spam
I've had a constant e-mail address since 1998 or so. I've never received more than five to ten real mails a day to that account as I've had others at the same time - whether at University, at work, on Hotmail, and so on. I've got to keep this account because of all the books and articles that are out there have it as my contact details in the biography, and so on. The problem is, the junk mail is now dwarfing the real mail (I now only receive one or two real mails a week to that account). Here are a few statistics:
- An average of 250 junk mails per day are being received, totalling around 5.5MB
- 67% of the mail is "spam" in terms of items received
- 33% of the mail are viruses in terms of items received
- The average size of a piece of spam (not including viruses) is 11KB
- The average size of a virus is 46KB
- Microsoft's spam filter (Outlook 2003) catches approximately 30% of all junk mail, set on it's least aggresive level
- My own VBA macro when combined with AVG anti-virus and Outlook's junk mail filter catches 99% of junk mail and viruses
- On a 600Kbps Internet connection, it takes me around 10 minutes to download and process the rules on my mail each day
For me to have to take the time to write a junk mail filter that works better than Microsoft's, this is clearly an issue that irritates me. When I spotted that the junk mail problem was getting out of control, I started thinking about what the key problems are that led to this, and how to fix them...
- One of the main problems is that you can't guarantee the validity of a sender. Anyone can send me mail, and they can claim to be anyone. This is due to open relays, the fact that you can set any SMTP details you want on sending, and so on. This problem will hopefully go away over the next couple of years with new standards that are being put in place to validate servers. This will no doubt be circumvented by servers being hacked, however.
- The second problem is the biggest - other than the cost of electricity/ISP bills, it's free to send e-mails. Having worked for a marketing company in the past, it's all a matter of numbers... If it costs you 25 pence (cents) to send an item of mail, and you get a 1% return rate on that, you'd need to make 25 pounds (dollars) from each sale to break even. But if it costs you a fraction of 1 penny (cent), then you need a much lower return rate, so you can afford to mail a larger demographic of people, and be less selective of the recipients. This is why there is so much junk mail.
The next generation of e-mail
The way to solve this second problem is to charge for sending mails, even if just a single penny (cent). To achieve this, there will be a network of mail-authentication servers around the world. These expose two "Web services" - a SignMessage service, and a CheckSignature service. Everyone that wants to send an e-mail has to open an account with one of these providers. Whenever an e-mail is sent from within Outlook/whatever, it would first call the SignMessage service, and get a signature (which would probably just be a GUID). This would cost a trivial amount. The message then has a header attached containing the signature. When the message is received, the mail-server itself or the end-user's mail client sends the signature to the server-network, which validates whether the mail has been paid for or not. If the signature doesn't validate, or there is none, the mail is destroyed.
There are two main ways of this system being funded - by the charging for mails, or by a subscription/subsidy model:
- The nominal charge for signing the message could easily fund the infrastructure required to do this.
- Upon successful receipt of a message, a third Web service could be put in place to refund the sender. If this were the case, an alternative funding model would be required:
- All invalid mails would go towards the funding
- Governments could subsidise the network
- ISPs could subsidise the network (as it would lower their bandwidth costs incurred from spam)
- Individual users could "subscribe" to the service for a per-annum charge
To me, the obvious candidate for running this service would be Google; they've shown an interest in getting into the e-mail market, and they know how to create a massively scalable, high-availability system.