NAME
Javascript::MD5
- Calculate the MD5 digest of a CGI form field
Synopsis
This is a complete, runnable, tested program.
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use Javascript::MD5;
# ------------------
my($q) = CGI -> new();
my($p) = $q -> param('password') || '';
my($js) = Javascript::MD5 -> new();
print $q -> header(),
$q -> start_html({script => $js -> javascript(), title => 'Javascript::MD5'}),
$q -> h1({align => 'center'}, 'Javascript::MD5'),
"Previous value: $p",
$q -> br(),
$q -> start_form({action => $q -> url(), name => 'md5'}),
'Username: ',
$q -> textfield({name => 'username', size => 50}),
$q -> br(),
'Password: ',
$q -> password_field({name => 'password', size => 50}),
$q -> br(),
$q -> submit({onClick => 'return RetMD5()'}),
$q -> end_form(),
$q -> end_html();
Description
Javascript::MD5
is a pure Perl module.
This module allows you to convert user input, eg a password, into the MD5 digest of that input.
This means the password itself need never be transmitted across the network - only the MD5 digest need be transmitted.
Distributions
This module is available both as a Unix-style distro (*.tgz) and an ActiveState-style distro (*.ppd). The latter is shipped in a *.zip file.
See http://savage.net.au/Perl-modules.html for details.
See http://savage.net.au/Perl-modules/html/installing-a-module.html for help on unpacking and installing each type of distro.
Constructor and initialization
new(...) returns a Javascript::MD5
object.
This is the class's contructor.
Usage: Javascript::MD5 -> new().
new()
does not take any parameters.
Method: javascript()
Returns a block of Javascript which you must output as part of your HTML page.
See the Synopsis for one way to do this.
Example code
See the examples/ directory in the distro.
There is 1 demo file, md5.cgi.
This is a CGI script identical to the one in the synopsis.
Edit it to suit your circumstances.
Required Modules
None.
Author
Javascript::MD5
was written by Ron Savage <ron@savage.net.au> in 2004.
Home page: http://savage.net.au/index.html
Copyright
Australian copyright (c) 2004, Ron Savage. All rights reserved.
All Programs of mine are 'OSI Certified Open Source Software';
you can redistribute them and/or modify them under the terms of
The Artistic License, a copy of which is available at:
http://www.opensource.org/licenses/index.html