LOAF version 0.01
LOAF is a method of sharing your address book without completely destroying your privacy. LOAF files use a data structure called a Bloom filter to encode all of the email addresses you have sent mail to within a certain number of months. It's easy to check a LOAF file to see if a particular email address is contained within, but it's very hard to reverse engineer one and reveal the full list of emails it contains. Bloom filters have some nice properties that make them resistant to a dictionary attack - see http://loaf.cantbedone.org/about.htm for a full discussion of LOAF theory.
LOAF works by attaching a small file to each outgoing email you send, and monitoring your incoming email for LOAF attachments. These attachments are automatically stored away in one of two folders - a 'trusted' area for people you have corresponded with before, and a 'strangers' area for people who are unknown to you.
Each incoming mail is tested against the LOAF files of all the people in your trusted folder. If the sender has corresponded with one of your friends before, a header is added to the email to indicate the number of matches, and the addresses that matched.
For a detailed description of the algorithm, see the yet-to-be-written documentation in LOAF.pm,or visit http://loaf.cantbedone.org.
INSTALLATION
See INSTALL
DEPENDENCIES
This module requires these other modules and libraries:
Carp
Digest::SHA1
DateTime
DateTime::Format::Mail
Email::Find
Email::Folder
File::Spec::Functions
MIME::Base64
MIME::Parser
MIME::Tools
Net::SMTP
COPYRIGHT AND LICENCE
This program is free software, released under version 2 of the GPL (General Public License).
Copyright (C) 2004 Maciej Ceglowski, Joshua Schachter
