JPWO2006040820A1 - パスワード生成装置及びicカード及び認証装置 - Google Patents

パスワード生成装置及びicカード及び認証装置 Download PDF

Info

Publication number
JPWO2006040820A1
JPWO2006040820A1 JP2006540803A JP2006540803A JPWO2006040820A1 JP WO2006040820 A1 JPWO2006040820 A1 JP WO2006040820A1 JP 2006540803 A JP2006540803 A JP 2006540803A JP 2006540803 A JP2006540803 A JP 2006540803A JP WO2006040820 A1 JPWO2006040820 A1 JP WO2006040820A1
Authority
JP
Japan
Prior art keywords
password
authentication
unit
input
time password
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006540803A
Other languages
English (en)
Other versions
JP4523944B2 (ja
Inventor
鐘治 桜井
鐘治 桜井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2006040820A1 publication Critical patent/JPWO2006040820A1/ja
Application granted granted Critical
Publication of JP4523944B2 publication Critical patent/JP4523944B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

ワンタイムパスワード生成装置が、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、認証装置と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことを目的とする。ワンタイムパスワード生成装置101において、パスワード入力部103はユーザの入力を受け付け、乱数生成部107は記憶部104に記憶された乱数のハッシュ値を生成する。パスワード生成部106は、これらの入力値とハッシュ値を用いて、第1のワンタイムパスワードと第2のワンタイムパスワードを生成する。これらのワンタイムパスワードは端末装置109の端末入力部110を介して入力され、サーバ装置113に送信される。サーバ装置113において、入力値復元部114はワンタイムパスワードから入力値を復元し、認証判定部115は認証の成否を判断する。

Description

本発明は、パスワード生成装置及びICカード及び認証装置に関するものである。
ユーザや端末装置に対して、ネットワークリソースの使用やコンピュータシステムの内部リソースへのアクセス等を許可する際に、再利用できないワンタイムパスワードを使った認証が行われている。従来のワンタイムパスワードを生成するパスワード生成装置(ワンタイムパスワード生成装置)は、認証を行う認証装置の時計と同期した同ワンタイムパスワード生成装置内の時計、又は認証装置から送られる時刻依存値を基にワンタイムパスワードを生成し、これを用いて個人や端末装置の認証を行っていた(例えば、特許文献1)。
特開平11−3033号公報(第14−23頁、第5図)
特許文献1に公開されている従来のワンタイムパスワード生成装置は、このワンタイムパスワード生成装置が生成したワンタイムパスワードを認証装置に送ることでユーザが使用しているワンタイムパスワード生成装置が正規のものであることを示すが、ワンタイムパスワード生成装置と認証装置には時々刻々変化する時刻依存値を生成する時刻依存値生成器がそれぞれ必要であり、これらを常に駆動させるための電池もしくは電源が必要である。さらにワンタイムパスワードを生成する際にはこれら2つの時刻依存値生成器の間で時刻の同期が取れている必要がある。このため、定期的にこれら時刻依存値生成器の間で時刻同期処理が必要である。また、特許文献1には従来技術として、時刻依存値生成器を用いず認証装置との通信により取得した乱数を用いてワンタイムパスワードを生成する方法も記載されているが、通信を行うためにワンタイムパスワード生成装置と認証装置が接続されていなければならないと指摘されている。
本発明は、ワンタイムパスワード生成装置が、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、認証装置と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことを目的とする。
本発明のパスワード生成装置は、
認証ごとに使い捨てるワンタイムパスワードにより認証の成否判断を行う認証装置に対して送信されるワンタイムパスワードを生成するパスワード生成装置において、
前記認証装置が認証の成否判断を行うために用いる認証データを生成するために用いられる乱数と前記認証データを暗号化して前記認証装置が記憶する復号鍵で復号化される暗号データを生成するために用いられる暗号鍵とを記憶する記憶部と、
前記記憶部が記憶する乱数を用いて新たな乱数を生成し、前記記憶部に記憶させる乱数生成部と、
入力データを入力するパスワード入力部と、
前記乱数生成部が生成した乱数と前記パスワード入力部が入力した入力データとを用いて前記認証データを生成し、前記記憶部が記憶する暗号鍵を用いて前記認証データを暗号化し、前記認証データを暗号化して生成した暗号データを用いて第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するパスワード生成部と、
前記パスワード生成部が生成した第1のワンタイムパスワードと第2のワンタイムパスワードとを表示するパスワード表示部とを有することを特徴とする。
前記パスワード生成装置は、さらに、
前記乱数生成部が生成した乱数と前記パスワード入力部が入力した入力データとを用いて、前記認証装置が記憶するパスワード文字列を構成する文字を含むパスワード候補文字の外観を設定する外観設定部を有し、
前記パスワード表示部は、
前記外観設定部が設定した外観を備えるパスワード候補文字を表示することを特徴とする。
前記パスワード生成装置は、さらに、
ユーザの生体情報を読み取る生体情報読取部を有し、
前記パスワード入力部は、
前記入力データとして、前記生体情報読取部が読み取ったユーザの生体情報を入力することを特徴とする。
前記パスワード入力部は、
前記入力データとして、前記認証装置が記憶する暗証番号を入力することを特徴とする。
前記記憶部は、
前記暗号鍵として、前記認証装置が記憶する公開鍵と対になる秘密鍵を記憶することを特徴とする。
前記記憶部は、
前記暗号鍵として、前記認証装置が記憶する秘密鍵と対になる公開鍵を記憶することを特徴とする。
前記記憶部は、
前記暗号鍵として、前記認証装置が記憶する共通鍵と同一の共通鍵を記憶することを特徴とする。
前記パスワード生成装置は、さらに、
ユーザを識別するユーザ識別情報(ユーザID)と前記パスワード表示部に表示された第1のワンタイムパスワード及び第2のワンタイムパスワードとの入力をユーザに要求する認証画面を表示する端末表示部と、
前記ユーザIDと前記第1のワンタイムパスワードと前記第2のワンタイムパスワードとを入力する端末入力部と、
前記認証装置に前記端末入力部が入力したユーザIDと第1のワンタイムパスワードと第2のワンタイムパスワードとを送信する端末通信部とを有することを特徴とする。
本発明の集積回路(IC)カードは、
認証ごとに使い捨てるワンタイムパスワードにより認証の成否判断を行う認証装置に対して送信されるワンタイムパスワードを生成するパスワード生成装置に挿入され、前記パスワード生成装置とデータの授受を行うICカードにおいて、
前記認証装置が認証の成否判断を行うために用いる認証データを生成するために用いられる乱数と前記認証データを暗号化して前記認証装置が記憶する復号鍵で復号化される暗号データを生成するために用いられる暗号鍵とを記憶する記憶部と、
前記記憶部が記憶する乱数を用いて新たな乱数を生成し、前記記憶部に記憶させる乱数生成部と、
前記乱数生成部が生成した乱数と前記パスワード生成装置が入力した入力データとを用いて前記認証データを生成し、前記記憶部が記憶する暗号鍵を用いて前記認証データを暗号化し、前記認証データを暗号化して生成した暗号データを用いて第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するパスワード生成部とを有することを特徴とする。
前記ICカードは、さらに、
前記乱数生成部が生成した乱数と前記パスワード生成装置が入力した入力データとを用いて、前記認証装置が記憶するパスワード文字列を構成する文字を含むパスワード候補文字の外観を設定し、設定した外観を備えるパスワード候補文字を前記パスワード生成装置に表示させる外観設定部を有することを特徴とする。
本発明の認証装置は、
認証ごとに使い捨てるワンタイムパスワードを生成するパスワード生成装置が生成したワンタイムパスワードを送信する端末装置が送信したワンタイムパスワードにより認証の成否判断を行う認証装置において、
前記端末装置からユーザを識別するユーザ識別情報(ユーザID)と前記パスワード生成装置が生成した第1のワンタイムパスワードとを受信し、前記端末装置に第2のワンタイムパスワードを要求する要求データを送信し、前記端末装置から前記パスワード生成装置が生成した第2のワンタイムパスワードを受信する認証通信部と、
前記パスワード生成装置が生成した認証データを照合するために用いられる暗証データと前記認証データから取得される乱数と前記パスワード生成装置が記憶する暗号鍵で暗号化された暗号データを復号化するために用いられる復号鍵とを前記ユーザIDに対応付けて記憶する管理部と、
前記認証通信部が受信した第1のワンタイムパスワードと第2のワンタイムパスワードとを用いて前記暗号データを取得し、前記管理部が記憶する復号鍵を用いて前記暗号データを復号化し、前記暗号データを復号化して取得した認証データと前記管理部が記憶する乱数とを用いて前記パスワード生成装置が入力した入力データを復元する入力値復元部と、
前記入力値復元部が復元した入力データと前記管理部が記憶する暗証データとを照合して認証の成否判断を行う認証判定部とを有することを特徴とする。
前記管理部は、
前記暗証データとして、前記パスワード生成装置が入力する暗証番号を記憶することを特徴とする。
前記管理部は、
前記復号鍵として、前記パスワード生成装置が記憶する秘密鍵と対になる公開鍵を記憶することを特徴とする。
前記管理部は、
前記復号鍵として、前記パスワード生成装置が記憶する公開鍵と対になる秘密鍵を記憶することを特徴とする。
前記管理部は、
前記復号鍵として、前記パスワード生成装置が記憶する共通鍵と同一の共通鍵を記憶することを特徴とする。
本発明により、ワンタイムパスワード生成装置が、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、認証装置と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことが可能となる。
以下、本発明の実施の形態を図に基づいて説明する。なお、下記実施の形態1から実施の形態3において、認証処理に用いるパスワード文字の外観は、パスワード文字の背景色とする。パスワード文字の外観とは、各文字及びその周辺部分の視覚的な特徴のことであり、文字の背景色を利用する以外にも、例えば、フォントの種類や大きさ、文字の描画色、文字の背景の模様、文字を囲う図形の種類等を用いることが可能である。
下記実施の形態1から実施の形態3に係るパスワード生成装置は認証が行われる度に毎回異なるワンタイムパスワードを生成することとし、このパスワード生成装置をワンタイムパスワード生成装置と呼ぶ。また、実施の形態1から実施の形態3に係る認証装置は端末装置に認証サービスを提供することとし、この認証装置をサーバ装置と呼ぶ。
実施の形態1.
図1は本実施の形態に係る認証システムの構成を示すブロック図である。
記憶部104と外観設定部105とパスワード生成部106と乱数生成部107は本実施の形態ではIC(集積回路)カード108内に実装されており、具体的には、記憶部104はICカード108内のフラッシュメモリ上に割り当てられた領域である。また、外観設定部105とパスワード生成部106と乱数生成部107はプログラムで実現されるものであり、前記フラッシュメモリに格納され、ICカード108内のCPU(Central Processing Unit)で実行される。なお、ICカード108はワンタイムパスワード生成装置101から着脱することができる。
記憶部104は、ユーザに固有の秘密鍵とハッシュ鍵Aとハッシュ鍵Bをあらかじめ保持し、最後にワンタイムパスワードを生成したときに使用した乱数を記憶する。ここで、秘密鍵は、ユーザに固有の公開鍵と対になり、秘密鍵で暗号化したデータは対になる公開鍵のみで復号化でき、公開鍵で暗号化したデータは対になる秘密鍵のみで復号化できるものとする。また、ハッシュ鍵Aとハッシュ鍵Bの2つのハッシュ鍵は、それぞれハッシュ関数を実装し、ハッシュ鍵でデータを暗号化するとハッシュ値を生成するものとする。以下では、ハッシュ鍵で暗号化することを「ハッシュする」といい、ハッシュすることで生成したハッシュ値を「ハッシュした値」という。
乱数生成部107は、記憶部104に記憶された乱数にハッシュ鍵A又はハッシュ鍵Bを用いてハッシュした値を生成する。
外観設定部105は、パスワード表示部102に表示するパスワードの背景色を設定する。
管理部116は、本実施の形態ではハードディスク装置からなり、ユーザのパスワードとユーザに固有の公開鍵とハッシュ鍵Aとハッシュ鍵Bと認証失敗の許容回数Wを、それぞれユーザIDと関連付けてあらかじめ保持する。また、第1のワンタイムパスワードと最後に認証に成功したときに使用した乱数をユーザIDと関連付けて記憶する。
入力値復元部114、認証判定部115は、本実施の形態では具体的にはプログラムで実現されるものであり、これらのプログラムは、ハードディスク装置や不揮発性メモリやフレキシブルディスク等に格納され、これからサーバ装置113上にロードされ、サーバ装置113のCPU上で実行される。
端末装置109の端末通信部112とサーバ装置113の認証通信部117は、LAN(ローカルエリアネットワーク)、インターネット、あるいはISDN等のWAN(ワイドエリアネットワーク)等のネットワーク118を介して接続される。ネットワーク118は、単一のネットワークであっても良いし、種類の異なる複数のネットワークが相互に接続されたものであっても良い。例えば、ここで使用されるネットワークとして、無線通信を用いたネットワークと有線通信を用いたネットワークとを接続したものや、プライベートネットワークとインターネットとを接続したもの等、種々の異なるネットワークが相互接続されたものを用いることができる。
パスワード配列Pは、パスワード文字列に使用できる文字をワンタイムパスワード生成装置101のパスワード表示部102に表示する際の文字の並びを示しており、以下に示すようにi行j列に表示する文字のASCIIコードを格納したものである。
Figure 2006040820
色変換テーブルCは、パスワード配列Pをワンタイムパスワード生成装置101のパスワード表示部102に表示する際の背景色を示しており、以下に示すように、0から9までの数値に対応する背景色の色指定コードを6桁の16進数(各2桁がRGBの各数値に対応する)で格納するものである。
Figure 2006040820
なお、本実施の形態では、パスワード文字列の長さを8として説明するが、長さはこれに限定するものではない。また、パスワード候補文字として、7行10列のパスワード配列を用いるが、同様に配列の大きさはこれに限定するものではない。
管理部116は、パスワード配列Pと色変換テーブルCをあらかじめ格納する。
次に、本実施の形態における認証システムの動作について説明する。
まず、ワンタイムパスワードを生成する際のワンタイムパスワード生成装置101の動作について説明する。
図2は、ワンタイムパスワード生成装置101においてワンタイムパスワードを生成する際に実行される処理を示すフローチャートである。
ユーザがワンタイムパスワード生成装置101を使ってワンタイムパスワードを生成するとき、まず、パスワード生成部106が、ユーザからの応答値を格納するための認証データ配列h[8]とv[8]の要素を0に初期化し、水平移動量記憶変数mと垂直移動量記憶変数nと内部カウンタsをそれぞれ0に初期化する(S101)。
次に、乱数生成部107が、記憶部104に記憶された乱数とハッシュ鍵Aを取得し、この乱数をハッシュ鍵Aでハッシュした値を新たな乱数として記憶部104に記憶する(S102)。さらに、記憶部104に記憶されたハッシュ鍵Bを取得し、ステップS102で新たに生成した乱数をハッシュ鍵Bで1回から7回まで繰り返しハッシュして生成した7つの乱数の上位各10桁を乱数配列R[i|(0≦i≦6)]のR[0]からR[6]までの値として記録する(S103)。
この後、外観設定部105は、パスワード配列Pの各行各列について、乱数配列Rの値と2つの移動量記憶変数mとnの値と色変換テーブルCから、所定の演算により色指定コードを求める。パスワード表示部102は、求められた色指定コードにより指定される背景色の上にパスワード候補文字を描画したワンタイムパスワード生成画面を表示する(S104)。背景色の色指定コードを求める演算の詳細は、後で説明する。
パスワード表示部102に文字として表示した背景色のパスワード文字配列に対して、ユーザのキー入力をパスワード入力部103より受け付ける(S105)。キー入力を受け付けると、入力されたキーの種別を判定する(S106)。
入力されたキーの種別が選択キーの場合には、移動量記憶変数mとnの値を、それぞれ認証データ配列h[s]とv[s]の値として記憶した後、内部カウンタsの値に1を加算する(S107)。次に、内部カウンタsの値が7より大きいかをチェックし(S108)、7以下の場合にはステップS104からの処理を繰り返す。
入力されたキーの種別が左への移動キー(左向き矢印)であった場合には、水平移動量記憶変数mから1を減算する(S109)。次に、水平移動量記憶変数mの値が0より小さくないかをチェックし(S110)、0より小さな値の場合にはmに10を加算し(S111)、ステップS104からの処理を繰り返す。
入力されたキーの種別が右への移動キー(右向き矢印)であった場合には、水平移動量記憶変数mに1を加算する(S112)。次に、水平移動量記憶変数mの値が9より大きくないかをチェックし(S113)、9より大きな値の場合にはmから10を減算し(S114)、ステップS104からの処理を繰り返す。
入力されたキーの種別が上への移動キー(上向き矢印)であった場合には、垂直移動量記憶変数nから1を減算する(S115)。次に、垂直移動量記憶変数nの値が0より小さくないかをチェックし(S116)、0より小さな値の場合にはnに7を加算し(S117)、ステップS104からの処理を繰り返す。
入力されたキーの種別が下への移動キー(下向き矢印)であった場合には、垂直移動量記憶変数nに1を加算する(S118)。次に、垂直移動量記憶変数nの値が6より大きくないかをチェックし(S119)、6より大きな値の場合にはnから7を減算し(S120)、ステップS104からの処理を繰り返す。
入力されたキーの種別が、選択キーと移動キー(矢印)のいずれのキーでもない場合には、ステップS104からの処理を繰り返す。
ステップS108で内部カウンタsの値が7より大きい場合には、認証データ配列v[s]とh[s]を、v[s]の値が8ビットの16進数の上位4ビット、h[s]の値が8ビットの16進数の下位4ビットとなるように8桁の16進数に変換し、これを記憶部104に記憶された秘密鍵により暗号化した数値を認証値として生成する。さらに、この認証値を、例えば最初の4桁と最後の4桁に分割し、第1のワンタイムパスワードと第2のワンタイムパスワードを生成する(S121)。
次に、パスワード表示部102にステップS121で生成した第1のワンタイムパスワードを表示する(S122)。そして、ユーザのキー入力をパスワード入力部103より受け付ける(S123)。キー入力を受け付けると、入力されたキーの種別を判定する(S124)。
入力されたキーの種別が右への移動キー(右向き矢印)であった場合には、パスワード表示部102に第2のワンタイムパスワードを表示した後(S125)、ワンタイムパスワード生成処理を終了する。
入力されたキーの種別が左への移動キー(左向き矢印)であった場合には、ワンタイムパスワード生成処理を終了する。
入力されたキーの種別が、左右への移動キー(左矢印と右矢印)のいずれのキーでもない場合には、ステップS123からの処理を繰り返す。
なお、本実施の形態では、パスワード表示処理の継続を指示するために右への移動キー(右向き矢印)を、パスワード表示処理の中止を指示するために左への移動キー(左向き矢印)を用いているが、それぞれの指示に別のキーを割り当てることも可能である。
次に、図3を参照して、図2のステップS104の詳細動作を説明する。
まず、変数xとyをそれぞれ1に初期化する(S201)。次に、変数yの値が7以下の値であるかチェックする(S202)。ここで、変数yの値が7以下の場合には、変数xの値が10以下の値であるかチェックする(S203)。変数xの値が10以下の場合には、次の(1)式を使って画面の上からy行、左からx列の位置のパスワード候補文字に設定する背景色の色指定コードD(x,y)を求める(S204)。(1)式において、mとnはそれぞれ図2における水平移動量記憶変数と垂直移動量記憶変数を示す。
Figure 2006040820
次に、画面の左上からy行目x列目に、パスワード配列P[y−1,x−1]の文字コードで指定される文字を色指定コードD(x,y)の背景色で表示する(S205)。次に、変数xを1加算し(S206)、ステップS203からの処理を繰り返す。
一方、ステップS203で、変数xの値が10より大きい場合には、変数xに1をセットし、変数yを1加算し(S207)、ステップS202からの処理を繰り返す。
ステップS202において、変数yの値が7より大きな値の場合は処理を終了する。
次に、サーバ装置113の認証を受ける際の端末装置109の動作について説明する。
図4は、端末装置109において、ワンタイムパスワード生成装置101で生成したワンタイムパスワードを使ってサーバ装置113の認証を受ける際に実行される処理を示すフローチャートである。
まず、ユーザが端末装置109を使って認証を受ける場合、端末表示部111にユーザIDと第1のワンタイムパスワードの入力を促す認証画面を表示する(S301)。
次に、端末入力部110よりユーザIDと第1のワンタイムパスワードの入力を受け付ける(S302)。
この後、端末通信部112を介してユーザIDと第1のワンタイムパスワードを含む認証要求をサーバ装置113に対して送信する(S303)。そして、この認証要求に対してサーバ装置113から送られてくる認証結果を受信し(S304)、端末表示部111にステップS304で受信した認証結果を表示する(S305)。
続いて、上記と同様に、端末表示部111にユーザIDと第2のワンタイムパスワードの入力を促す認証画面を表示する(S306)。
次に、端末入力部110よりユーザIDと第2のワンタイムパスワードの入力を受け付ける(S307)。
この後、端末通信部112を介してユーザIDと第2のワンタイムパスワードを含む認証要求をサーバ装置113に対して送信する(S308)。そして、この認証要求に対してサーバ装置113から送られてくる認証結果を受信し(S309)、端末表示部111にステップS304で受信した認証結果を表示し(S310)、認証処理を終了する。
次に、サーバ装置113において端末装置109からユーザIDとワンタイムパスワードを含む認証要求を受信した際に実行される処理について説明する。
図5は、サーバ装置113において端末装置109から認証要求を受信した際に実行される処理を示すフローチャートである。
まず、端末装置109からユーザIDと第1のワンタイムパスワードを含む認証要求を受信する(S501)と、受信した認証要求に含まれているユーザIDが管理部116に登録されているかをチェックする(S502)。
管理部116にユーザIDが登録されている場合には、ステップS401で受信した第1のワンタイムパスワードが管理部116に記憶されている第1のワンタイムパスワードと同一でないかをチェックする(S403)。第1のワンタイムパスワードが同一でないか、まだ管理部116に第1のワンタイムパスワードが記憶されていない場合には、ステップS401で受信した第1のワンタイムパスワードを管理部116にユーザIDと関連付けて記憶し(S404)、認証通信部117を介して、第2のワンタイムパスワードの要求を認証結果として端末装置109に送信する(S405)。
一方、ステップS402においてユーザIDが管理部116に登録されていない場合には、認証の失敗を一時的に記憶し(S406)、ステップS405からの処理を実行する。また、ステップS403においてステップS401で受信した第1のワンタイムパスワードが管理部116に記憶されている第1のワンタイムパスワードと同一の場合にも、ステップS406で認証の失敗を記憶した後、ステップS405からの処理を実行する。
次に、端末装置109から認証要求を受信する(S407)と、認証要求に第2のワンタイムパスワードが含まれているかをチェックする(S408)。認証要求に第2のワンタイムパスワードが含まれている場合には、認証の失敗が記憶されていないかをチェックする(S409)。認証の失敗が記憶されていない場合には、認証判定部115が認証判定を行い(S410)、認証通信部117を介して認証結果を端末装置109に送信し(S411)、処理を終了する。ステップS410の認証判定処理の詳細は、後で説明する。
一方、ステップS408において認証要求に第2のワンタイムパスワードが含まれていない場合には、認証通信部117を介して認証の失敗を認証結果として端末装置109に送信した後(S412)、処理を終了する。また、ステップS409において、認証の失敗が記憶されている場合にも、ステップS412において認証の失敗を送信した後に処理を終了する。
次に、図6を参照して、図5のステップS410での認証判定処理の詳細動作を説明する。
まず、入力値復元部114が、受信したワンタイムパスワードから認証データ配列v[8]とh[8]を復元する。具体的には、ステップS404で管理部116に記憶した第1のワンタイムパスワードとステップS408で受信した第2のワンタイムパスワードを結合した認証値を、管理部116より取り出した公開鍵で復号化して8桁の16進数を生成し、各桁の上位4ビットをv[8]の要素に、下位4ビットをh[8]の要素にセットすることで、ワンタイムパスワードから認証データ配列v[8]とh[8]を復元する(S501)。
次に、変数wを1に(S502)、変数sを1に初期化する(S503)。そして、管理部116に記憶された乱数とハッシュ鍵Aを取得し、この乱数をハッシュ鍵Aでw回ハッシュした値を一時的に記憶するとともに、この値を管理部116に記憶されたハッシュ鍵Bで1回から7回まで繰り返しハッシュして生成した7つの乱数の上位各10桁を乱数配列R1[i|(0≦i≦6)]のR1[0]からR1[6]までの値として記録する(S504)。
次に、パスワードのs番目の文字について、パスワード配列P内の位置i、jを求める(S505)。パスワード配列P内の位置は、図7に示す変換テーブルを使って求めることができる。具体的には、図7の変換テーブルに対しあるパスワード文字のASCIIコードの上位4ビットと下位4ビットにより一意に求まる値tを用いて、パスワード配列P内の位置iとjが求められる。このとき、iはtを10で割った場合の商、jはtを10で割った場合の余りとなる。
次に、iとjと認証データ配列の要素h[s]とv[s]とから、次の(2)式を使ってs文字目のパスワード文字の背景色として選択された色指定コードE(s)を求める(S506)。
Figure 2006040820
次に、変数sが1に等しいかをチェックする(S507)。変数sが1の場合には、ステップS504からの処理を繰り返す。変数sが1以外の場合には、E(s)とE(s−1)の色コードが一致するかをチェックする(S508)。色コードが一致する場合には、変数sが8より小さいかをチェックする(S509)。変数sが8より小さい場合には変数sに1を加算し(S510)、ステップS504からの処理を繰り返す。ステップS509においてsが8以上の場合には、認証を成功とし(S511)、ステップS504で一時的に記憶した乱数を管理部116に記憶してから認証判定処理を終了する。
一方、ステップS508のチェックにおいて色コードが一致しない場合には、変数wに1を加算し(S512)、変数wが管理部116に記憶された認証失敗の許容回数Wより大きいかをチェックする(S513)。ステップS513においてwがWよりも大きい場合には、認証を失敗とし(S514)、認証判定処理を終了する。一方、ステップS513においてwがWよりも大きくない場合には、ステップS503からの処理を繰り返す。
図8は、端末装置109でユーザからの認証要求を受け付ける際に、端末表示部111が表示する認証画面である。
ユーザは認証を受ける際に、端末入力部110より認証画面201のユーザID入力フィールド202にユーザIDを入力し、ワンタイムパスワード入力フィールド203にワンタイムパスワード生成装置101により生成した第1のワンタイムパスワード又は第2のワンタイムパスワードを入力し、実行ボタン204を押下することで、ステップS303及びステップS308においてサーバ装置113に対して認証要求を送るために必要なユーザIDと第1のワンタイムパスワード及び第2のワンタイムパスワードが受け付けられる。
図9は、ワンタイムパスワード生成装置101でステップS106においてユーザからのキー入力を受け付ける際に、パスワード表示部102が表示するワンタイムパスワード生成画面301である。
ユーザは、ワンタイムパスワード生成画面301上で、自身の記憶するパスワードの最初の文字から順にパスワード配列302の中の文字を見つけ出し、背景を移動キーで操作して、パスワード文字の背景色が、ユーザが最初に選択キーを押した際の、最初のパスワード文字の背景色と同じになったときに選択キーを押下するという操作を繰り返すことで、ワンタイムパスワードの生成操作を行う。
このように、パスワードの背景色を合わせるだけでパスワードそのものを入力せずにワンタイムパスワードの生成を行うので、たとえ第三者がワンタイムパスワード生成操作を盗み見ることができても、利用者がどの文字の背景色を合わせているかが分からないため、本人に成りすまして正しいワンタイムパスワードを生成することを防ぐことができる。
また、ユーザが記憶する認証のためのデータとして、広く普及している従来の文字と数字等からなるパスワードを用いることができるため、ユーザにとってはワンタイムパスワード認証を導入する際に新たに特殊な形式のデータを憶える負担が無く、セキュリティを維持するためにパスワードの更新を行う時の負荷も小さい。このため、高いセキュリティを保持した認証が行える。
図10は、ワンタイムパスワード生成装置101でステップS122においてユーザに対して第1のワンタイムパスワードを表示する際に、パスワード表示部102が表示する第1のワンタイムパスワード表示画面である。ユーザは第1のワンタイムパスワード表示画面401から読み取った第1のワンタイムパスワードを、ステップS302において端末装置109の端末入力部110を介して入力し、サーバ装置113に送信する。
図11は、ワンタイムパスワード生成装置101でステップS125においてユーザに対して第2のワンタイムパスワードを表示する際に、パスワード表示部102が表示する第2のワンタイムパスワード表示画面である。ユーザは第2のワンタイムパスワード表示画面501から読み取った第2のワンタイムパスワードを、ステップS307において端末装置109の端末入力部110を介して入力し、サーバ装置113に送信する。
このように、ワンタイムパスワード生成装置101が生成するワンタイムパスワードを第1のワンタイムパスワードと第2のワンタイムパスワードの2つに分割し、第1のワンタイムパスワードをサーバ装置113に送信した後に、サーバ装置113からの要求に応じて第2のワンタイムパスワードを表示するようにすることで、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、ワンタイムパスワード生成装置101がサーバ装置113と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことができる。
本実施の形態では、ワンタイムパスワードの生成操作において、ユーザが最初に選択キーを押した際の、最初のパスワード文字の背景色に残りのパスワード文字の背景色を合わせるようにしたが、正規のパスワードとともに正規のパスワード文字の背景色をサーバ装置113に登録し、全てのパスワード文字の背景色をサーバ装置113で照合するような形態も可能である。
また、本実施の形態では、ワンタイムパスワード生成画面301にパスワード配列だけを表示したが、何回選択キーを押したかを分かりやすくするために、パスワード配列の下等に選択キーが押されるたびに、‘*’等の文字を並べて表示してもよい。
本実施の形態では、ワンタイムパスワード生成装置101でワンタイムパスワードを生成する際に、暗号鍵としてユーザの秘密鍵を用い、サーバ装置113で復号鍵としてユーザの公開鍵を用いているが、暗号化鍵にサーバ装置113の公開鍵を用い、復号化鍵にサーバ装置113の秘密鍵を用いてもよい。また、暗号化鍵と復号化鍵の両方に共通鍵を用いることもできる。
また、本実施の形態では、ワンタイムパスワード生成装置101と端末装置109とが別々の機器からなるが、端末装置109にワンタイムパスワード生成装置101と同等のワンタイムパスワード生成を行う機能を実装しても同様の効果が得られる。
実施の形態2.
実施の形態1では、ユーザが方向キーを操作してパスワード文字の背景色を特定の色に合わせることで認証のためのワンタイムパスワードを生成するが、本実施の形態では、ユーザが数字キーを操作して暗証番号を入力することで認証のためのワンタイムパスワードを生成する。
図12は本実施の形態に係る認証システムの構成を示すブロック図である。
記憶部604とパスワード生成部606と乱数生成部607は本実施の形態ではICカード608内に実装されており、具体的には、記憶部604はICカード608内のフラッシュメモリ上に割り当てられた領域である。また、パスワード生成部606と乱数生成部607はプログラムで実現されるものであり、前記フラッシュメモリに格納され、ICカード608内のCPUで実行される。なお、ICカード608はワンタイムパスワード生成装置601から着脱することができる。
記憶部604は、ユーザに固有の秘密鍵とハッシュ鍵をあらかじめ保持し、最後にワンタイムパスワードを生成したときに使用した乱数を記憶する。
乱数生成部607は、記憶部604に記憶された乱数にハッシュ鍵を用いてハッシュした値を生成する。
管理部616は、本実施の形態ではハードディスク装置からなり、ユーザの暗証番号とユーザに固有の公開鍵とハッシュ鍵と認証失敗の許容回数Wを、それぞれユーザIDと関連付けてあらかじめ保持する。また、第1のワンタイムパスワードと最後に認証に成功したときに使用した乱数をユーザIDと関連付けて記憶する。
なお、本実施の形態では、暗証番号の長さを4として説明するが、長さはこれに限定するものではない。
入力値復元部614、認証判定部615は、本実施の形態では具体的にはプログラムで実現されるものであり、これらのプログラムは、ハードディスク装置や不揮発性メモリやフレキシブルディスク等に格納され、これからサーバ装置613上にロードされ、サーバ装置613のCPU上で実行される。
端末装置609の端末通信部612とサーバ装置613の認証通信部617は、LAN、インターネット、あるいはISDN等のWAN等のネットワーク618を介して接続される。ネットワーク618は、単一のネットワークであっても良いし、種類の異なる複数のネットワークが相互に接続されたものであっても良い。例えば、ここで使用されるネットワークとして、無線通信を用いたネットワークと有線通信を用いたネットワークとを接続したものや、プライベートネットワークとインターネットとを接続したもの等、種々の異なるネットワークが相互接続されたものを用いることができる。
次に、本実施の形態における認証システムの動作について説明する。
まず、ワンタイムパスワードを生成する際のワンタイムパスワード生成装置601の動作について説明する。
図13は、ワンタイムパスワード生成装置601においてワンタイムパスワードを生成する際に実行される処理を示すフローチャートである。
ユーザがワンタイムパスワード生成装置601を使ってワンタイムパスワードを生成するとき、まず、パスワード生成部606が、ユーザの暗証番号を受け付けるための暗証番号用変数aと、内部カウンタsをそれぞれ0に初期化する(S701)。
次に、乱数生成部607が、記憶部604に記憶された乱数とハッシュ鍵を取得し、この乱数をハッシュ鍵でハッシュした値を新たな乱数として記憶部604に記憶する(S702)。
パスワード表示部602は、ユーザに暗証番号の入力を要求する暗証番号入力画面を表示する(S703)。
暗証番号入力画面に対して、ユーザのキー入力をパスワード入力部603より受け付ける(S704)。キー入力を受け付けると、入力されたキーの種別を判定する(S705)。
入力されたキーの種別が数字キーの場合には、暗証番号用変数aを、aの値を10倍してこれにキー入力された数字を加算したものに更新し、内部カウンタsの値に1を加算する(S706)。次に、内部カウンタsの値が3より大きいかをチェックし(S707)、3以下の場合にはステップS704からの処理を繰り返す。
入力されたキーの種別が、数字キー以外のキーの場合には、ステップS704からの処理を繰り返す。
ステップS707で内部カウンタsの値が3より大きい場合には、ステップS702で生成した乱数を10000倍したものにステップS706で更新した暗証番号用変数aの値を加算したものを記憶部604に記憶する秘密鍵を使って暗号化した数値を認証値として生成する。さらに、この認証値を、2つに分割し、第1のワンタイムパスワードと第2のワンタイムパスワードを生成する(S708)。
次に、パスワード表示部602にステップS708で生成した第1のワンタイムパスワードを表示する(S709)。そして、ユーザのキー入力をパスワード入力部603より受け付ける(S710)。キー入力を受け付けると、入力されたキーの種別を判定する(S711)。
入力されたキーの種別が右への移動キー(右向き矢印)であった場合には、パスワード表示部602に第2のワンタイムパスワードを表示した後(S712)、ワンタイムパスワード生成処理を終了する。
入力されたキーの種別が左への移動キー(左向き矢印)であった場合には、ワンタイムパスワード生成処理を終了する。
入力されたキーの種別が、左右への移動キー(左矢印と右矢印)のいずれのキーでもない場合には、ステップS710からの処理を繰り返す。
なお、本実施の形態では、パスワード表示処理の継続を指示するために右への移動キー(右向き矢印)を、パスワード表示処理の中止を指示するために左への移動キー(左向き矢印)を用いているが、それぞれの指示に別のキーを割り当てることも可能である。
端末装置609において、ワンタイムパスワード生成装置601で生成したワンタイムパスワードを使ってサーバ装置613の認証を受ける際には、実施の形態1の図4で示したものと同様の処理が実行される。
また、サーバ装置613において端末装置609から認証要求を受信した際には、実施の形態1の図5で示したものと同様の処理が実行される。ただし、図5のステップS410で行う認証判定の処理では、ステップS404で管理部616に記憶した第1のワンタイムパスワードとステップS407で受信した第2のワンタイムパスワードを結合した認証値を、管理部616から取り出した公開鍵で復号化した数値の下位4桁が、管理部616に記憶する暗証番号と一致するか否かで認証の成否を判定する。
このように、ワンタイムパスワード生成装置601が生成するワンタイムパスワードを第1のワンタイムパスワードと第2のワンタイムパスワードの2つに分割し、第1のワンタイムパスワードをサーバ装置613に送信した後に、サーバ装置613からの要求に応じて第2のワンタイムパスワードを表示するようにすることで、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、ワンタイムパスワード生成装置601がサーバ装置613と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことができる。
本実施の形態では、ユーザを特定する情報として4桁の数字からなる暗証番号を用いた例を示したが、暗証番号に代えてパスワードを用いても同様の効果が得られる。
また、本実施の形態では、ワンタイムパスワード生成装置601と端末装置609とが別々の機器からなるが、端末装置609にワンタイムパスワード生成装置601と同等のワンタイムパスワード生成を行う機能を実装しても同様の効果が得られる。
実施の形態3.
実施の形態2では、ユーザが記憶する情報を用いて、ワンタイムパスワード生成装置を使用するユーザを特定するが、本実施の形態では、ユーザの生体情報を使ってワンタイムパスワードを生成する。以下では、生体情報の例として指紋情報を用いる。
図14は本実施の形態に係る認証システムの構成を示すブロック図である。
記憶部704とパスワード生成部706と乱数生成部707は本実施の形態ではICカード708内に実装されており、具体的には、記憶部704はICカード708内のフラッシュメモリ上に割り当てられた領域である。また、パスワード生成部706と乱数生成部707はプログラムで実現されるものであり、前記フラッシュメモリに格納され、ICカード708内のCPUで実行される。なお、ICカード708はワンタイムパスワード生成装置701から着脱することができる。
記憶部704は、ユーザに固有の秘密鍵とハッシュ鍵をあらかじめ保持し、最後にワンタイムパスワードを生成したときに使用した乱数を記憶する。
乱数生成部707は、記憶部704に記憶された乱数にハッシュ鍵を用いてハッシュした値を生成する。
生体情報読取部719は、ユーザの指紋を読み取り、読み取ったユーザの指紋の特徴を抽出してバイナリデータに変換した指紋情報をパスワード入力部703に提供する。パスワード入力部703は、提供された指紋情報を実施の形態2の暗証番号と同様に入力データとして扱う。
管理部716は、本実施の形態ではハードディスク装置からなり、ユーザの指紋情報とユーザに固有の公開鍵とハッシュ鍵と認証失敗の許容回数Wを、それぞれユーザIDと関連付けてあらかじめ保持する。また、第1のワンタイムパスワードと最後に認証に成功したときに使用した乱数をユーザIDと関連付けて記憶する。
入力値復元部714、認証判定部715は、本実施の形態では具体的にはプログラムで実現されるものであり、これらのプログラムは、ハードディスク装置や不揮発性メモリやフレキシブルディスク等に格納され、これからサーバ装置713上にロードされ、サーバ装置713のCPU上で実行される。
端末装置709の端末通信部712とサーバ装置713の認証通信部717は、LAN、インターネット、あるいはISDN等のWAN等のネットワーク718を介して接続される。ネットワーク718は、単一のネットワークであっても良いし、種類の異なる複数のネットワークが相互に接続されたものであっても良い。例えば、ここで使用されるネットワークとして、無線通信を用いたネットワークと有線通信を用いたネットワークとを接続したものや、プライベートネットワークとインターネットとを接続したもの等、種々の異なるネットワークが相互接続されたものを用いることができる。
本実施の形態は、個人を特定する情報として実施の形態2で示した暗証番号を指紋情報に置き換えたものであり、本実施の形態に係る認証システムの基本的な動作は実施の形態2と同様である。
なお、指紋情報は暗証番号に比べてサイズが大きくなる場合もあり、ワンタイムパスワード生成装置701において乱数と指紋情報を結合した認証値を暗号化する際に、認証値のサイズが暗号化のブロックサイズより大きくなってしまうことがある。このような場合は、乱数と指紋情報を結合したデータの大きさが暗号化のブロックサイズより小さくなるように、乱数のデータと指紋情報のデータを同数に分割し、図15に示すように、分割した乱数と指紋情報のデータを1つずつ結合して、さらにその結合したデータを連結したものを認証値として用いることもできる。
このように、ワンタイムパスワード生成装置701が利用者の生体情報を用いて生成するワンタイムパスワードを第1のワンタイムパスワードと第2のワンタイムパスワードの2つに分割し、第1のワンタイムパスワードをサーバ装置713に送信した後に、サーバ装置713からの要求に応じて第2のワンタイムパスワードを表示するようにすることで、定期的な時刻同期処理が必要である時刻依存値生成器を用いず、また、ワンタイムパスワード生成装置701がサーバ装置713と接続されていなくても、ワンタイムパスワードを生成し安全に認証を行うことができる。
本実施の形態では、ワンタイムパスワード生成装置701と端末装置709とが別々の機器からなるが、端末装置709にワンタイムパスワード生成装置701と同等のワンタイムパスワード生成を行う機能を実装しても同様の効果が得られる。
前述した各実施の形態で、ワンタイムパスワード生成装置101、端末装置109、サーバ装置113、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713は、コンピュータで実現できるものである。
図示していないが、ワンタイムパスワード生成装置101、端末装置109、サーバ装置113、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713は、プログラムを実行するCPUを備えている。
例えば、CPUは、バスを介して、ROM(Read Only Memory)、RAM(Random Access Memory)、通信ボード、表示装置、K/B(キーボード)、マウス、FDD(Flexible Disk Drive)、CDD(コンパクトディスクドライブ)、磁気ディスク装置、光ディスク装置、プリンタ装置、スキャナ装置等と接続されている。
RAMは、揮発性メモリの一例である。ROM、FDD、CDD、磁気ディスク装置、光ディスク装置は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
前述した各実施の形態のワンタイムパスワード生成装置101、端末装置109、サーバ装置113、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713が扱うデータや情報は、記憶装置あるいは記憶部に保存され、ワンタイムパスワード生成装置101、端末装置109、サーバ装置113、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713の各部により、記録され読み出されるものである。
また、通信ボードは、例えば、LAN、インターネット、あるいはISDN等のWANに接続されている。
磁気ディスク装置には、オペレーティングシステム(OS)、ウィンドウシステム、プログラム群、ファイル群(データベース)が記憶されている。
プログラム群は、CPU、OS、ウィンドウシステムにより実行される。
上記ワンタイムパスワード生成装置101、端末装置109、サーバ装置113、ワンタイムパスワード生成装置601、端末装置609、サーバ装置613、ワンタイムパスワード生成装置701、端末装置709、サーバ装置713の各部は、一部あるいはすべてコンピュータで動作可能なプログラムにより構成しても構わない。あるいは、ROMに記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアあるいは、ハードウェアあるいは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。
上記プログラム群には、実施の形態の説明において「〜部」として説明した処理をCPUに実行させるプログラムが記憶される。これらのプログラムは、例えば、C言語やHTMLやSGMLやXML等のコンピュータ言語により作成される。
また、上記プログラムは、磁気ディスク装置、FD(Flexible Disk)、光ディスク、CD(コンパクトディスク)、MD(ミニディスク)、DVD(Digital Versatile Disk)等のその他の記録媒体に記憶され、CPUにより読み出され実行される。
以上のように、実施の形態1から3で説明した認証システムは、
ユーザが端末装置からネットワークを介して認証装置との間で認証を行う際に認証の度に毎回異なるワンタイムパスワードを生成するワンタイムパスワード生成装置を用いて認証を行う認証システムであって、
前記ワンタイムパスワード生成装置は、
暗号鍵を記憶する記憶部と、
乱数を生成する乱数生成部と、
ユーザからの入力を受け付ける入力部と、
前記乱数生成部が生成した乱数と前記入力部からの入力値とを結合した値を前記記憶部に記憶する暗号鍵を使って暗号化した認証値を生成し、認証値を2つに分割して第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するワンタイムパスワード生成部と、
前記入力部からの入力に応じて前記第1のワンタイムパスワードと前記第2のワンタイムパスワードを順次表示する表示部とを有し、
前記端末装置は、
認証要求画面と結果を表示する端末表示部と、
キーからの入力を受け付ける端末入力部と、
前記端末入力部から入力されたユーザIDとワンタイムパスワードを前記認証装置に送信し認証結果を受信する端末通信部とを有し、
前記認証装置は、
前記端末装置よりユーザIDとワンタイムパスワードを受信し結果を送信する認証通信部と、
ユーザIDとあわせて、復号鍵と正規のユーザを判定するための認証データとを記憶する管理部と、
前記認証通信部が前記端末装置からユーザIDと第1のワンタイムパスワードを受信した際にはユーザIDとあわせて第1のパスワードを記憶するとともに前記認証通信部を介して前記端末装置に結果として第2のワンタイムパスワードの要求を送信し、前記認証通信部が前記端末装置から第2のワンタイムパスワードを受信した際には、第1のパスワードと第2のパスワードを結合して認証値を生成し、さらに前記認証値を前記復号鍵で復号した値から前記ワンタイムパスワード生成装置において前記入力部から入力された入力値を取り出す入力値復元部と、
前記入力値復元部から得られた入力値と前記管理部に記憶する前記認証データとが一致するか否かによりユーザ認証の成否判定を行い、前記端末装置に対して前記認証通信部を介して認証結果を送信する認証判定部とを有することを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の暗号鍵と前記認証装置の復号鍵に共通鍵を使用することを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の暗号鍵に前記認証装置の公開鍵を使用し、前記認証装置の復号鍵に前記認証装置の秘密鍵を使用することを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の暗号鍵に前記ワンタイムパスワード装置の秘密鍵を使用し、前記認証装置の復号鍵に前ワンタイムパスワード生成装置の秘密鍵を使用することを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値と前記認証装置の前記管理部に記憶される認証データが暗証番号であることを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値と前記認証装置の前記管理部に記憶される認証データがパスワード文字列であることを特徴とする。
前記認証システムは、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値と前記認証装置の前記管理部に記憶される認証データが指紋などの生体情報であることを特徴とする。
前記ワンタイムパスワード生成装置はさらに、
前記乱数生成部により生成された乱数と前記入力部より入力された入力値とを基にパスワード候補文字の外観を設定する外観設定部とを有し、
前記表示部は、前記外観設定部により設定された外観のパスワード候補文字と、前記入力部からの入力に応じて前記第1のワンタイムパスワードと前記第2のワンタイムパスワードを順次表示し、
前記入力値復元部は、前記入力部から入力された入力値とともに前記乱数生成部で生成された乱数を取り出し、
前記認証判定部は、前記ユーザIDとあわせて記憶されたパスワード文字列と前記入力値復元部で取り出した前記入力値及び前記乱数とを用いて所定の演算を行い、ユーザ認証の成否判定を行うことを特徴とする。
また、実施の形態1から3で説明したワンタイムパスワード生成装置は、
ユーザが端末装置を使って認証装置との認証を行う際に使用するワンタイムパスワードを生成するワンタイムパスワード生成装置であって、
暗号鍵を記憶する記憶部と、
乱数を生成する乱数生成部と、
ユーザからの入力を受け付ける入力部と、
前記乱数生成部が生成した乱数と前記入力部からの入力値とを結合した値を前記記憶部に記憶する暗号鍵を使って暗号化した認証値を生成し、認証値を2つに分割して第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するワンタイムパスワード生成部と、
前記入力部からの入力に応じて前記第1のワンタイムパスワードと前記第2のワンタイムパスワードを順次表示する表示部とを有することを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の暗号鍵に共通鍵を使用することを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の暗号鍵に前記認証装置の公開鍵を使用することを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の暗号鍵に前記ワンタイムパスワード装置の秘密鍵を使用することを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値が暗証番号であることを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値とがパスワード文字列であることを特徴とする。
前記ワンタイムパスワード生成装置は、
前記ワンタイムパスワード生成装置の前記端末入力部から入力される入力値が指紋などの生体情報であることを特徴とする。
また、実施の形態1から3で説明したICカードは、
ユーザが端末装置からネットワークを介して認証装置との間で認証を行う際に認証の度に毎回異なるワンタイムパスワードを生成するワンタイムパスワード生成装置に挿入して使用され、前記ワンタイムパスワード生成装置とのデータの授受を行うICカードであって、
暗号鍵を記憶する記憶部と、
乱数を生成する乱数生成部と、
前記乱数生成部が生成した乱数と前記ワンタイムパスワード生成装置の入力部からの入力値とを結合した値を前記記憶部に記憶する暗号鍵を使って暗号化した認証値を生成し、認証値を2つに分割して第1のワンタイムパスワードと第2のワンタイムパスワードとを生成し前記ワンタイムパスワード生成装置へ提供するワンタイムパスワード生成部とを有することを特徴とする。
前記ICカードはさらに、
前記乱数生成部により生成された乱数と前記ワンタイムパスワード生成装置の入力部より入力された入力値とを基にパスワード候補文字の外観を設定し前記ワンタイムパスワード生成装置へ提供する外観設定部を有することを特徴とする。
また、実施の形態1から3で説明した認証装置は、
ワンタイムパスワード生成装置が生成するワンタイムパスワードに基づきユーザが利用する端末装置と通信を行ってユーザに対する認証を行う認証装置であって、
前記端末装置よりユーザIDとワンタイムパスワードを受信し結果を送信する認証通信部と、
ユーザIDとあわせて、復号鍵と正規のユーザを判定するための認証データとを記憶する管理部と、
前記認証通信部が前記端末装置からユーザIDと第1のワンタイムパスワードを受信した際にはユーザIDとあわせて第1のパスワードを記憶するとともに前記認証通信部を介して前記端末装置に結果として第2のワンタイムパスワードの要求を送信し、前記認証通信部が前記端末装置から第2のワンタイムパスワードを受信した際には、第1のパスワードと第2のパスワードを結合して認証値を生成し、さらに前記認証値を前記復号鍵で復号した値から前記ワンタイムパスワード生成装置において前記入力部から入力された入力値を取り出す入力値復元部と、
前記入力値復元部から得られた入力値と前記管理部に記憶する前記認証データとが一致するか否かによりユーザ認証の成否判定を行い、前記端末装置に対して前記認証通信部を介して認証結果を送信する認証判定部とを有することを特徴とする。
前記認証装置は、
前記認証装置の復号鍵に共通鍵を使用することを特徴とする。
前記認証装置は、
前記認証装置の復号鍵に前記認証装置の秘密鍵を使用することを特徴とする。
前記認証装置は、
前記認証装置の復号鍵に前ワンタイムパスワード生成装置の秘密鍵を使用することを特徴とする。
前記認証装置は、
前記認証装置の前記管理部に記憶される認証データが暗証番号であることを特徴とする。
前記認証装置は、
前記認証装置の前記管理部に記憶される認証データがパスワード文字列であることを特徴とする。
前記認証装置は、
前記認証装置の前記管理部に記憶される認証データが指紋などの生体情報であることを特徴とする。
また、実施の形態1から3で説明した認証方法は、
ユーザが利用する端末装置と認証の際に毎回異なるワンタイムパスワード生成装置と、前記端末装置と通信を行ってユーザに対する認証を行う認証装置とを用いる認証方法であって、
前記ワンタイムパスワード生成装置は、
乱数を生成する乱数生成処理と、
ユーザからの入力を受け付ける入力処理と、
前記乱数生成部が生成した乱数と前記入力部からの入力値とを結合した値を暗号鍵を使って暗号化した認証値を生成し、認証値を2つに分割して第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するワンタイムパスワード生成処理と、
前記入力部からの入力に応じて前記第1のワンタイムパスワードと前記第2のワンタイムパスワードを順次表示する表示処理とを行い、
前記端末装置は、
認証要求画面を表示する認証画面表示処理と、
前記認証要求画面に対してユーザから入力されるユーザIDと第1のワンタイムパスワード及び第2のワンタイムパスワードを受け付ける認証入力処理と、
前記認証入力処理で入力されたユーザIDと第1のワンタイムパスワード及び第2のワンタイムパスワードを前記認証装置に送信し認証結果を受信する認証要求処理と、
認証の結果を表示する認証結果表示処理とを行い、
前記認証装置は、
前記端末装置より送信された前記認証要求を受信する認証要求受信処理と、
前記認証要求受信処理により前記端末装置から受信した認証要求に含まれるユーザIDと第1のワンタイムパスワード及び第2のワンタイムパスワードについて、第1のワンタイムパスワードと第2のワンタイムパスワードを結合して認証値を生成し、さらに前記認証値を復号鍵を使って復号した値から前記ワンタイムパスワード生成装置において前記入力部から入力された入力値を復元する入力値復元処理と、
前記入力値復元処理において得られた入力値がユーザの認証データと一致するか否かによりユーザ認証の成否判定を行う認証判定処理とを行うことを特徴とする。
前記ワンタイムパスワード生成装置はさらに、
前記乱数生成処理により生成された乱数と前記入力処理により入力された入力値とを基にパスワード候補文字の外観を設定する外観設定処理を行うことを特徴とする。
実施の形態1に係る認証システムの構成を示すブロック図。 実施の形態1に係るパスワード生成装置のパスワード生成処理の動作を示すフローチャート。 実施の形態1における図2のS104の詳細な動作を示すフローチャート。 実施の形態1に係る端末装置の認証処理の動作を示すフローチャート。 実施の形態1に係る認証装置の認証処理の動作を示すフローチャート。 実施の形態1における図5のS410の詳細な動作を示すフローチャート。 コード変換テーブル。 実施の形態1に係る端末装置に表示される認証画面。 実施の形態1に係るパスワード生成装置に表示されるパスワード生成画面。 実施の形態1に係るパスワード生成装置に表示される第1のパスワード表示画面。 実施の形態1に係るパスワード生成装置に表示される第2のパスワード表示画面。 実施の形態2に係る認証システムの構成を示すブロック図。 実施の形態2に係るパスワード生成装置のパスワード生成処理の動作を示すフローチャート。 実施の形態3に係る認証システムの構成を示すブロック図。 実施の形態3に係るパスワード生成装置がパスワード生成時に作成する認証値の例。
符号の説明
101,601,701 ワンタイムパスワード生成装置、102,602,702 パスワード表示部、103,603,703 パスワード入力部、104,604,704 記憶部、105 外観設定部、106,606,706 パスワード生成部、107,607,707 乱数生成部、108,608,708 ICカード、109,609,709 端末装置、110,610,710 端末入力部、111,611,711 端末表示部、112,612,712 端末通信部、113,613,713 サーバ装置、114,614,714 入力値復元部、115,615,715 認証判定部、116,616,716 管理部、117,617,717 認証通信部、118,618,718 ネットワーク、201 認証画面、202 ユーザID入力フィールド、203 ワンタイムパスワード入力フィールド、204 実行ボタン、301 ワンタイムパスワード生成画面、302 パスワード配列、401 第1のワンタイムパスワード表示画面、501 第2のワンタイムパスワード表示画面、719 生体情報読取部。

Claims (15)

  1. 認証ごとに使い捨てるワンタイムパスワードにより認証の成否判断を行う認証装置に対して送信されるワンタイムパスワードを生成するパスワード生成装置において、
    前記認証装置が認証の成否判断を行うために用いる認証データを生成するために用いられる乱数と前記認証データを暗号化して前記認証装置が記憶する復号鍵で復号化される暗号データを生成するために用いられる暗号鍵とを記憶する記憶部と、
    前記記憶部が記憶する乱数を用いて新たな乱数を生成し、前記記憶部に記憶させる乱数生成部と、
    入力データを入力するパスワード入力部と、
    前記乱数生成部が生成した乱数と前記パスワード入力部が入力した入力データとを用いて前記認証データを生成し、前記記憶部が記憶する暗号鍵を用いて前記認証データを暗号化し、前記認証データを暗号化して生成した暗号データを用いて第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するパスワード生成部と、
    前記パスワード生成部が生成した第1のワンタイムパスワードと第2のワンタイムパスワードとを表示するパスワード表示部とを有することを特徴とするパスワード生成装置。
  2. 前記パスワード生成装置は、さらに、
    前記乱数生成部が生成した乱数と前記パスワード入力部が入力した入力データとを用いて、前記認証装置が記憶するパスワード文字列を構成する文字を含むパスワード候補文字の外観を設定する外観設定部を有し、
    前記パスワード表示部は、
    前記外観設定部が設定した外観を備えるパスワード候補文字を表示することを特徴とする請求項1に記載のパスワード生成装置。
  3. 前記パスワード生成装置は、さらに、
    ユーザの生体情報を読み取る生体情報読取部を有し、
    前記パスワード入力部は、
    前記入力データとして、前記生体情報読取部が読み取ったユーザの生体情報を入力することを特徴とする請求項1に記載のパスワード生成装置。
  4. 前記パスワード入力部は、
    前記入力データとして、前記認証装置が記憶する暗証番号を入力することを特徴とする請求項1に記載のパスワード生成装置。
  5. 前記記憶部は、
    前記暗号鍵として、前記認証装置が記憶する公開鍵と対になる秘密鍵を記憶することを特徴とする請求項1に記載のパスワード生成装置。
  6. 前記記憶部は、
    前記暗号鍵として、前記認証装置が記憶する秘密鍵と対になる公開鍵を記憶することを特徴とする請求項1に記載のパスワード生成装置。
  7. 前記記憶部は、
    前記暗号鍵として、前記認証装置が記憶する共通鍵と同一の共通鍵を記憶することを特徴とする請求項1に記載のパスワード生成装置。
  8. 前記パスワード生成装置は、さらに、
    ユーザを識別するユーザ識別情報(ユーザID)と前記パスワード表示部に表示された第1のワンタイムパスワード及び第2のワンタイムパスワードとの入力をユーザに要求する認証画面を表示する端末表示部と、
    前記ユーザIDと前記第1のワンタイムパスワードと前記第2のワンタイムパスワードとを入力する端末入力部と、
    前記認証装置に前記端末入力部が入力したユーザIDと第1のワンタイムパスワードと第2のワンタイムパスワードとを送信する端末通信部とを有することを特徴とする請求項1に記載のパスワード生成装置。
  9. 認証ごとに使い捨てるワンタイムパスワードにより認証の成否判断を行う認証装置に対して送信されるワンタイムパスワードを生成するパスワード生成装置に挿入され、前記パスワード生成装置とデータの授受を行う集積回路(IC)カードにおいて、
    前記認証装置が認証の成否判断を行うために用いる認証データを生成するために用いられる乱数と前記認証データを暗号化して前記認証装置が記憶する復号鍵で復号化される暗号データを生成するために用いられる暗号鍵とを記憶する記憶部と、
    前記記憶部が記憶する乱数を用いて新たな乱数を生成し、前記記憶部に記憶させる乱数生成部と、
    前記乱数生成部が生成した乱数と前記パスワード生成装置が入力した入力データとを用いて前記認証データを生成し、前記記憶部が記憶する暗号鍵を用いて前記認証データを暗号化し、前記認証データを暗号化して生成した暗号データを用いて第1のワンタイムパスワードと第2のワンタイムパスワードとを生成するパスワード生成部とを有することを特徴とするICカード。
  10. 前記ICカードは、さらに、
    前記乱数生成部が生成した乱数と前記パスワード生成装置が入力した入力データとを用いて、前記認証装置が記憶するパスワード文字列を構成する文字を含むパスワード候補文字の外観を設定し、設定した外観を備えるパスワード候補文字を前記パスワード生成装置に表示させる外観設定部を有することを特徴とする請求項9に記載のICカード。
  11. 認証ごとに使い捨てるワンタイムパスワードを生成するパスワード生成装置が生成したワンタイムパスワードを送信する端末装置が送信したワンタイムパスワードにより認証の成否判断を行う認証装置において、
    前記端末装置からユーザを識別するユーザ識別情報(ユーザID)と前記パスワード生成装置が生成した第1のワンタイムパスワードとを受信し、前記端末装置に第2のワンタイムパスワードを要求する要求データを送信し、前記端末装置から前記パスワード生成装置が生成した第2のワンタイムパスワードを受信する認証通信部と、
    前記パスワード生成装置が生成した認証データを照合するために用いられる暗証データと前記認証データから取得される乱数と前記パスワード生成装置が記憶する暗号鍵で暗号化された暗号データを復号化するために用いられる復号鍵とを前記ユーザIDに対応付けて記憶する管理部と、
    前記認証通信部が受信した第1のワンタイムパスワードと第2のワンタイムパスワードとを用いて前記暗号データを取得し、前記管理部が記憶する復号鍵を用いて前記暗号データを復号化し、前記暗号データを復号化して取得した認証データと前記管理部が記憶する乱数とを用いて前記パスワード生成装置が入力した入力データを復元する入力値復元部と、
    前記入力値復元部が復元した入力データと前記管理部が記憶する暗証データとを照合して認証の成否判断を行う認証判定部とを有することを特徴とする認証装置。
  12. 前記管理部は、
    前記暗証データとして、前記パスワード生成装置が入力する暗証番号を記憶することを特徴とする請求項11に記載の認証装置。
  13. 前記管理部は、
    前記復号鍵として、前記パスワード生成装置が記憶する秘密鍵と対になる公開鍵を記憶することを特徴とする請求項11に記載の認証装置。
  14. 前記管理部は、
    前記復号鍵として、前記パスワード生成装置が記憶する公開鍵と対になる秘密鍵を記憶することを特徴とする請求項11に記載の認証装置。
  15. 前記管理部は、
    前記復号鍵として、前記パスワード生成装置が記憶する共通鍵と同一の共通鍵を記憶することを特徴とする請求項11に記載の認証装置。
JP2006540803A 2004-10-14 2004-10-14 パスワード生成装置及びicカード及び認証装置 Expired - Fee Related JP4523944B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/015146 WO2006040820A1 (ja) 2004-10-14 2004-10-14 パスワード生成装置及びicカード及び認証装置

Publications (2)

Publication Number Publication Date
JPWO2006040820A1 true JPWO2006040820A1 (ja) 2008-05-15
JP4523944B2 JP4523944B2 (ja) 2010-08-11

Family

ID=36148122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006540803A Expired - Fee Related JP4523944B2 (ja) 2004-10-14 2004-10-14 パスワード生成装置及びicカード及び認証装置

Country Status (2)

Country Link
JP (1) JP4523944B2 (ja)
WO (1) WO2006040820A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014149638A (ja) * 2013-01-31 2014-08-21 Mitsubishi Heavy Ind Ltd 認証システム、及び認証方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818264B2 (en) 2006-06-19 2010-10-19 Visa U.S.A. Inc. Track data encryption
JP5394986B2 (ja) * 2010-05-27 2014-01-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 サーバ装置、通信サービス提供方法、及びプログラム
JP2013015955A (ja) * 2011-07-01 2013-01-24 Safety Angle:Kk 個人認証方法及びシステム
KR101284481B1 (ko) * 2011-07-15 2013-07-16 아이리텍 잉크 생체이미지 정보를 포함하는 일회용 비밀번호를 이용한 인증방법 및 장치
GB2505678B (en) 2012-09-06 2014-09-17 Visa Europe Ltd Method and system for verifying an access request
KR102204264B1 (ko) * 2014-06-25 2021-01-18 아주대학교산학협력단 전자 기기에서의 좌표 스캔 공격을 방지하는 개인 식별 정보 입력 방법
WO2018207404A1 (ja) * 2017-05-11 2018-11-15 株式会社エルブズ 認証システム、認証サーバ、認証方法及び認証プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061012A (ja) * 1999-08-24 2001-03-06 Nippon Telegr & Teleph Corp <Ntt> 本人認証方法及び装置及び本人認証システム及び本人認証プログラムを格納した記憶媒体

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981523A (ja) * 1995-09-12 1997-03-28 Toshiba Corp 認証方法
JPH11282998A (ja) * 1998-03-31 1999-10-15 Oki Electric Ind Co Ltd 利用者カード、通信端末機、通信サーバ、通信システム、および、通信システムの利用者認証方法
JP2004282295A (ja) * 2003-03-14 2004-10-07 Sangaku Renkei Kiko Kyushu:Kk ワンタイムidの生成方法、認証方法、認証システム、サーバ、クライアントおよびプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061012A (ja) * 1999-08-24 2001-03-06 Nippon Telegr & Teleph Corp <Ntt> 本人認証方法及び装置及び本人認証システム及び本人認証プログラムを格納した記憶媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014149638A (ja) * 2013-01-31 2014-08-21 Mitsubishi Heavy Ind Ltd 認証システム、及び認証方法

Also Published As

Publication number Publication date
JP4523944B2 (ja) 2010-08-11
WO2006040820A1 (ja) 2006-04-20

Similar Documents

Publication Publication Date Title
JP3789462B2 (ja) 認証システム及び認証装置及び端末装置及び認証方法
JP4741629B2 (ja) アイコン暗号を用いた認証方法
EP0901060B1 (en) Secure data control apparatus and method
US7996683B2 (en) System, portable device and method for digital authenticating, crypting and signing by generating short-lived cryptokeys
US8875264B2 (en) System, method and program for off-line two-factor user authentication
WO2012046304A1 (ja) 二要素ユーザ認証システム、およびその方法
KR102289419B1 (ko) 바이오메트릭을 이용한 사용자의 인증 방법 및 장치
JP4959038B2 (ja) 認証システム及び認証装置及び端末装置及びicカード及びプログラム
KR20210091155A (ko) 바이오크립트 디지털 지갑
EP2150915B1 (en) Secure login protocol
KR102601509B1 (ko) 취소가능한 크리덴셜들을 제공하는 바이오메트릭 공개 키 시스템
JP4980578B2 (ja) 認証処理方法及び装置
JP4523944B2 (ja) パスワード生成装置及びicカード及び認証装置
JP4550513B2 (ja) パスワード生成装置、パスワード生成方法、パスワード生成システム、icカード、認証装置、認証方法及び認証システム
JP3694017B1 (ja) 認証システム、認証装置、端末装置及びicカード
JP4540353B2 (ja) 認証システム及び端末装置
WO2007091336A1 (ja) 文字の暗号化方法及び暗号化文字コードの描画方法並びにプログラム
KR101063523B1 (ko) 2개 이상의 문자로 구성되는 사용자 인증 패스워드를 이용한 사용자 인증 방법
JP2006302116A (ja) 認証システム、認証サーバ、端末装置、認証方法およびプログラム
JP7565868B2 (ja) データ管理システム、データ管理方法、及びデータ管理プログラム
JP2005268926A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
CN113743556A (zh) 一种二维码生成、验证方法及相关设备
JP2007041924A (ja) 認証システムおよび認証方法
JP2005044179A (ja) 指紋認証方法及び装置
JP2006146327A (ja) 個人認証方法、装置及びプログラム

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100525

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100528

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees