Spamfilter
Een spamfilter is een stuk software dat e-mails classificeert in ongewenste e-mails (spam) en gewenste e-mails (ook "ham" genoemd). Een e-mail die als spam geclassificeerd wordt kan worden verwijderd of in een aparte map worden geplaatst. Binnen het machinaal leren bestaan verschillende methodes om spam te detecteren. 

Spamfilters worden vaak gebruikt door de ontvanger in combinatie met een e-mailclient, of door de internetprovider direct op de mailserver.

Bekende spamfilters zijn K9 en Apache SpamAssassin. Voor de zakelijke markt zijn Proofpoint, Cisco en Microsoft de grootste spelers.

Een spamfilter is een type mailfilter. Mailfilters kunnen ook voor andere doeleinden dan het herkennen van spam gebruikt worden, bijvoorbeeld het automatisch sorteren van e-mails in bepaalde mappen, of het zoeken naar illegale activiteiten.

Doordat het filters zijn is het onvermijdelijk dat een spamfilter te veel (fout-positief) of te weinig (fout-negatief) filtert.

Naast gewone spamfilters bestaan er ook externe spamfilters. Een externe spamfilter heeft geen softwareinstallatie nodig en werkt op DNS-niveau. Door de MX-records aan te passen wordt de e-mail eerst langs het externe spamfilter gestuurd en "schoongemaakt". Deze "schone" e-mail wordt vervolgens afgeleverd bij de eigenlijke mailserver van het domein. Naast spamberichten filteren deze externe filters ook virussen en phishinge-mails.

Beoordeling
In zijn eenvoudigste vorm is spam filteren een voorbeeld van automatische tekstclassificatie: binnenkomende e-mailteksten worden geanalyseerd en geclassificeerd als "spam" of "normaal".

Spamfilters werken doordat zij in de e-mails bepaalde patronen herkennen. Enkele voorbeelden zijn:
Woorden die vaak in spam voorkomen, zoals 'Viagra' en 'Sex'. Vooral als deze termen in het onderwerpveld voorkomen, is het bericht verdacht.
Een bijlage met een dubbele extensie waarin een rij spaties voorkomt, zoals Leuke mop.txt    .exe. De afzender hoopt dat de ontvanger denkt dat het een onschuldig txt-bestand is, terwijl het in werkelijkheid een exe-bestand is.
Een groot aantal berichten die vrijwel gelijkluidend zijn maar verschillende afzenders hebben. Dit werkt vooral goed als het spamfilter bij de internetprovider geplaatst is, omdat daar veel berichten vergeleken kunnen worden.

Geavanceerdere spamfilters maken gebruik van een bayesiaans netwerk, waarbij de gebruiker van een aantal e-mails aangeeft of ze als spam beschouwd moeten worden. Het filter probeert hier dan uit te 'leren' welke eigenschappen van de e-mails vooral bij spam voorkomen, en welke niet. Op basis hiervan zal de software de e-mails filteren. Het nadeel hiervan is dat het filter in het begin nog niet zo secuur zal zijn, doordat het nog in de leerfase is. Om dit te ondervangen kunnen bedrijven softwaresystemen voor e-mailmanagement inzetten die naast spamfilterfunctionaliteit ook grote hoeveelheden e-mail automatisch kunnen sorteren en verwerken.

Actie
Wordt een bericht als spam herkend, dan zijn er verschillende mogelijkheden:
Het bericht komt in een aparte map, hetzij in de e-mailclient, hetzij op de website van de provider. In het laatste geval komt het bericht niet in de POP-box van de ontvanger, maar de ontvanger kan op de website aangeven dat hij het bericht tóch wenst te ontvangen.
Het bericht wordt voorzien van een waarschuwing in de onderwerpregel. Die waarschuwing luidt meestal {SPAM!!}, [SPAM] of iets dergelijks.
Het bericht wordt ongemerkt verwijderd.
De bijlage wordt verwijderd en de ontvanger krijgt daarvan een melding.
De bijlage wordt zonder melding verwijderd.

Meestal heeft de ontvanger de mogelijkheid bepaalde berichten of afzenders als veilig te markeren.
Meldt hij bijvoorbeeld dat mail van een bepaalde afzender betrouwbaar is, dan zal het spamfilter die berichten ongemoeid laten.

Bezwaren
Bijna alle internetproviders passen spamfilters toe.
Dit staat lijnrecht tegenover het beleid bij de papieren post, waar het bij wet streng verboden is iets aan een poststuk te veranderen.
Het is dan ook niet verwonderlijk dat ontvangers van e-mail zich ergeren aan de fout-positieve gevallen (false positives), waarbij een normaal bericht door de provider als spam wordt gefilterd en tegengehouden.

Zie ook
 Greylisting, een techniek om spam te weren voordat het de mailserver bereikt

E-mail
Systeemsoftware