---
name: "Crypt::PasswdMD5"
section: "3pm"
platform: "linux"
package: "perl-crypt-passwdmd5"
version: "1.46-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Crypt::PasswdMD5"
---

# Crypt::PasswdMD5(3pm)

Provide interoperable MD5-based crypt() functions

## NAME

Crypt::PasswdMD5 - Provide interoperable MD5-based crypt() functions

## SYNOPSIS

```
        use strict;
        use warnings;
        use Crypt::PasswdMD5;
        my($password)       = 'seekrit';
        my($salt)           = 'pepperoni';
        my($unix_crypted)   = unix_md5_crypt($password, $salt);
        my($apache_crypted) = apache_md5_crypt($password, $salt);
        Or:
        use strict;
        use warnings;
        use Crypt::PasswdMD5 'random_md5_salt';
        my($length) = 7;
        my($salt_1) = random_md5_salt($length);
        my($salt_2) = random_md5_salt(); # Default to $length == 8.
```

## DESCRIPTION

`apache_md5_crypt()` provides a function compatible with Apache's `".htpasswd"` files. This was contributed by Bryan Hart \<bryan@eai.com\>. This function is exported by default.

The `unix_md5_crypt()` provides a **crypt()**-compatible interface to the rather new MD5-based **crypt()** function found in modern operating systems. It's based on the implementation found on FreeBSD 2.2.\[56\]-RELEASE. This function is also exported by default.

For both functions, if a salt value is not supplied, a random salt will be generated, using the function **random\_md5\_salt()**. This function is not exported by default.

## METHODS

### apache\_md5\_crypt($password, $salt)

This sets a magic variable, and then passes all the calling parameters to "unix\_md5\_crypt($password, `$salt`)".

Returns an encrypted version of the given password.

Basically, it's a very poor choice for anything other than password authentication.

### random\_md5\_salt(\[$length\])

Here, \[\] indicate an optional parameter.

Returns a random salt of the given length.

The maximum length is 8.

If `$length` is omitted, it defaults to 8.

### unix\_md5\_crypt($password, $salt)

Returns an encrypted version of the given password.

Basically, it's a very poor choice for anything other than password authentication.

## Repository

\<https://github.com/ronsavage/Crypt-PasswdMD5.git\>

## SUPPORT

Bugs should be reported via the CPAN bug tracker at

\<https://github.com/ronsavage/Crypt-PasswdMD5/issues\>

## LICENSE, AND DISCLAIMER

See the accompanying LICENSE file.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.

## AUTHOR

Luis E. Muñoz \<luismunoz@cpan.org\>.

Maintenance by Ron Savage \<rsavage@cpan.org\> as of V 1.40.
