ソフトウェア開発技術者平成16年午後I問1

 リモートアクセスにおけるセキュリティの確保に関する次の記述を読んで、設問1
~3に答えよ。

 X社では、これまで社内ネットワーク上でクライアント/サーバの処理形態で行っ
ていた業務を、外出先や自宅からインターネット経由で行えるようにすることになっ
た。セキュリティの確保のため、インターネットと社内ネットワークの間はファイア
ウォールによって適切に接続するほか、本業務のクライアントとサーバの間で相互の
認証及び電文の暗号化を行い、なりすましや盗聴を防ぐことにする。
 クライアントがサーバと接続するときに、まずクライアントとサーバの間で相互に
認証を行う。IDとパスワードを平文(暗号化していない電文)で送る認証方式では、
盗聴される危険性があるので、パスワードを直接には送らずに認証するチャレンジ・
レスポンス方式と呼ばれる手順が考え出されている。その手順は、まず認証する側が
適当な長さの乱数の電文を生成して相手に送る(チャレンジ)。認証される側は、自分
のパスワードをかぎとしてその電文を暗号化し、送り返す(レスポンス)。認証する側
にはのレスポンスを【 a 】して【 b 】一致することを確認して、相手を
認証する。
 ここでは、クライアントとサーバの間の相互の認証に、このチャレンジ・レスポン
ス方式を採用する。使用する暗号の方式は、かぎの設定や保管などの運用面を考慮し
て公開かぎ暗号方式とし、次のように名付げた四つのかぎを使用する。
   K1:クライアントがもつ秘密かぎ
   K2:K1とペアの公開かぎ
   K3:サーバがもつ秘密かぎ
   K4:K3とペアの公開かぎ
 相互の認証の完了後、暗号作した電文の送受信を行う。ここでは、処理速度を考慮
し、電文の暗号化には共通(秘密)かぎ暗号方式を使用する。ただし、そこで使う共
通かぎはクライアントとサーバの接続の都度生成することにし、それを相手に送る際
には公開かぎ暗号方式を使用する。そのときのかぎは、認証で使用するのと同じもの
を利用する。



設問1 クライアントとサーバの間の認証こ関する記述中の【 a 】、【 b 】
に入れる適切な字句を答えよ。また、図1に示すクライアントによるサーバ認証
の手順中の【 c 】、【 d 】に入れる適切なかぎを、K1~K4の中から
選べ。




設間2 暗号化した電文の挙受信を行うために、クライアント側で共通かぎを生成して
サーバに送り、.クライアントとサーバの間で暗号化通信を始める手順を図2に示
す。この手順中の【 e 】、【 f 】に入れる適切なかぎを、K1~K4の
中から選べ。




設問3 クライアントやサーバの台数が多い場合の対応に関する次の記述中の
【 g 】~【 k 】に入れる適切な字句又は式を答えよ。

 多数のクライアントやサーバのそれぞれに認証のために別個のかぎをもたせる
と、かぎの設定などの運用が煩雑になる。これを公開かぎ暗号方式の特長を活か
して簡素化することを考える。
 クライアントやサーバの設置にあたり、それらがもつ秘密かぎについては、そ
の機器で注意深く保管する必要がある。しかし、そのペアの公開かぎについては、
あらかじめ通信の相手となる各機器に保持させておかずに、接続の都度送っても
よい。ただし、なりすましの防止のために、送られた公開かぎの正当性は確認で
きるようにしておく必要がある。
 そこで、認証局を設置し、認証局がもつ秘密かぎについては、認証局内で厳重
に保管する。そのペアの公開かぎは、正当性確認の問題がないように、あらかじ
め【 g 】に設定しておく。各クライアントやサーバは、自分のIDと公開か
ぎを認証局に送って、認証局の【 h 】で暗号化したもの(公開かぎ証明書
と呼ぶ)を発行してもらい、用意しおく。認証曲は、正当なクライアントやサ
ーバからの要求に対してだけ、公開かぎ証明書を発行する。各クライアントやサ
ーバは、接続の都度、その今開かぎ証明書も通信相手に送る。相手は、送られて
きた公開かぎ証明書を認証局の【 i 】で復号することによって、送信元の
公開かぎの正当性を確認できる。
 なお、クライアントやサーバの廃止などに伴って公開かぎとその証明書を無効
にするには、そのための仕組みが別途必要である。
M台のクライアントとN台のサーバが既に稼働しているときに、1台のクライ
アントが増設されて、かぎのペアを追加生成する場合を考える。公開かぎを必要
なクライアントやサーバ機器にあらかじめ保持させておく方式では、追加の秘密
かぎや公開かぎの設定作業が【 j 】台の機器で必要となる。一方、認証局
を設置し、接続の都度、公開かぎ証明書を送る方式では、追加の秘密かぎや公開
かぎ証明書の設定作薬が必要な機器は、公開かぎ証明書を発行する認証局の1台
を含めて【 k 】台である。ここで、各クライアントから接続する相手はす
べてのサーバとする。また、台数には増設されるクライアント自体も含める。