(57)【要約】【課題】ユーザがＰＣ１２からユーザ名及びＰＳＷを入力して、インターネット１１上のサーバ１３より認証を受けるようになっている認証システムにおいて、ＰＳＷの外部流出を防止する。【解決手段】登録手続の際、ユーザのＰＳＷはハッシュ関数によりハッシュ値に置き換えられ（Ｓ２１）、該ハッシュ値がユーザ名に対応付けられて、記憶装置内のデータベース２８に保存される（Ｓ２２）。ユーザ認証手続では、ユーザがインターネット１１から送信して来たユーザ名及びＰＳＷに対し、ユーザ名に対応付けて保存してあるハッシュ値をデータベース２８から読み出すとともに、ＰＳＷからハッシュ関数によりハッシュ値を算出する。算出したハッシュ値を、データベース２８から読み出したハッシュ値と照合し、一致していれば、認証する。【選択図】図３
2007274253.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの認証子登録手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証用登録値を算出する第１の算出手段、
ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体に保存する保存手段、
ユーザの認証手続において、ユーザからの認証子を前記一方向関数の引数にして、該一方向関数の値としての認証要求値を算出する第２の算出手段、及び
ユーザに対応付けられている認証用登録値を前記記録媒体から読み出して該認証用登録値と認証要求値とを照合し照合に基づきユーザ認証の可否を決める照合手段、
を備えていることを特徴とする認証装置。
【請求項２】
前記認証は、サーバが、インターネットを介して端末のユーザに対して行なう認証、又は情報処理装置が、該情報処理装置の使用開始に先立ってユーザに対して行なう認証であることを特徴とする請求項１記載の認証装置。
【請求項３】
ユーザの認証子登録手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証用登録値を算出するステップ、
ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体に保存するステップ、
ユーザの認証手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証要求値を算出するステップ、及び
ユーザに対応付けられている認証用登録値を前記記録媒体から読み出して該認証用登録値と認証要求値とを照合し照合に基づきユーザ認証の可否を決めるステップ、
を備えていることを特徴とする認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パスワード等の認証子を使って、ユーザ認証を行なう認証装置及び方法に関する。
【背景技術】
【０００２】
特許文献１は、ユーザが、車載装置に音楽データをダウンロードする場合に、代金支払に係る課金を受けるために、携帯端末（例：携帯電話機）を使って、インターネット上のコンテンツプロバイダへアクセスして、登録会員の認証を受けることを開示する（特許文献１の段落００７４）。
【０００３】
典型的なユーザ認証では、ユーザはユーザ名の入力と共にＰＳＷ（パスワード）を入力することになっている。従来の認証装置では、ユーザ登録時に、ユーザのＰＳＷがそのままサーバのデータベースに保存され、ユーザ認証時では、認証要求のためにユーザが入力したＰＳＷを、データベースから読み出したＰＳＷと照合し、もし一致していれば、認証し、不一致であれば、認証を拒否することにしている。
【特許文献１】特開２００１−２３９８９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ユーザ認証の際のユーザの端末機−ホスト間の通信は、公開鍵や、共通鍵の使用によりセキュア性が保持される。しかしながら、従来の認証装置では、ユーザのＰＳＷがそのまま記録媒体に保存されているので、ハッカーが、データベースへ不正侵入して、データを盗んだり、内部関係者が、無断で、外部へ持ち出したり、ウィニーのようなソフトが外部へ情報流出させたりすると、他人が、漏出したＰＳＷを使って簡単になりすましを行なえる危険がある。
【０００５】
本発明の目的は、認証子の漏出に対するセキュア性を保持できる認証装置及び方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明の認証装置は次のものを備えている。
ユーザの認証子登録手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証用登録値を算出する第１の算出手段、
ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体に保存する保存手段、
ユーザの認証手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証要求値を算出する第２の算出手段、及び
ユーザに対応付けられている認証用登録値を記録媒体から読み出して該認証用登録値と認証要求値とを照合し照合に基づきユーザ認証の可否を決める照合手段。
【０００７】
本発明の認証方法は次のステップを備えている。
ユーザの認証子登録手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証用登録値を算出するステップ、
ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体に保存するステップ、
ユーザの認証手続において、ユーザからの認証子を一方向関数の引数にして、該一方向関数の値としての認証要求値を算出するステップ、及び
ユーザに対応付けられている認証用登録値を記録媒体から読み出して該認証用登録値と認証要求値とを照合し照合に基づきユーザ認証の可否を決めるステップ。
【発明の効果】
【０００８】
本発明によれば、認証処理側の記録媒体には、認証子そのものではなく、認証子を引数とする一方向関数の値が認証用登録値として保存されるとともに、認証時では、ユーザからの認証子を引数とする一方向関数の値を、保存中の認証用登録値と照合するようになっている。したがって、支障なく、認証が行なうことができるとともに、保存情報が漏れても、該情報を使用して、認証が受けられることを防止できる。
【発明を実施するための最良の形態】
【０００９】
図１はユーザ認証が適用されるインターネットシステムを示している。インターネット１１にはＰＣ（パーソナルコンピュータ）１２及びサーバ１３が接続され、インターネット１１を介してデータを相互に送受自在になっている。
【００１０】
図２はＰＣ１２のユーザがサーバ１３に対して認証登録を受ける際の手順の説明図である。認証登録手続の際、ＰＣ１２−サーバ１３間の通信は、共通鍵の使用等によりにセキュア性が保持されている。Ｓ２０〜Ｓ２２はサーバ１３において実行される。
【００１１】
登録を求めるユーザは、ＰＣ１２において入力したユーザ名（例：”Ｔｈｏｍａｓ”）及びＰＳＷ（例：”ＡＢＣＤＥ”）を入力し、入力データはインターネット１１を介してサーバ１３へ送られ、サーバ１３は、Ｓ２０においてこれを受信する。Ｓ２１では、一方向関数として例えばハッシュ関数を使用し、ＰＣ１２からのＰＳＷを該ハッシュ関数の引数に使って、ハッシュ値（例：”ｂＲｉＱＫ”）を算出する。
【００１２】
Ｓ２２では、ハッシュ値をユーザ名に対応付けてハードディスク装置内のデータベース２８に登録する。ハッシュ値からＰＳＷへの変換は困難である。したがって、ハッカーがデータベース２８に不正侵入して、データベース２８のハッシュ値を盗み出したり、内部関係者がデータベース２８のハッシュ値を外部へ持ち出したりしても、ハッシュ値に対応するＰＳＷは露見せず、ユーザのＰＳＷが不正使用されることはない。
【００１３】
図３はユーザがサーバ１３に認証を受ける際の手順の説明図である。認証手続の際、ＰＣ１２−サーバ１３間の通信は、認証登録手続時と同様に、共通鍵の使用等によりセキュア性が保持されている。Ｓ３０〜Ｓ３３はサーバ１３において実行される。
【００１４】
認証を求めるユーザは、ＰＣ１２において自分のユーザ名（例：”Ｔｈｏｍａｓ”）及びＰＳＷ（例：”ＡＢＣＤＥ”）を入力し、入力データはインターネット１１を介してサーバ１３へ送られ、サーバ１３はＳ３０においてこれを受信する。
【００１５】
Ｓ３１では、ＰＣ１２からのＰＳＷをハッシュ関数の引数に使って、ハッシュ値を算出する。Ｓ３２では、ユーザ名に対応するハッシュ値をデータベース２８から読み出すとともに、Ｓ３１で算出したハッシュ値を、データベース２８から読み出したハッシュ値と照合する。Ｓ３３では、Ｓ３２の照合の結果、両者が一致すると判断すれば、認証し、不一致であれば、認証しない。
【００１６】
図４は認証装置５０のブロック図である。図２及び図３で説明した各手順は装置の処理の一例である。認証装置５０は、第１の算出手段５１、保存手段５２、第２の算出手段５３、及び照合手段５４を備えている。
【００１７】
第１の算出手段５１は、ユーザの認証子登録手続において、ユーザからの認証子を一方向関数５８の引数にして、該一方向関数５８の値としての認証用登録値を算出する。保存手段５２は、各ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体５９に保存する。
【００１８】
第２の算出手段５３は、ユーザの認証手続において、ユーザからの認証子を一方向関数５８の引数にして、該一方向関数５８の値としての認証要求値を算出する。照合手段５４は、ユーザに対応付けられている認証用登録値を記録媒体５９から読み出して、該認証用登録値と認証要求値とを照合し照合に基づきユーザ認証の可否を決める。具体的には、両者が一致している場合は、認証し、不一致である場合は認証しない。
【００１９】
認証装置５０における認証は、典型的には、サーバが、インターネットを介して端末のユーザに対して行なう認証であるが、その他の認証、例えば、情報処理装置が、該情報処理装置の使用開始に先立ってユーザに対して行なう認証であってもよい。情報処理装置とは、例えば、ＰＣ（パーソナルコンピュータ）、携帯電話機、又はＰＤＡ（Personal Digital Assistants）である。記録媒体５９は、例えば、ハードディスク装置である。
【００２０】
一方向関数５８とは、例えばハッシュ関数である。該ハッシュ関数は、例えばＳｅｃｕｒｅ  Ｈａｓｈ  Ａｌｇｏｒｉｔｈｍ５１２（ＳＨＡ−５１２）やＭｅｓｓａｇｅ  Ｄｉｇｅｓｔ  Ａｌｇｏｒｉｔｈｍ５（ＭＤ５）である。なお、一方向関数５８は、複数の異なる一方向関数を組み合わせたもの、少なくとも１個の一方向関数と非一方向関数とを組み合わせたものも含むものとする。
【００２１】
認証子は、典型的にはＰＳＷであるが、指紋や虹彩等の生体認証の認証子であってもよい。個人情報保護の観点から、それら指紋のデータも、認証やその他に悪用されることが考えられ、それを防止する必要があるからである。
【００２２】
一方向関数値へ変換して記録媒体に保存する対象としての認証子は、ＰＳＷだけとせず、ＰＳＷ及びユーザ名の両方であってもよい。認証業者によっては、ユーザ名そのものを把握しなくてもいい場合があり、すなわち、ユーザ名に対応する一方向関数値で足りる場合があり、また、ユーザ名によっては第三者がユーザ名から容易にユーザを特定できる場合があり、業者は、個人情報流出防止等の観点から、ユーザ名の外部流出も回避したいことがあるからである。
【００２３】
こうして、認証装置５０では、記録媒体５９に保存したデータが外部へ漏出するようなことがあっても、漏出データに基づき認証子が露見することが免れるので、保存情報流出に因る認証子の悪用を防止できる。
【００２４】
図５は認証方法７０のフローチャートである。該認証方法７０は、図２及び図３で説明した処理を抽象化したものである。Ｓ７１，Ｓ７２は認証子登録手続の際のステップに関する。Ｓ７３，Ｓ７４は、認証手続時のステップに関する。
【００２５】
Ｓ７１では、ユーザの認証子登録手続において、ユーザからの認証子を一方向関数５８の引数にして、該一方向関数５８の値としての認証用登録値を算出する。Ｓ７２では、ユーザの認証子は除外しつつ、該認証子に対応する認証用登録値を記録媒体に保存する。
【００２６】
Ｓ７３では、ユーザの認証手続において、ユーザからの認証子を一方向関数５８の引数にして、該一方向関数５８の値としての認証要求値を算出する。Ｓ７４では、ユーザに対応付けられている認証用登録値を記録媒体から読み出して、該認証用登録値と認証要求値とを照合し、照合に基づきユーザ認証の可否を決める。
【００２７】
前述の認証装置５０についての具体的態様は認証方法７０の具体的態様としても適用可能である。例えば、認証方法７０は、所定のサーバがインターネットを介して端末のユーザを認証するものに適用されてもよいし、ユーザ使用の情報処理装置において、該情報処理装置の使用開始に先立ってユーザ認証を行なうものであってもよい。一方向関数５８とは、例えばハッシュ関数である。認証子は、ＰＳＷや生体認証の認証子だけでなく、それらと共にユーザ名も対象としてよい。
【００２８】
本発明を各種具体的形態について説明したが、本発明は、これに限定されるものではなく、発明の要旨を逸脱しない範囲で、各種具体的形態における各構成要素を変形（削除も含む。）して具体化できる。また、各種具体的形態間の構成要素の置換したり、各種具体的形態の複数の構成要素を組み合わせたりすることにより、種々の発明を形成することもできる。
【図面の簡単な説明】
【００２９】
【図１】ユーザ認証が適用されるインターネットシステムを示す図である。
【図２】ＰＣのユーザがサーバに対して認証登録を受ける際の手順の説明図である。
【図３】ユーザがサーバに認証を受ける際の手順の説明図である。
【図４】認証装置のブロック図である。
【図５】認証方法のフローチャートである。
【符号の説明】
【００３０】
５０：認証装置、５１：第１の算出手段、５２：保存手段、５３：第２の算出手段、５４：照合手段、５８：一方向関数、５９：記録媒体、７０：認証方法。
【図１】
2007274253.tif 000003
【図２】
2007274253.tif 000004
【図３】
2007274253.tif 000005
【図４】
2007274253.tif 000006
【図５】
2007274253.tif 000007