makekey(1)makekey(1)NAMEmakekey - generate encryption key
improves the usefulness of encryption schemes depending on a key by
increasing the amount of time required to search the key space. It
reads 10 bytes from its standard input and writes 13 bytes on its stan‐
dard output. The output depends on the input in a way intended to be
difficult to compute (i.e., to require a substantial fraction of a sec‐
The first eight input bytes (the input key) can be arbitrary ASCII
characters. The last two (the salt) are best chosen from the set of
digits, and uppercase and lowercase letters. The salt characters are
repeated as the first two characters of the output. The remaining 11
output characters are chosen from the same set as the salt and consti‐
tute the output key.
The transformation performed is essentially the following: the salt is
used to select one of 4,096 cryptographic machines all based on the
National Bureau of Standards DES algorithm, but broken in 4,096 differ‐
ent ways. Using the input key as key, a constant string is fed into
the machine and recirculated a number of times. The 64 bits that come
out are distributed into the 66 output key bits in the result.
is intended for programs that perform encryption (e.g., ed(1) and
crypt(1)). Usually, its input and output will be pipes.
SEE ALSOcrypt(1), ed(1), passwd(4).