RFC1760 日本語訳

1760 The S/KEY One-Time Password System. N. Haller. February 1995. (Format: TXT=31124 bytes) (Status: INFORMATIONAL)

RFC一覧
英語原文

Network Working Group                                          N. Haller
Request for Comments: 1760                                      Bellcore
Category: Informational                                    February 1995


                   The S/KEY One-Time Password System

                   S/KEY ワンタイムパスワードシステム



Status of this Memo

このメモの位置づけ

   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.

   このメモは、Internet community のための情報を提供する。このメモは、
   どんな種類の Internet 標準も明細に述べない。このメモの配布は、無制限
   である。

-----------------------------------------------------------------------

Abstract

要約

   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/...

   この文書は、Bellcore	により public use のために公開された S/KEY*
   One-Time Password システムを記述する。そしてそれは、参考文献 [3] で
   記述される。参照実装と文書は、ftp.bellcore.com のディレクトリ
   pub/nmh/... から anonymous ftp により利用可能である。

-----------------------------------------------------------------------

Overview

概観

   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.

   the Internet に接続された計算機上での攻撃の 1 つの形式は、login id
   と正当ユーザのパスワードのような認証情報を得るため、ネットワークコネ
   クション上で盗聴していることである。獲得された login id とパスワード
   は、システムへのアクセスを得るため、後で使用される。S/KEY One-Time
   Password システムは、リプレイ攻撃と呼ばれる、攻撃のこのタイプに対抗
   するため設計された。

   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.

   S/KEY システムで、たった 1 回のみの使用パスワードだけが、ネットワー
   クを常に横切る。login の間や、UNIX コマンド passwd や su のような認
   証を必要とする他のコマンドを実行する時を含み、ユーザの秘密パスフレー
   ズは、どんな時でもネットワークを決して横切らない。したがって、盗聴/
   リプレイ攻撃は、弱点にならない。追加されるセキュリティは、保護される
   ホストを含んで、秘密情報がどんなシステム上にも必要とされない特性によ
   り提供される。

   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.

   S/KEY システムは、認証サブシステムへの外部 passive (消極的な) 攻撃を
   保護する。これは、ネットワーク盗聴者がプライベート情報へのアクセス獲
   得を妨げない。そして潜在的な侵入者がパケットストリームを盗聴したり変
   更できる場合の "inside jobs" や active (積極的な) 攻撃に対して保護を
   提供しない。

-----------------------------------------------------------------------

Introduction

序論

   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.

   S/KEY one-time password システムの運用に、2 つのサイドがある。client
   サイドで、適切な one-time password が生成されなければならない。host
   サイドで、server は one-time password を検証しなければならなく、ユー
   ザの秘密パスフレーズの安全な変更を許可しなければならない。

   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].

   S/KEY システム client は、one-time password を生成するため、ユーザの
   秘密パスフレーズを、複数回適用するセキュアハッシュ関数へと渡す。それ
   ぞれの使用で、適用回数は、1 ずつ減らされる。したがって、一意である一
   連のパスワードが生成される。S/KEY システム host は、セキュアハッシュ
   関数を通して 1 つのパスを作り出し、その結果と前の one-time password
   を比較することによって、one-time password を検証する。このテクニック
   は、Leslie Lamport により最初提案された [1]。

-----------------------------------------------------------------------

Secure Hash Function

セキュアハッシュ関数

   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.

   セキュアハッシュ関数は、前方向に計算するのが容易な関数である。しかし
   逆方向へは計算的に実行不可能である。S/KEY システムは、Ronald Rivest
   により提案された MD4 Message Digest アルゴリズム [2] に基づく。S/KEY
   認証システムは使用に (MD4 における ?) 衝突を引き起こしたので、MD5
   Message Digest がリリースされた。われわれは、(すでに) 配布された多数
   の client プログラムに当然支払われるべきである MD4 を使用し続けるこ
   とを選んだ。

   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.

   S/KEY システム one-time password は、64 bits 長である。これは、安全
   であるのに十分長く、必要な時、手動で入力される (下の Form of
   Passwords を参照しなさい) のに十分短いと信じられる。

   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.

   S/KEY システムは、64 bit の最終出力を生成して、セキュアハッシュ関数
   の複数回を適用する。MD4 は、入力として任意 bits 数を受け入れ、128
   bit 出力を生成する。S/KEY セキュアハッシュ関数は、64 bit 入力に MD4
   を適用することと、64 bit 出力を生成するため MD4 の出力を exclusive
   or で折りたたむことからなる。

