説明

認証システム、端末装置、パスワード発行装置及び認証方法

【課題】携帯電話にアプリケーションソフトウェアをダウンロードする方法では、アプリケーションソフトウェアの開発、配布に大きなコストがかかってしまうとの課題を解決する。
【解決手段】所定の規則で生成したシード番号に対応するパスワードの入力により認証を行う端末装置(1)と、前記シード番号を含む所定の要求メッセージに応じて前記パスワードを発行するパスワード発行装置(3)とを具備することを特徴とする認証システムである。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証システム、認証方法、認証システムで使用される端末装置及びパスワード発行装置、及び認証プログラムに関する。
【背景技術】
【0002】
現在、パーソナルコンピュータなどの端末装置や、それらを利用した様々な情報システムは、その多くがパスワード等によって保護されている。端末装置や情報システムを利用可能なユーザをパスワードの照合により認証する方法は、特別な投資が必要なく、安価な方法である。しかし、パスワードを端末装置の筐体に書き込んだり、パスワードを記したメモなどを端末装置とともに携帯したりするユーザが存在する場合があり、パスワードが第三者に盗み取られてしまう可能性があった。特に、ノート型コンピュータなどの携帯可能な端末装置をユーザが携帯して使用する場合において、このようなパスワード漏洩の可能性はさらに高まると考えられる。
【0003】
一方、端末装置に格納するデータを部分的に、あるいは全体的に暗号化して容易に読み取れなくする技術も広く使用されている。しかし、このような対策を施したとしても、上述したようなユーザ自身の行為によって暗号化を解除するパスワードが簡単に盗み取られてしまうような状態にあれば、端末装置内のデータを保護することは困難であろう。
【0004】
多くの企業等では情報セキュリティ教育の一貫として、端末装置のユーザに対してログインやデータの暗号化解除等に使用するパスワードを筐体等に書かないよう指導がなされている。しかし、大勢のユーザにこれを徹底させることは難しく、情報漏洩問題の発生を未然に防ぐことにはこうした現実的な困難性が伴う。
【0005】
上述したような問題の解決方法として、ワンタイムパスワード方式が知られている。この方式では、まず、各ユーザに手のひらに乗る程度の大きさのワンタイムパスワード表示機を配布する。このワンタイムパスワード表示機とパーソナルコンピュータ等の端末装置のログイン機構は同じアルゴリズムで動作させておく。ユーザは端末装置へログインする都度、ワンタイムパスワード表示機の表示画面に表示されたパスワードを端末装置に入力する。このような方法によれば、パスワードが一定でなくなり、ユーザによってパスワードが端末装置の筐体に記入されることを未然に防止することが期待できる。
【0006】
しかしながら、ワンタイムパスワード表示機はログインの際に必要となるので、ユーザがコンピュータの近くにワンタイムパスワード表示機を置いておく場合が考えられる。さらに、ノート型コンピュータの場合は、ユーザがワンタイムパスワード表示機とノート型コンピュータとを一緒に携帯することが考えられる。そのような場合は、端末装置の盗難時や紛失時に、ワンタイムパスワード表示機も同時に第三者の手へと渡る可能性があるので、パスワードを筐体に書いた場合と同様の問題が生じ得る。
【0007】
また、ワンタイムパスワード表示機には、暗証番号(PIN)を入力しないと、ワンタイムパスワードを出力しないものがある。しかし、ユーザがその暗証番号(PIN)を例えばワンタイムパスワード表示機の筐体に書いてしまうと、この場合も、ユーザがコンピュータの筐体にパスワードを書いた場合と同様の問題が生じ得る。
【0008】
さらに、ワンタイムパスワード方式を採用する場合には、ユーザの規模に応じてワンタイムパスワード表示機を導入するためのコストや、機器を管理する手間を必要とするという難点がある。
【0009】
一方、ワンタイムパスワード表示機を配布するかわりに、現在では多くの人が所有している携帯電話を利用する方法もある。例えば、携帯電話と認証サーバを用いる方法が提案されている。この方法では、携帯電話からのパスワード発行要求に応じて認証サーバがワンタイムパスワードを生成し、記憶するとともに、携帯電話に送信する。業務サーバからワンタイムパスワードを受信すると、受信したワンタイムパスワードと記憶されたワンタイムパスワードとが一致するか判別し、一致した場合に認証成功メッセージを業務サーバに送信する。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2007−58469号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
つまり、ユーザの携帯電話に、ワンタイムパスワード表示機と同じような機能を実行するアプリケーションソフトウェアをダウンロードし、そのアプリケーションソフトウェアにより発生したワンタイムパスワードを使用して端末装置へのログインを実施することは可能である。ここで、ワンタイムパスワードの表示機の代わりに携帯電話を用いる場合の問題点を検討する。
【0012】
ユーザは、携帯電話を通話やメールの送受信など、ワンタイムパスワードを表示する以外の用途にも利用する。このため、ユーザは、ノート型コンピュータから離れる場合にも携帯電話を持ち歩くことが多い。したがって、ワンタイムパスワードの表示機の代わりに携帯電話を用いることにより、ノート型コンピュータ等の端末装置と一緒に盗難・紛失する可能性を低減させることが期待される。
【0013】
しかし、ワンタイムパスワードの表示機能を持ったアプリケーションソフトウェアを携帯電話にダウンロードする方法を採用するためには、アプリケーションソフトウェアの開発や配布に多大なコストを必要とする。すなわち、携帯電話は広く普及しているが、携帯電話会社は複数あり、各個人が持っている携帯電話の機種は様々である。そのため、ワンタイムパスワード発生用のアプリケーションソフトウェアも複数開発する必要がある。
【0014】
また、携帯電話用アプリケーションソフトウェアは、インターネット上のサーバからユーザの携帯電話へダウンロードする形態で配布される場合が多い。インターネット上のサーバは、ファイアウォールに守られたイントラネットに設置された場合と比較して、より多くの不正アクセスの危険にさらされている。このため、セキュリティパッチの適用など、常に高い安全性を保つための管理運用の手間が必要とされる。そこで、アプリケーションソフトウェアを安全に配布するためにインターネット上のサーバの管理運用を外部の専門業者に委託することも多く、このような場合はさらに運用コストが増大する。
【0015】
さらに、上記の携帯電話と認証サーバを用いる方法では、認証サーバが、生成したパスワードを記憶しなければならない。また、ワンタイムパスワードが、少なくとも認証サーバから携帯電話に送信され、さらに業務サーバから認証サーバに送信されるので、盗聴等の恐れがある。
【課題を解決するための手段】
【0016】
かかる課題の少なくとも1つを解決するため、一実施形態による認証システムは、所定の規則で生成したシード番号に対応するパスワードの入力により認証を行う端末装置と、前記シード番号を含む所定の要求メッセージに応じて前記パスワードを発行するパスワード発行装置とを具備することを特徴とする。
【0017】
他の実施形態による端末装置は、所定の規則でシード番号を生成し、前記シード番号に対応する第1のパスワードを生成する演算部と、前記演算部が生成した前記シード番号を出力する出力部と、前記シード番号に対応する第2のパスワードの入力を受ける入力部とを具備し、前記演算部は前記第1のパスワードと前記第2のパスワードとが一致したとき認証を行うことを特徴とする。
【0018】
他の実施形態によるパスワード発行装置は、所定のメッセージを送受信する通信部と、端末装置が所定の規則で生成したシード番号を含む、前記通信部が受信した要求メッセージに応じて、前記端末装置が認証を行うためのパスワードを発行する演算部とを具備することを特徴とする。
【0019】
さらに他の実施形態による認証方法は、端末装置が、所定の規則でシード番号を生成する段階と、パスワード発行装置が、前記シード番号を含む所定の要求メッセージに応じてパスワードを発行する段階と、前記端末装置が、前記パスワード発行装置が発行した前記パスワードの入力により認証を行う段階とを含むことを特徴とする。
【0020】
その他の実施形態は、以下に説明する発明の詳細な説明により明らかになる。
【発明の効果】
【0021】
端末装置が、所定の規則でシード番号を生成し、パスワード発行装置が、前記シード番号を含む所定の要求メッセージに応じてパスワードを発行し、前記端末装置が、前記パスワード発行装置が発行した前記パスワードの入力により認証を行うので、ユーザにワンタイムパスワード表示機を配る必要がなく、アプリケーションソフトウェアを配布するサーバをインターネットに設置する必要もなく、安価で安全な運用が可能である。
【図面の簡単な説明】
【0022】
【図1】一実施形態による認証システムを示す概略図である。
【図2】一実施形態によるユーザ端末装置に表示されるログイン画面の一例を示す図である。
【図3】一実施形態によるパスワード生成サーバを示す概略図である。
【図4】ユーザ情報データベースの構成の一例を示す図である。
【図5】一実施形態によるユーザ情報の登録方法を示すフローチャートである。
【図6】一実施形態によるユーザ端末装置の構成を示すブロック図である。
【図7】一実施形態によるユーザ端末装置へのログイン方法を示すフローチャートである。
【図8】パスワードを電子メールに変換するための変換表の一例を示す図である。
【図9】一実施形態によるパスワード生成方法を示すフローチャートである。
【図10】パスワードの計算方法の一例を示す図である。
【図11】第2の実施形態による認証システムを示す概略図である。
【図12】ユーザ端末装置に表示されるログイン画面の一例を示す図である。
【図13】ユーザ情報データベースの構成例を示す図である。
【図14】第2の実施形態によるユーザ端末装置の構成例を示すブロック図である。
【図15】第2の実施形態によるログイン方法を示すフローチャートである。
【図16】ユーザ暗号鍵データベースの構成例を示す図である。
【図17】ユーザ登録処理を示すシーケンス図である。
【図18】スタンドアロン状態におけるログイン処理を示すシーケンス図である。
【図19】サーバ接続状態におけるログイン処理を示すシーケンス図である。
【発明を実施するための形態】
【0023】
図面を参照しつつ、実施形態を説明する。
【0024】
[第1の実施形態]
図1は、一実施形態による認証システムを示す概略図である。図1に示した認証システムは、例えばノート型コンピュータであるユーザ端末装置1と、例えば携帯電話である携帯メール装置2と、ワンタイムパスワード生成サーバ装置3とを含む。携帯メール装置2とワンタイムパスワード生成サーバ装置3とはインターネット4を介して通信することができる。また、ワンタイムパスワード生成サーバ3は、ファイアウォール5により、インターネット4を介した不正アクセスから守られている。
【0025】
図1を参照して、ユーザ端末装置1に対する、ワンタイムパスワードによるログインの手順の概略を説明する。
【0026】
端末装置1を起動すると、日付、時刻等を元にした乱数で12桁のシード番号が生成される。また、シード番号と顧客個別番号を元に、ワンタイムパスワードが計算される。計算されたワンタイムパスワードは、後で説明するように、ワンタイムパスワード生成サーバ装置3で生成されたワンタイムパスワードとの比較に用いられる。
【0027】
シード番号が生成されると、ユーザ端末装置1の表示装置に、図2に示したログイン画面10が表示される。この画面には、ワンタイムパスワードの入力を促すメッセージ11と、生成された例えば12桁のシード番号12(この場合、「946280957186」)が表示される。ユーザ端末装置1は、ワンタイムパスワードの入力待ちになる。
【0028】
ユーザは、ユーザ端末装置1に表示されたログイン画面10中のシード番号12を、携帯メール端末2の発信メール本文に手動で入力する(ステップS1)。
【0029】
携帯メール装置2は、ユーザの操作に応じて、シード番号12が本文に記述された発信メールを、ワンタイムパスワード生成サーバ装置3の、あらかじめ登録してあるワンタイムパスワード受付メールアドレスに向けて発信する(ステップS2)。
【0030】
上記発信メールは、インターネット4を経由して、本認証システムを導入した企業等のファイアウォール5に到達する。ファイアウォール5は、設定に応じてインターネットからのアクセスを排除するが、通常、電子メールは排除しない。従って、携帯メール装置2からの発信メールは、その企業等のイントラネットに設置されたワンタイムパスワード生成サーバ装置3にそのまま着信する(ステップS3)。
【0031】
ワンタイムパスワード生成サーバ3は、着信した電子メールが、正しいワンタイムパスワード受付メールアドレスに送られてきたものか調べる。また、同アドレスに、例えば100通以上の多数の発信メールが来ていないか調べる。問題が無ければ処理を続行する。
【0032】
ワンタイムパスワード生成サーバ3は、着信した電子メールの本文に記述された、シード番号と、あらかじめ記憶されている顧客個別番号とに基づき、ワンタイムパスワードを計算(または生成)する。
【0033】
ワンタイムパスワード生成サーバ3は、計算したワンタイムパスワードを本文として、携帯メール装置へ電子メールを送信する。以下、ワンタイムパスワードの生成及び送信を、ワンタイムパスワードの発行とも呼ぶ。この電子メールは、ファイアウォール5を通過し、インターネット4を経由して、携帯メール装置2に着信する。(ステップS4、S5)
【0034】
ユーザは、携帯メール装置に着信した電子メールを表示し、本文のワンタイムパスワードを参照する。これを手動で、ユーザ端末装置1に表示されたログイン画面10のワンタイムパスワード入力欄13に入力して、OKボタンを押す(ステップS6)。
【0035】
ユーザ端末装置1は、シード番号から計算したワンタイムパスワードと、ユーザが入力したワンタイムパスワードとを比較し、一致した場合、ログインを許可し、ログイン動作を実行する。
【0036】
また、ユーザは、ログインを中止するときは、キャンセルボタン15を押す。
【0037】
このように、ユーザ端末装置1が、所定の規則でシード番号を生成し、ワンタイムパスワード生成サーバ装置3が、そのシード番号を含む所定の要求メッセージに応じてパスワードを発行し、そのワンタイムパスワード生成装置3が発行したパスワードの入力によりユーザ端末装置1が認証を行うので、ワンタイムパスワード生成装置3が、発行したパスワードを記憶する必要がなくユーザ端末装置に安全にログインできる。
【0038】
この実施形態による認証システムでは、携帯メール端末2を用いて、シード番号をワンタイムパスワード生成サーバ3に送り、ワンタイムパスワードをサーバ3から取得している。一般的に、企業等が社内のイントラネットを守るファイアウォールでも、電子メールは、ほとんどの場合で通している。従って、このシステムでは、ワンタイムパスワード生成サーバをイントラネットにおくことができる。そのためワンタイムパスワード生成サーバ装置では、携帯アプリケーションサーバのような不正アクセスに対する厳しい対策が不要となり、安価にワンタイパスワードシステムの運用が可能である。これが、この実施形態で電子メールを使用している理由である。
【0039】
一実施形態では、シード番号は数字だけの文字列としてもよい。ログイン処理は、なるべく簡単である必要がある。数字だけなら携帯電話でも入力を簡単に行うことができる。
【0040】
一実施形態では、シード番号は10桁以上としてもよい。電子メールは、基本的に盗聴されていると考える必要がある。そのため、通信を盗聴され、蓄積されても問題ない組み合わせ数が必要である。10桁なら、10億通のメールのやり取りを蓄積しなくてはならず、1000人のユーザで運用し、各人が一日10回問い合わせを行っても、全て集めるのは10万日以上かかる計算になる。
【0041】
ユーザ端末装置を不正に入手した者は、複数回ログインを試みられるので、別の実施形態では、シード番号は12桁程度とすることができる。これならば、全ての通信を蓄積されて、1000回不正ログインを試みようとしても、1万日以上かかる計算になる。この場合、メールを蓄積する不正な機器のコストや不正ログインの労力が膨大になるシステムの安全性が高まる。
【0042】
また、一実施形態では、ユーザ端末装置1は、ログイン画面(図2参照)を表示してから、所定時間ワンタイムパスワードの入力が無い場合、新たにシード番号を生成し、ログイン画面を表示しなおし、新たに生成したシード番号に対応するワンタイムパスワードの入力を要求してもよい。この入力待ちの所定時間は、ユーザが携帯メール装置2の発信メールにシード番号を入力してから、ワンタイムパスワード生成サーバ3からワンタイムパスワードを記述した電子メールを受信して、そのワンタイムパスワードをログイン画面10のワンタイムパスワード欄(図2参照)に入力するまでに必要な時間を考慮して、10分程度とすることができる。
【0043】
一実施形態では、ワンタイムパスワード生成サーバ3において、ユーザからの携帯メール端末紛失の知らせ等に応じて、そのユーザに対して登録したワンタイムパスワード受付メールアドレスへのワンタイムパスワード発行要求を停止できるようにする。携帯電話は、よく使用されるものなので、紛失は長くても数日で気が付く。これによって、不正にワンタイムパスワードの問い合わせトラフィックを増やす事を阻止できる。紛失したユーザには、新たにワンタイムパスワード受付メールアドレスを再発行すれば、使用を再開することができる。
【0044】
他の実施形態では、一つのワンタイムパスワード受付メールアドレスでの、所定時間での受付上限を設け、受付上限回数以上の要求が来た場合、自動的にそれ以上のワンタイムパスワードの発行を停止する。その際、所定時間1日における受付上限は100件程度が望ましい。
【0045】
一実施形態では、紛失してから受付メールアドレスが停止されるまでの期間でも、100通程度以上の不正に多いワンタイムパスワードの問い合わせが来た場合、自動的に停止できる。これによって、通常運用者は問題なく使用でき、不正にトラフィックを増やそうとした者の行為は阻止できる。
【0046】
さらに、一実施形態では、システム立ち上げ時に、あらかじめユーザ端末装置1と、ワンタイムパスワード生成装置3とに、例えば4バイトの顧客個別番号を記憶させておく。システムを収める顧客ごとにこの数値を変えることができ、ある企業等に不正な盗聴者がいても、それが他の顧客に影響を及ぼすことが無い。
【0047】
さらに、ワンタイムパスワード生成アルゴリズムは、AESを代表とした暗号アルゴリズムとしている。シード番号から生成されるワンタイムパスワードは、生成アルゴリズムに欠点があると問題だが、十分に検討されたAES等の暗号アルゴリズムならば、その問題もない。
【0048】
以上のとおり、本特許で説明する個人認証におけるワンタイムパスワードシステムによれば、従来の問題を解決した、安価で安全なワンタイムパスワードシステムを構築できる。
【0049】
以下、図1の認証システムを構成する各装置の詳細を説明する。
【0050】
まず、ワンタイムパスワード生成サーバ装置3の詳細を説明する。図3は、一実施形態によるパスワード生成サーバを示す概略図である。
【0051】
図3に示したワンタイムパスワード生成サーバ装置20は、一般のコンピュータと同等のもので、計算やプログラムの実行を行う演算装置21と、演算結果を一時的に保持する主記憶装置22と、ネットワークを介して通信を行う通信装置23と、各種データ、プログラムを保存する補助記憶装置24とを含んでいる。補助記憶装置24は、システムを導入した顧客ごとに割り振る顧客個別番号(例えば4バイトのデータ)25と、ユーザの各種情報が格納されているユーザ情報データベース26と、暗号化実施プログラム27と、BASE64変換プログラム30とを記憶している。
【0052】
トラステッドプラットフォームモジュール(TPM)28には、暗号化に必要な暗号鍵29が保存されている。これは、TPMは、内部のリバースエンジニアリングが不可能な不揮発記憶装置であり、暗号鍵29は、暗号化の実施に必要なものである。これによって、プログラムのリバースエンジニアリングによる不正ログインを防ぐ。TPMは、トラステッドコンピューティンググループ(TCG)のTPMワーキンググループによって策定された、トラステッド・コンピューティング環境を支えるセキュリティ・チップである。
【0053】
暗号化実施プログラム27は、暗号鍵29と、暗号化したいデータを用いて、暗号化データを生成するプログラムである。暗号化実施プログラム27は、例えば、AESやトリプルDESなどの暗号化プログラムである。
【0054】
また、BASE64変換プログラム30は、バイナリデータをテキストデータに変換するプログラムである。電子メール本文には、暗号化実施プログラム27で生成したバイナリデータを直接記述できないので、この変換プログラムが必要となる。他の実施形態では、BASE64変換以外の変換方式を使用してもよい。
【0055】
BASE64変換プログラム30による変換手順は、以下の様になる。まず、バイナリデータを、先頭から6ビットずつ区切る。ビットが余った場合、6ビットになるように後ろに0を付加する。次に、区切った6ビットを、4個ずつ図8に示した変換表に従って、アスキーデータに変換する。最後の部分が4個に満たない場合、文字「=」を、4個になるまで付加する。この手順で、どのようなバイナリデータも、アスキーデータに変換できる。ちなみに、16バイトのバイナリデータは、24バイトのアスキーデータに変換される。
【0056】
図4は、パスワード生成サーバの補助記憶装置24に記憶されたユーザ情報データベース26(図3参照)の構成の一例を示す図である。ユーザ情報データベース30は、ユーザの名前31と、ユーザの所有する携帯メール装置の電子メールアドレス32と、ワンタイムパスワード生成サーバ装置へワンタイムパスワードを要求するときに、そのユーザが使用するワンタイムパスワード受付アドレス33と、ユーザ有効フラグ34と、ワンタイムパスワード発行カウンタ35とを含んでいる。
【0057】
図5も参照して、このユーザ情報データベース30(図3のユーザ情報データベース26)にユーザを登録する際の手順を説明する。
【0058】
ステップSR1において、ユーザの情報を、ワンタイムパスワード生成サーバ装置に入力する。その際に登録するのは、ユーザの名前42と、そのユーザの携帯メール装置の電子メールアドレス43である。入力したユーザの名前42と電子メールアドレス43は、ユーザ情報データベース30(図4参照)のユーザ名31と電子メールアドレス32にそれぞれ記憶される。
【0059】
ステップSR2において、ワンタイムパスワード生成サーバ装置は、このユーザ用のワンタイムパスワード受付アドレス45を自動で生成する。この生成では、「@optsv1.fujitsu.com」の部分47はワンタイムパスワード生成サーバごとに固定され、@マークから前の部分46は、例えばアルファベットを乱数で選んで生成する。図5に示した例では、@マークから前の部分は5文字だが、他の実施形態では、この部分が重複しないように10文字以上にしてもよい。生成された受付アドレス45は、ユーザ情報データベース30(図4参照)の受付アドレス33に記憶される。
【0060】
ステップSR3において、ユーザ有効フラグ(図4の有効フラグ34)と、ワンタイムパスワード発行カウンタ(図4の発行カウンタ35)とを初期化する。ユーザ有効フラグは、登録時は有効(この場合、値1)である。ユーザから携帯メール装置の紛失等の連絡があった場合、ここを無効(この場合、値0)にして、ユーザを無効にする。無効にされた場合、そのワンタイムパスワード受付アドレスで電子メールが到着しても、ワンタイムパスワード生成サーバは、ワンタイムパスワードの発行は行わない。ワンタイムパスワード発行カウンタ35は、例えば、その日一日のワンタイムパスワード発行回数を記録する部分である。ワンタイムパスワードを発行するごとに、そのユーザのカウンタ値を増やして行き、多数(例えば100回)の発行要求を受付けた場合、ユーザ有効フラグを0にして、それ以上ワンタイムパスワードの受付を行わないようにする。値が超えなければ、一日ごとに発行カウンタは0に初期化する。
【0061】
また、ユーザ毎にユーザIDを付与して管理する場合には、ユーザIDを生成する。
【0062】
ステップSR4において、ステップSR1で入力されたメールアドレス(43、図3の32)を用いて、ユーザの携帯メール装置に対して、ステップSR2で生成したワンタイムパスワード受付アドレス(45、図4の33)を電子メールのfrom行に記述し、登録が完了したとの旨を電子メールで通知する。
【0063】
また、ユーザIDを生成した場合には、このユーザIDも合わせて通知する。
【0064】
ステップSR5において、登録完了の旨を記述した電子メールが、図3の通信装置23、顧客企業のイントラネット、ファイアウォール、インターネットを経由して、ユーザの携帯メール装置により受信される。
【0065】
ステップSR6において、ユーザは、受信した電子メールの発信者(その電子メールのfrom行に書かれたワンタイムパスワード生成サーバのワンタイムパスワード受付メールアドレス)を、携帯メール装置のアドレス帳に登録する。受付メールアドレスの文字数が多くても、一般の携帯メール装置では、ボタンを数回押す操作だけでアドレス帳に登録できるので、簡単である。
【0066】
また、ユーザIDを通知された場合は、アドレス帳のメモ欄等に記録しておくことができる。
【0067】
以上が、ワンタイムパスワード生成サーバ装置と、この装置へのユーザの登録手順の詳細である。ユーザを登録することによって、ワンタイムパスワード生成サーバは、ワンタイムパスワードを発行することができるようになる。
【0068】
次に、図6を参照して、ユーザ端末装置(図1の1)の一実施形態を説明する。図6は、一実施形態によるユーザ端末装置の構成を示すブロック図である。図6のユーザ端末装置60は、一般のノート型コンピュータと同等のもので、計算やプログラムの実行を行う演算装置(CPU)61と、演算結果を一時的に保持する主記憶装置(メモリ)62と、計算結果やメッセージを表示する表示装置63と、文字や数字を入力する入力装置(キーボード)64と、各種データやプログラムを保存するハードディスク等の補助記憶装置65と、トラステッドプラットフォームモジュール(TPM)69とを含んでいる。
【0069】
補助記憶装置65は、システムを導入した顧客ごとに割り振る例えば4バイトの顧客個別番号66と、所定の規則でシード番号を生成するシード番号生成プログラム67と、暗号化実施プログラム68と、BASE64変換プログラム71とを記憶している。
【0070】
TPM69には、暗号化に必要な暗号鍵70が記憶されている。
【0071】
図7も参照して、図6に示したユーザ端末装置60におけるログイン手順を説明する。また、図10を参照して、ワンタイムパスワードの計算を説明する。
【0072】
ステップSA1において、ユーザ端末を起動する。演算装置61は、シード番号生成プログラム67を補助記憶装置65から主記憶装置62にロードし、実行を開始する。
【0073】
ステップSA2において、シード番号の生成を行う。シード番号は、例えば12桁の数値であり、C言語等の乱数生成関数rand関数等を使用して生成可能である。しかし、C言語等のrand関数は、srand関数等の種値を元に一定の順番で擬似的な乱数を発生させるものなので、種値の決定に工夫する必要がある。本実施例では、種値は、現在時刻、補助記憶装置の残り容量、補助記憶装置のシリアル番号、機器を起動してからのCPUクロック回数等、刻々と変化している値を加減剰余して、種値とする。これで、外部からの操作にかかわらず、完全に近い12桁の乱数値を生成し、それをシード番号とする。シード番号を主記憶装置62に保存する。
【0074】
ステップSA3において、ユーザが入力するワンタイムパスワード(ワンタイムパスワード生成サーバが生成して、電子メールに記述して携帯メール装置に送信されたもの)と、比較するための、比較用ワンタイムパスワードを生成する。一実施形態では、シード番号12桁と、顧客個別番号4桁を結合し、これをAES暗号化したものを利用する。
【0075】
ステップSA4において、TPM69から、暗号鍵70を読み出し、主記憶装置62に格納する。ステップSA5において、補助記憶装置65から、顧客個別番号66を読み出し、主記憶装置62に格納する。ステップSA6において、12桁のシード番号(12バイト)に、顧客個別番号(4バイト)を結合する。結合データ(16バイト)を主記憶装置62に格納する。
【0076】
ステップSA7において、結合データを、暗号鍵70を用いて、AES暗号方式で暗号化する。得られた暗号化データ(16バイト)を主記憶装置62に格納する。ステップSA8において、暗号化データを、BASE64変換プログラム71で変換を行う。この変換により得られたアスキーデータが、ワンタイムパスワード(24バイト)である。これを主記憶装置に格納する。ステップSA9において、現在の時刻を取得し、主記憶装置に格納する。この時刻は、ログイン画面を表示してからの経過時間を計算するために用いる。また、ステップSA10において、ステップSA2で生成したシード番号を元に、図2に示したログイン画面を表示装置63に表示する。表示した後、入力装置64からの、ワンタイムパスワードの入力を待つ。
【0077】
ここまでのステップは、図1を参照して説明した、端末装置1が起動されてから、ワンタイムパスワードの入力待ちになるまでのステップに対応する。ユーザは、図1を参照して説明したように、携帯メール装置2を用いてワンタイムパスワード生成サーバ装置3に電子メールを送り、ワンタイムパスワードを取得する。
【0078】
図7に戻り、ステップSA11において、ユーザ端末装置60(図6参照)は、ログイン画面にワンタイムパスワードが入力されたか確認する。入力されていればステップSA13に進み、入力されていなければステップSA12に進む。
【0079】
ステップSA12において、ステップSA9で取得した時刻から、10分経過したか確認する。経過していなければステップSA11に戻る。経過していれば、ログイン画面を表示してから時間が経過し過ぎているので、一旦ログイン画面を消去し、ステップSA2に戻る。
【0080】
ステップSA13において、ログイン画面に入力されたワンタイムパスワードと、主記憶装置に記憶されている比較用ワンタイムパスワードとを比較する。比較の結果、一致すればステップSA15に進み、一致しなければステップSA14に移行する。ステップSA14において、ログイン画面に入力されたワンタイムパスワードが間違っているとのメッセージと表示して、ステップSA11に戻る。ステップSA15において、ログイン動作を開始する。以上が、ユーザ端末装置におけるログイン手順である。
【0081】
次に、携帯メール装置(図1の携帯メール装置2)のシード番号送受信手順を説明する。まず、ユーザは、先に登録された(図5のステップSR6)ワンタイムパスワード受付メールアドレス宛に、新規メールを作成する。ワンタイムパスワード受付メールアドレスは、長い複雑な文字列であるが、ほとんどの携帯メール装置では、アドレス記憶機能があるので、ボタンを数回押す操作で作成できる。次に、本文に、ユーザ端末装置のログイン画面に表示された、12桁のシード番号を記述する。シード番号は数字のみで構成されるため、携帯電話でも簡単に入力できる。次に、シード番号を記述した電子メールを発信する。本文が短いので、遅くても十秒程度でワンタイムパスワード生成サーバからワンタイムパスワードが記述された電子メールが返信されてくる。最後に、受信した電子メールを表示する。本文には、24文字のアルファベットと記号で構成されたワンタイムパスワードが記述されている。それを、ユーザ端末装置の入力装置を用いて入力する。入力装置はキーボードなので、アルファベットや数字、記号は簡単に入力できる。
【0082】
次に、ワンタイムパスワード生成サーバ装置における、ワンタイムパスワード発行手順を説明する。図9は、一実施形態によるパスワード生成方法を示すフローチャートである。
【0083】
ステップSS1において、電子メールが着信したか確認する。着信していればステップSS4へ進み、着信していなければステップSS2へ進む。ステップSS2において、時刻が例えば0時になったか確認する。時刻が0時ならば、ステップSS3に進み、それ以外ならばステップSS1へ進む。
【0084】
ステップSS3において、ワンタイムパスワード生成サーバの補助記憶装置(図3の補助記憶装置24)中のユーザ情報データベース(図3の26)の、全ユーザのワンタイムパスワード発行カウンタを0に初期化する。その後ステップSS1へ進む。ステップSS2、SS3により、1日ごとにワンタイムパスワード発行カウンタがリセットされる。このカウンタをリセットする時間間隔は任意であり、実施形態に応じて決定することができる。ステップSS4において、受信した電子メールから、受信メールアドレス、送信者メールアドレス、本文を抽出する。
【0085】
ステップSS5において、受信メールアドレスが、ユーザ情報データベースのワンタイムパスワード受付アドレスのうちのいずれかに一致するか検索する。一致しなければ処理を終了する。一致したら次のステップSS6に進み、一致したユーザの携帯メール装置の電子メールアドレスと、送信者メールアドレスを比較する。一致しなければ、処理を終了する。一致したら次のステップSS7に進み、一致したユーザのユーザ有効フラグを確認する。0と記入され、無効化されていれば、処理を終了する。
【0086】
ステップSS7において、1と記入され、有効であれば、次のステップSS8に進み、一致したユーザのワンタイムパスワード発行カウンタを確認する。カウンタ値が100以上ならば処理を終了する。カウンタ値が100未満ならば、次のステップSS9に進み、抽出した電子メール本文が、12桁の数字か確認する。12桁の数字でなければ処理を終了する。12桁の数字であれば、ステップSS10に進み、一致したユーザのワンタイムパスワード発行カウンタの値を1増加させる。
【0087】
ステップSS11において、電子メール本文をシード番号とする。ステップSS12において、ワンタイムパスワード生成サーバ(図3参照)のTPM28から、暗号鍵29を読み出し、主記憶装置22に格納する。ステップSS13において、ワンタイムパスワード生成サーバ(図3参照)の補助記憶装置24から、顧客個別番号25を読み出し、主記憶装置22に格納する。
【0088】
ステップSS14において、12桁のシード番号に、顧客個別番号25を結合する。結合データ(16バイト)を主記憶装置22に格納する。ステップSS15において、結合データを暗号鍵29を用いて、AES暗号方式で暗号化する。得られた暗号化データ(16バイト)を主記憶装置22に格納する。ステップSS16において、暗号化データを、BASE64変換プログラム30で変換を行う。得られたアスキーデータが、ワンタイムパスワードである。これを主記憶装置22に格納する。
【0089】
ステップSS17において、選択されたユーザの携帯メール装置の電子メールアドレス宛に、ワンタイムパスワードを本文として電子メールを発信する。以上がワンタイムパスワード発行手順の一例である。これで、ユーザの登録と、ログイン時のシードの表示から、ワンタムパスワードの請求、ワンタイムパスワードの発行とログインの実施が行われる。
【0090】
上記の実施形態では、ワンタイムパスワードのみによるユーザ端末装置へのログインを説明した。他の実施形態では、他の認証システムと併用してもよい。特に、生体認証システムとの併用は有効である。生体認証システムは、セキュリティ度合いが高く安価な装置で実施可能であるが、不正使用者として誤認識されてしまう人が1%程度発生する。例えば、その誤認識されてしまう人のみに、このワンタイムパスワードによる認証システムを使うことができる。
【0091】
[第2の実施形態]
次に、他の実施形態による認証システムを説明する。この認証システムは、ログインしたいパーソナルコンピュータとワンタイムパスワードを発行するサーバが直接接続されていないため、秘密のデータの受け渡しができないという課題をさらに解決するものである。
【0092】
この認証システムでは、初めに、ユーザがノート型コンピュータに代表されるユーザ端末装置を、ワンタイムパスワードを発行するサーバと、同じネットワークに接続しておく。このネットワークは信頼がおけるネットワークであることが好ましい。さらに、このネットワークはイントラネットであることが好ましい。
【0093】
ユーザ端末装置は、ユーザがログインする際、シード番号を表示し、これに対応したワンタイムパスワードと、使用するユーザのIDとを要求する。
【0094】
ユーザは、あらかじめ自分に割り振られたユーザIDを入力し、さらに、携帯電話に代表される携帯メール装置を用いて、あらかじめ登録されているシード番号受付メールアドレスに、シード番号を本文として記入した電子メールを送信する。
【0095】
電子メールを受け取ったワンタイムパスワード生成サーバ装置は、受け取った電子メールの送り元からユーザを特定し、そのユーザ固有のワンタイムパスワード生成用鍵を記憶装置から読み出す。そして、シード番号を、ワンタイムパスワード生成用鍵を用いて暗号化し、ワンタイムパスワードを生成する。生成サーバは、生成したワンタイムパスワードを本文として、携帯メール装置に電子メールとして返信する。
【0096】
電子メールを受け取った携帯メール装置は、それを機器内に蓄積し、ユーザに表示する。
【0097】
ユーザはその返信メールの本文を見て、ユーザ端末装置にワンタイムパスワードを入力する。
【0098】
ユーザ端末装置は、ユーザIDとワンタイムパスワードの入力を受けると、ネットワークを通じて、ワンタイムパスワード生成サーバと接続し、ユーザIDとワンタイムパスワード、それに表示していたシード番号を送信する。ネットワークとしてイントラネットを使用すれば不正目的の盗聴等の危険性は低いが、念のため暗号通信を用いて送ってもよい。暗号通信は、例えばSSL(Secure Socket Layer)であってもよい。
【0099】
ワンタイムパスワード生成サーバ装置は、ユーザID、ワンタイムパスワードとシード番号を受け取ると、ユーザIDからユーザを特定し、そのユーザ固有のワンタイムパスワード生成用鍵を記憶装置から読み出す。そして、このワンタイムパスワード生成用鍵を用いて、送られてきたシード番号を暗号化し、認証用ワンタイムパスワードを生成する。
【0100】
ワンタイムパスワード生成サーバ装置は、さらに、送られてきたワンタイムパスワードと認証用ワンタイムパスワードを比較する。一致すれば、ユーザ端末装置に、認証成功の結果とそのユーザのワンタイムパスワード生成用鍵とを送る。一致しなければ、認証失敗として、ユーザ端末装置に認証失敗の結果のみを送る。
【0101】
ユーザ端末装置は、認証成功ならば、入力されたユーザIDとワンタイムパスワード生成用鍵を関連づけて保存する。そして、ユーザのログインを許可する。認証失敗ならば、ユーザのログインを許可しない。
【0102】
ユーザ端末装置は、一旦ネットワーク経由でワンタイムパスワード生成サーバ装置と接続し、認証が成功した場合、内部の記憶装置に、ユーザIDとワンタイムパスワード生成用鍵を関連づけて保存している。したがって、それ以降は、ユーザ端末装置がワンタイムパスワード生成サーバ装置と同じネットワークに接続されていなくともよい。
【0103】
一旦ネットワーク経由でログインし、ユーザIDとワンタイムパスワード生成用鍵とを関連づけて保存すれば、それ以降のログインは基本的に図1を参照して説明したのと同様な手順で行い得る。
【0104】
すなわち、ユーザ端末装置は、ユーザがログインする際、シード番号を表示し、これに対応したワンタイムパスワードと、使用するユーザのIDを要求する。
【0105】
ユーザは、あらかじめ自分に割り振られたユーザIDを入力し、さらに、携帯電話に代表される携帯メール装置を用いて、あらかじめ登録されているシード番号受付メールアドレスに、シード番号を本文として記入した電子メールを送信する。
【0106】
ワンタイムパスワード生成サーバ装置は、その電子メールを受け取ると、受け取った電子メールの送り元からユーザを特定し、そのユーザ固有のワンタイムパスワード生成用鍵を記憶装置から読み出す。そして、シード番号を、ワンタイムパスワード生成用鍵を用いて暗号化し、ワンタイムパスワードを生成する。生成されたワンタイムパスワードを本文として、先の携帯メール装置に電子メールで返信する。
【0107】
携帯メール装置は、その電子メールを受け取ると、それを機器内に蓄積し、ユーザに表示する。
【0108】
ユーザは、その返信メールの本文を見て、ユーザ端末装置にワンタイムパスワードを入力する。
【0109】
ユーザ端末装置は、ユーザIDとワンタイムパスワードの入力を受けると、ユーザIDからユーザを特定し、ワンタイムパスワード生成用鍵を読み出す。
【0110】
ユーザ端末装置は、ユーザIDに対応するワンタイムパスワード生成用鍵がまだ保存されていない場合は、ユーザに対し、一旦ネットワーク経由で接続するように促す警告を発する。このネットワークは、イントラネット等の信頼のおけるネットワークであることが好ましい。
【0111】
ユーザ端末装置は、ユーザIDに対応するワンタイムパスワード生成用鍵が保存されている場合は、読み出したワンタイムパスワード生成用鍵を用いて、シード番号を暗号化し、認証用ワンタイムパスワードを生成する。この、認証用ワンタイムパスワードと、入力されたワンタイムパスワードとを比較し、一致すれば認証成功とし、ログインを許可する。一致しなければ、認証失敗として、ログインを許可しない。
【0112】
上記実施形態では、ワンタイムパスワードを発行するのに、携帯メール端末を用いて、シード番号をワンタイムパスワード生成サーバに送り、ワンタイムパスワードをサーバから取得している。
【0113】
電子メールを使用しているため、この認証システムでは、ワンタイムパスワード生成サーバをファイアウォールで保護された領域に設置することができ、携帯アプリケーションサーバのような厳しい管理が不要となる。そのため、ワンタイパスワードシステムの運用コストを削減することが可能となる。
【0114】
さらに、認証を行うためのワンタイムパスワード生成鍵をユーザ個別に発行するようにしている。これで、たとえ一ユーザの生成鍵が何らかの理由で漏洩しても、他のユーザに影響することは無い。
【0115】
また、ワンタイムパスワード生成鍵を発行する際は、盗聴等の危険の少ないイントラネット内で行い、必要に応じて暗号化を行って通信して配布することができる。このワンタイムパスワード生成鍵の配布も、ファイアウォール等に阻害されず、安全に配布することが可能となる。
【0116】
また、配布を行う際は、通常の電子メールでの認証と同じ手順を実施し、最後にワンタイムパスワード生成サーバ内で認証を行っている。そのため、生成サーバに登録された携帯メール装置を持つ正当なユーザに、ワンタイムパスワード生成鍵を配布することができる。
【0117】
さらに、ユーザ端末装置は、一旦ネットワーク経由でワンタイムパスワード生成鍵の配布を受けると、それ以降は自機内で認証用ワンタイムパスワードを生成できるため、ネットワークから切り離されても、自律的に認証を行うことができ、ユーザのログインの可否を判断できる。
【0118】
図11を参照して、上記の実施形態による認証システムをより詳しく説明する。図11は、他の実施形態による認証システムを示す概略図である。
【0119】
本認証システムは、ノート型コンピュータに代表されるユーザ端末装置1、携帯電話に代表される携帯メール装置2、ワンタイムパスワード生成サーバ装置3を有する。これらの構成要素は、図1を参照して説明した認証システムと基本的に同様であるが、ユーザ端末装置1がファイアウォール5の内側にあり、ワンタイムパスワード生成サーバ装置3とネットワーク6を介して接続されている点が異なる。このネットワークは、例えばイントラネット等の信頼のおけるネットワークであることが好ましい。しかし、通常のネットワークであっても、適切な暗号通信を適用すれば利用することが可能である。
【0120】
ユーザがユーザ端末装置1を起動する。
【0121】
ユーザ端末装置1は、日付、時刻等を元にした乱数で12桁のシード番号を生成する。ユーザ端末装置1は、図12に示したログイン画面121を表示する。この画面には、先に生成した12桁のシード番号122と、シード番号有効時間123が表示される。端末装置1は、ユーザID124とワンタイムパスワード125を入力するためのボックスも表示し、これらの入力を待つ。
【0122】
ユーザは、ユーザがワンタイムパスワード生成サーバ3に登録した際に通知されるユーザIDをユーザID入力欄に入力する。
【0123】
また、ユーザは、ログイン画面121中のシード番号122を、携帯メール端末2の発信メール本文に手動で入力する(ステップSB1)。
【0124】
携帯メール装置2は、シード番号121が本文に記述された発信メールを、あらかじめ登録してあった、ワンタイムパスワード受付メールアドレスに向けて発信する(ステップSB2)。
【0125】
発信メールは、インターネット4を経由して、本認証システムを導入した企業等のファイアウォール5に到達する。通常、電子メールは、ファイアウォール5で排除されないので、そのままその企業等のネットワークに設置された、ワンタイムパスワード生成サーバ装置3に着信する。
【0126】
生成サーバ3は、ユーザ情報データベース130を有する。図13は、ユーザ情報データベース130の一例を示す図である。図13に示したユーザ情報データベース130は、例えばリレーショナルデータベースのテーブルであり、ユーザ名131、ユーザID132、携帯メール装置アドレス133、受付アドレス134、ワンタイムパスワード生成鍵135のフィールドを有している。
【0127】
生成サーバ130は、着信した電子メールのfrom行から、ユーザ情報データベース130を検索し、そのユーザ用のワンタイムパスワード生成鍵135を取得する。生成サーバ3は、取得したワンタイムパスワード生成鍵と、着信した電子メールの本文に記述されたシード番号と、あらかじめ記憶している顧客個別番号を元に、ワンタイムパスワードを計算する。
【0128】
生成サーバ3は、計算したワンタイムパスワードを本文として、携帯メール装置2へ電子メールを送信する。
【0129】
電子メールは、ファイアウォール5を通過し、インターネット4を経由して、携帯メール装置2に着信する(ステップSB4)。
【0130】
ユーザは、携帯メール装置2に着信した電子メールを表示し、本文のワンタイムパスワードを参照する。これを手動で、ユーザ端末装置1に表示されているログインダイアログ121のワンタイムパスワード欄125に入力する(ステップSB5)。
【0131】
ユーザ端末装置1は、生成サーバ3がネットワーク6で接続されていることを確認する。ユーザ端末装置1は、確認のため、生成サーバ3に対して例えばpingを発してもよい。
【0132】
ユーザ端末装置1は、生成サーバ3がネットワーク6で接続されていなければ、図7を参照して説明したスタンドアロン認証へ移行する。
【0133】
ユーザ端末装置1は、生成サーバ3がネットワーク6で接続されていれば、ネットワーク6経由で、ワンタイムパスワード生成サーバ装置3とSSL暗号通信接続をする。ユーザ端末装置1は、接続すると、シード番号122、入力されたユーザID124、入力されたワンタイムパスワード125を送信する(ステップSB6)。
【0134】
ワンタイムパスワード生成サーバ装置3は、ユーザ情報データベース130から、受信したユーザID132に基づき、ユーザ個別のワンタイムパスワード生成鍵135を検索する。このワンタイムパスワード生成鍵135と、シード番号122、顧客個別番号に基づき、認証用ワンタイムパスワードを生成する。
【0135】
ワンタイムパスワード生成サーバ装置3は、生成した認証用ワンタイムパスワードと、ユーザ端末装置1から送られてきたワンタイムパスワード125とを比較する。そして、一致すれば、正しい登録ユーザとして認証成功とし、一致しなければ認証失敗とする(ステップSB7)。
【0136】
ワンタイムパスワード生成サーバ3は、認証が成功した場合、SSL暗号通信で、認証成功の結果と、認証成功したユーザのワンタイムパスワード生成鍵135を送信する。認証が失敗した場合、認証失敗の結果のみを返す(ステップSB8)。
【0137】
ユーザ端末装置1は、認証成功ならば、ユーザのログインを許可し、受信したワンタイムパスワード生成鍵135をユーザID124と関連付けて保存する。
【0138】
次に、図11の認証システムを構成する各装置の構成を説明する。
【0139】
ワンタイムパスワード生成サーバ装置3は、図3を参照して説明したパスワード生成サーバ20と基本的に同様の構成を有しているが、通信装置23(図3参照)によりユーザ端末装置1との間でネットワークを介して通信が可能である点で異なる。この通信により、ワンタイムパスワード生成サーバ装置3からユーザ端末装置1に、ユーザ毎に異なるワンタイムパスワード生成鍵を供給することができる。
【0140】
また、ユーザ情報データベース26(図3参照)が、図13を参照して説明した構成となっている。
【0141】
ユーザ端末装置3の構成例を図14に示した。図14に示したユーザ端末装置140は、演算装置61、主記憶装置62、表示装置63、入力装置64、補助記憶装置65、TPM69を有する点では、図6に示したユーザ端末装置60と同様である。
【0142】
また、補助記憶装置65は、顧客個別番号66、シード番号生成プログラム67、暗号化実施プログラム68、BASE64変換プログラム71を記憶している。
【0143】
補助記憶装置65は、さらに、ユーザ暗号鍵データベース72を保存している。このユーザ暗号鍵データベース72は、生成サーバ3から受け取ったワンタイムパスワード生成鍵(図13の135)を暗号化して格納するものである。TPM69には、ユーザ暗号鍵データベース72の暗号化に必要な暗号鍵70が保存されている。
【0144】
ユーザ端末装置140は、さらに、生成サーバ3との間でネットワークを介した通信を行う通信装置73を有する。この通信装置は、例えばイーサネット(登録商標)アダプタであってもよい。
【0145】
次に、第2の実施形態によるユーザ端末装置へのログイン方法を説明する。図15は、第2の実施形態によるユーザ端末装置へのログイン方法を示すフローチャートである。
【0146】
ユーザ端末装置がユーザにより起動される(ステップSC1)。ユーザ端末装置は、シード番号生成プログラム(図14の67)を補助記憶装置(図14の65)から演算装置(図14の61)にロードし、実行を開始する。
【0147】
ユーザ端末装置は、シード番号(シード番号)を生成する(ステップSC2)。シード番号は、例えば12桁の数値であり、例えばC言語の乱数生成関数rand関数等を使用して生成可能である。シード番号は主記憶装置(図14の62)に保存する。
【0148】
ここで留意すべき点として、各種言語のrand関数は、srand関数等の種値を元に一定の順番で擬似的な乱数を発生させるものなので、種値決定に工夫をするとよい。種値は、例えば、現在時刻、補助記憶装置の残り容量、補助記憶装置のシリアル番号、機器を起動してからのCPUクロック回数等、刻々と変化している値を加減剰余して、種値としてもよい。
【0149】
ユーザ端末装置は、例えば内蔵されたタイマー(図示せず)から、現在時刻を取得する(ステップSC3)。
【0150】
ユーザ端末装置は、生成したシード番号を元に、図12に示したログイン画面を表示装置(図14の63)に表示する(ステップSC4)。
【0151】
ユーザは、この表示を見て、携帯メール装置を用いて、シード番号を本文に記載したメールを、ワンタイムパスワード受付アドレスへ送信する(SC5)。
【0152】
一方、ユーザ端末装置は、ステップSC3で取得した時刻から、例えば10分経過したか確認する(SC6)。経過していなければSC7に進む。経過していたら、ログイン画面を消去してステップSC2に戻る。これは、シード番号の有効期間を管理して不正ログインの危険性を低減するためである。
【0153】
ユーザは、ワンタイムパスワード生成サーバからワンタイムパスワードが記述された返信メールが着信したか確認する(SC7)。着信していればステップSC8に進む。していなければステップSC6に戻る。なお、サーバでのワンタイムパスワード生成例は、第1の実施形態において図10を参照して説明した通りである。
【0154】
ユーザは、送られてきたワンタイムパスワードとユーザIDをログイン画面(図12)に入力し、ログインボタンを押す(ステップSC8)。
【0155】
ユーザ端末装置は、例えばサーバにpingを発信して、サーバとネットワークで接続されているか確認する。サーバから返答があればステップSC11へ進む。サーバから返答が無ければ、ステップSC21に進む(ステップSC9)。
【0156】
ユーザ端末装置は、ワンタイムパスワード生成サーバと暗号通信コネクションを張り、暗号通信経路を確保する(ステップSC10)。この暗号通信は例えばSSL(Secure Socket Layer)で行うことができる。
【0157】
ユーザ端末装置は、上記の暗号通信コネクションにより、ユーザから取得したユーザID及びワンタイムパスワードと、ステップSC2で生成したシード番号とをワンタイムパスワード生成サーバに暗号送信する(ステップSC11)。
【0158】
ワンタイムパスワード生成サーバは、ユーザ端末装置から受け取ったユーザIDに基づきユーザ情報データベース(図3の26)を検索し、そのユーザに割り振られたワンタイムパスワード生成鍵(図13の35)を取得する(ステップSC12)。
【0159】
ワンタイムパスワード生成サーバは、さらに、ステップSC11で送られてきたシード番号と、ステップSC12で検索したワンタイムパスワード生成鍵と、顧客個別番号(図3の25)に基づき、認証用ワンタイムパスワードを生成する(SC13)。生成のアルゴリズムの一例は、図10を参照して説明した通りである。
【0160】
ワンタイムパスワード生成サーバは、さらに、ステップSC13で生成した認証用ワンタイムパスワードと、ステップSC11でユーザ端末装置から受信したワンタイムパスワードが一致するか比較する(ステップSC14)。
【0161】
ワンタイムパスワード生成サーバは、ステップSC14での比較結果(ステップSC15)が一致したらステップSC16へ進む。
【0162】
ワンタイムパスワード生成サーバは、認証成功の結果と、ステップSC12でユーザ情報データベース(図3の26)から取得したワンタイムパスワード生成鍵を、ステップSC10で形成した暗号経路を介してユーザ端末装置に送信する(ステップSC16)。
【0163】
ユーザ端末装置は、ワンタイムパスワード生成サーバから、認証成功の結果と、ステップSC12で取得したワンタイムパスワード生成鍵とを受信する。そして、ユーザIDと、受信したワンタイムパスワード生成鍵とを関連づけてユーザ暗号鍵データベース(図14の72)に保存する(ステップSC17)。ユーザ暗号鍵データベースは、図16を参照してさらに説明する。
【0164】
ユーザ端末装置は、ユーザのログイン動作を開始する(ステップSC18)。
【0165】
一方、ステップSC15において、一致しなければステップSC19に進む。
【0166】
ワンタイムパスワード生成サーバは、認証失敗の結果を、ステップSC10で形成した暗号経路を介してユーザ端末装置に送信する(ステップSC19)。
【0167】
ユーザ端末装置は、ログインに失敗したことをユーザに通知する(ステップSC20)。
【0168】
このように、ユーザ端末は、ワンタイムパスワード生成サーバとネットワークで接続されていれば、ユーザ毎に異なるワンタイムパスワード生成鍵をワンタイムパスワード生成サーバから安全に取得することができる。
【0169】
なお、上記のとおり、ステップSC9でサーバにpingを送信して返信がなければ、ステップSC21に進む。
【0170】
ユーザ端末装置は、ユーザIDに基づきユーザ暗号鍵データベース(図14の72)を検索する(ステップSC21)。検索の結果、そのユーザのワンタイムパスワード生成鍵を取得できなければ、ステップ23進む。
【0171】
ユーザ端末装置は、ユーザにネットワーク経由での認証を促す警告を発し(ステップSC23)、ログイン処理を終了する。
【0172】
一方、検索の結果、そのユーザのワンタイムパスワード生成鍵を取得できれば、ステップSC24に進む。
【0173】
ユーザ端末装置は、ワンタイムパスワード生成鍵、シード番号、顧客個別番号に基づき、認証用ワンタイムパスワードを生成する(ステップSC24)。ワンタイムパスワードの生成方法は図10を参照して説明した通りである。
【0174】
ユーザ端末装置は、生成した認証用ワンタイムパスワードと、ステップSC8で入力されたワンタイムパスワードとを比較する(ステップSC26)。
【0175】
比較の結果、一致すればログインを開始し、一致しなければログイン失敗としてログイン処理を終了する。
【0176】
次に、ユーザ暗号鍵データベース(図14の72)の構成例を説明する。図16は、ユーザ暗号鍵データベースの構成例を示す概略図である。
【0177】
ユーザ暗号鍵データベースは、ユーザIDと、ワンタイムパスワード生成鍵とを関連づけて格納するデータベースであり、ワンタイムパスワード生成サーバのユーザ情報データベース(図3の26)の部分的なコピーである。
【0178】
ユーザ端末装置は、ワンタイムパスワード生成サーバとネットワークで接続されてないスタンドアロン状態のときに、ユーザ暗号鍵データベースを用いて、ユーザのログインの可否を判断することができる。
【0179】
ワンタイムパスワード生成サーバによるワンタイムパスワード発行手順は、第1の実施形態において図9を参照して説明したものと同様であるので、詳細な説明はここでは省略する。
【0180】
ユーザ端末装置のユーザ暗号鍵データベース(図14の72)は、最初はユーザ暗号鍵を保持してない。ユーザ端末装置をネットワークに接続した状態で認証を行うことにより、ユーザ暗号鍵を記憶することができる。
【0181】
例えばノートブックPCを、事務所においてはネットワークに接続して使用し、出張等のため事務所の外においてはスタンドアロン状態で使用する場合がある。ノートブックPCの導入時にユーザ暗号鍵データベースにユーザ用のワンタイムパスワード生成鍵を記憶していなくても、上記の実施形態により、そのノートブックPCをネットワークを介して生成サーバと接続して使用すれば、ユーザごとの個別のワンタイムパスワード生成鍵を、各ノートブックPCに配布することができる。
【0182】
上記の実施形態では、ワンタイムパスワードのみによるログイン処理を前提とした。上記実施形態は、他の認証システムと併用してもよい。例えば生体認証との併用は有効である。
【0183】
最後に、上記実施形態の全体的な構成をまとめる。
【0184】
図17は、ユーザ登録処理を示すシーケンス図である。
【0185】
図17において、携帯メール装置2は、例えば図1、図11の携帯メール装置2に対応する。ユーザ端末装置1は、例えば図1、図11のユーザ端末装置1に対応する。ワンタイムパスワード生成サーバ装置3は、例えば図1、図11のワンタイムパスワード生成サーバ装置3に対応する。
【0186】
ワンタイムパスワード生成サーバ装置3は、ユーザ登録処理を行い(ステップ171)、ワンタイムパスワード受付メールアドレスを生成する。このステップは、図5のステップSR1〜SR3を参照して説明したものである。
【0187】
ワンタイムパスワード生成サーバ装置3は、生成したワンタイムパスワード受付メールアドレスを含む登録通知メールを携帯メール装置2に送信する(ステップ172)。このステップは、図5のステップSR4〜SR5を参照して説明したものである。
【0188】
携帯メール装置2は、受信した登録通知メールに含まれたワンタイムパスワード受付メールアドレスをアドレス帳に登録する(ステップ173)。このステップは、図5のステップSR6を参照して説明したものである。
【0189】
以上でユーザ登録処理は終了する。
【0190】
図18は、スタンドアロン状態でのログイン処理を示すシーケンス図である。
【0191】
ユーザはユーザ端末1を起動し、ユーザIDを入力する(ステップ181)。このステップは、図7のステップSA1を参照して説明したものである。ただし、図7ではユーザIDの入力は省略してある。
【0192】
ユーザ端末装置1は、シード番号を生成して、シード番号とワンタイムパスワードの入力欄とを含むログイン画面を表示する(ステップ182)。このステップは、図7のステップSA2〜SA10を参照して説明したものである。
【0193】
ユーザは、表示されたログイン画面に予め表示されたシード番号を読み、携帯メール装置2を用いて、そのシード番号を含む電子メールをワンタイムパスワード生成サーバ装置3宛てに送信する(ステップ183)。
【0194】
ワンタイムパスワード生成サーバ装置3は、受信した電子メールに含まれたシード番号等に基づき、ワンタイムパスワードを生成する(ステップ184)。このステップは、図9のステップSS1〜SS15を参照して説明したものである。
【0195】
ワンタイムパスワード生成サーバ装置3は、生成したワンタイムパスワードを含む電子メールを携帯メール装置2に送信する(ステップ185)。このステップは、図9のステップSS16〜SS17を参照して説明したものである。
【0196】
携帯メール装置2でこの電子メールを受信したユーザは、電子メールに含まれるワンタイムパスワードを、ユーザ端末装置1のログイン画面のワンタイムパスワードの入力欄に入力する(ステップ186)。
【0197】
ユーザ端末装置1は、入力されたワンタイムパスワードと自機で生成したワンタイムパスワードとを比較して、その一致を確認する(ステップ187)。このステップは、図7のステップSA11〜SA14を参照して説明したものである。
【0198】
ユーザ端末装置1は、ワンタイムパスワードが確認できれば、ユーザをログインさせる(ステップ188)。このステップは、図7のステップSA15を参照して説明したものである。
【0199】
図19は、ユーザ端末装置1とワンタイムパスワード生成サーバ装置3とがネットワークで接続されている場合のログイン処理を示すシーケンス図である。
【0200】
ユーザはユーザ端末1を起動し、ユーザIDを入力する(ステップ191)。このステップは、図15のステップSC1を参照して説明したものである。ただし、図15ではユーザIDの入力は省略してある。
【0201】
ユーザ端末装置1は、シード番号を生成して、シード番号とワンタイムパスワードの入力欄とを含むログイン画面を表示する(ステップ192)。このステップは、図15のステップSC2〜SC4を参照して説明したものである。ここで表示されるログイン画面は、例えば図12を参照して説明したものである。
【0202】
ユーザは、表示されたログイン画面に予め表示されたシード番号を読み、携帯メール装置2を用いて、そのシード番号を含む電子メールをワンタイムパスワード生成サーバ装置3宛てに送信する(ステップ193)。
【0203】
ワンタイムパスワード生成サーバ装置3は、受信した電子メールに含まれたシード番号等に基づき、ワンタイムパスワードを生成する(ステップ194)。このステップは、図9のステップSS1〜SS15を参照して説明したものである。
【0204】
ワンタイムパスワード生成サーバ装置3は、生成したワンタイムパスワードを含む電子メールを携帯メール装置2に送信する(ステップ195)。このステップは、図9のステップSS16〜SS17を参照して説明したものである。
【0205】
携帯メール装置2でこの電子メールを受信したユーザは、電子メールに含まれるワンタイムパスワードを、ユーザ端末装置1のログイン画面のワンタイムパスワードの入力欄に入力する(ステップ196)。
【0206】
ここまでのステップは、図18のステップ181〜186と同様である。
【0207】
ユーザ端末装置1は、ネットワークを介してワンタイムパスワード生成サーバ3と接続されているか確認した上で、ワンタイムパスワード生成サーバ3に、シード番号、ユーザID、及びステップ196で入力されたワンタイムパスワードを送信する(ステップ197)。
【0208】
ワンタイムパスワード生成サーバ装置3は、ユーザ端末装置1から送信されたワンタイムパスワードと、自機で生成して携帯メール装置2に送信したワンタイムパスワードとを比較して、その一致を確認する(ステップ198)。このステップは、図15のステップSC1〜SC15を参照して説明したものである。
【0209】
ワンタイムパスワード生成サーバ装置3は、ワンタイムパスワードが確認できれば、認証が成功したことを示す情報と、ワンタイムパスワード生成鍵とをユーザ端末装置1に送信する(ステップ199)。
【0210】
ユーザ端末装置1は、認証が成功したことを示す情報に応じてユーザをログインさせる(ステップ200)とともに、ワンタイムパスワード生成サーバ装置3から受信したワンタイムパスワード生成鍵をユーザ暗号鍵データベース(図14の72)に記憶する。このステップは、図15のステップSC17〜SC18を参照して説明したものである。
【0211】
以上、本発明の実施の形態について詳述したが、本発明は特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形及び変更が可能である。
【0212】
以上の実施形態に関し、更に以下の付記を記す。
(付記1)
所定の規則で生成したシード番号に対応するパスワードの入力により認証を行う端末装置と、
前記シード番号を含む所定の要求メッセージに応じて前記パスワードを発行するパスワード発行装置とを具備することを特徴とする認証システム。
(付記2)前記所定の要求メッセージを前記パスワード発行装置に送信する要求メッセージ送信装置をさらに具備することを特徴とする、付記1に記載の認証システム。
(付記3)
前記端末装置は、前記パスワード発行装置とネットワークで接続されているとき、入力されたパスワードと前記シード番号とを前記パスワード発行装置に送信し、
前記パスワード発行装置は、受信した前記入力されたパスワードと前記シード番号とに基づき認証を行い、認証結果に応じて秘密情報を前記端末装置に送信する、付記1または2に記載の認証システム。
(付記4)
前記パスワード発行装置は、前記要求メッセージ発行装置ごとに対応する異なる要求メッセージの送信先を登録し、前記要求メッセージ発行装置から前記対応する異なる送信先に前記所定の要求メッセージが送信されたときにのみ前記パスワードを発行することを特徴とする、付記2または3に記載の認証システム。
(付記5)
前記パスワード発行装置は、前記要求メッセージ発行装置に対応する有効フラグ及び発行カウンタのうち少なくとも1つが所定の条件を満たすとき、前記要求メッセージ発行装置からの前記所定の要求メッセージに対してパスワードを発行することを特徴とする、付記2乃至4いずれか一項に記載の認証システム。
(付記6)
前記シード番号は、現在時刻、補助記憶装置の残り容量、補助記憶装置のシリアル番号、機器を起動してからのCPUクロック回数のうち少なくとも1つに基づく種値から求めた擬似乱数であることを特徴とする、付記1乃至5いずれか一項に記載の認証システム。
(付記7)
所定の規則でシード番号を生成し、前記シード番号に対応する第1のパスワードを生成する演算部と、
前記演算部が生成した前記シード番号を出力する出力部と、
前記シード番号に対応する第2のパスワードの入力を受ける入力部とを具備し、
前記演算部は前記第1のパスワードと前記第2のパスワードとが一致したとき認証を行うことを特徴とする端末装置。
(付記8)
ネットワークを介してパスワード発行装置と通信する通信部をさらに有し、
前記ネットワークを介して前記パスワード発行装置と通信可能なとき、前記入力部に入力されたパスワードと前記シード番号とを前記パスワード発行装置に送信し、
前記パスワード発行装置における認証が成功したときに、前記パスワード発行装置から認証結果に応じて秘密情報を受信する、付記7に記載の端末装置。
(付記9)
所定のメッセージを送受信する通信部と、
端末装置が所定の規則で生成したシード番号を含む、前記通信部が受信した要求メッセージに応じて、前記端末装置が認証を行うためのパスワードを発行する演算部とを具備することを特徴とするパスワード発行装置。
(付記10)
前記通信部によりネットワークを介して前記端末装置と通信可能なとき、前記端末装置から入力パスワードと前記シード番号とを受信し、
前記演算部は、受信した前記入力パスワードと前記シード番号とに基づき認証を行い、認証結果に応じて秘密情報を前記端末装置に送信する、付記9に記載のパスワード発行装置。
(付記11)
要求メッセージ発行装置を登録するユーザ情報データベースをさらに有し、
前記演算装置は、前記要求メッセージ発行装置が前記ユーザ情報データベースに登録されているとき、前記要求メッセージ発行装置からの前記所定の要求メッセージに対してパスワードを発行することを特徴とする、付記9または10に記載のパスワード発行装置。
(付記12)
前記ユーザ情報データベースは前記要求メッセージ発行装置ごとに対応する異なる要求メッセージの送信先を登録し、
前記演算部は、前記要求メッセージ発行装置から前記対応する異なる送信先に前記所定の要求メッセージが送信されたときにのみ前記パスワードを発行することを特徴とする、付記11に記載のパスワード発行装置。
(付記13)
前記ユーザ情報データベースは、前記要求メッセージ発行装置に対応する有効フラグ及び発行カウンタを登録し、
前記演算部は、前記有効フラグ及び発行カウンタのうち少なくとも1つが所定の条件を満たすとき、前記要求メッセージ発行装置からの前記所定の要求メッセージに対してパスワードを発行することを特徴とする、付記11または12に記載のパスワード発行装置。
(付記14)
端末装置が、所定の規則でシード番号を生成する段階と、
パスワード発行装置が、前記シード番号を含む所定の要求メッセージに応じてパスワードを発行する段階と、
前記端末装置が、前記パスワード発行装置が発行した前記パスワードの入力により認証を行う段階とを含むことを特徴とする認証方法。
(付記15)前記端末装置が、前記パスワード発行装置とネットワークで接続されているとき、入力されたパスワードと前記シード番号とを前記パスワード発行装置に送信する段階と、
前記パスワード発行装置が、受信した前記入力されたパスワードと前記シード番号とに基づき認証を行い、認証結果に応じて秘密情報を前記端末装置に送信する段階とをさらに含む、付記14に記載の認証方法。
(付記16)
コンピュータに、
所定の規則でシード番号を生成する段階と
前記シード番号に対応する第1のパスワードを生成する段階と、
生成した前記シード番号を出力する段階と、
前記シード番号に対応する第2のパスワードの入力を受ける段階と、
前記第1のパスワードと前記第2のパスワードとが一致したとき認証を行う段階を実行させることを特徴とするプログラム。
(付記17)
コンピュータに、
端末装置が所定の規則で生成したシード番号を含む要求メッセージを受信する段階と、
受信した前記要求メッセージに応じて、前記端末装置が認証を行うためのパスワードを発行する段階と、
発行した前記パスワードを含む所定のメッセージを送信する段階とを実行させることを特徴とするプログラム。
【符号の説明】
【0213】
1 ユーザ端末装置
2 携帯メール装置
3 ワンタイムパスワード生成サーバ装置
4 インターネット
5 ファイアウォール
6 ネットワーク
10 ログイン画面
11 メッセージ
12 シード番号
13 ワンタイムパスワード
14 OKボタン
15 キャンセルボタン
20 ワンタイムパスワード生成サーバ
21 演算装置
22 主記憶装置
23 通信装置
24 補助記憶装置
25 顧客個別番号
26 ユーザ情報データベース
27 暗号化実施プログラム
28 TPM
29 暗号鍵
30 BASE64変換プログラム
60 ユーザ端末装置
61 演算装置
62 主記憶装置
63 表示装置
64 入力装置
65 補助記憶装置
66 顧客個別番号
67 シード番号生成プログラム
68 暗号化実施プログラム
69 TPM
70 暗号鍵
71 BASE64変換プログラム
72 ユーザ暗号鍵データベース
73 通信装置

