| 1 |
– |
mkpasswd.c documentation |
| 1 |
|
$Id$ |
| 2 |
|
|
| 3 |
< |
This is documentation for the mkpasswd.c included in ircd-hybrid-7. |
| 3 |
> |
This is documentation for the mkpasswd.c included in ircd-hybrid. |
| 4 |
|
|
| 5 |
< |
This version of mkpasswd can create both DES and MD5 passwords, with |
| 6 |
< |
either randomly generated or user provided salts. |
| 5 |
> |
This version of mkpasswd can create Blowfish, MD5, SHA-256 and SHA-512 |
| 6 |
> |
passwords, with either randomly generated or user provided salts. |
| 7 |
|
|
| 8 |
|
Options: |
| 9 |
+ |
-6 - Create a SHA-512 password |
| 10 |
+ |
-5 - Create a SHA-256 password |
| 11 |
|
-m - Create an MD5 password |
| 12 |
< |
-d - Create a DES password |
| 12 |
> |
-b - Create a Blowfish password |
| 13 |
|
-l - Specify the length of a random MD5 salt |
| 14 |
+ |
-r - Specify a number of rounds for a Blowfish password |
| 15 |
|
-p - Specify the plaintext password at the command line |
| 16 |
|
-s - Specify the salt at the command line |
| 17 |
+ |
-R - Specify a raw salt passed directly to crypt() |
| 18 |
|
-h - Get help |
| 19 |
|
|
| 20 |
< |
Without the presence of any parameters, it'll behave like the old mkpasswd, |
| 21 |
< |
creating a DES password with a randomly generated salt and prompting for |
| 19 |
< |
the password (without echo). |
| 20 |
< |
|
| 21 |
< |
A DES salt is a pair of alphanumeric characters ('.' and '/' are permitted |
| 22 |
< |
as well), such as 'a4' or 'Td'. |
| 20 |
> |
If no parameter is given, it will create an MD5 password with a randomly |
| 21 |
> |
generated salt and prompting for the password (without echo). |
| 22 |
|
|
| 23 |
|
An MD5 salt consists of up to 16 (though most implementations limit you to |
| 24 |
|
8) alphanumeric characters (plus '.' and '/'), |
| 25 |
|
such as 'tGd' or 'J6d4dfG'. |
| 26 |
|
|
| 27 |
|
Known bugs: |
| 29 |
– |
Blowfish (on OpenBSD) is not yet supported |
| 28 |
|
The encryption algorithms supported depend on your system's crypt() |
| 29 |
|
implementation. |
| 30 |
< |
The maximum length of an MD5 salt is limited to your systems crypt() |
| 30 |
> |
The maximum length of an MD5 salt is limited to your system's crypt() |
| 31 |
|
implementation, typically 8. |
| 34 |
– |
crypt.c (MD5 implementation) is included, but not yet compiled into the |
| 35 |
– |
program for systems that do not support MD5. |
| 32 |
|
|
| 33 |
|
Supported Platforms (Known and tested): |
| 34 |
< |
Linux glibc (DES and MD5) |
| 35 |
< |
FreeBSD 3.x (DES (MD5 maybe)) |
| 36 |
< |
FreeBSD 4.x (DES and MD5) |
| 41 |
< |
Solaris 2.5-2.6 (DES only) |
| 42 |
< |
Cygwin 1.1.4 (DES only) |
| 43 |
< |
Prior Cygwin with the MD5 libcrypt (MD5 only) |
| 44 |
< |
OpenBSD 2.7 (don't link with -lcrypt) (DES and MD5, no Blowfish support) |
| 45 |
< |
Mac OS-X (Darwin) (don't link with -lcrypt) (DES only) |
| 34 |
> |
Linux glibc (SHA-256/SHA-512 since glibc 2.7, and MD5) |
| 35 |
> |
FreeBSD 10.2 (SHA-256/SHA-512, Blowfish, and MD5)) |
| 36 |
> |
OpenBSD 5.8 (Blowfish) |
| 37 |
|
|
| 38 |
|
Other systems probably work, but they haven't been amply tested. |