-----------------------------------------------------------------------

Generation of One-Time Passwords

ワンタイムパスワードの生成

   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
   password is displayed in readable form.

   この section は、S/KEY one-time password の計算法を記述する。これは
   すべての入力が結合される準備ステップと、セキュアハッシュ関数が複数回
   適用される生成ステップと、64 bit one-time password が可読形式で表示
   される出力機能からなる。

   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.

   client の秘密パスフレーズは、どんな長さでもありえ、8 文字以上である
   べきである。上で記述される S/KEY セキュアハッシュ関数は、64 bit 入力
   を受け入れるので、準備ステップが必要とされる。このステップで、パスフ
   レーズは、平文で server から転送された seed と結びつけられる。この秘
   密でない seed は、client に、(異なる seeds を使用して) 複数マシン上
   での同じ秘密パスフレーズ使用を許す。そして seed を変更することにより
   秘密パスワードの安全なリサイクルを許す。(構文解析の容易さに関し、
   seed は、どんな空白も含まないだろう。そして厳密に英数文字からなるべ
   きである。) 結合の結果は、MD4 に渡される。そしてそれから、半分である
   8-byte の 2 つを exclusive-OR することにより、64 bits に減らされる。

   The following code fragment uses the MD4 implementation defined in
   RFC 1320 [2] and defines the preparatory step:

   次のコード部分は、RFC 1320 [2] で定義された MD4 実装を使用し、準備ス
   テップを定義する:

         strcpy(buf,seed);
         strcat(buf,passwd);
         MDbegin(&md)
         MDupdate(&md,(unsigned char *)buf,8*buflen);

         /* Fold result to 64 bits */
         md.buffer[0] ^= md.buffer[2];
         md.buffer[1] ^= md.buffer[3];

   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.

   一連の one-time passwords は、(S と呼ばれる) 準備ステップの出力に対
   し、セキュアハッシュ関数を複数回適用することにより生成される。すなわ
   ち、最初の one-time password は、セキュアハッシュ関数に、ユーザによ
   り指定された回数 (N)、S を通すことにより生成される。次の one-time
   password は、セキュアハッシュ関数を N-1 回、通して生成される。
   one-time password をモニターした盗聴者は、どんな成功する password も
   生成できない。なぜならそれをすることは、ハッシュ関数の逆変換を要求す
   るからである。

-----------------------------------------------------------------------

Form of Passwords

パスワードの形式

   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
   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.

   上の手続きにより生成される one-time password は、64 bits 長である。
   64 bit 数を入力することは、難しく、エラー傾向のあるプロセスである。
   いくつかの S/KEY システム one-time password calculator プログラムは
   このパスワードを、入力システムに挿入する。別のプログラムは、そのパス
   ワードをシステム cut and paste へ利用可能にさせる。いくつかの取り決
   めは、手動で入力される one-time password を要求する。S/KEY システム
   は、自動方法を邪魔することなしに、この手動エントリを容易にするため設
   計された。それゆえに one-time password は、一連の 6 つの短く (1 から
   4 文字) English 単語に変換され、受け入れられる。それぞれの単語は、
   2048 単語の辞書から選ばれる; 単語ごとに 11 bits で、すべての
   one-time password はエンコードされるだろう。相互運用性は、すべての
   S/KEY system hosts と calculators で同じ辞書の使用を必要とする。標準
   辞書は、この RFC に付けられる。

-----------------------------------------------------------------------

Verification of One-Time Passwords

