Notes for November 14, 2000

  1. Greetings and Felicitations!
  2. Puzzle of the day
  3. Authentication
    1. validating client (user) identity
    2. validating server (system) identity
    3. validating both (mutual authentication)
  4. Basis
    1. What you know
    2. What you have
    3. What you are
  5. Passwords
    1. How UNIX does selection
    2. Problem: common passwords; Go through Morris and Thompson ; Klein and mine, etc.
    3. May be pass phrases: goal is to make search space as large as possible, distribution as uniform as possible
    4. Other ways to force good password selection: random, pronounceable, computer-aided selection
    5. Go through problems, approaches to each, esp. proactive
  6. Password Storage
    1. In the clear; MULTICS story
    2. Enciphers; key must be kept available; get to it and it's all over
    3. Hashed; present idea of one-way functions using identity and sum
    4. Show UNIX version
  7. Attack Schemes Directed to the Passwords
    1. Exhaustive search: UNIX is 1-8 chars, say 96 possibles; it's about 7e16
    2. Inspired guessing: think of what people would like (see above)
    3. Random guessing: can't defend against it; bad login messages aid it
    4. Scavenging: passwords often typed where they might be recorded (as login name, in other contexts, etc.)
    5. Ask the user: very common with some public access services
    6. Expected time to guess
  8. Password aging
    1. Pick age so when password is guessed, it's no longer valid
    2. Implementation: track previous passwords vs. upper, lower time bounds
  9. Ultimate in aging: One-Time Pads
    1. Password is valid for only one use
    2. May work from list, or new password may be generated from old by a function
    3. Example: S/Key(tm)
  10. Challenge-response systems
    1. Computer issues challenge, user presents response to verify secret information known/item possessed
    2. Example operations: f(x) = x+1, random, string (for users without computers), time of day, computer sends E(x), you answer E(D(E(x))+1)
    3. Note: password never sent on wire or network
    4. Attack: monkey-in-the-middle
    5. Defense: mutual authentication
  11. Biometrics
    1. Depend on physical characteristics
    2. Examples: pattern of typing (remarkably effective), retinal scans, etc.
  12. Location
    1. Bind user to some location detection device (human, GPS)
    2. Authenticate by location of the device

Puzzle of the Day

"Our ancestors, and those who were considered to be wise, were accustomed to say that it was necessary to control Pistoia by means of factions and Pisa by means of fortresses; so they fostered strife in various of their subject towns, so as to control them more easily. In those days, when there was stability of a sort in Italy, this was doubtless sensible; but I do not think it makes a good rule today. I do not believe any good at all ever comes from dissension. On the contrary, on the approach of the enemy, cities which are so divided inevitably succumb at once; the weaker faction will always go over to the invader, and the other will not be able to hold out."1

What does this paragraph say to a system administrator or security officer seeking insight to defend her systems?


  1. Niccolò Machiavelli, The Prince, George Bull trans., Penguin Books, New York, NY ©1995, p. 67

Matt Bishop
Office: 3059 Engineering Unit II Phone: +1 (530) 752-8060
Fax: +1 (530) 752-4767
Copyright Matt Bishop, 2000. All federal and state copyrights reserved for all original material presented in this course through any medium, including lecture or print.

Page last modified on 11/22/2000