Package: math/snefru
Description: Snefru - one-way hash function
Version: 2.0b, 2.1b, 2.3
Notes:
The one-way hash function, Snefru 2.0, is available by anonymous FTP from
arisia.xerox.com in directory /pub/hash. It is available for use by anyone
interested.
A $1,000 reward is offered to the first person to break it.
General: Snefru 2.0 is a one-way hash function. One-way hash functions
have also been called manipulation detection codes (MDC's), message digests,
cryptographically secure checksums, cryptographically secure hash totals,
and sometimes fingerprints.
One way hash functions do not involve use of a secret key or any secret
information. They are used to authenticate information, and to verify that
the information has not been tampered with. One-way hash functions have the
following properties:
1.) Given any input of any size (a file, for example) it is easy to compute
the output of the one-way hash function. If the one-way hash function
is designated H, then output = H(input) is easy to compute (takes time
linear in the size of the input).
2.) Although the input might be very large, the output is relatively small
and of fixed size. In Snefru 2.0, the output can be either 128 or 256
bits (selectable by the user).
3.) It is computationally infeasible to find two inputs x and x' that
produce the same output. That is, finding x and x' such that:
H(x) = H(x')
is infeasible. Finding such a pair of inputs is known as "cracking" or
"breaking" the one-way hash function.
4.) Given an output, it is computationally infeasible to find an input that
produces that output. (This property is not always used).
One-way hash functions are not the same as Message Authentication Codes, or
MAC's, which involve the use of a secret key.
.../REWARD
Language(s): assembler, C
Requirements: ?
Origin:
gatekeeper.dec.com:/pub/misc
snefru.tar.Z
Ralph C. Merkle, merkle@xerox.com
Xerox PARC, 3333 Coyote Hill Road
Palo Alto, CA 94304
See Also: ?
Restrictions:
See .../REWARD
References: ?