home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1760.txt < prev    next >
Text File  |  1996-05-07  |  32KB  |  258 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                          N. Haller Request for Comments: 1760                                      Bellcore Category: Informational                                    February 1995 
  8.  
  9.                     The S/KEY One-Time Password System 
  10.  
  11. Status of this Memo 
  12.  
  13.    This memo provides information for the Internet community.  This memo    does not specify an Internet standard of any kind.  Distribution of    this memo is unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    This document describes the S/KEY* One-Time Password system as    released for public use by Bellcore and as described in reference    [3].  A reference implementation and documentation are available by    anonymous ftp from ftp.bellcore.com in the directories pub/nmh/... 
  18.  
  19. Overview 
  20.  
  21.    One form of attack on computing system connected to the Internet is    eavesdropping on network connections to obtain login id's and    passwords of legitimate users.  The captured login id and password    are, at a later time, used gain access to the system.  The S/KEY    One-Time Password system is designed to counter this type of attack,    called a replay attack. 
  22.  
  23.    With the S/KEY system, only a single use password ever crosses the    network.  The user's secret pass-phrase never crosses the network at    any time, including during login or when executing other commands    requiring authentication such as the UNIX commands passwd or su.    Thus, it is not vulnerable to eavesdropping/replay attacks.  Added    security is provided by the property that no secret information need    be stored on any system, including the host being protected. 
  24.  
  25.    The S/KEY system protects against external passive attacks against    the authentication subsystem.  It does not prevent a network    eavesdropper from gaining access to private information, and does not    provide protection against "inside jobs" or against active attacks    where the potential intruder as able to intercept and modify the    packet stream. 
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  Haller                                                          [Page 1] 
  34.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  35.  
  36.  Introduction 
  37.  
  38.    There are two sides to the operation of the S/KEY one-time password    system.  On the client side, the appropriate one-time password must    be generated.  On the host side, the server must verify the one-time    password and permit the secure changing of the user's secret pass-    phrase. 
  39.  
  40.    An S/KEY system client passes the user's secret pass-phrase through    multiple applications of a secure hash function to produce a one-time    password.  On each use, the number of applications is reduced by one.    Thus a unique sequence of passwords is generated.  The S/KEY system    host verifies the one-time password by making one pass though the    secure hash function and comparing the result with the previous one-    time password.  This technique was first suggested by Leslie Lamport    [1]. 
  41.  
  42. Secure Hash Function 
  43.  
  44.    A secure hash function is a function that is easy to compute in the    forward direction, but computationally infeasible to invert.  The    S/KEY system is based on the MD4 Message Digest algorithm designed by    Ronald Rivest [2].  Since the S/KEY authentication system went into    use, the MD5 Message Digest was released.  We have chosen to continue    to use MD4 due the large number of client programs that have been    distributed.  Some sites have generated functionally similar systems    based on MD5.  Clearly clients and hosts must use the same secure    hash function to interoperate. 
  45.  
  46.    The S/KEY system one-time passwords are 64 bits in length.  This is    believed to be long enough to be secure and short enough to be    manually entered (see below, Form of Passwords) when necessary. 
  47.  
  48.    The S/KEY system applies the secure hash function multiple times,    producing a 64 bit final output.  MD4 accepts an arbitrary number of    bits as input and produces a 128 bit output.  The S/KEY secure hash    function consists of applying MD4 to a 64 bit input and folding the    output of MD4 with exclusive or to produce a 64 bit output. 
  49.  
  50. Generation of One-Time Passwords 
  51.  
  52.    This section describes the computation of the S/KEY one-time    passwords.  It consists of a preparatory step in which all inputs are    combined, a generation step where the secure hash function is applied    multiple times, and an output function where the 64 bit one-time 
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  Haller                                                          [Page 2] 
  59.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  60.  
  61.     password is displayed in readable form. 
  62.  
  63.    The client's secret pass phrase may be of any length and should be    more than eight characters.  As the S/KEY secure hash function    described above accepts a 64 bit input, a preparatory step is needed.    In this step, the pass phrase is concatenated with a seed that is    transmitted from the server in clear text.  This non-secret seed    allows a client to use the same secret pass phrase on multiple    machines (using different seeds) and to safely recycle secret    passwords by changing the seed.  (For ease in parsing, the seed may    not contain any blanks, and should consist of strictly alphanumeric    characters.) The result of the concatenation is passed through MD4,    and then reduced to 64 bits by exclusive-OR of the two 8-byte halves. 
  64.  
  65.    The following code fragment uses the MD4 implementation defined in    RFC 1320 [2] and defines the preparatory step: 
  66.  
  67.          strcpy(buf,seed);          strcat(buf,passwd);          MDbegin(&md)          MDupdate(&md,(unsigned char *)buf,8*buflen); 
  68.  
  69.          /* Fold result to 64 bits */          md.buffer[0] ^= md.buffer[2];          md.buffer[1] ^= md.buffer[3]; 
  70.  
  71.    A sequence of one-time passwords is produced by applying the secure    hash function multiple times to the output of the preparatory step    (called S).  That is, the first one-time password is produced by    passing S through the secure hash function a number of times (N)    specified by the user.  The next one-time password is generated by    passing S though the secure hash function N-1 times.  An eavesdropper    who has monitored the transmission of a one-time password would not    be able to generate any succeeding password because doing so would    require inverting the hash function. 
  72.  
  73. Form of Passwords 
  74.  
  75.    The one-time password generated by the above procedure is 64 bits in    length.  Entering a 64 bit number is a difficult and error prone    process.  Some S/KEY system one-time password calculator programs    insert this password into the input stream, others make it available    for system cut and paste.  Some arrangements require the one-time    password to be entered manually. The S/KEY system is designed to    facilitate this manual entry without impeding automatic methods.  The    one-time password is therefore converted to, and accepted as, a    sequence of six short (1 to 4 letter) English words.  Each word is    chosen from a dictionary of 2048 words; at 11 bits per word, all 
  76.  
  77.  
  78.  
  79. Haller                                                          [Page 3] 
  80.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  81.  
  82.     one-time passwords may be encoded.  Interoperability requires at all    S/KEY system hosts and calculators use the same dictionary.  The    standard dictionary is attached to this RFC. 
  83.  
  84. Verification of One-Time Passwords 
  85.  
  86.    A function on the host system that requires S/KEY authentication is    expected to issue an S/KEY challenge.  This challenge give the client    the current S/KEY parameters - the sequence number and seed.  It is    important that the S/KEY challenge be in a standard format so that    automated clients (see below) can recognize the challenge and extract    the parameters.  The format of the challenge is: 
  87.  
  88.         s/key sequence_integer seed 
  89.  
  90.    The three tokens are separated by single space characters.  The    challenge is terminated by a blank or a newline. 
  91.  
  92.    Given the parameters and the secret pass phrase, the client can    compute (or lookup) the one time password.  It then passes it to the    host system where it can be verified. 
  93.  
  94.    The host system has a file (on the UNIX reference implementation it    is /etc/skeykeys) containing, for each user, the one-time password    from the last successful login, or it may be initialized with the    first one-time password of the sequence using the keyinit command    (this command name may be implementation dependent).  To verify an    authentication attempt, it passes the transmitted one-time password    through the secure hash function one time.  If the result of this    operation matches the stored previous one-time password, the    authentication is successful and the accepted one-time password is    stored for future use. 
  95.  
  96.    Because the number of hash function applications executed by the    client decreases by one each time, at some point the user must    reinitialize the system of be unable to login again.  This is done by    using the keyinit command which allows the changing of the secret    pass phrase, the iteration count, and the seed. A frequent technique    is to increment a trailing digit(s) of the seed and to reset the    iteration count (to something in range of 500-1000). 
  97.  
  98. Clients 
  99.  
  100.    Several programs are available to calculate S/KEY one time passwords.    Included in the reference implementation are command line interfaces    for UNIX and PC systems (key), TSR interfaces for PCs (ctkey,    termkey, and popkey), and GUI interfaces for Macintosh and Windows    (keyapp and un-named Macintosh interface). 
  101.  
  102.  
  103.  
  104. Haller                                                          [Page 4] 
  105.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  106.  
  107.     The most basic calculator is the key command whose format is: 
  108.  
  109.         key [-n count] sequence seed 
  110.  
  111.    The optional count is used to display more than a single one time    password.  This is useful to create a paper list of one time    passwords. 
  112.  
  113.    The most automated calculator is the termkey program that runs as a    Terminate and Stay Resident (TSR) program on a PC.  It scans the    screen to find the S/KEY parameters, prompts for the secret pass    phrase, and stuffs the one time password into the keyboard buffer. 
  114.  
  115. Acknowledgements 
  116.  
  117.    The idea behind S/KEY authentication was first proposed by Leslie    Lamport [1].  The specific system described was proposed by Phil    Karn, who also wrote most of the reference implementation. 
  118.  
  119. References 
  120.  
  121.    [1] Lamport, L., "Password Authentication with Insecure        Communication", Communications of the ACM 24.11, November 1981,        770-772. 
  122.  
  123.    [2] Rivest, R., "The MD4 Message-Digest Algorithm", RFC 1320, MIT and        RSA Data Security, Inc., April 1992 
  124.  
  125.    [3] Haller, N., "The S/KEY One-Time Password System", Proceedings of        the ISOC Symposium on Network and Distributed System Security,        February 1994, San Diego, CA 
  126.  
  127.    [4] Haller, N., and R. Atkinson, "On Internet Authentication", RFC        1704, Bell Communications Research and Naval Research Laboratory,        October 1994 
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  Haller                                                          [Page 5] 
  144.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  145.  
  146.  Security Considerations 
  147.  
  148.    This entire document is about Security Considerations. 
  149.  
  150. Author's Address     Neil Haller    Bellcore    MRE 2Q-280    445 South Street    Morristown, NJ, 07960-6438, USA 
  151.  
  152.    Phone: +1 201 829-4478    Fax:  +1 201 829-2504    EMail: nmh@bellcore.com 
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  Haller                                                          [Page 6] 
  189.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  190.  
  191.  Dictionary for Converting Between S/KEY 6-Word and Binary Formats 
  192.  
  193.    This dictionary is from the module put.c.  The code for this module,    and an implementation of the entire S/KEY One Time Password System is    available by anonymous ftp from ftp.bellcore.com in the directory    pub/nmh/skey. 
  194.  
  195.  {        "A",     "ABE",   "ACE",   "ACT",   "AD",    "ADA",   "ADD", "AGO",   "AID",   "AIM",   "AIR",   "ALL",   "ALP",   "AM",    "AMY", "AN",    "ANA",   "AND",   "ANN",   "ANT",   "ANY",   "APE",   "APS", "APT",   "ARC",   "ARE",   "ARK",   "ARM",   "ART",   "AS",    "ASH", "ASK",   "AT",    "ATE",   "AUG",   "AUK",   "AVE",   "AWE",   "AWK", "AWL",   "AWN",   "AX",    "AYE",   "BAD",   "BAG",   "BAH",   "BAM", "BAN",   "BAR",   "BAT",   "BAY",   "BE",    "BED",   "BEE",   "BEG", "BEN",   "BET",   "BEY",   "BIB",   "BID",   "BIG",   "BIN",   "BIT", "BOB",   "BOG",   "BON",   "BOO",   "BOP",   "BOW",   "BOY",   "BUB", "BUD",   "BUG",   "BUM",   "BUN",   "BUS",   "BUT",   "BUY",   "BY", "BYE",   "CAB",   "CAL",   "CAM",   "CAN",   "CAP",   "CAR",   "CAT", "CAW",   "COD",   "COG",   "COL",   "CON",   "COO",   "COP",   "COT", "COW",   "COY",   "CRY",   "CUB",   "CUE",   "CUP",   "CUR",   "CUT", "DAB",   "DAD",   "DAM",   "DAN",   "DAR",   "DAY",   "DEE",   "DEL", "DEN",   "DES",   "DEW",   "DID",   "DIE",   "DIG",   "DIN",   "DIP", "DO",    "DOE",   "DOG",   "DON",   "DOT",   "DOW",   "DRY",   "DUB", "DUD",   "DUE",   "DUG",   "DUN",   "EAR",   "EAT",   "ED",    "EEL", "EGG",   "EGO",   "ELI",   "ELK",   "ELM",   "ELY",   "EM",    "END", "EST",   "ETC",   "EVA",   "EVE",   "EWE",   "EYE",   "FAD",   "FAN", "FAR",   "FAT",   "FAY",   "FED",   "FEE",   "FEW",   "FIB",   "FIG", "FIN",   "FIR",   "FIT",   "FLO",   "FLY",   "FOE",   "FOG",   "FOR", "FRY",   "FUM",   "FUN",   "FUR",   "GAB",   "GAD",   "GAG",   "GAL", "GAM",   "GAP",   "GAS",   "GAY",   "GEE",   "GEL",   "GEM",   "GET", "GIG",   "GIL",   "GIN",   "GO",    "GOT",   "GUM",   "GUN",   "GUS", "GUT",   "GUY",   "GYM",   "GYP",   "HA",    "HAD",   "HAL",   "HAM", "HAN",   "HAP",   "HAS",   "HAT",   "HAW",   "HAY",   "HE",    "HEM", "HEN",   "HER",   "HEW",   "HEY",   "HI",    "HID",   "HIM",   "HIP", "HIS",   "HIT",   "HO",    "HOB",   "HOC",   "HOE",   "HOG",   "HOP", "HOT",   "HOW",   "HUB",   "HUE",   "HUG",   "HUH",   "HUM",   "HUT", "I",     "ICY",   "IDA",   "IF",    "IKE",   "ILL",   "INK",   "INN", "IO",    "ION",   "IQ",    "IRA",   "IRE",   "IRK",   "IS",    "IT", "ITS",   "IVY",   "JAB",   "JAG",   "JAM",   "JAN",   "JAR",   "JAW", "JAY",   "JET",   "JIG",   "JIM",   "JO",    "JOB",   "JOE",   "JOG", "JOT",   "JOY",   "JUG",   "JUT",   "KAY",   "KEG",   "KEN",   "KEY", "KID",   "KIM",   "KIN",   "KIT",   "LA",    "LAB",   "LAC",   "LAD", "LAG",   "LAM",   "LAP",   "LAW",   "LAY",   "LEA",   "LED",   "LEE", "LEG",   "LEN",   "LEO",   "LET",   "LEW",   "LID",   "LIE",   "LIN", "LIP",   "LIT",   "LO",    "LOB",   "LOG",   "LOP",   "LOS",   "LOT", "LOU",   "LOW",   "LOY",   "LUG",   "LYE",   "MA",    "MAC",   "MAD", "MAE",   "MAN",   "MAO",   "MAP",   "MAT",   "MAW",   "MAY",   "ME", 
  196.  
  197.  
  198.  
  199. Haller                                                          [Page 7] 
  200.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  201.  
  202.  "MEG",   "MEL",   "MEN",   "MET",   "MEW",   "MID",   "MIN",   "MIT", "MOB",   "MOD",   "MOE",   "MOO",   "MOP",   "MOS",   "MOT",   "MOW", "MUD",   "MUG",   "MUM",   "MY",    "NAB",   "NAG",   "NAN",   "NAP", "NAT",   "NAY",   "NE",    "NED",   "NEE",   "NET",   "NEW",   "NIB", "NIL",   "NIP",   "NIT",   "NO",    "NOB",   "NOD",   "NON",   "NOR", "NOT",   "NOV",   "NOW",   "NU",    "NUN",   "NUT",   "O",     "OAF", "OAK",   "OAR",   "OAT",   "ODD",   "ODE",   "OF",    "OFF",   "OFT", "OH",    "OIL",   "OK",    "OLD",   "ON",    "ONE",   "OR",    "ORB", "ORE",   "ORR",   "OS",    "OTT",   "OUR",   "OUT",   "OVA",   "OW", "OWE",   "OWL",   "OWN",   "OX",    "PA",    "PAD",   "PAL",   "PAM", "PAN",   "PAP",   "PAR",   "PAT",   "PAW",   "PAY",   "PEA",   "PEG", "PEN",   "PEP",   "PER",   "PET",   "PEW",   "PHI",   "PI",    "PIE", "PIN",   "PIT",   "PLY",   "PO",    "POD",   "POE",   "POP",   "POT", "POW",   "PRO",   "PRY",   "PUB",   "PUG",   "PUN",   "PUP",   "PUT", "QUO",   "RAG",   "RAM",   "RAN",   "RAP",   "RAT",   "RAW",   "RAY", "REB",   "RED",   "REP",   "RET",   "RIB",   "RID",   "RIG",   "RIM", "RIO",   "RIP",   "ROB",   "ROD",   "ROE",   "RON",   "ROT",   "ROW", "ROY",   "RUB",   "RUE",   "RUG",   "RUM",   "RUN",   "RYE",   "SAC", "SAD",   "SAG",   "SAL",   "SAM",   "SAN",   "SAP",   "SAT",   "SAW", "SAY",   "SEA",   "SEC",   "SEE",   "SEN",   "SET",   "SEW",   "SHE", "SHY",   "SIN",   "SIP",   "SIR",   "SIS",   "SIT",   "SKI",   "SKY", "SLY",   "SO",    "SOB",   "SOD",   "SON",   "SOP",   "SOW",   "SOY", "SPA",   "SPY",   "SUB",   "SUD",   "SUE",   "SUM",   "SUN",   "SUP", "TAB",   "TAD",   "TAG",   "TAN",   "TAP",   "TAR",   "TEA",   "TED", "TEE",   "TEN",   "THE",   "THY",   "TIC",   "TIE",   "TIM",   "TIN", "TIP",   "TO",    "TOE",   "TOG",   "TOM",   "TON",   "TOO",   "TOP", "TOW",   "TOY",   "TRY",   "TUB",   "TUG",   "TUM",   "TUN",   "TWO", "UN",    "UP",    "US",    "USE",   "VAN",   "VAT",   "VET",   "VIE", "WAD",   "WAG",   "WAR",   "WAS",   "WAY",   "WE",    "WEB",   "WED", "WEE",   "WET",   "WHO",   "WHY",   "WIN",   "WIT",   "WOK",   "WON", "WOO",   "WOW",   "WRY",   "WU",    "YAM",   "YAP",   "YAW",   "YE", "YEA",   "YES",   "YET",   "YOU",   "ABED",  "ABEL",  "ABET",  "ABLE", "ABUT",  "ACHE",  "ACID",  "ACME",  "ACRE",  "ACTA",  "ACTS",  "ADAM", "ADDS",  "ADEN",  "AFAR",  "AFRO",  "AGEE",  "AHEM",  "AHOY",  "AIDA", "AIDE",  "AIDS",  "AIRY",  "AJAR",  "AKIN",  "ALAN",  "ALEC",  "ALGA", "ALIA",  "ALLY",  "ALMA",  "ALOE",  "ALSO",  "ALTO",  "ALUM",  "ALVA", "AMEN",  "AMES",  "AMID",  "AMMO",  "AMOK",  "AMOS",  "AMRA",  "ANDY", "ANEW",  "ANNA",  "ANNE",  "ANTE",  "ANTI",  "AQUA",  "ARAB",  "ARCH", "AREA",  "ARGO",  "ARID",  "ARMY",  "ARTS",  "ARTY",  "ASIA",  "ASKS", "ATOM",  "AUNT",  "AURA",  "AUTO",  "AVER",  "AVID",  "AVIS",  "AVON", "AVOW",  "AWAY",  "AWRY",  "BABE",  "BABY",  "BACH",  "BACK",  "BADE", "BAIL",  "BAIT",  "BAKE",  "BALD",  "BALE",  "BALI",  "BALK",  "BALL", "BALM",  "BAND",  "BANE",  "BANG",  "BANK",  "BARB",  "BARD",  "BARE", "BARK",  "BARN",  "BARR",  "BASE",  "BASH",  "BASK",  "BASS",  "BATE", "BATH",  "BAWD",  "BAWL",  "BEAD",  "BEAK",  "BEAM",  "BEAN",  "BEAR", "BEAT",  "BEAU",  "BECK",  "BEEF",  "BEEN",  "BEER",  "BEET",  "BELA", "BELL",  "BELT",  "BEND",  "BENT",  "BERG",  "BERN",  "BERT",  "BESS", "BEST",  "BETA",  "BETH",  "BHOY",  "BIAS",  "BIDE",  "BIEN",  "BILE", 
  203.  
  204.  
  205.  
  206. Haller                                                          [Page 8] 
  207.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  208.  
  209.  "BILK",  "BILL",  "BIND",  "BING",  "BIRD",  "BITE",  "BITS",  "BLAB", "BLAT",  "BLED",  "BLEW",  "BLOB",  "BLOC",  "BLOT",  "BLOW",  "BLUE", "BLUM",  "BLUR",  "BOAR",  "BOAT",  "BOCA",  "BOCK",  "BODE",  "BODY", "BOGY",  "BOHR",  "BOIL",  "BOLD",  "BOLO",  "BOLT",  "BOMB",  "BONA", "BOND",  "BONE",  "BONG",  "BONN",  "BONY",  "BOOK",  "BOOM",  "BOON", "BOOT",  "BORE",  "BORG",  "BORN",  "BOSE",  "BOSS",  "BOTH",  "BOUT", "BOWL",  "BOYD",  "BRAD",  "BRAE",  "BRAG",  "BRAN",  "BRAY",  "BRED", "BREW",  "BRIG",  "BRIM",  "BROW",  "BUCK",  "BUDD",  "BUFF",  "BULB", "BULK",  "BULL",  "BUNK",  "BUNT",  "BUOY",  "BURG",  "BURL",  "BURN", "BURR",  "BURT",  "BURY",  "BUSH",  "BUSS",  "BUST",  "BUSY",  "BYTE", "CADY",  "CAFE",  "CAGE",  "CAIN",  "CAKE",  "CALF",  "CALL",  "CALM", "CAME",  "CANE",  "CANT",  "CARD",  "CARE",  "CARL",  "CARR",  "CART", "CASE",  "CASH",  "CASK",  "CAST",  "CAVE",  "CEIL",  "CELL",  "CENT", "CERN",  "CHAD",  "CHAR",  "CHAT",  "CHAW",  "CHEF",  "CHEN",  "CHEW", "CHIC",  "CHIN",  "CHOU",  "CHOW",  "CHUB",  "CHUG",  "CHUM",  "CITE", "CITY",  "CLAD",  "CLAM",  "CLAN",  "CLAW",  "CLAY",  "CLOD",  "CLOG", "CLOT",  "CLUB",  "CLUE",  "COAL",  "COAT",  "COCA",  "COCK",  "COCO", "CODA",  "CODE",  "CODY",  "COED",  "COIL",  "COIN",  "COKE",  "COLA", "COLD",  "COLT",  "COMA",  "COMB",  "COME",  "COOK",  "COOL",  "COON", "COOT",  "CORD",  "CORE",  "CORK",  "CORN",  "COST",  "COVE",  "COWL", "CRAB",  "CRAG",  "CRAM",  "CRAY",  "CREW",  "CRIB",  "CROW",  "CRUD", "CUBA",  "CUBE",  "CUFF",  "CULL",  "CULT",  "CUNY",  "CURB",  "CURD", "CURE",  "CURL",  "CURT",  "CUTS",  "DADE",  "DALE",  "DAME",  "DANA", "DANE",  "DANG",  "DANK",  "DARE",  "DARK",  "DARN",  "DART",  "DASH", "DATA",  "DATE",  "DAVE",  "DAVY",  "DAWN",  "DAYS",  "DEAD",  "DEAF", "DEAL",  "DEAN",  "DEAR",  "DEBT",  "DECK",  "DEED",  "DEEM",  "DEER", "DEFT",  "DEFY",  "DELL",  "DENT",  "DENY",  "DESK",  "DIAL",  "DICE", "DIED",  "DIET",  "DIME",  "DINE",  "DING",  "DINT",  "DIRE",  "DIRT", "DISC",  "DISH",  "DISK",  "DIVE",  "DOCK",  "DOES",  "DOLE",  "DOLL", "DOLT",  "DOME",  "DONE",  "DOOM",  "DOOR",  "DORA",  "DOSE",  "DOTE", "DOUG",  "DOUR",  "DOVE",  "DOWN",  "DRAB",  "DRAG",  "DRAM",  "DRAW", "DREW",  "DRUB",  "DRUG",  "DRUM",  "DUAL",  "DUCK",  "DUCT",  "DUEL", "DUET",  "DUKE",  "DULL",  "DUMB",  "DUNE",  "DUNK",  "DUSK",  "DUST", "DUTY",  "EACH",  "EARL",  "EARN",  "EASE",  "EAST",  "EASY",  "EBEN", "ECHO",  "EDDY",  "EDEN",  "EDGE",  "EDGY",  "EDIT",  "EDNA",  "EGAN", "ELAN",  "ELBA",  "ELLA",  "ELSE",  "EMIL",  "EMIT",  "EMMA",  "ENDS", "ERIC",  "EROS",  "EVEN",  "EVER",  "EVIL",  "EYED",  "FACE",  "FACT", "FADE",  "FAIL",  "FAIN",  "FAIR",  "FAKE",  "FALL",  "FAME",  "FANG", "FARM",  "FAST",  "FATE",  "FAWN",  "FEAR",  "FEAT",  "FEED",  "FEEL", "FEET",  "FELL",  "FELT",  "FEND",  "FERN",  "FEST",  "FEUD",  "FIEF", "FIGS",  "FILE",  "FILL",  "FILM",  "FIND",  "FINE",  "FINK",  "FIRE", "FIRM",  "FISH",  "FISK",  "FIST",  "FITS",  "FIVE",  "FLAG",  "FLAK", "FLAM",  "FLAT",  "FLAW",  "FLEA",  "FLED",  "FLEW",  "FLIT",  "FLOC", "FLOG",  "FLOW",  "FLUB",  "FLUE",  "FOAL",  "FOAM",  "FOGY",  "FOIL", "FOLD",  "FOLK",  "FOND",  "FONT",  "FOOD",  "FOOL",  "FOOT",  "FORD", "FORE",  "FORK",  "FORM",  "FORT",  "FOSS",  "FOUL",  "FOUR",  "FOWL", "FRAU",  "FRAY",  "FRED",  "FREE",  "FRET",  "FREY",  "FROG",  "FROM", "FUEL",  "FULL",  "FUME",  "FUND",  "FUNK",  "FURY",  "FUSE",  "FUSS", 
  210.  
  211.  
  212.  
  213. Haller                                                          [Page 9] 
  214.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  215.  
  216.  "GAFF",  "GAGE",  "GAIL",  "GAIN",  "GAIT",  "GALA",  "GALE",  "GALL", "GALT",  "GAME",  "GANG",  "GARB",  "GARY",  "GASH",  "GATE",  "GAUL", "GAUR",  "GAVE",  "GAWK",  "GEAR",  "GELD",  "GENE",  "GENT",  "GERM", "GETS",  "GIBE",  "GIFT",  "GILD",  "GILL",  "GILT",  "GINA",  "GIRD", "GIRL",  "GIST",  "GIVE",  "GLAD",  "GLEE",  "GLEN",  "GLIB",  "GLOB", "GLOM",  "GLOW",  "GLUE",  "GLUM",  "GLUT",  "GOAD",  "GOAL",  "GOAT", "GOER",  "GOES",  "GOLD",  "GOLF",  "GONE",  "GONG",  "GOOD",  "GOOF", "GORE",  "GORY",  "GOSH",  "GOUT",  "GOWN",  "GRAB",  "GRAD",  "GRAY", "GREG",  "GREW",  "GREY",  "GRID",  "GRIM",  "GRIN",  "GRIT",  "GROW", "GRUB",  "GULF",  "GULL",  "GUNK",  "GURU",  "GUSH",  "GUST",  "GWEN", "GWYN",  "HAAG",  "HAAS",  "HACK",  "HAIL",  "HAIR",  "HALE",  "HALF", "HALL",  "HALO",  "HALT",  "HAND",  "HANG",  "HANK",  "HANS",  "HARD", "HARK",  "HARM",  "HART",  "HASH",  "HAST",  "HATE",  "HATH",  "HAUL", "HAVE",  "HAWK",  "HAYS",  "HEAD",  "HEAL",  "HEAR",  "HEAT",  "HEBE", "HECK",  "HEED",  "HEEL",  "HEFT",  "HELD",  "HELL",  "HELM",  "HERB", "HERD",  "HERE",  "HERO",  "HERS",  "HESS",  "HEWN",  "HICK",  "HIDE", "HIGH",  "HIKE",  "HILL",  "HILT",  "HIND",  "HINT",  "HIRE",  "HISS", "HIVE",  "HOBO",  "HOCK",  "HOFF",  "HOLD",  "HOLE",  "HOLM",  "HOLT", "HOME",  "HONE",  "HONK",  "HOOD",  "HOOF",  "HOOK",  "HOOT",  "HORN", "HOSE",  "HOST",  "HOUR",  "HOVE",  "HOWE",  "HOWL",  "HOYT",  "HUCK", "HUED",  "HUFF",  "HUGE",  "HUGH",  "HUGO",  "HULK",  "HULL",  "HUNK", "HUNT",  "HURD",  "HURL",  "HURT",  "HUSH",  "HYDE",  "HYMN",  "IBIS", "ICON",  "IDEA",  "IDLE",  "IFFY",  "INCA",  "INCH",  "INTO",  "IONS", "IOTA",  "IOWA",  "IRIS",  "IRMA",  "IRON",  "ISLE",  "ITCH",  "ITEM", "IVAN",  "JACK",  "JADE",  "JAIL",  "JAKE",  "JANE",  "JAVA",  "JEAN", "JEFF",  "JERK",  "JESS",  "JEST",  "JIBE",  "JILL",  "JILT",  "JIVE", "JOAN",  "JOBS",  "JOCK",  "JOEL",  "JOEY",  "JOHN",  "JOIN",  "JOKE", "JOLT",  "JOVE",  "JUDD",  "JUDE",  "JUDO",  "JUDY",  "JUJU",  "JUKE", "JULY",  "JUNE",  "JUNK",  "JUNO",  "JURY",  "JUST",  "JUTE",  "KAHN", "KALE",  "KANE",  "KANT",  "KARL",  "KATE",  "KEEL",  "KEEN",  "KENO", "KENT",  "KERN",  "KERR",  "KEYS",  "KICK",  "KILL",  "KIND",  "KING", "KIRK",  "KISS",  "KITE",  "KLAN",  "KNEE",  "KNEW",  "KNIT",  "KNOB", "KNOT",  "KNOW",  "KOCH",  "KONG",  "KUDO",  "KURD",  "KURT",  "KYLE", "LACE",  "LACK",  "LACY",  "LADY",  "LAID",  "LAIN",  "LAIR",  "LAKE", "LAMB",  "LAME",  "LAND",  "LANE",  "LANG",  "LARD",  "LARK",  "LASS", "LAST",  "LATE",  "LAUD",  "LAVA",  "LAWN",  "LAWS",  "LAYS",  "LEAD", "LEAF",  "LEAK",  "LEAN",  "LEAR",  "LEEK",  "LEER",  "LEFT",  "LEND", "LENS",  "LENT",  "LEON",  "LESK",  "LESS",  "LEST",  "LETS",  "LIAR", "LICE",  "LICK",  "LIED",  "LIEN",  "LIES",  "LIEU",  "LIFE",  "LIFT", "LIKE",  "LILA",  "LILT",  "LILY",  "LIMA",  "LIMB",  "LIME",  "LIND", "LINE",  "LINK",  "LINT",  "LION",  "LISA",  "LIST",  "LIVE",  "LOAD", "LOAF",  "LOAM",  "LOAN",  "LOCK",  "LOFT",  "LOGE",  "LOIS",  "LOLA", "LONE",  "LONG",  "LOOK",  "LOON",  "LOOT",  "LORD",  "LORE",  "LOSE", "LOSS",  "LOST",  "LOUD",  "LOVE",  "LOWE",  "LUCK",  "LUCY",  "LUGE", "LUKE",  "LULU",  "LUND",  "LUNG",  "LURA",  "LURE",  "LURK",  "LUSH", "LUST",  "LYLE",  "LYNN",  "LYON",  "LYRA",  "MACE",  "MADE",  "MAGI", "MAID",  "MAIL",  "MAIN",  "MAKE",  "MALE",  "MALI",  "MALL",  "MALT", "MANA",  "MANN",  "MANY",  "MARC",  "MARE",  "MARK",  "MARS",  "MART", 
  217.  
  218.  
  219.  
  220. Haller                                                         [Page 10] 
  221.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  222.  
  223.  "MARY",  "MASH",  "MASK",  "MASS",  "MAST",  "MATE",  "MATH",  "MAUL", "MAYO",  "MEAD",  "MEAL",  "MEAN",  "MEAT",  "MEEK",  "MEET",  "MELD", "MELT",  "MEMO",  "MEND",  "MENU",  "MERT",  "MESH",  "MESS",  "MICE", "MIKE",  "MILD",  "MILE",  "MILK",  "MILL",  "MILT",  "MIMI",  "MIND", "MINE",  "MINI",  "MINK",  "MINT",  "MIRE",  "MISS",  "MIST",  "MITE", "MITT",  "MOAN",  "MOAT",  "MOCK",  "MODE",  "MOLD",  "MOLE",  "MOLL", "MOLT",  "MONA",  "MONK",  "MONT",  "MOOD",  "MOON",  "MOOR",  "MOOT", "MORE",  "MORN",  "MORT",  "MOSS",  "MOST",  "MOTH",  "MOVE",  "MUCH", "MUCK",  "MUDD",  "MUFF",  "MULE",  "MULL",  "MURK",  "MUSH",  "MUST", "MUTE",  "MUTT",  "MYRA",  "MYTH",  "NAGY",  "NAIL",  "NAIR",  "NAME", "NARY",  "NASH",  "NAVE",  "NAVY",  "NEAL",  "NEAR",  "NEAT",  "NECK", "NEED",  "NEIL",  "NELL",  "NEON",  "NERO",  "NESS",  "NEST",  "NEWS", "NEWT",  "NIBS",  "NICE",  "NICK",  "NILE",  "NINA",  "NINE",  "NOAH", "NODE",  "NOEL",  "NOLL",  "NONE",  "NOOK",  "NOON",  "NORM",  "NOSE", "NOTE",  "NOUN",  "NOVA",  "NUDE",  "NULL",  "NUMB",  "OATH",  "OBEY", "OBOE",  "ODIN",  "OHIO",  "OILY",  "OINT",  "OKAY",  "OLAF",  "OLDY", "OLGA",  "OLIN",  "OMAN",  "OMEN",  "OMIT",  "ONCE",  "ONES",  "ONLY", "ONTO",  "ONUS",  "ORAL",  "ORGY",  "OSLO",  "OTIS",  "OTTO",  "OUCH", "OUST",  "OUTS",  "OVAL",  "OVEN",  "OVER",  "OWLY",  "OWNS",  "QUAD", "QUIT",  "QUOD",  "RACE",  "RACK",  "RACY",  "RAFT",  "RAGE",  "RAID", "RAIL",  "RAIN",  "RAKE",  "RANK",  "RANT",  "RARE",  "RASH",  "RATE", "RAVE",  "RAYS",  "READ",  "REAL",  "REAM",  "REAR",  "RECK",  "REED", "REEF",  "REEK",  "REEL",  "REID",  "REIN",  "RENA",  "REND",  "RENT", "REST",  "RICE",  "RICH",  "RICK",  "RIDE",  "RIFT",  "RILL",  "RIME", "RING",  "RINK",  "RISE",  "RISK",  "RITE",  "ROAD",  "ROAM",  "ROAR", "ROBE",  "ROCK",  "RODE",  "ROIL",  "ROLL",  "ROME",  "ROOD",  "ROOF", "ROOK",  "ROOM",  "ROOT",  "ROSA",  "ROSE",  "ROSS",  "ROSY",  "ROTH", "ROUT",  "ROVE",  "ROWE",  "ROWS",  "RUBE",  "RUBY",  "RUDE",  "RUDY", "RUIN",  "RULE",  "RUNG",  "RUNS",  "RUNT",  "RUSE",  "RUSH",  "RUSK", "RUSS",  "RUST",  "RUTH",  "SACK",  "SAFE",  "SAGE",  "SAID",  "SAIL", "SALE",  "SALK",  "SALT",  "SAME",  "SAND",  "SANE",  "SANG",  "SANK", "SARA",  "SAUL",  "SAVE",  "SAYS",  "SCAN",  "SCAR",  "SCAT",  "SCOT", "SEAL",  "SEAM",  "SEAR",  "SEAT",  "SEED",  "SEEK",  "SEEM",  "SEEN", "SEES",  "SELF",  "SELL",  "SEND",  "SENT",  "SETS",  "SEWN",  "SHAG", "SHAM",  "SHAW",  "SHAY",  "SHED",  "SHIM",  "SHIN",  "SHOD",  "SHOE", "SHOT",  "SHOW",  "SHUN",  "SHUT",  "SICK",  "SIDE",  "SIFT",  "SIGH", "SIGN",  "SILK",  "SILL",  "SILO",  "SILT",  "SINE",  "SING",  "SINK", "SIRE",  "SITE",  "SITS",  "SITU",  "SKAT",  "SKEW",  "SKID",  "SKIM", "SKIN",  "SKIT",  "SLAB",  "SLAM",  "SLAT",  "SLAY",  "SLED",  "SLEW", "SLID",  "SLIM",  "SLIT",  "SLOB",  "SLOG",  "SLOT",  "SLOW",  "SLUG", "SLUM",  "SLUR",  "SMOG",  "SMUG",  "SNAG",  "SNOB",  "SNOW",  "SNUB", "SNUG",  "SOAK",  "SOAR",  "SOCK",  "SODA",  "SOFA",  "SOFT",  "SOIL", "SOLD",  "SOME",  "SONG",  "SOON",  "SOOT",  "SORE",  "SORT",  "SOUL", "SOUR",  "SOWN",  "STAB",  "STAG",  "STAN",  "STAR",  "STAY",  "STEM", "STEW",  "STIR",  "STOW",  "STUB",  "STUN",  "SUCH",  "SUDS",  "SUIT", "SULK",  "SUMS",  "SUNG",  "SUNK",  "SURE",  "SURF",  "SWAB",  "SWAG", "SWAM",  "SWAN",  "SWAT",  "SWAY",  "SWIM",  "SWUM",  "TACK",  "TACT", "TAIL",  "TAKE",  "TALE",  "TALK",  "TALL",  "TANK",  "TASK",  "TATE", 
  224.  
  225.  
  226.  
  227. Haller                                                         [Page 11] 
  228.  RFC 1760           The S/KEY One-Time Password System      February 1995 
  229.  
  230.  "TAUT",  "TEAL",  "TEAM",  "TEAR",  "TECH",  "TEEM",  "TEEN",  "TEET", "TELL",  "TEND",  "TENT",  "TERM",  "TERN",  "TESS",  "TEST",  "THAN", "THAT",  "THEE",  "THEM",  "THEN",  "THEY",  "THIN",  "THIS",  "THUD", "THUG",  "TICK",  "TIDE",  "TIDY",  "TIED",  "TIER",  "TILE",  "TILL", "TILT",  "TIME",  "TINA",  "TINE",  "TINT",  "TINY",  "TIRE",  "TOAD", "TOGO",  "TOIL",  "TOLD",  "TOLL",  "TONE",  "TONG",  "TONY",  "TOOK", "TOOL",  "TOOT",  "TORE",  "TORN",  "TOTE",  "TOUR",  "TOUT",  "TOWN", "TRAG",  "TRAM",  "TRAY",  "TREE",  "TREK",  "TRIG",  "TRIM",  "TRIO", "TROD",  "TROT",  "TROY",  "TRUE",  "TUBA",  "TUBE",  "TUCK",  "TUFT", "TUNA",  "TUNE",  "TUNG",  "TURF",  "TURN",  "TUSK",  "TWIG",  "TWIN", "TWIT",  "ULAN",  "UNIT",  "URGE",  "USED",  "USER",  "USES",  "UTAH", "VAIL",  "VAIN",  "VALE",  "VARY",  "VASE",  "VAST",  "VEAL",  "VEDA", "VEIL",  "VEIN",  "VEND",  "VENT",  "VERB",  "VERY",  "VETO",  "VICE", "VIEW",  "VINE",  "VISE",  "VOID",  "VOLT",  "VOTE",  "WACK",  "WADE", "WAGE",  "WAIL",  "WAIT",  "WAKE",  "WALE",  "WALK",  "WALL",  "WALT", "WAND",  "WANE",  "WANG",  "WANT",  "WARD",  "WARM",  "WARN",  "WART", "WASH",  "WAST",  "WATS",  "WATT",  "WAVE",  "WAVY",  "WAYS",  "WEAK", "WEAL",  "WEAN",  "WEAR",  "WEED",  "WEEK",  "WEIR",  "WELD",  "WELL", "WELT",  "WENT",  "WERE",  "WERT",  "WEST",  "WHAM",  "WHAT",  "WHEE", "WHEN",  "WHET",  "WHOA",  "WHOM",  "WICK",  "WIFE",  "WILD",  "WILL", "WIND",  "WINE",  "WING",  "WINK",  "WINO",  "WIRE",  "WISE",  "WISH", "WITH",  "WOLF",  "WONT",  "WOOD",  "WOOL",  "WORD",  "WORE",  "WORK", "WORM",  "WORN",  "WOVE",  "WRIT",  "WYNN",  "YALE",  "YANG",  "YANK", "YARD",  "YARN",  "YAWL",  "YAWN",  "YEAH",  "YEAR",  "YELL",  "YOGA", "YOKE"   }; 
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  Haller                                                         [Page 12] 
  257.  
  258.