Email::Fingerprint calculates a checksum that uniquely identifies an email,
for use in spotting duplicate messages.
The checksum is based on: the Message-ID: header; or if it doesn't exist,
on the Date:,
From:,
To: and Cc: headers together; or if those don't exist,
on the body of the message.

Create a new fingerprinting object. If the input option is used, Email::Fingerprint attempts to intelligently read the email message given by that option, whether it's a string, an array of lines or a filehandle.

If $opts{checksum} is not supplied, then Email::Fingerprint will use the first checksum module that it finds. If it finds no modules, it will use unpack in a ghastly manner you don't want to think about.

Any %opts are also passed along to Mail::Header-new>; see the perldoc for Mail::Header options.

Accepts the email message $email and attempts to read it intelligently, distinguishing strings, array references and file handles. If supplied, the optional hash reference is passed on to Mail::Header.