Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

ex(1)

makekey(1)

stty(1)

vi(1)



     crypt(1)                                                 crypt(1)



     NAME
          crypt - encode/decode

     SYNOPSIS
          crypt [password] [key]

     DESCRIPTION
          crypt reads from the standard input and writes on the
          standard output.  The password is a key that selects a
          particular transformation.  If no password is given, crypt
          demands a key from the terminal and turns off printing while
          the key is being typed in.  crypt encrypts and decrypts with
          the same key:

               crypt key <clear >cypher
               crypt key <cypher | pr

          will print the clear text file, clear.

          Files encrypted by crypt are compatible with those treated
          by the editor ed in encryption mode.

          The security of encrypted files depends on three factors:
          the fundamental method must be hard to solve; direct search
          of the key space must be infeasible; sneak paths by which
          keys or clear text can become visible must be minimized.
          The security of this scheme should not be relied on, for
          reasons described herein.

          crypt implements a one-rotor machine designed along the
          lines of the German Enigma, but with a 256-element rotor.
          Methods of attack on such machines are known, but not
          widely; moreover, the amount of work required is likely to
          be large.

          The transformation of a key into the internal settings of
          the machine is deliberately designed to be expensive, i.e.,
          to take a substantial fraction of a second to compute.  If
          keys are restricted to (for example) three lower-case
          letters, however, encrypted files may be read by expending
          only a substantial fraction of five minutes of machine time.

          Since the key is an argument to the crypt command, it is
          potentially visible to users executing ps(1) or a
          derivative.  To minimize this possibility, crypt takes care
          to destroy any record of the key immediately upon entry.
          The choice of keys and key security are the most vulnerable
          aspect of crypt.

     EXAMPLE
               crypt asa < sleeper.c > zzz




     Page 1                                        (last mod. 1/16/87)





     crypt(1)                                                 crypt(1)



          will use the string asa as key to the encryption algorithm
          to encrypt the contents of sleeper.c, and place the
          encrypted output in file zzz.  File zzz at this point will
          be unreadable.  Note that the original file, sleeper.c,
          remains in readable form.  To obtain readable print-out of
          the file zzz, it could be decoded as follows:

               crypt < zzz

          After the response:

               Enter key:

          the user types in: asa.

     FILES
          /bin/crypt
          /dev/tty        for typed key

     SEE ALSO
          ed(1), ex(1), makekey(1), stty(1), vi(1).

     BUGS
          If output is piped to nroff and the encryption key is not
          given on the command line, crypt may leave terminal modes in
          a strange state (see stty(1)).
          If two or more files encrypted with the same key are
          concatenated and an attempt is made to decrypt the result,
          only the contents of the first of the original files will be
          decrypted correctly.

     NOTE
          This utility is not provided with international
          distribution.





















     Page 2                                        (last mod. 1/16/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026