【特許請求の範囲】
【請求項1】
所定の規則で生成したシード番号に対応するパスワードの入力により認証を行う端末装置と、
前記シード番号を含む所定の要求メッセージに応じて前記パスワードを発行するパスワード発行装置とを具備することを特徴とする認証システム。
【請求項2】
前記端末装置は、前記パスワード発行装置とネットワークで接続されているとき、入力されたパスワードと前記シード番号とを前記パスワード発行装置に送信し、
前記パスワード発行装置は、受信した前記入力されたパスワードと前記シード番号とに基づき認証を行い、認証結果に応じて秘密情報を前記端末装置に送信する、請求項1に記載の認証システム。
【請求項3】
所定の規則でシード番号を生成し、前記シード番号に対応する第1のパスワードを生成する演算部と、
前記演算部が生成した前記シード番号を出力する出力部と、
前記シード番号に対応する第2のパスワードの入力を受ける入力部とを具備し、
前記演算部は前記第1のパスワードと前記第2のパスワードとが一致したとき認証を行うことを特徴とする端末装置。
【請求項4】
所定のメッセージを送受信する通信部と、
端末装置が所定の規則で生成したシード番号を含む、前記通信部が受信した要求メッセージに応じて、前記端末装置が認証を行うためのパスワードを発行する演算部とを具備することを特徴とするパスワード発行装置。
【請求項5】
端末装置が、所定の規則でシード番号を生成する段階と、
パスワード発行装置が、前記シード番号を含む所定の要求メッセージに応じてパスワードを発行する段階と、
前記端末装置が、前記パスワード発行装置が発行した前記パスワードの入力により認証を行う段階とを含むことを特徴とする認証方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2010−15541(P2010−15541A)
【公開日】平成22年1月21日(2010.1.21)
【国際特許分類】
【出願番号】特願2009−92367(P2009−92367)
【出願日】平成21年4月6日(2009.4.6)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】