(57)【要約】【課題】Webサイトの成りすましを防止する技術を提供する。【解決手段】利用者装置が、秘密情報を暗号化した秘密情報暗号化データと、当該秘密情報暗号化データ復号用の復号鍵とサービス提供装置に対応する識別情報とを管理装置の公開鍵で暗号化した復号鍵暗号化データと、を組にしてサービス提供者装置に送信し、サービス提供者装置は、復号鍵暗号化データを管理装置に送信し、管理装置は、サービス提供者装置が登録されたものであることを確認して復号鍵暗号化データを復号し、復号したデータの中の識別情報が、前記サービス提供者装置に対応するものであることを確認した場合に、復号したデータの中の復号鍵をサービス提供者装置に送信し、サービス提供者装置は、管理装置から送信された復号鍵を用いて秘密情報暗号化データを復号する。【選択図】  図５
2006157336.tif 000002
【特許請求の範囲】
【請求項１】
サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有するシステムにおいて、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるための秘密情報送受信方法であって、
送信装置は、入力された前記秘密情報を暗号化した秘密情報暗号化データと、当該秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを管理装置の公開鍵で暗号化した復号鍵暗号化データと、を組にして前記受信装置に送信し、
前記受信装置は、前記記憶手段に保持されている登録情報に基づき送信元のサービス提供者を管理装置が検証できる形態で、復号鍵暗号化データを前記管理装置に送信し、
前記管理装置は、受信した復号鍵暗号化データの送信元を前記記憶手段の登録情報から特定し、また、前記復号鍵暗号化データを復号して前記サービス提供者識別情報を取得し、当該取得したサービス提供者識別情報と前記特定した登録情報とが前記記憶手段で対応付けられている場合に、復号したデータの中の前記復号鍵を前記受信装置に送信し、
前記受信装置は、管理装置から受信した前記復号鍵を用いて前記秘密情報暗号化データを復号し、秘密情報を出力する
ことを特徴とする秘密情報送受信方法。
【請求項２】
サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有し、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるシステムにおける受信装置としての機能をコンピュータに実現させるプログラムであって、前記コンピュータを、
送信装置に入力された前記秘密情報を暗号化した秘密情報暗号化データと、当該秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを管理装置の公開鍵で暗号化された復号鍵暗号化データと、を送信装置から受信する手段、
前記記憶手段に保持されている登録情報に基づき送信元のサービス提供者を管理装置が検証できる形態で、復号鍵暗号化データを前記管理装置に送信する手段、
管理装置から送信された復号鍵を用いて前記秘密情報暗号化データを復号する手段、
として機能させるプログラム。
【請求項３】
サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有し、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるシステムにおける管理装置としての機能をコンピュータに実現させるプログラムであって、前記コンピュータを、
サービス提供者に関する前記登録情報及び前記サービス提供者識別情報を前記記憶手段に登録する手段、
受信装置から、送信装置に入力された秘密情報を暗号化した秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを前記コンピュータの公開鍵で暗号化した復号鍵暗号化データを受信する手段、
前記受信した復号鍵暗号化データの送信元を前記記憶手段の登録情報から特定する手段、
前記復号鍵暗号化データを復号して前記サービス提供者識別情報を取得する手段、
前記特定した登録情報と前記取得したサービス提供者識別情報とが前記記憶手段で対応付けられている場合に、復号したデータの中の復号鍵を前記受信装置に送信する手段、
として機能させるプログラム。
【請求項４】
前記登録情報には、サービス提供者が使用する電子メールアドレスまたはドメイン名を含み、
受信装置は当該電子メールアドレスまたはドメイン名を使用して復号鍵暗号化データを管理装置に送信し、
管理装置は、前記記憶手段から前記電子メールアドレスまたはドメイン名に対応付けれられているサービス提供者を送信元として特定する
ことを特徴とする請求項１に記載の秘密情報送受信方法。
【請求項５】
前記登録情報には、サービス提供者が秘密に保持するパスワード情報を含み、
受信装置はサービス提供者であることを表明する表明情報と当該パスワードとを復号鍵暗号化データと共に管理装置に送信し、
管理装置は、当該受信したパスワード情報と、当該受信した表明情報と関係付けて前記記憶手段に記憶されているパスワード情報とを比較して送信元のサービス提供者を特定する
ことを特徴とする請求項１に記載の秘密情報送受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Webサイトの成りすましを防止するための技術に関するものである。
【背景技術】
【０００２】
Webサイトを介した電子商取引が普及している中で、Webサイトの成りすましによる詐欺（フィッシング（Phishing）と呼ばれる）が問題になっている。これは、有名サイトを偽装した画面を利用者に提供し、利用者が入力した口座番号やパスワード等の秘密情報を盗む詐欺である。
【０００３】
フィッシングに対する対策として、（１）利用者がWebページのアドレスバーに表示されるURLを見て本物のサイトつながっているかどうか確かめるよう利用者の注意を喚起する、（２）Webページの右下にあるロック表示を確認してSSL（Secure Socket Layer）が作動しているかどうか確認するよう利用者の注意を喚起する、等の方法が従来から提案されている。しかし、このような方法は、ＩＴに詳しくない一般の人々にとって難しいという問題があるほか、以下の問題点がある。
【０００４】
まず、（１）については、アドレスバーを偽装する技術が存在するため、このような技術が使われている場合にはアドレスバーが偽者であることを見抜くことは困難である。また、（２）について、SSLでは、利用者のブラウザに元々埋め込まれている認証機関の公開鍵を用いて、サイトから送られた公開鍵証明書を検証することにより、そのサイトの正当性を確認する。認証機関の公開鍵は複数登録されているが、古いまま更新されない状況であり、中には公開鍵に対応する秘密鍵が不正者の手に渡っていることもありうる状況である。そのような場合には、偽装サイトはブラウザによって正当と検証されるように公開鍵証明書を作成することができる。従って、本物のサイトに成りすましてSSLを使用し得るという問題がある。
【０００５】
なお、本発明に関連する文献として特許文献１、非特許文献１がある。
【特許文献１】特開昭６３−２１７７３９号公報
【非特許文献１】境、光成、笠原  「楕円曲線上のペアリングを用いた２，３の暗号方式」  情報処理学会の研究報告「コンピュータセキュリティ」No.014
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は上記の点に鑑みてなされたものであり、Webサイト提供装置が正当なものであるか否かを確認することによりWebサイトの成りすましを防止する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題は、サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有するシステムにおいて、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるための秘密情報送受信方法であって、送信装置は、入力された前記秘密情報を暗号化した秘密情報暗号化データと、当該秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを管理装置の公開鍵で暗号化した復号鍵暗号化データと、を組にして前記受信装置に送信し、前記受信装置は、前記記憶手段に保持されている登録情報に基づき送信元のサービス提供者を管理装置が検証できる形態で、復号鍵暗号化データを前記管理装置に送信し、前記管理装置は、受信した復号鍵暗号化データの送信元を前記記憶手段の登録情報から特定し、また、前記復号鍵暗号化データを復号して前記サービス提供者識別情報を取得し、当該取得したサービス提供者識別情報と前記特定した登録情報とが前記記憶手段で対応付けられている場合に、復号したデータの中の前記復号鍵を前記受信装置に送信し、前記受信装置は、管理装置から受信した前記復号鍵を用いて前記秘密情報暗号化データを復号し、秘密情報を出力することを特徴とする秘密情報送受信方法により解決される。
【０００８】
また、本発明は、サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有し、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるシステムにおける受信装置としての機能をコンピュータに実現させるプログラムであって、前記コンピュータを、送信装置に入力された前記秘密情報を暗号化した秘密情報暗号化データと、当該秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを管理装置の公開鍵で暗号化された復号鍵暗号化データと、を送信装置から受信する手段、前記記憶手段に保持されている登録情報に基づき送信元のサービス提供者を管理装置が検証できる形態で、復号鍵暗号化データを前記管理装置に送信する手段、管理装置から送信された復号鍵を用いて前記秘密情報暗号化データを復号する手段、として機能させるプログラムとしても構成できる。
【０００９】
更に本発明は、サービス提供者のみに使用させるための秘密情報を送信する送信装置と、前記秘密情報を受信する受信装置と、サービス提供者に関する情報を管理する管理装置とを有し、前記管理装置に、サービス利用者には秘密にされ、サービス提供者を特定・検証するための登録情報とサービス利用者が認知できるサービス提供者識別情報とを対応付けて保持する記憶手段を設け、サービス利用者によって送信装置に入力された前記秘密情報を、前記サービス提供者のみに使用させるシステムにおける管理装置としての機能をコンピュータに実現させるプログラムであって、前記コンピュータを、サービス提供者に関する前記登録情報及び前記サービス提供者識別情報を前記記憶手段に登録する手段、受信装置から、送信装置に入力された秘密情報を暗号化した秘密情報暗号化データ復号用の復号鍵と前記サービス提供者識別情報とを前記コンピュータの公開鍵で暗号化した復号鍵暗号化データを受信する手段、前記受信した復号鍵暗号化データの送信元を前記記憶手段の登録情報から特定する手段、前記復号鍵暗号化データを復号して前記サービス提供者識別情報を取得する手段、前記特定した登録情報と前記取得したサービス提供者識別情報とが前記記憶手段で対応付けられている場合に、復号したデータの中の復号鍵を前記受信装置に送信する手段、として機能させるプログラムとしても構成できる。
【００１０】
前記秘密情報送受信方法において、前記登録情報には、サービス提供者が使用する電子メールアドレスまたはドメイン名を含み、受信装置は当該電子メールアドレスまたはドメイン名を使用して復号鍵暗号化データを管理装置に送信し、管理装置は、前記記憶手段から前記電子メールアドレスまたはドメイン名に対応付けれられているサービス提供者を送信元として特定するように構成してもよい。
【００１１】
また、前記秘密情報送受信方法において、前記登録情報には、サービス提供者が秘密に保持するパスワード情報を含み、受信装置はサービス提供者であることを表明する表明情報と当該パスワードとを復号鍵暗号化データと共に管理装置に送信し、管理装置は、当該受信したパスワード情報と、当該受信した表明情報と関係付けて前記記憶手段に記憶されているパスワード情報とを比較して送信元のサービス提供者を特定するようにしてもよい。
【発明の効果】
【００１２】
本発明によれば、受信装置が正当なものであることが確認された場合に、秘密情報暗号化データ復号用の復号鍵を受信装置に送信することとしたので、第３者が受信装置に成りすますことができなくなる。よって、成りすましを防止できる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の第１の実施の形態及び第２の実施の形態について図面を参照して説明する。
【００１４】
［第１の実施の形態］
まず、本発明の第１の実施の形態について説明する。図１に第１の実施の形態におけるシステム構成を示す。図１に示すとおり、本システムは、暗号化／復号化用の鍵を発行・管理する鍵発行センタ装置１、利用者からの秘密情報を入力を受けることによりサービスを提供するサービス提供者装置２、及び、サービス提供者装置２からのサービスを受ける利用者装置３とを有し、これらの装置がインターネット等のネットワークにより接続された構成を有している。
【００１５】
第１の実施の形態では、サービス提供者装置が利用者装置から暗号化された秘密情報（利用者入力情報）と当該暗号化秘密情報の復号鍵（鍵発行センタの公開鍵で暗号化されている）とを受け取り、鍵発行センタ装置に対して暗号化秘密情報の復号鍵の復号を依頼し、鍵発行センタ装置は、依頼元のサービス提供者装置が正当であると確認できた場合に、暗号化された復号鍵を復号してサービス提供者装置に渡し、サービス提供者装置はその復号鍵を用いて暗号化秘密情報を復号し、利用する。また、この処理の流れの中で、社会的に認知されている文字列等からなるサービス提供者のIDがキーとして用いられる。
【００１６】
（処理シーケンス）
以下、図２〜図４に示すシーケンス図を参照して、システムの動作を詳細に説明する。まず、サービス提供者装置側と利用者装置側の事前準備について説明する。なお、この事前準備は、システム自身の動作というよりも、システムの管理者等が主体になって行われるものである。
【００１７】
図２に示すように、サービス提供者が鍵発行センタに対してIDの登録申請を行う。有名Webサイトの偽装を防止するという観点から、本実施の形態では、サービス提供者自身が有名Webサイトの提供者であるものとする。そのために、鍵発行センタでは、上記IDが社会的に良く知られた商号、サービス名、商標等であり、なおかつ、そのIDが確かにサービス提供者のものであることを確認する（ステップ１）。確認できた場合にのみ、当該IDをそのサービス提供者のものとして登録する。
【００１８】
サービス提供者は暗号化秘密情報を受信する度に、鍵発行センタと通信し、復号鍵を取得するが、この通信を安全なものとするために、サービス提供者を鍵発行センタが確実に認証するための方法、及び鍵配送を安全に行うための方法をサービス提供者と鍵発行センタとの間で定めておく。
【００１９】
このような方法として、サービス提供者と鍵発行センタ間でパスワードを取り決めておく方法、公開鍵と秘密鍵を取り決めておく方法等があるが、ここでは、鍵発行センタが、このサービス提供者用の公開鍵と秘密鍵のペア（PKペアと呼ぶことにする）を安全な方法でサービス提供者に配布しておくものとする（ステップ２）。この場合、サービス提供者は秘密鍵で送付情報に署名を付し、鍵発行センタは公開鍵で送付情報を暗号化することになる。鍵発行センタ装置は、サービス提供者名とそのIDとPKペアをデータベースに登録する（ステップ３）。なお、このPKペアはサービス利用者には秘密にされる。
【００２０】
利用者装置側では、暗号化クライアントモジュールを利用者装置にインストールする（ステップ５）。また、鍵発行センタの公開鍵Kcpを取得しておく。なお、図２のステップ４に示すように、暗号化クライアントモジュールを鍵発行センタ装置からダウンロードする実施形態では、鍵発行センタにおいて暗号化クライアントモジュールに公開鍵Kcpを組み込んでおけば暗号化クライアントモジュールのダウンロードと同時に公開鍵Kcpを取得できる。
【００２１】
以上の事前準備の後、利用者がサービス提供者のサービスを利用する段階で以下の処理が行われる。
【００２２】
図３に示すように、利用者によるサービス利用時に、サービス提供者装置がサービス利用に関するWebページを利用者装置に送信する（ステップ１１）。このWebページは、利用者装置にインストールされている暗号化クライアントモジュールを起動するためのボタンを含む。
【００２３】
利用者が、ブラウザ上に表示された上記Webページのボタンをクリックすることにより暗号化クライアントモジュールが起動され（ステップ１２）、図４に示すような秘密情報入力画面が表示される（ステップ１３）。図４に示すように、この秘密情報入力画面には、パスワードやカード番号等の秘密情報入力フィールとともに、サービス提供者が鍵発行センタに登録したIDが暗号化鍵として表示され、それを利用者に入力させるためのフィールドが表示される。
【００２４】
利用者は、表示されたIDがサービス提供者のものとして妥当であると判断すればそのIDを入力する（ステップ１４）。なお、IDを入力する代わりに、確認ボタンを用意し、表示されたサービス提供者のIDが正しければ、利用者はそれをクリックするという方式でも良い。IDが確かにそのサービス提供者のものかどうかの判断は、利用者に任されるが、IDは社会的に認知されているサービス提供者の名前等であるので、利用者は容易に識別でき、利用者に負担はない。
【００２５】
利用者が上記IDを入力すると、暗号化クライアントモジュールは、暗号化クライアントモジュールがランダムに発生させた暗号鍵Ktを用いて利用者の入力情報を暗号化する（ステップ１５）。なお、本実施形態では、暗号鍵Ktは暗号化と復号化で共通に用いられるものである。従って、暗号鍵Ktは、暗号鍵Ktに対応する復号鍵Ktでもある。暗号化と復号化で共通の鍵を用いない場合は、暗号化クライアントモジュールは、暗号鍵Ktに対応する復号鍵を生成する。
【００２６】
そして、暗号化クライアントモジュールは、IDと復号鍵Ktを結合した情報を、鍵発行センタの公開鍵Kcpを用いて暗号化し、Ktで暗号化した秘密情報と、公開鍵Kcpで暗号化したIDと復号鍵Kt（これをエンベロープという）と、IDと、を含む情報を生成する。この情報（以下、情報Ｍという）は、鍵Xで暗号化することをEXと表記し、利用者入力情報をtextと表記すれば、M=ID+EKcp( [ID + Kt] )+ EKt(text) と表記できる。
【００２７】
利用者装置は、この情報Ｍをサービス提供者装置に送信する（ステップ１６）。サービス提供者装置は、事前準備段階で取得したPKペアの秘密鍵を用いてEKcp( [ID + Kt] )に署名を付し、署名を付したEKcp( [ID + Kt] )を鍵発行センタ装置に送信する（ステップ１７）。
【００２８】
鍵発行センタ装置は、署名付きのEKcp( [ID + Kt] )を受信し、PKペアの公開鍵を用いて署名を検証して確かに登録されたサービス提供者からの情報であることを認証する（ステップ１８）。そして、鍵発行センタの秘密鍵Kcsを用いてEKcp( [ID + Kt] )を復号し、ID + Ktを取り出す（ステップ１９）。
【００２９】
図５に示すように、鍵発行センタ装置は、取り出したIDが、サービス提供者のIDとして登録されているかどうかをデータベースを参照して確認する（ステップ１９）。サービス提供者のIDとして登録されたものであれば、取り出した復号鍵Ktを、盗聴防止のためにPKペアの公開鍵で暗号化してサービス提供者装置に送信する（ステップ２０）。
【００３０】
すなわち、鍵発行センタ装置は、受信した復号鍵暗号化データの送信元を鍵発行センタ装置の記憶装置の登録情報から特定し、また、復号鍵暗号化データを復号してサービス提供者のIDを取得し、当該取得したIDと前記特定した登録情報とが記憶装置で対応付けられている場合に、復号したデータの中の復号鍵をサービス提供者装置に送信している。
【００３１】
続いて、サービス提供者装置は、PKペアの公開鍵で暗号化された復号鍵KtをPKペアの秘密鍵で復号し、当該復号鍵Ktを用いて暗号化された秘密情報EKt(text)を復号し、利用者入力情報を取得する（ステップ２１）。そして、利用者が入力した秘密情報を受信した旨を通知する画面を利用者装置に送信する（ステップ２２）。利用者装置では、その画面をブラウザ上に表示する（ステップ２３）。
【００３２】
上記の処理において、鍵発行センタ装置は、サービス提供者が使用する電子メールアドレスまたはドメイン名をサービス提供者の名前、及びID等と対応付けて記憶装置に格納しておき、サービス提供者装置は、当該電子メールアドレスまたはドメイン名を使用して復号鍵暗号化データを鍵発行センタ装置に送信し、鍵発行センタ装置は、前記記憶装置から前記電子メールアドレスまたはドメイン名に対応付けれられているサービス提供者を送信元として確認するようにしてもよい。
【００３３】
また、鍵発行センタ装置は、サービス提供者が秘密に保持するパスワード情報を、サービス提供者の名前、及びID等と対応付けて記憶装置に格納しておき、サービス提供者装置はサービス提供者であることを表明する表明情報（例えば、サービス提供者の名前）と当該パスワードとを復号鍵暗号化データと共に鍵発行センタ装置に送信し、鍵発行センタ装置は、当該受信したパスワード情報と、当該受信した表明情報と関係付けて記憶装置に記憶されているパスワード情報とを比較して送信元のサービス提供者を特定するようにしてもよい。
【００３４】
（装置の機能構成）
次に、上記のシーケンスに従った処理を行う各装置の機能構成について説明する。なお、各装置は、CPU、メモリ、ハードディスク、通信装置等を有するコンピュータであり、以下で説明する各機能は、コンピュータにインストールされたプログラムにより実現されるものである。
【００３５】
図６は、鍵発行センタ装置の機能構成図である。図６に示すように、鍵発行センタ装置は、サービス提供者装置との通信を行うための通信機能部１１、サービス利用者のIDをデータベースに登録するためのID登録機能部１３、及び、サービス利用者装置が秘密情報を復号するために使用する復号鍵を抽出し、その復号鍵をサービス利用者装置に送信するための復号鍵抽出・送信機能部１５、及び、IDに関する情報を保持するデータベース１７を有している。
ID登録機能部１３は、例えば、ID入力画面を表示し、入力されたIDをデータベース１７に格納する機能を有している。なお、IDは、サービス提供者装置からオンラインで受信してもよく、その場合、ID登録機能部１３は通信機能部１１からIDを受信してデータベース１７に格納する。
【００３６】
データベースには、ID、ID所有者（サービス提供者）の情報、及びサービス提供者装置と鍵発行センタ装置間における秘密情報復号用の鍵の配送に関する情報が記録される。ここで、配送時の認証が、鍵発行センタ装置によるサービス提供者装置のパスワード認証であれば、そのパスワードもIDに対応付けて格納される。また、上述したようにPKペアを使う場合はそのPKペアがIDに対応付けて格納される。図６は、PKペアを格納する例を示している。
【００３７】
更に、鍵発行センタ装置は、鍵発行センタの公開鍵（Kcp：暗号鍵）と秘密鍵（Kcs：復号鍵）のペアを生成しデータベース１７に格納して、公開鍵Kcpを公開する。また、Kcp、Kcsは安全性の観点から定期的に更新するが、その際には、利用者装置に通知する等して、利用者装置が新たな公開鍵を取得できるようにする。また、鍵発行センタ装置に、暗号化クライアントモジュールを格納し、利用者装置に配布する機能を備えてもよい。
【００３８】
次に、図７を参照して利用者装置の機能構成を説明する。図７に示すように、利用者装置は、サービス提供者装置と通信を行う通信機能部３１、サービス提供者装置から送られるWebページを表示するブラウザ３３、及び準備段階でインストールされる暗号化クライアントモジュール３５を有している。なお、暗号化クライアントモジュール３５をブラウザ３３に組み込む構成をとることもできる。
【００３９】
ここで、サービス提供者装置から送られるWebページのブラウザ上での動作について説明する。
【００４０】
Webページ上に入力ボタンが表示され、そのボタンを利用者がクリックすると暗号化クライアントモジュール３５を起動する。その起動に際して、Webページは入力すべき情報項目等（ユーザに入力させたい情報の項目、サービス提供者のID、画面表示フォーマット等）を暗号化クライアントモジュール３５にパラメータとして渡す。暗号化クライアントモジュール３５は利用者により入力された秘密情報を暗号化し、その暗号化秘密情報を所定のフォーマットで呼び出し元のWebページに返す。そして、Webページは、サービス提供者装置に対して次のページを要求するとともに、暗号化秘密情報を含む情報をサービス提供者装置に対して送信する。Webページが、次ページ要求に含めて暗号化秘密情報を送信する代わりに、暗号化クライアントモジュール３５が、暗号化秘密情報を含む情報を直接、サービス提供者装置に転送してもよい。この場合、情報転送先であるサービス提供者装置のアドレス情報等をWebページから引き継いでおく。
【００４１】
なお、上記のようにブラウザが暗号化クライアントモジュール３５を起動することに替えて、利用者が起動を指示するようにしてもよい。その場合、ブラウザは暗号化クライアントモジュール３５の起動を利用者に対して促進するメッセージを表示し、渡すべき情報を予め定めておいた引継ぎファイルに入れる。そして、暗号化クライアントモジュール３５は利用者の指示により起動され、その情報を引き継ぎファイルから読み出す。この方式の場合、利用者の指示により暗号化クライアントモジュールが起動されるので、フィッシャーにより偽装された画面を利用してしまうことを防止し易い。
【００４２】
次に、暗号化クライアントモジュール３５について説明する。図７に示すように、暗号化クライアントモジュール３５は、秘密情報入力画面表示機能部３５１、秘密情報暗号化機能部３５２、モジュール真正性チェック機能部を有している。また、鍵発行センタの公開鍵Kcp、合言葉対応表等をデータベース３５４、３５５に保持している。暗号化クライアントモジュール３５の各機能部の動作を次に説明する。  
秘密情報入力画面表示機能部３５１は、図４に示したような秘密情報入力画面を表示し、利用者による秘密情報とIDの入力を受け付ける。秘密情報暗号化機能部３５２は、図３のステップ１５、１６で説明したように、入力された秘密情報を暗号鍵Ktで暗号化し、また、EKcp( ID + Kt)を生成する。
【００４３】
なお、暗号化秘密情報を受け取るサービス提供者装置が複数あり、それぞれを別々の暗号化とする場合は、例えば図８に示す画面を表示する。この例は、電子商店のサイトを利用者が利用する場合において、電子商店向きの情報とクレジットカード会社向き情報とがある場合の例である。カード番号等のクレジットカード会社向け情報を電子商店が取得できないようにするために、それぞれの情報を別の暗号鍵を用いて暗号化する。  
例えば、サービス提供者1向けの秘密情報をtext1、サービス提供者2向けの秘密情報をtext2、サービス提供者１のIDをID_1（例えば、「ｘｘ商店」などの文字列）、サービス提供者2のIDをID_2（例えば、「ｙｙクレジット」などの文字列）、text1を暗号化する鍵をKt_1、text2を暗号化する鍵をKt_2、鍵センタの公開鍵をKcpとすると、暗号化クライアントモジュールは以下の電文Mを生成する。
【００４４】
M = EKcp( [ID_1 + Kt_1] + [ID_2 + Kt_2]) + [ID_1+ EKt_1(text1) ] + 
[ID_2 + EKt_2(text2) ]
この情報Ｍが利用者装置から送信されることになる。なお、送信先は２つに限られるものではない。
【００４５】
モジュール真正性チェック機能部３５３は、起動された暗号化クライアントモジュール３５が、改竄されていたり、偽者ではないことを利用者が確認するための機能を有している。フィッシャーによる偽装として、例えば、正規のサービス提供者のページと外見上同じページを表示し、ボタンをクリックした場合に正規の利用者情報入力画面と外見上同じ画面を表示することが考えられる。この偽装画面にデータを投入してしまえばデータが暗号化されることなくフィッシャーに送信されることになる。このような偽装を防止するために、本実施の形態のモジュール真正性チェック機能部３５３は、以下のような処理を行う。
【００４６】
準備として、暗号化クライアントモジュール３５を利用者装置にインストールする際に、利用者固有の合言葉（利用者が入力する言葉と、それに対して返す言葉）を決め、暗号化クライアントモジュール３５に登録する。モジュール真正性チェック機能部３５３は、利用者からの上記合言葉の入力を受け、対応する合言葉を返す。利用者は合言葉を投入して正しい答えが返ってくるか確認することにより、正しい暗号化クライアントモジュールが動作しているか否かを確認できる。なお、合言葉を使用する代わりに、利用者が予め設定したシンボルを表示するといった簡易な方式を用いることもできる。
【００４７】
次に、サービス提供者装置について説明する。図９は、サービス提供者装置の構成図である。
【００４８】
図９に示すように、サービス提供者装置は、利用者装置及び鍵発行センタ装置と通信を行うための通信機能部２１、他のサービス提供者装置と通信を行う通信機能部２３、利用者装置に送るWebページを作成するWebページ作成機能部２５、秘密情報復号機能部２７、及び復号鍵要求機能部２９を有する。
【００４９】
秘密情報復号機能部２７は、利用者装置から暗号化された秘密情報とIDとエンベロープを受信し、エンベロープを取り出し、復号鍵要求機能部２９に渡す。復号鍵要求機能部２９は、秘密情報復号機能部２７から渡されたエンベロープを鍵発行センタ装置に送信する。また、復号鍵要求機能部２９は、エンベロープを鍵発行センタに送信する際に、登録時に定めた認証方法に基づく処理を行う。本実施の形態では、PKペアの秘密鍵でエンベロープに署名を付して送信する。
【００５０】
また、復号鍵要求機能部２９は鍵発行センタ装置から復号された復号鍵を受け取り、その復号鍵を秘密情報復号機能部２７に渡す。秘密情報復号機能部２７は当該復号鍵を用いて暗号化された秘密情報を復号する。
【００５１】
また、秘密情報復号機能部２７は、利用者装置から受信した情報の中に自分宛以外の情報が含まれていれば、その情報を宛先に転送する。例えば、ID_1に対応するサービス利用者１が、
M = EKcp( [ID_1 + Kt_1] + [ID_2 + Kt_2]) + [ID_1+ EKt_1(text1) ] + 
[ID_2 + EKt_2(text2) ]
を受信した場合に、ID_2が含まれていることを認識し、ID_2に対応するサービス利用者２に対し、この情報MもしくはMから[ID_1+ EKt_1(text1)  ]を除いたものを送信する。
【００５２】
本実施の形態のしくみを用いることにより、利用者が意図するサービス提供者のみが、利用者が入力した秘密情報を解読でき、サービス提供者の成りすましを防止できる。
【００５３】
［第２の実施の形態］
次に、本発明の第２の実施の形態について説明する。第２の実施の形態でも、全体のシステム構成は図１に示した通りである。第２の実施の形態では、IDそのものを、利用者が入力した秘密情報の暗号化のための公開鍵として用いる。また、鍵発行センタ装置は、当該公開鍵に対応する秘密鍵（復号鍵）を予めサービス提供者装置に対して発行しておき、サービス提供者装置はその復号鍵を用いて暗号化された秘密情報を復号する。なお、IDを公開鍵として使用する技術自体は公知である。
【００５４】
（処理シーケンス）
図１０〜図１１に示すシーケンス図を参照して、第２の実施の形態におけるシステムの動作を説明する。まず、サービス提供者装置側と利用者装置側の事前準備について説明する。
【００５５】
図１０に示すように、サービス提供者は、第１の実施の形態と同様にして鍵発行センタに対してIDの登録申請を行う。また、秘密情報の復号用の復号鍵を利用者装置に安全に配布するために使用する公開鍵と秘密鍵とのペア（第１の実施に形態と同様のPKペア）を安全な方法でサービス提供者に配布するものとする。また、鍵発行センタ装置では、サービス提供者名とIDとPKペアとをデータベースに登録する（ステップ３１〜３３）。
【００５６】
そして、IDを公開鍵とする場合における秘密鍵S_IDを発行し、データベースに登録する（ステップ３４）。そして、その秘密鍵S_IDをPKペアの公開鍵で暗号化してサービス提供者装置に送信する（ステップ３５）。
【００５７】
利用者装置側では、第１の実施の形態と同様にして、暗号化クライアントモジュールを利用者装置にインストールし、また、利用者装置側では、鍵発行センタが公開する暗号化共通公開パラメータPoを取得しておく（ステップ３６、３７）。暗号化共通公開パラメータPoは、IDを公開鍵として使用して秘密情報を暗号化する際に必要となる情報である。
【００５８】
以上の事前準備の後、利用者がサービス提供者のサービスを利用する段階で以下の処理が行われる。
【００５９】
図１１に示すステップ４１〜ステップ４４は第１の実施の形態における図３のステップ１１〜１４と同じである。暗号化クライアントモジュールが、暗号鍵Ktを用いて利用者の秘密情報を暗号化した後、Ktを、IDと暗号化共通公開パラメータPoを用いて暗号化する（ステップ４５）。そして、暗号化した秘密情報と、暗号化した復号鍵Ktと、IDとを含む情報Mをサービス提供者装置に送信する（ステップ４６）。この情報Mは、
M = ID+ EID(Kt) + E Kt(text)と表記できる。なお、EIDは、サービス提供者のIDを暗号鍵として用いることにより暗号化することを表している。
【００６０】
Mを受信したサービス提供者装置は、既に保持している秘密鍵S_IDを用いて、暗号化されているKtを復号し、暗号化された秘密情報をKtを用いて復号する（ステップ４７）。そして、秘密情報を受信した旨を通知する画面を利用者装置に送信する（ステップ４８）。利用者装置では、その画面をブラウザ上に表示する（ステップ４９）。
【００６１】
なお、上記のシーケンスにおいて、IDとしてサービス提供者に固有の名前自体等を用いることの他、鍵の有効期間の情報をIDに付加したものを用いてもよい。これにより鍵（公開鍵として用いるID）の更新が可能となる。この場合、システム全体でIDの有効期間を定めておき、有効期間が到来したら、鍵発行センタ、サービス提供装置、利用者装置において次の有効期間の情報をIDに付加する。例えば月ごとに鍵を変える場合には、その時の月名をIDに追加する。IDを更新した場合、更新後のIDに対応する秘密鍵は鍵発行センタがサービス提供者に配布する。利用者側においては、この制御情報の付加は、暗号化クライアントモジュールが日付を参照し、自動的に行うようにすればよい。
【００６２】
（装置の機能構成）
次に、上記のシーケンスに従った処理を行う各装置の機能構成について説明する。
【００６３】
図１２は、鍵発行センタ装置の機能構成図である。図１２に示すように、鍵発行センタ装置は、サービス提供者装置との通信を行うための通信機能部４１、サービス利用者のIDをデータベースに登録するためのID登録機能部４３、サービス提供者装置が秘密情報を復号するために使用する秘密鍵を生成する秘密鍵生成機能部４５、及びその秘密鍵をサービス提供者装置に送信する秘密鍵配布機能部４７を有している。更に、鍵発行センタ装置は、IDに関する情報を保持するデータベース４９を有している。
【００６４】
データベース４９には、ID、ID所有者（サービス提供者）の情報、サービス提供者装置と鍵発行センタ装置間における秘密情報復号用の秘密鍵の配送方法、及びサービス提供者用の秘密鍵が記録される。上述したようにPKペアを使う場合はそのPKペアがIDに対応付けて格納される。また、データベース４９には、暗号化共通公開パラメータPoと暗号化共通秘密パラメータPsが保持される。これらの暗号化共通公開パラメータPoと暗号化共通秘密パラメータPsは定期的に更新される（例えば年に１回程度）。更新の際には、利用者装置が保持する暗号化共通公開パラメータPoと、サービス提供者装置が保持する秘密鍵も自動的に更新する機能を有してもよい。
【００６５】
次に、図１３を参照して利用者装置の機能構成を説明する。図１３に示すように、利用者装置は、サービス提供者装置と通信を行う通信機能部５１、サービス提供者装置から送られるWebページを表示するブラウザ５３、及び暗号化クライアントモジュール５５を有している。
【００６６】
サービス提供者装置から送られるWebページのブラウザ上での動作は第１の実施の形態と同じである。また、暗号化クライアントモジュール５５は、秘密情報暗号化機能部５５２における暗号化の処理の方法のみが第１の実施の形態と異なる。図１１のステップ４５で説明したように、第２の実施の形態ではIDと暗号化共通公開パラメータPoを用いて復号鍵Ktを暗号化する。
【００６７】
また、第１の実施の形態と同様に、利用者の秘密情報を受け取るサービス提供者装置が複数ある場合に、それぞれに別々の暗号化を適用することが可能である。第１の実施の形態における例と同様にサービス提供者1とサービス提供者2が存在する場合において、第２の実施の形態では、
M = [ID_1 + EID_1(Kt_1) + E Kt_1(text1) ] + [ID_2 + EID_2(Kt_2)+ E Kt_2(text2) ]を生成し、送信する。
【００６８】
次に、サービス提供者装置について説明する。図１４は、サービス提供者装置の構成図である。
【００６９】
図１４に示すように、サービス提供者装置は、利用者装置及び鍵発行センタと通信を行うための通信機能部６１、他のサービス提供者装置と通信を行う通信機能部６３、利用者装置に送るWebページを作成するWebページ作成機能部６５、秘密情報復号機能部６７、及び秘密鍵管理機能部６９を有する。  
秘密鍵管理機能部６９は、準備段階における動作として、鍵発行センタ装置に対して秘密鍵を要求し、秘密鍵を受信して秘密鍵データベース６９１に格納する。また、利用者がサービスを利用する段階において、秘密情報復号機能部６７は、利用者装置から暗号化された秘密情報とIDと、IDを公開鍵として暗号化された復号鍵Ktとを受信する。そして、秘密鍵データベースに格納された秘密鍵を用いてKtを復号し、そのKtを用いて、暗号化された秘密情報を復号する。また、秘密情報復号機能部６７は、第１の実施の形態と同じく、自分宛以外の情報が含まれていれば、必要に応じてその宛先に情報を転送する。
【００７０】
本実施の形態のしくみを用いることによっても、利用者が意図するサービス提供者のみが、利用者が入力した秘密情報を解読でき、サービス提供者の成りすましを防止できる。また、本実施の形態は、第１の実施の形態と比較して、サービス提供者装置が情報を受け取る度に鍵発行センタ装置と通信を行う必要がないという特色がある。
【００７１】
なお、IDを公開鍵として用いる方法自体は公知であり、例えば特許文献１に開示されている。この文献に基づく方法の概略について以下説明する。                
まず、鍵発行センタで大きな素数をいくつか選択し、その積Nを計算する。以下、素数がp、q、rの３つの場合について説明する。この場合、N = pqrである。次に、p、q、rにそれぞれ対応するガロア体GF(p)、GF(q)、GF(r)に共通の原始根θを選択する。鍵発行センタは暗号化共通公開パラメータとして（N, θ）を公開し、暗号化共通秘密パラメータとしてp、q、rを秘匿する。
【００７２】
また、鍵発行センタはPohlig-Hellmanのアルゴリズムを用いて、
θ^s1 ≡ ID^2 (mod p)、
θ^s2 ≡ ID^2 (mod q)、
θ^s3 ≡ ID^2 (mod r)
を満たすs1、s2、s3を求め（^はべき乗を表す）、θ^s ≡ ID^2 (mod N)となるsを秘密鍵とする。この秘密鍵ｓをサービス提供者装置に対して発行する。
【００７３】
また、利用者装置は、暗号鍵Ktをランダムに生成し、利用者により入力された秘密情報textをKtで暗号化する。そして、乱数tを生成し、暗号化共通公開パラメータ（N, θ）を用いて、
C1 = θ^t  (mod N)
C2 = Kt・ID^(2t)  ( mod N)
を計算することにより、Ktを暗号化し、（C1, C2）をサービス提供者装置に送信する。（C1, C2）を受け取ったサービス提供者装置は、秘密鍵ｓを用い、Kt = C2/(C1^(2s))  ( mod N)を計算することによりKtを求める。その他のID公開鍵方式としては、上記のほかに例えば楕円曲線上のWeil Pairingを用いたものがある（非特許文献１参照）。
【００７４】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内で種々変更・応用が可能である。
【図面の簡単な説明】
【００７５】
【図１】本発明の実施の形態におけるシステム構成を示す図である。
【図２】第１の実施の形態におけるシステムの動作を説明するためのシーケンス図（１）である。
【図３】第１の実施の形態におけるシステムの動作を説明するためのシーケンス図（２）である。
【図４】秘密情報入力画面の例である。
【図５】第１の実施の形態におけるシステムの動作を説明するためのシーケンス図（３）である。
【図６】第１の実施の形態における鍵発行センタ装置の機能構成図である。
【図７】第１の実施の形態における利用者装置の機能構成図である。
【図８】暗号化秘密情報を受け取るサービス提供者装置が複数の場合の秘密情報入力画面の例である。
【図９】第１の実施の形態におけるサービス提供者装置の機能構成図である。
【図１０】第２の実施の形態におけるシステムの動作を説明するためのシーケンス図（１）である。
【図１１】第２の実施の形態におけるシステムの動作を説明するためのシーケンス図（２）である。
【図１２】第２の実施の形態における鍵発行センタ装置の機能構成図である。
【図１３】第２の実施の形態における利用者装置の機能構成図である。
【図１４】第２の実施の形態におけるサービス提供者装置の機能構成図である。
【符号の説明】
【００７６】
１  鍵発行センタ装置
２  サービス提供者装置
３  利用者装置
１１  通信機能部
１３  ID登録機能部
１５  復号鍵抽出・送信機能部
１７  データベース
２１、２３  通信機能部
２５  Webページ作成機能部
２７  秘密情報復号機能部
２９  復号鍵要求機能部
３１  通信機能部
３３  ブラウザ
３５  暗号化クライアントモジュール
４１  通信機能部
４３  ID登録機能部
４５  秘密鍵生成機能部
４７  秘密鍵配布機能部
４９  データベース
５１  通信機能部
５３  ブラウザ
５５  暗号化クライアントモジュール
６１、６３  通信機能部
６５  Webページ作成機能部
６７  秘密情報復号機能部
６９  秘密鍵管理機能部
【図１】
2006157336.tif 000003
【図２】
2006157336.tif 000004
【図３】
2006157336.tif 000005
【図４】
2006157336.tif 000006
【図５】
2006157336.tif 000007
【図６】
2006157336.tif 000008
【図７】
2006157336.tif 000009
【図８】
2006157336.tif 000010
【図９】
2006157336.tif 000011
【図１０】
2006157336.tif 000012
【図１１】
2006157336.tif 000013
【図１２】
2006157336.tif 000014
【図１３】
2006157336.tif 000015
【図１４】
2006157336.tif 000016