1999-11-07 04:14:55 +00:00
|
|
|
.\" $FreeBSD$
|
1997-08-30 12:22:49 +00:00
|
|
|
.Dd February 14, 1994
|
1997-03-02 21:43:10 +00:00
|
|
|
.Dt MD5 1
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm md5
|
|
|
|
.Nd calculate a message-digest fingerprint (checksum) for a file
|
|
|
|
.Sh SYNOPSIS
|
2000-11-20 16:52:27 +00:00
|
|
|
.Nm
|
1999-12-04 01:29:43 +00:00
|
|
|
.Op Fl pqrtx
|
1997-12-29 03:40:37 +00:00
|
|
|
.Op Fl s Ar string
|
2001-02-13 09:56:35 +00:00
|
|
|
.Op Ar
|
1997-03-02 21:43:10 +00:00
|
|
|
.Sh DESCRIPTION
|
2002-04-19 23:06:29 +00:00
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
utility takes as input a message of arbitrary length and produces
|
1997-03-02 21:43:10 +00:00
|
|
|
as output a 128-bit
|
|
|
|
.Dq fingerprint
|
|
|
|
or
|
|
|
|
.Dq message digest
|
2001-09-04 09:28:48 +00:00
|
|
|
of the input.
|
|
|
|
It is conjectured that it is computationally infeasible to
|
1997-03-02 21:43:10 +00:00
|
|
|
produce two messages having the same message digest, or to produce any
|
1994-10-29 23:58:02 +00:00
|
|
|
message having a given prespecified target message digest.
|
|
|
|
The MD5 algorithm is intended for digital signature applications, where a
|
1997-03-02 21:43:10 +00:00
|
|
|
large file must be
|
|
|
|
.Dq compressed
|
|
|
|
in a secure manner before being encrypted with a private
|
2001-08-07 15:48:51 +00:00
|
|
|
(secret)
|
1997-03-02 21:43:10 +00:00
|
|
|
key under a public-key cryptosystem such as
|
|
|
|
.Em RSA .
|
|
|
|
.Pp
|
2001-09-04 01:01:07 +00:00
|
|
|
MD5 has not yet (2001-09-03) been broken, but sufficient attacks have been
|
2001-09-04 09:28:48 +00:00
|
|
|
made that its security is in some doubt.
|
|
|
|
The attacks on MD5
|
|
|
|
are in the nature of finding
|
|
|
|
.Dq collisions
|
|
|
|
\(em that is, multiple
|
2001-09-04 01:01:07 +00:00
|
|
|
inputs which hash to the same value; it is still unlikely for an attacker
|
|
|
|
to be able to determine the exact original input given a hash value.
|
|
|
|
.Pp
|
2001-06-19 03:34:03 +00:00
|
|
|
The following options may be used in any combination and must
|
2001-09-04 09:28:48 +00:00
|
|
|
precede any files named on the command line.
|
|
|
|
The MD5
|
1997-12-29 03:40:37 +00:00
|
|
|
sum of each file listed on the command line is printed after the options
|
|
|
|
are processed.
|
1998-07-06 07:04:50 +00:00
|
|
|
.Bl -tag -width indent
|
1997-12-29 03:40:37 +00:00
|
|
|
.It Fl s Ar string
|
1998-07-06 07:04:50 +00:00
|
|
|
Print a checksum of the given
|
1997-12-29 03:40:37 +00:00
|
|
|
.Ar string .
|
1997-03-02 21:43:10 +00:00
|
|
|
.It Fl p
|
1998-07-06 07:04:50 +00:00
|
|
|
Echo stdin to stdout and appends the MD5 sum to stdout.
|
1999-12-04 01:29:43 +00:00
|
|
|
.It Fl q
|
2001-09-04 09:28:48 +00:00
|
|
|
Quiet mode - only the MD5 sum is printed out.
|
|
|
|
Overrides the
|
1999-12-04 01:29:43 +00:00
|
|
|
.Fl r
|
|
|
|
option.
|
1999-11-07 04:14:55 +00:00
|
|
|
.It Fl r
|
2001-09-04 09:28:48 +00:00
|
|
|
Reverses the format of the output.
|
|
|
|
This helps with visual diffs.
|
|
|
|
Does nothing
|
2001-07-15 07:53:42 +00:00
|
|
|
when combined with the
|
1999-11-11 11:59:03 +00:00
|
|
|
.Fl ptx
|
1999-11-07 04:14:55 +00:00
|
|
|
options.
|
1997-03-02 21:43:10 +00:00
|
|
|
.It Fl t
|
1998-07-06 07:04:50 +00:00
|
|
|
Run a built-in time trial.
|
1997-03-02 21:43:10 +00:00
|
|
|
.It Fl x
|
1998-07-06 07:04:50 +00:00
|
|
|
Run a built-in test script.
|
1997-03-02 21:43:10 +00:00
|
|
|
.El
|
2003-11-02 23:12:08 +00:00
|
|
|
.Sh DIAGNOSTICS
|
|
|
|
The
|
|
|
|
.Nm
|
2004-05-17 08:35:43 +00:00
|
|
|
utility exits 0 on success,
|
|
|
|
and 1 if at least one of the input files could not be read.
|
1997-03-02 21:43:10 +00:00
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr cksum 1
|
|
|
|
.Rs
|
|
|
|
.%A R. Rivest
|
|
|
|
.%T The MD5 Message-Digest Algorithm
|
|
|
|
.%O RFC1321
|
|
|
|
.Re
|
1998-07-06 07:04:50 +00:00
|
|
|
.Sh ACKNOWLEDGMENTS
|
1994-10-29 23:58:02 +00:00
|
|
|
This program is placed in the public domain for free general use by
|
|
|
|
RSA Data Security.
|