Separate from the issue of identifying spam messages is the issue of
how to prevent you from having to deal with them. There are basically
six kinds of anti-spam software for doing this:
- Challenge-Response Systems
- This software requires people who send you mail to prove that
they are human, and not an automated spam-sending program. After
sending you a message, they get a reply asking them to complete
a task that is easy for humans but hard for computers. Only then
is the message passed on to you. This system is a nuisance for
senders, delays your reception of the mail, and becomes
impractical when sending messages to a group of people. Also,
challenge response systems cannot deal with spoofed senders or
legitimate messages that are sent by programs.
- Server-Side Filters
- This software runs on mail servers and often filters out spam
before you ever see it. This means that you do not have to download
the spam messages that it catches. However, some spam messages may
still get through, and, unless the filter is perfect, a few
legitimate messages will not. These could be important messages,
and you will never know that you lost them.
- Server-Side Taggers
- This variant of server-side filters does not delete possible spam
messages before you download them. Instead, you download every
message and configure your e-mail program to move messages that were
tagged by the filter into a separate spam folder. This eliminates
the major disadvantage of server-side filters—lost messages—however
this type of filter is generally not as accurate as the ones below,
because it does not adapt to your own mail.
- Client-Side Filters
- This software connects to your mail server to delete spam messages
before your e-mail program can download them. This is a clunky
approach: to catch all the spam messages, you have to run the
program right before your regular e-mail program checks for mail.
This is difficult to time properly if you check your mail often, and
even so you may download some messages that weren’t filtered. You
will also download every good message twice. The anti-spam software
may let you see the messages that it filtered out, so that you can
verify that there were no false positives. However, you have to do
this using its interface, not your e-mail program’s (which is
typically nicer). And if there was a false positive you then have to
transfer it into your e-mail program so that you can file and reply
to it.
- Client-Side Proxies
- This is like a client-side filter except that the proxy downloads
messages once and stores them locally. The e-mail program then
“downloads” the good messages from the proxy. This addresses the
timing and double-download problems of client-side filters, but
interaction with the filter is still awkward because it happens
outside your e-mail program. In addition, you lose some control over
the connections to the mail server and which messages are left on
the server.
- Client-Side Integrated
- This category includes SpamSieve and Apple Mail’s built-in spam filter.
Suspected spam messages are moved to a separate folder, which you
can quickly scan at your leisure to make sure there are no false
positives. The e-mail program downloads messages directly from the
mail server, thus avoiding the problems of client-side filters and
proxies. You can train the anti-spam software to improve its
accuracy from inside your e-mail program, and accuracy is higher than
with server-side filters because the anti-spam software can learn
from the messages that you receive. You can also control how
the spam filter interacts with your regular mail sorting rules.