home *** CD-ROM | disk | FTP | other *** search
/ ftp.uv.es / 2014.11.ftp.uv.es.tar / ftp.uv.es / pub / unix / pine4.10.tar.gz / pine4.10.tar / pine4.10 / imap / docs / md5.txt < prev    next >
Text File  |  1998-12-08  |  3KB  |  80 lines

  1.                MD5 Based Authentication
  2.                  Mark Crispin
  3.                7 December 1998
  4.  
  5.  
  6.      imap-4.5 makes available two MD5 based authentication mechanisms,
  7. CRAM-MD5 and APOP.  CRAM-MD5 is described in RFC 2195, and is a SASL
  8. (RFC 2222) authentication mechanism.  APOP is described in RFC 1939,
  9. the standard document for the POP3 protocol.
  10.  
  11.      These mechanisms use the same general idea.  The server issues a
  12. challenge; the client responds with an MD5 checksum of the challenge
  13. plus the password; the server in compares the client's response with
  14. its own calculated value of the checksum.  If the client's response
  15. matches the server's calulated value, the client is authenticated.
  16.  
  17.      Unlike plaintext passwords, this form of authentication is
  18. believed to be secure against the session being monitored; "sniffing"
  19. the session will not disclose the password nor will it provide usable
  20. information to authenticate in another session without knowing the
  21. password.
  22.  
  23.      The key disadvantage with this form of authentication is that the
  24. server must know a plaintext form of the password.  In traditional
  25. UNIX authentication, the server only knows an encrypted form of the
  26. password.  Consequently, the authentication database for this form of
  27. authentication must be kept strictly confidential; a bad guy who
  28. acquires access to this database can access any account in the
  29. database.
  30.  
  31.      CRAM-MD5 client support is implemented unconditionally; any
  32. client application built with imap-4.5 will use CRAM-MD5 with any
  33. server which advertises CRAM-MD5 SASL support.
  34.  
  35.      CRAM-MD5 and APOP server support is implemented if, and only if,
  36. the CRAM-MD5 authentication database exists.  By default, the CRAM-MD5
  37. authentication database is in a UNIX file called
  38.     /etc/cram-md5.pwd
  39. It is recommended that this file be protected 0400.
  40.  
  41.     NOTE: FAILURE TO PROTECT THIS FILE AGAINST UNAUTHORIZED
  42.     ACCESS WILL COMPROMSE CRAM-MD5 AND APOP AUTHENTICATION
  43.     FOR ALL USERS LISTED IN THIS DATABASE.
  44.  
  45.      The CRAM-MD5 authentication database file consists of a series of
  46. text lines, consisting of a UNIX user name, a single tab, and the
  47. password.  A line starting with a "#" character is ignored, as are any
  48. lines which are not in valid format.  For example:
  49.  
  50. ------------------------------Sample------------------------------
  51. # CRAM-MD5 authentication database
  52. # Entries are in form <user><tab><password>
  53. # Lines starting with "#" are comments
  54.  
  55. bill    hubba-hubba
  56. hillary    mspresident
  57. monica    beret
  58. tripp    wired
  59. kenstarr    inquisitor
  60. reno    waco
  61. billgates    ruleworld
  62. ------------------------------Sample------------------------------
  63.  
  64.      Every entry in the CRAM-MD5 authentication database must have a
  65. corresponding entry in the /etc/passwd file.  It is STRONGLY
  66. RECOMMENDED that the CRAM-MD5 password NOT be the same as the
  67. /etc/passwd password.  It is permitted for the /etc/passwd password to
  68. be disabled; /etc/passwd is just used to get the UID, GID, and home
  69. directory information.
  70.  
  71.      It is possible to build the IMAP toolkit so that plaintext
  72. password authentication (e.g. the LOGIN command) also uses the
  73. CRAM-MD5 authetication database.  To do this, build with
  74. PASSWDTYPE=md5, e.g.
  75.     make os4 PASSWDTYPE=md5
  76.  
  77.      Alternatively, it is possible to build the IMAP toolkit so that
  78. plaintext password authentication is disabled entirely, by using
  79. PASSWDTYPE=nul.
  80.