特許第6692947号(P6692947)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社エヌ・ティ・ティ ネオメイトの特許一覧

<>
  • 特許6692947-認証システム 図000002
  • 特許6692947-認証システム 図000003
  • 特許6692947-認証システム 図000004
  • 特許6692947-認証システム 図000005
  • 特許6692947-認証システム 図000006
  • 特許6692947-認証システム 図000007
  • 特許6692947-認証システム 図000008
  • 特許6692947-認証システム 図000009
  • 特許6692947-認証システム 図000010
  • 特許6692947-認証システム 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6692947
(24)【登録日】2020年4月17日
(45)【発行日】2020年5月13日
(54)【発明の名称】認証システム
(51)【国際特許分類】
   G06F 21/44 20130101AFI20200427BHJP
   H04L 9/32 20060101ALI20200427BHJP
   H04M 11/00 20060101ALI20200427BHJP
【FI】
   G06F21/44
   H04L9/00 675A
   H04L9/00 675D
   H04M11/00 302
【請求項の数】4
【全頁数】16
(21)【出願番号】特願2019-27602(P2019-27602)
(22)【出願日】2019年2月19日
【審査請求日】2019年2月19日
(73)【特許権者】
【識別番号】302038718
【氏名又は名称】株式会社エヌ・ティ・ティ ネオメイト
(74)【代理人】
【識別番号】100130513
【弁理士】
【氏名又は名称】鎌田 直也
(74)【代理人】
【識別番号】100074206
【弁理士】
【氏名又は名称】鎌田 文二
(74)【代理人】
【識別番号】100130177
【弁理士】
【氏名又は名称】中谷 弥一郎
(74)【代理人】
【識別番号】100161746
【弁理士】
【氏名又は名称】地代 信幸
(72)【発明者】
【氏名】川邉 隆伸
(72)【発明者】
【氏名】形 雅章
【審査官】 宮司 卓佳
(56)【参考文献】
【文献】 特開2007−156785(JP,A)
【文献】 特開2014−197839(JP,A)
【文献】 特開2009−009541(JP,A)
【文献】 特開2004−260401(JP,A)
【文献】 特開2015−166944(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/44
H04L 9/32
H04M 11/00
(57)【特許請求の範囲】
【請求項1】
認証サーバとユーザ端末とを用いた認証方法であって、
前記認証サーバと、ユーザIDを有する前記ユーザ端末とが、ユーザIDごとに同期された認証履歴を共有する認証履歴データベースを有し、
前記認証サーバは、認証要求に対してワンタイムパスを生成して送信し、
前記ユーザ端末は、前記ワンタイムパスと前記認証履歴データベースのハッシュ値と前記ユーザIDとを含む認証情報を生成して前記認証サーバへ送信し、
前記認証サーバは、前記認証情報に含まれる前記ユーザIDに対応する前記認証履歴データベースのハッシュ値と、前記認証情報に含まれるハッシュ値とが一致する場合に、前記認証情報に含まれる前記ワンタイムパスに対応した前記認証要求に対して認証し、その認証結果を送信し、
前記認証結果を含む認証履歴変更情報を前記ユーザ端末へ送信するとともに、前記認証結果を前記認証サーバ側の前記認証履歴データベースに記録し、
前記ユーザ端末は、前記認証結果を受信して、前記ユーザ端末側の前記認証履歴データベースに記録して、前記認証履歴データベース同士の同期を実現する、
ユーザ端末を用いた認証方法。
【請求項2】
さらに、認証を受けて操作を行う操作端末を用い、
前記認証要求は前記操作端末から前記認証サーバへ送信するものであり、
前記認証サーバは前記ワンタイムパスとともにセッションIDを生成して、前記ワンタイムパス及びセッションIDを前記操作端末である認証要求元情報とともに発行履歴データベースに登録し、
前記ワンタイムパスを送信する際には、前記認証サーバへの接続を可能とする接続情報とともにコード画像として、前記操作端末へ送信し、
前記操作端末は送信された前記コード画像を表示し、
前記ユーザ端末は前記操作端末に表示された前記コード画像をカメラによって撮影した上で解析して前記ワンタイムパス及び前記接続情報を取得し、
前記ユーザ端末は、前記認証情報を前記認証サーバへ送信するにあたり、接続先のアドレスを前記接続情報から取得し、
前記認証サーバは、前記認証結果を送信するにあたり、前記ワンタイムパスに対応する前記セッションIDを前記発行履歴データベースから取得し、前記セッションIDに対応する前記セッションIDに紐付けられた前記認証要求元情報に対して前記認証結果を送信する、
請求項に記載の認証方法。
【請求項3】
ユーザIDごとに、当該ユーザIDで認証に用いられるユーザ端末との間で、認証履歴が同期されたサーバ側認証履歴データベースを有し、
送信された認証要求に対してワンタイムパスを生成するワンタイムパス生成部と、
前記ワンタイムパスを含む情報を前記ユーザ端末へ送信するワンタイムパス送信部と、
前記ユーザ端末から送信された認証情報に含まれるワンタイムパスとユーザIDと、前記ユーザ端末側の端末側認証履歴データベースに含まれる認証履歴のハッシュ値とを取得する認証情報受信部と、
前記認証情報に含まれる取得した前記ユーザIDに対応する前記サーバ側認証履歴データベースに含まれる前記認証履歴のハッシュ値を生成するサーバ側ハッシュ生成部と、
前記認証情報に含まれる前記認証履歴のハッシュ値と、前記生成した前記認証履歴のハッシュ値とを比較して、同一であれば認証する認証情報解析部と、
前記認証の結果である認証結果を前記サーバ側認証履歴データベースに記録するサーバ側認証履歴更新部と、
前記認証結果を前記認証要求の送信元へ送信し、かつ前記認証結果を含む認証履歴変更情報を前記ユーザ端末へ送信して、前記認証履歴データベース同士の同期をさせる、認証結果送信部と、
を実行する認証サーバであって、
前記認証サーバは、さらに、前記認証要求を送信してきた操作端末から受信し、
前記ワンタイムパスとともにセッションIDを生成して、前記ワンタイムパス及びセッションIDを前記操作端末である認証要求元情報とともに発行履歴データベースに登録する発行履歴登録部と、
前記ワンタイムパスを、前記認証サーバへの接続を可能とする接続情報とともにコード画像とするコード画像生成部と、
を実行し、
前記ワンタイムパス送信部で送信する前記ワンタイムパスを含む情報として前記コード画像を前記操作端末へ送信し、
前記認証結果送信部で前記認証結果を送信するにあたり、前記ワンタイムパスに対応する前記セッションIDを前記発行履歴データベースから取得した上で、前記セッションIDに対応する前記セッションIDに紐付けられた前記認証要求元情報が示す前記操作端末に対して前記認証結果を送信する、
認証サーバ。
【請求項4】
コンピュータを請求項に記載の認証サーバとして動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、カードリーダを必要としない認証に関する。
【背景技術】
【0002】
システムへの認証方法には、IDやパスワードなどの「本人しか知らない情報」を利用するWYK(What You Know)認証が広く利用されている。一方、それとは別に、ICカードやUSBトークンなどの「本人しか持っていないもの」を利用するWYH(What You Have)認証がある。WYH認証はWYK認証に比べて、現物が必要とされる分、セキュリティ強度が高い。一方で、端末ごとにカードリーダなどの読取装置を必要とするため、初期投資コストやメンテナンスコストが上がる、という問題がある。
【0003】
これに対して、普及の進んだスマートフォンを用いるWYH認証が検討されている。スマートフォンはカメラ及びQRコード(登録商標)認識ソフトを有するものが大半であり、リーダーとして必要なハードウェア及びソフトウェアを備えている。また、個々人が保有する物であるため、「本人しか持っていないもの」として十分な識別力を有する。
【0004】
このような認証システムはいくつか出願されている。特許文献1には、操作端末に表示されたQRコードを、ユーザが所有している携帯電話で読み取ることで、前記操作端末と携帯電話とのペアリングを実施し、当該携帯電話から認証サーバに対してワンタイムパスを送信し、当該携帯電話の固有識別番号とワンタイムパスとの組み合わせによりユーザの特定を行う手法が提案されている。
【0005】
また、特許文献2には、ユーザが所有しているスマートフォンと一回限りのランダムキー(ワンタイムパス)とを利用した認証方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2011−238036号公報
【特許文献2】特表2017−515320号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1の方式では端末の固有識別番号という固有の値を認証に利用しているため、この値が漏洩すると容易に成りすましが可能になってしまうというセキュリティ上の問題があった。また、特許文献2の方式では、認証装置側からランダムキーをユーザのスマートフォンに送信するので、その送信先となる認証対象のユーザやユーザが所有しているスマートフォンを事前に把握していなければならず、事前にスマートフォンを登録しなければ使えなかった。
【0008】
そこでこの発明は、使用する携帯端末を事前登録するような手間を省いて利用することができ、なおかつ認証に用いる値が漏洩することで成りすましが行われるセキュリティ上の問題を解消して、より利便性及び安全性の高い認証システムを提供することを目的とする。
【課題を解決するための手段】
【0009】
この発明は、
認証サーバとユーザ端末とを用いた認証方法であって、
前記認証サーバと、ユーザIDを有する前記ユーザ端末とが、ユーザIDごとの同期された認証履歴を共有した認証履歴データベースを有し、
前記認証サーバは、認証要求に対してワンタイムパスを生成して送信し、
前記ユーザ端末は、前記ワンタイムパスと前記認証履歴データベースのハッシュ値と前記ユーザIDとを含む認証情報を生成して前記認証サーバへ送信し、
前記認証サーバは、前記認証情報に含まれる前記ユーザIDに対応する前記認証履歴データベースのハッシュ値と、前記認証情報に含まれるハッシュ値とが一致する場合に、前記認証情報に含まれる前記ワンタイムパスに対応した前記認証要求に対して認証し、その認証結果を送信し、
前記認証の結果を含む認証履歴変更情報を前記ユーザ端末へ送信するとともに、前記認証の結果を前記認証サーバ側の前記認証履歴データベースに記録し、
前記ユーザ端末は、前記認証の結果を受信して、前記ユーザ端末側の前記認証履歴データベースに記録して、前記認証履歴データベース同士の同期を実現する、
ユーザ端末を用いた認証方法により上記の課題を解決したのである。
【0010】
前記認証方法は、さらに、認証を受けて操作を行う操作端末を用い、
前記認証要求は前記操作端末から前記認証サーバへ送信するものであり、
前記認証サーバは前記ワンタイムパスとともにセッションIDを生成して、前記ワンタイムパス及びセッションIDを前記操作端末である認証要求元情報とともに発行履歴データベースに登録し、
前記ワンタイムパスを送信する際には、前記認証サーバへの接続を可能とする接続情報とともにコード画像として、前記操作端末へ送信し、
前記操作端末は送信された前記コード画像を表示し、
前記ユーザ端末は前記操作端末に表示された前記コード画像をカメラによって撮影した上で解析して前記ワンタイムパス及び前記接続情報を取得し、
前記ユーザ端末は、前記認証情報を前記認証サーバへ送信するにあたり、接続先のアドレスを前記接続情報から取得し、
前記認証サーバは、前記認証結果を送信するにあたり、前記ワンタイムパスに対応する前記セッションIDを前記発行履歴データベースから取得し、前記セッションIDに対応する前記セッションIDに紐付けられた前記認証要求元情報に対して前記認証結果を送信する、
実施形態を採用することができる。
【0011】
この発明にかかる認証方法を実行する認証サーバは、
ユーザIDごとに、当該ユーザIDで認証に用いられるユーザ端末との間で、認証履歴が同期されたサーバ側認証履歴データベースを有し、
送信された認証要求に対してワンタイムパスを生成するワンタイムパス生成部と、
前記ワンタイムパスを含む情報を前記ユーザ端末へ送信するワンタイムパス送信部と、
前記ユーザ端末から送信された認証情報に含まれるワンタイムパスとユーザIDと、前記ユーザ端末側の前記認証履歴データベースに含まれる認証履歴のハッシュ値とを取得する認証情報受信部と、
前記認証情報に含まれる取得した前記ユーザIDに対応する前記認証履歴データベースに含まれる前記認証履歴のハッシュ値を生成するサーバ側ハッシュ生成部と、
前記認証情報に含まれる前記認証履歴のハッシュ値と、前記認証サーバが生成した前記認証履歴のハッシュ値とを比較して、同一であれば認証する認証情報解析部と、
前記認証の結果である認証結果を前記認証サーバ側の認証履歴データベースに記録するサーバ側認証履歴更新部と、
前記認証結果を前記認証要求の送信元へ送信し、かつ前記認証結果を含む認証履歴変更情報を前記ユーザ端末へ送信して、前記認証履歴データベース同士の同期をさせる、認証結果送信部と、
を実行する。
【0012】
前記認証サーバは、さらに、前記認証要求を送信してきた操作端末から受信し、
前記ワンタイムパスとともにセッションIDを生成して、前記ワンタイムパス及びセッションIDを前記操作端末である認証要求元情報とともに発行履歴データベースに登録する発行履歴登録部と、
前記ワンタイムパスを、前記認証サーバへの接続を可能とする接続情報とともにコード画像とするコード画像生成部と、
を実行し、
前記ワンタイムパス送信部で送信する前記ワンタイムパスを含む情報として前記コード画像を前記操作端末へ送信し、
前記認証結果送信部で前記認証結果を送信するにあたり、前記ワンタイムパスに対応する前記セッションIDを前記発行履歴データベースから取得した上で、前記セッションIDに対応する前記セッションIDに紐付けられた前記認証要求元情報が示す前記操作端末に対して前記認証結果を送信する、
実施形態を採用することができる。
【0013】
この発明にかかる認証方法を実行するユーザ端末は、
認証サーバにおける識別符号であるユーザIDと、前記認証サーバが前記ユーザIDごとに有する認証履歴データベースとの間で同期された認証履歴とを有し、
認証サーバが生成したワンタイムパスと接続情報とを含むコード画像を読み取る画像取得部と、
前記コード情報を解析して前記ワンタイムパスと前記接続情報とを取得する画像解析部と、
前記認証履歴のハッシュ値を求める端末側ハッシュ生成部と、
前記ワンタイムパスと前記ハッシュ値と前記ユーザIDとから認証情報を生成する認証情報生成部と、
前記接続情報から特定される接続先へ、前記認証情報を送信する認証情報送信部と、
前記認証サーバから送信されてきた認証の結果を受信して、前記認証履歴データベースに記録する端末側認証履歴更新部と、
を実行する。
【発明の効果】
【0014】
この発明にかかる認証方法及び認証システムは、前記認証サーバ及び前記ユーザ端末との間で認証履歴データベースを同期し、その認証履歴データベースの認証履歴のハッシュ値同士を比較して認証に用いる。このため、ある時点での認証履歴がどちらかから流出したとしても、その認証履歴を利用して第三者が認証しようとしても、その後に同期している認証履歴が変更されていれば、認証がされないことになるため、固有の値を用いるよりも高いセキュリティを発揮する。昨今のスマートフォン用ソフトウェアはリバースエンジニアリングが容易であるため、ユーザ認証に固有の値を利用すると容易に成りすましを可能としてしまうが、この発明にかかる認証方法ではそれを防ぐことができる。
【0015】
単純に認証の度に異なる認証コードを使用するだけならば認証の度にサーバから新たな認証コードを配信しなければならないが、そのたびに盗聴されるリスクがある。これに比べてこの発明にかかる認証方法では、前記認証サーバと前記ユーザ端末とが認証しようとする段階で既に共有している情報を用いて認証するため、前記認証サーバから配信する認証コードが盗聴されるおそれがなく、認証の度に異なる値を利用したセキュリティの高い認証が可能となる。
【0016】
また、操作端末やユーザ端末から認証要求を認証サーバに送り、認証サーバがそれに対する返信として操作端末やユーザ端末へ情報を送るので、認証サーバは操作端末やユーザ端末のアドレスなどを予め把握しておく必要はない。操作端末を介する場合でもコード画像をユーザ端末のカメラで読み取ることで、ワンタイムパスや接続情報などの情報をユーザ端末が取得して、認証サーバへ必要な情報を送ることができる。
【0017】
さらに、操作端末にはカードリーダなどの専用装置を備え付ける必要がなく、ディスプレイへの表示でユーザ端末へ情報を中継した認証が可能となる。また、操作端末にIDなどを入力する必要がないため、操作端末が共有するPCなどである場合に、webブラウザなどに個人情報が残ってしまうリスクを防ぐことができる。
【0018】
ユーザ端末としてはwebブラウザを経由する方法以外に、専用のアプリケーションを用いてこの発明の認証方法を利用させるようにすることができる。これにより、他のビジネスに必要とする機能を当該アプリケーションに併せて持たせることで、サービス配信企業はユーザにさらなるサービスを提供させるプラットフォームとすることができる。
【図面の簡単な説明】
【0019】
図1】この発明にかかる認証方法を実施するシステムの第一の実施形態例の機能ブロック図
図2】第一の実施形態例におけるユーザ情報データベースの例を示すテーブル
図3】第一の実施形態例におけるサーバ側認証履歴データベースの例を示すテーブル
図4】第一の実施形態例における発行履歴データベースの例を示すテーブル
図5】第一の実施形態例における端末側認証履歴データベースの例を示すテーブル
図6】第一の実施形態例における処理フロー例の前半
図7】第一の実施形態例における処理フロー例の後半
図8】この発明にかかる認証方法を実施するシステムの第二の実施形態例の機能ブロック図
図9】第二の実施形態例における処理フロー例の前半
図10】第二の実施形態例における処理フロー例の後半
【発明を実施するための形態】
【0020】
以下、この発明について詳細に説明する。この発明は、ユーザが所有するユーザ端末を用いて認証を行うWYH認証の認証方法、それを実現する認証システム、及びそれを構成する認証サーバ、ユーザ端末、それらとしてコンピュータを実行させるためのプログラムである。
【0021】
前記認証サーバは、単独のサーバでもよいし、複数のサーバからなるものでもよい。この発明にかかる認証サーバとしての機能のみを有するものでもよいし、他のサーバとしての機能を並行して処理するものでもよい。サーバとして外部ネットワークに接続されていることが必要であり、インターネットに接続されていることが望ましい。また、サーバとして記憶装置や演算装置を備える。後述する部やデータベースは、これらの記憶装置に記録されている情報、演算装置によって実行されるプログラム、又はそれらの両方である。
【0022】
前記ユーザ端末は、個人が保有するネットワーク対応端末である。移動体通信網に対してデータ通信できる携帯電話であると好ましい。また、カメラを有するとともに、一次元又は二次元コードを読み取るソフトウェアを有していると好ましい。以上のことから、ソフトウェアをインストール可能なスマートフォンが好適に用いられる。
【0023】
この発明にかかる認証方法は、前記ユーザ端末で行う認証に用いてもよいし、前記ユーザ端末とは別に設けられている操作端末で行う認証に用いてもよい。このような操作端末としては、前記認証サーバと連携して使用可能になるオフィス用の共有型クライアントや、公共スペースに設置され料金従量制であったり時限制限つきであったりして利用可能になっている共有パソコンなどが挙げられる。また、銀行その他のATMや、ポイントサービスなどの会員制サービスのための発行機などでもよい。これらの端末は認証されることでその端末を使用可能となる。いずれにしても、前記操作端末はディスプレイを有していることが望ましい。ディスプレイを通じてユーザ端末にコード画像を認識させることができる。また、その他にユーザ端末に対して近距離無線通信などの形で情報を伝達できる装置を有していてもよい。認証サーバから受け取った情報を、ユーザ端末に受け渡すことができれば、方式は特に限定されない。ただし、その中でもディスプレイを介して情報を受け渡すと、ユーザ端末には直接接続されないためセキュリティ上好ましい。
【0024】
なお、一つの前記操作端末から接続する認証サーバは、一つに限定されない。例えば、デパートに設置されている前記操作端末で、テナントの利用者が共有で利用するものである場合、テナントを管理する会社ごとに異なる前記認証サーバを用意しているケースが考えられる。逆に、特定の銀行用の操作端末などの場合、接続先である認証サーバは一つに固定される。
【0025】
また、前記ユーザ端末として、共用ではなく個人が管理するコンピュータにおいて、webブラウザや専用アプリケーション、ゲームクライアントソフトなどを起動し、それらのソフトウェアを介して特定のサービスを受ける際の認証においてこの発明にかかる認証方法を適用してもよい。
【0026】
この発明にかかる認証方法を実行する認証システムの第一の実施形態例について図1の機能ブロック図とともに説明する。
【0027】
認証サーバ11は、ユーザ情報データベース21(以下、図中ではデータベースを「DB」と略記する。他のデータベースも同様。)を有する。ユーザ情報データベース21は、この発明にかかる認証方法を利用するユーザを登録するものである。個々のユーザを識別するために、ユーザIDを有することが必要となる。このユーザIDは認証サーバ11又は認証システム全体で、ユニークなキーである。また、ユーザIDと連携して連絡先のメールアドレスや、ユーザ端末12による認証の可否を登録してあるものでもよい。このユーザ情報データベース21の例を図2に示す。
【0028】
認証サーバ11は、サーバ側認証履歴データベース25を有する。このサーバ側認証履歴データベース25はそれぞれのユーザIDごとの過去の認証履歴を記録している。過去の全ての認証結果を認証履歴として保存している必要はないが、複数回数分に亘って保存しておりそれを利用可能としておくとセキュリティ上好ましい。保存する情報は、認証履歴として識別力のある情報である必要がある。そのサーバ側認証履歴データベース25に保存された認証履歴のテーブルの例を図3に示す。ユーザIDごとに、ログインに使用したワンタイムパスと認証時刻とを記録している。これらの情報は、ユーザIDごとに、当該ユーザIDのユーザが保持するユーザ端末12に記録された後述する端末側認証履歴データベース61との間で、同期される。
【0029】
認証サーバ11は、接続情報22を有する。この接続情報は認証サーバ11のFQDN(Fully Qualified Domain Name)などの、操作端末13やユーザ端末12がネットワーク経由で接続するためのアドレスを含む。その他に、認証サーバ11へのアクセスを許可するための情報など、その他の情報が含まれていてもよい。ただし、認証方法全体で利用する認証サーバ11が固定され、ユーザ端末12の送信先が固定されている場合には、この接続情報22を後述するコード画像に含める必要がなくなる。
【0030】
認証サーバ11は、発行履歴データベース23を有する。発行履歴データベース23は、操作端末13やユーザ端末12から認証要求があった際に、生成するワンタイムパスやセッションIDを一時的に記録し、認証作業中の端末であることを認証サーバ11が識別するための情報を保有する。この発行履歴データベース23の例を図4に示す。セッションID及びワンタイムパスは認証サーバ11又は認証システム全体で、ユニークなキーである。有効期限は、当該認証要求に応じた一連の認証処理を受け付ける期限である。認証サーバ11とユーザ端末12との間でデータが往復するため、通常の認証の有効期限より長い時間を確保させてもよい。
【0031】
操作端末13は、上記の通り、ハードウェアとして画像を表示するディスプレイ51を有する。このディスプレイ51は操作端末13を利用する際に用いられるモニタなどの画面そのままでもよいし、何らかのサブディスプレイであってもよい。また、認証サーバ11とネットワーク経由で接続されており、認証サーバ11に対して情報を送信し、また受信することができる。さらに、認証サーバ11から認証のための情報を受ける以外に、操作端末13を使用して受けるサービスを実行できるものである必要がある。操作端末13を用いてなんらかの作業を行うために認証を行うからである。このため、図示しないが認証サーバ11以外のその他のサーバと接続されていてよい。また、認証サーバ11が前記のサービスを提供するその他の機能を有していても良い。
【0032】
ユーザ端末12は、ユーザID62を有する。これはユーザ端末12を保有するユーザが、利用しようとする認証サーバ11に対して個人を識別するための符号となるもので、上記のユーザ情報データベース21に記録されているものに対応する。ユーザ端末12の記憶装置内に記録されており、適宜必要に応じて読み出し可能であるとよい。
【0033】
ユーザ端末12は、端末側認証履歴データベース61を有する。この端末側認証履歴データベース61は、ユーザIDごとにサーバ側認証履歴データベース25に記録された認証履歴と同期された情報が記録されている。後述するハッシュ値を算出するものであるため、サーバ側認証履歴データベース25に記録されている情報のうち、ユーザ端末12の利用者の該当するユーザIDを除く、当該ユーザIDに関する情報と一致するように、後述するタイミングで同期が図られている。この端末側認証履歴データベース61が保有するテーブルの例を図5に示す。
【0034】
ユーザ端末12は、画像取得部63を有する。具体的にはカメラであってよい。操作端末13のディスプレイ51に表示されたコード画像を読み取るための装置である。読み取ったコード画像は、一次元のバーコードや二次元コードとして、コード化された情報を解析して取り出し、ユーザ端末12で利用する。
【0035】
以上のハードウェアからなる認証システムにより認証方法を実行する際のフロー例を図6及び図7に示す。このフロー例を用いてそれぞれの処理部について説明する。
【0036】
まず、ユーザは操作端末13を操作して、操作端末13でサービスを受けるために、認証の処理を開始する(S101)。ログインのための画面は最初から開いていてもよいし、操作に応じて開かれるものでもよい(S102)。操作端末13が複数のサービスを利用可能である場合には、ここで利用しようとするサービスを選択するとよい。複数の認証サーバ11に繋がる設定である場合、そのサービスに応じて、接続先である認証サーバ11が選択される。もちろん、一つの認証サーバ11に対して固定的に接続されるものでもよい。いずれにしても操作端末13の認証要求送信部52から、認証サーバ11へ認証要求が送信される(S103)。
【0037】
認証サーバ11では、操作端末13から送信された認証要求を認証要求受信部31にて受信する(S111)。認証要求を受信した認証サーバ11は、セッションID生成部32とワンタイムパス生成部33とを実行する。セッションID生成部32では、当該認証要求と紐づくセッションIDを生成させる(S112)。これは認証の完了又は拒否までの一連のセッションを識別するための符号である。ワンタイムパス生成部33では、ワンタイムパスを生成させる(S113)。ワンタイムパスは、操作端末13,ユーザ端末12に送信し、後述する認証情報受信部41で受信する情報との紐付けに用いる識別のための符号である。
【0038】
認証サーバ11は、生成したワンタイムパスとセッションIDとを発行履歴データベース23に登録する発行履歴登録部34を実行する(S114)。この登録したレコードは後のS156で認証を求めた操作端末13を突き止める際に用いられる。このため、セッションIDとともに、認証要求を送信してきた認証要求元情報として操作端末13のアドレスも登録しておくことが望ましい。このアドレスは、セッションを示すIPアドレスやポート番号であってよい。
【0039】
また、認証サーバ11は、発行履歴登録部34と前後して又は並行して、前記接続情報と前記ワンタイムパスとを含めたコード画像を生成するコード画像生成部35を実行する(S115)。生成したコード画像は、規格に沿って読み取ることで、前記接続情報と前記ワンタイムパスとをデコードできる。また、前記接続情報及び前記ワンタイムパス以外の情報を含めてコード画像を生成させてもよい。なお、ユーザ端末12の接続先となる認証サーバ11が固定されている場合には、ここで前記接続情報をコード画像に含めることなく、ユーザ端末12が予め把握してある接続情報を利用する実施形態としてよい。
【0040】
認証サーバ11は、操作端末13へワンタイムパスを送信するワンタイムパス送信部として、前記のコード画像の画像データを操作端末13へ送信するコード画像送信部36を実行する(S116)。具体的には、認証サーバ11が有するwebサーバ機能などによって、前記認証要求に対するレスポンスとして前記画像データ及び前記画像データを表示するドキュメント等その他の情報を送信する形態が挙げられる。ただし、操作端末13の設定や用途により適宜選択可能であり、画像データを送信する際のプロトコルや随伴するデータは特に限定されない。
【0041】
操作端末13はコード画像受信部53で前記コード画像を受信する(S121)。受信したコード画像は、画像の形式に従ってディスプレイ51で表示させる(S122)。これにより、認証を受けようとするユーザは必要な情報を受信したことが確認できる。
【0042】
認証を受けようとするユーザが保有するユーザ端末12は、カメラである画像取得部63で前記コード画像が表示されたディスプレイ51を撮影する(S131)。取得した前記コード画像を解析して前記ワンタイムパスと前記接続情報とを取得する画像解析部64を実行する(S132)。また、それら以外の情報が前記コード画像に含まれている場合にはその情報も同時に取得する。
【0043】
ユーザ端末12は、前記の取得された情報のうち、前記ワンタイムパスから認証情報を作成するが、その前に、端末側認証履歴データベース61から認証履歴のハッシュ値を生成する端末側ハッシュ生成部65を実行する(S134)。このハッシュ値は、後述するサーバ側ハッシュ生成部44で算出される当該ユーザのユーザIDについての認証履歴のハッシュ値と一致することによって認証がされる。すなわち、ユーザIDとならぶ認証のための識別情報であるが、利用の度に更新される認証履歴のハッシュ値を用いることで、やり取りされ照合される値が変化し続けることになるため、この発明にかかる認証方法は高いセキュリティを有する。なお、認証履歴の全部のハッシュ値であってもよいし、認証履歴の一部のハッシュ値であってもよいが、一部の場合は、認証サーバ11側とユーザ端末12側とで、どこまでの履歴を使用するかの設定を統一しておく必要がある。
【0044】
ユーザ端末12は、前記の認証履歴のハッシュ値と、画像解析部64で取得した前記ワンタイムパスと、ユーザ端末12が保持しているユーザID62とから、認証情報を生成する認証情報生成部66を実行する(S135)。ここで認証情報は、それらのハッシュ値、ワンタイムパス、ユーザIDを取り出すことが出来る形式で保存されている。それらのデータをそのままで送ることもできるが、ユーザIDが含まれており、何らかの形でエンコードして送ることが望ましい。
【0045】
また、ユーザ端末12は、前記の取得された情報のうち、前記接続情報から、接続先である認証サーバ11のアドレスを取得する接続先判定部67を実行する(S133)。また、アドレス以外に必要なポート番号やその他の情報が前記接続情報に含まれている場合には、それらの情報を反映させて接続先や接続のためのコマンド、設定値等を決定する。
【0046】
ユーザ端末12は、接続先判定部67で取得した前記接続先に対して、認証情報生成部66で生成した前記認証情報を送信する認証情報送信部68を実行する(S136)。ユーザ端末12として携帯電話(スマートフォンを含む)である場合、携帯電話回線を通じた送信でもよいし、無線LAN機能による送信でもよく、基本的にはインターネット網を介して認証サーバ11に接続するのであれば通信経路は特に限定されない。一方で、インターネットを介することなく、閉域網のみを経由して閉域網に設けられた認証サーバ11に接続する実施形態としてもよい。
【0047】
認証サーバ11は、前記認証情報を受信して(S141)、前記認証情報に含まれた前記認証履歴のハッシュ値、前記ワンタイムパス、前記ユーザIDを取得する認証情報受信部41を実行する(S142)。基本的にはネットワークインターフェースを通じてインターネット等を介して受信する。サーバとして、送信されてきた情報を受け付け、自動的に解読する。この段階では前記認証情報は個別に送られてきた情報であり、まだ前記セッションIDとは結びついていない。
【0048】
認証サーバ11は、受信した前記認証情報に含まれた情報を解析して認証を行う、認証情報解析部42を実行する。これは複数の段階の処理からなる。まず、前記認証情報に含まれたユーザIDが、有効なユーザIDとしてユーザ情報データベース21に登録されているか否かを判定する(S151)。登録されていなければ(S151→No)不正なユーザによる認証であると判定して認証を拒否する(S155)。なお、前記認証情報として受信した情報の中にそもそもユーザIDに該当する情報が含まれていない場合も、同様に認証を拒否する。
【0049】
有効なユーザIDとしてユーザ情報データベース21に登録されていれば(S151→Yes)、認証サーバ11は、前記認証情報に含まれた前記ワンタイムパスが、発行履歴データベース23に存在しているか否かを判定する(S152)。前記ワンタイムパスが存在していなければ(S152→No)、認証を拒否する。認証サーバ11はワンタイムパスによってどの操作端末13から要求された認証要求であるかを判定するため、一致するワンタイムパスが無いとそもそも認証不可能となる。前記ユーザIDと前記ワンタイムパスが存在していることがわかれば(S152→Yes)、存在するユーザによる先にされた認証要求に続く処理であると判定できることになる。そこで、認証サーバ11は、存在することが確認された当該ユーザIDについて、サーバ側認証履歴データベース25に記録された認証履歴のハッシュ値を生成するサーバ側ハッシュ生成部44を実行する(S153)。このとき、当該ユーザID以外の認証履歴についてはハッシュ値の計算に含めない。認証を要求するユーザIDのみの認証履歴についてハッシュ値を求める。認証サーバ11とユーザ端末12とで認証履歴が同期されていれば、同一である認証履歴の値について、そのハッシュ値同士も同一になることを利用し、ハッシュ値同士を比較して一致するか否かを判定する(S154)。このハッシュ値同士が一致しなければ(S154→No)、認証失敗となる(S155)。
【0050】
認証サーバ11の認証情報解析部42は、前記ユーザIDが存在し(S151→Yes)、前記ワンタイムパスが発行履歴データベース23に存在し(S152→Yes)、認証サーバ11側の認証履歴のハッシュ値とユーザ端末12側の認証履歴のハッシュ値とが一致すれば(S154→Yes)、認証は成功したと処理する。その場合、前記ワンタイムパスに対応するセッションIDを発行履歴データベース23から取得し(S156)、当該セッションIDに紐付けられた認証要求元情報に対応する操作端末13に対して、認証結果を送信する認証結果送信部45を実行する(S157)。操作端末13は、認証成功である認証結果を受信したら、操作端末13によって提供させるサービス等の認証がされたと判断して、サービスの提供を開始させる認証結果受信部54を実行する(S161)。
【0051】
また、認証サーバ11は、認証結果を送信する認証結果送信部45として、ユーザ端末12にも認証結果を送信する(S158)。図1の実施形態ではS161と同じ認証結果送信部45により実行されているが、別個に送信するものであってもよい。ここで、認証結果としては、認証に成功したという事実とともに、履歴として必要な情報を送信する。この例では、双方の認証履歴データベースで同期させるべき情報として、認証時刻を認証結果とともに送信している。
【0052】
ユーザ端末12は、この認証結果及び認証時刻を受信する認証結果受信部71を実行する(S171)。この受信した認証時刻とともに、認証に用いた前記ワンタイムパスを端末側認証履歴データベース61に登録する端末側認証履歴更新部72を実行する(S172)。この作業と並行して、認証サーバ11では、当該ユーザIDについて、認証した際に用いたワンタイムパスと認証時刻とを、サーバ側認証履歴データベース25に登録するサーバ側認証履歴更新部43を実行する。これらを並行して行うことによって、認証履歴データベース同士の同期が実現され、次に認証を行う際にはそれぞれのハッシュ生成部(44,65)で生成するハッシュ値が同一となり、認証が引き続いて可能となる。
【0053】
なお、ユーザがユーザ端末12を用いて最初に認証する際には、認証サーバ11側もユーザ端末12側も、当該ユーザのユーザIDについての認証履歴データベースはどちらも認証履歴の無い状態である。従って、ユーザ端末12からハッシュ値を含まない情報が送られてきた場合、認証サーバ11は初期設定を行うようにするとよい。初期設定としては初期設定用のその他の認証情報を課している既存の手法を利用できる。ただし、初期設定が完了した段階で認証履歴データベース(25,61)同士が新たに設定したユーザのユーザIDについては同期されていることが必要となる。
【0054】
この発明にかかる認証方法は、同期される端末側認証履歴データベース61を有するユーザ端末12とは別の操作端末13の認証に用いるだけでなく、ユーザ端末12自体で認証が必要なサービスを受けようとする際にも用いることができる。その場合の実施形態例の機能ブロック図を図8に、フローチャートを図9及び図10に示す。この第二の実施形態例は、第一の実施形態例に比べて、次のように変更される。操作端末13はなく、ユーザ端末12にて認証要求送信部81が実行される(S101a〜S103a)。ユーザ端末12から直接に認証要求が来るため、この段階でユーザ端末12は認証サーバ11の接続情報を保有しており、認証サーバ11では、接続情報22が不要となっている。また、コード画像を介して情報を伝達するのではなく、直接のレスポンスとしてワンタイムパスをユーザ端末12に返答すればよいため、コード画像生成部35及びコード画像送信部36(S115,S116)の代わりに、ワンタイムパスをユーザ端末12へ送信するワンタイムパス送信部39が実行される(S116a)。ユーザ端末12はこのワンタイムパスを受信するワンタイムパス受信部82を実行し(S132a)、画像取得部63及び画像解析部64は実行しない。また、接続情報をコード画像から取り出すことなく接続先である認証サーバ11のアドレスは把握されているため、接続先判定部67(S133)は不要となる。認証の際にそれぞれの認証履歴データベースのハッシュ値を比較する点は変わらない(S134a〜S136a)。ただし、認証結果送信部45が認証結果を送信する先はユーザ端末12のみとなり、応答先となる認証要求元は発行履歴データベース23から取得することなく判明しているため、S156は不要となり、ユーザ端末12へそのまま認証結果を送信して認証を踏まえたサービスを提供可能にする(S157a、S170)。ただし、セッションの管理上、発行履歴データベース23は管理されていると好ましい。また、認証結果を受けたサービスを開始することと並行して、認証履歴データベースの同期は第一の実施形態例と同様に行う。
【0055】
なお、この発明において認証が成功した場合、引き続いて認証サーバ11と同一又は連携しているサーバからサービスを受ける場合はそのままサービスを受けることができるが、認証サーバ11とは別個のサーバからサービスを受けるために認証を受ける場合には、認証サーバ11は認証結果をその別個のサーバに対しても通知するとよい。
【符号の説明】
【0056】
11 認証サーバ
12 ユーザ端末
13 操作端末
21 ユーザ情報データベース
22 接続情報
23 発行履歴データベース
25 サーバ側認証履歴データベース
31 認証要求受信部
32 セッションID生成部
33 ワンタイムパス生成部
34 発行履歴登録部
35 コード画像生成部
36 コード画像送信部
39 ワンタイムパス送信部
41 認証情報受信部
42 認証情報解析部
43 サーバ側認証履歴更新部
44 サーバ側ハッシュ生成部
45 認証結果送信部
51 ディスプレイ
52 認証要求送信部
53 コード画像受信部
54 認証結果受信部
61 端末側認証履歴データベース
62 ユーザID
63 画像取得部
64 画像解析部
65 端末側ハッシュ生成部
66 認証情報生成部
67 接続先判定部
68 認証情報送信部
71 認証結果受信部
72 端末側認証履歴更新部
81 認証要求送信部
82 ワンタイムパス受信部
【要約】
【課題】使用する携帯端末を事前登録するような手間を省いて利用することができ、なおかつ認証に用いる値が漏洩することで成りすましが行われるセキュリティ上の問題を解消して、より利便性及び安全性の高い認証システムを提供する。
【解決手段】認証サーバ11とユーザ端末12とが、同期された認証履歴データベース25,61を有し、それぞれの認証履歴データベースのハッシュ値を比較して同一の場合に認証する。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10