Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Hi All, Just wondering if anyone knows of a PERL module or any other means in PERL that can perform some type of encryption on a very small amount of data to produce a hash or a key that can be later used to access something or other. Just checking before I go trying to code something that already exists Thanks in advance, Valerie Kenneally

Replies are listed 'Best First'.
Re: Encryption in Perl
by Nkuvu (Priest) on Mar 07, 2003 at 17:15 UTC
    You can look on CPAN for crypt-related modules. Try this. I'd suggest a specific module but it really depends on what you're trying to do.
      Basically I am trying to do the following. Imagine some messages are being exchanged between two users.At each endpoint information is stored based on the messages. Now in order to access this information I want to create a key or a hash based on some content that is common to all the messages that are exchanged eg. address, name, phone number etc. What do you think I could use for this case? All help appreciated!! Cheers, Valerie

        In pure Perl, you don't need encryption at all if you don't really need to keep the data hidden. A simple hash data type will suffice:

        my %data; while(my $msg = get_msg()) { $data{$msg} = 1; }

        If you need to save this to a file or a database or whatever, you can use the Digest::MD5 or Digest::SHA1. Note: MD5 is possibly on the verge of collapse as far as security is concerned, so stay away from it if you need it for security reasons. MD5 is fine if you just need the hash properties, and it will be faster than SHA1.

        ----
        Reinvent a rounder wheel.

        Note: All code is untested, unless otherwise stated