ワンタイムパスワードの検証

   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:

   S/KEY 認証を要求する host system 上の関数は、S/KEY challenge を発行
   するように予期される。この challenge は、client に、現在の S/KEY パ
   ラメータ - 順序番号と seed を与える。自動化された clients が
   challenge を識別し、パラメータ(s) を引き出すことができるように、
   S/KEY challenge が標準形式であることは重要である。この challenge の
   形式は、(次の通りである):

        s/key sequence_integer seed

   The three tokens are separated by single space characters.  The
   challenge is terminated by a blank or a newline.

   3 つのトークンが、単一空白文字により分けられる。この challenge は、
   1 つの空白か改行により終わる。

   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.

   パラメータ(s) と秘密パスフレーズが与えられて、client は、one time
   password を計算 (もしくは lookup) することができる。その後で、この
   one time password は、検証されることができる host system へと渡す。

   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.

   host system は、それぞれのユーザについて、次に述べる情報を含むファイ
   ル (UNIX 参照実装で、それは /etc/skeykeys) を持つ。その情報とは、最
   後に成功した login からの one-time password か、keyinit コマンドを使
   用した sequence からなる最初の one-time password で初期化されたもの
   である (このコマンド名 (keyinit) は、実装依存であるかもしれない)。認
   証試みを検証するため、これは、転送された one-time password を 1 回セ
   キュアハッシュ関数に渡す。もしこの演算結果が格納された前の one-time
   password にマッチするなら、認証は成功し、受理された one-time
   password は将来の使用のために格納される。

   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).

   client により実行されるハッシュ関数適用回数は 1 ずつ減るので、ある時
   点で、ユーザは再ログインできなくなっているシステムを再初期化しなけれ
   ばならない。これは、秘密鍵フレーズ、繰り返し回数と seed の変更を許す
   ため、keyinit コマンドを使用することにより、おこなわれる。普通のテク
   ニックは、seed の終わりにある digit (数字) を増やすか、(500-1000 の
   範囲どれかに) 繰り返し数をリセットすることになっている。

-----------------------------------------------------------------------

Clients

クライアント

   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).

   いくつかのプログラムは、S/KEY one time password 計算に利用できる。参
   照実装に含まれた、UNIX と PC システムのためのコマンドラインインター
   フェイス (key) と、PC のための TSR インターフェイス (ctkey, termkey
   と popkey)、Macintosh と Windows のための GUI インターフェイス
   (keyapp と、名付けられていない Macintosh インターフェイス) である。

   The most basic calculator is the key command whose format is:

   たいていの基本 calculator は、次の形式である key コマンドである:

        key [-n count] sequence seed

   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.

   オプションの count は、単一 one time password 以上を表示するために使
   用される。これは、one time passwords に関する紙のリストを作り出すの
   に有用である。

   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.

   たいていの自動化された calculator は、PC 上で Terminate and Stay
   Resident (TSR) プログラムとして動作する termkey プログラムである。こ
   れは、S/KEY パラメータ(s) を見つけるためスクリーンをスキャンし、秘密
   パスフレーズの促しと、one time password をキーボードバッファに詰め込
   む。

-----------------------------------------------------------------------

Acknowledgements

謝辞

   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.

   S/KEY 認証の背後にあるアイデアは、Leslie Lamport [1] により最初提案
   された。記述される明確なシステムは、Phil Karn により提案された。Phil
   Karn は、参照実装の多くも書いた。

-----------------------------------------------------------------------

References

参考文献

   [1] Lamport, L., "Password Authentication with Insecure
       Communication", Communications of the ACM 24.11, November 1981,
       770-772.

   [2] Rivest, R., "The MD4 Message-Digest Algorithm", RFC 1320, MIT and
       RSA Data Security, Inc., April 1992

   [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

   [4] Haller, N., and R. Atkinson, "On Internet Authentication", RFC
       1704, Bell Communications Research and Naval Research Laboratory,
       October 1994

-----------------------------------------------------------------------

Security Considerations

セキュリティに関する考察

   This entire document is about Security Considerations.

   この全体の文書は、Security Considerations についてである。

-----------------------------------------------------------------------

Author's Address

著者のアドレス

   Neil Haller
   Bellcore
   MRE 2Q-280
   445 South Street
   Morristown, NJ, 07960-6438, USA

   Phone: +1 201 829-4478
   Fax:  +1 201 829-2504
   EMail: nmh@bellcore.com

-----------------------------------------------------------------------

Dictionary for Converting Between S/KEY 6-Word and Binary Formats

S/KEY 6 単語とバイナリ形式間の変換のための辞書

   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.

   この辞書は、モジュール put.c からのものである。このモジュールのため
   のコードと、完全な S/KEY One Time Password System の実装は、
   ftp.bellcore.com のディレクトリ pub/nmh/skey から anonymous ftp によ
   り利用可能である。

{        "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",
"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",
"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",
"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",
"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",
"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"   };

-----------------------------------------------------------------------

Full Copyright Statement

著作権表示全文

   Copyright (C) The Internet Society (1995).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

<BR> 改行する

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る