以下に図面を参照して、開示の認証関連情報の送信制御プログラム、認証関連情報の送信制御装置、および認証関連情報の送信制御方法の実施の形態を詳細に説明する。
図1は、本実施の形態にかかる送信制御装置101の動作例を示す説明図である。送信制御装置101は、認証に関連する情報の送信制御を行うコンピュータである。送信制御装置101は、例えば、サーバである。認証に関連する情報を、以下、「認証関連情報」と称する。ここで、認証は、例えば、あるコンピュータを利用する人に正当な権利があることを確認することである。そして、認証関連情報は、確認することに関連する情報である。認証関連情報は、例えば、ユーザを識別するID(IDentifier)や、秘密鍵として使用される情報であるパスワードが挙げられる。パスワードは、例えば、固定値の文字列や、一度限り有効なワンタイムパスワード(OTP:One Time Password)が挙げられる。
また、送信制御装置101は、認証関連情報を有してもよい。認証関連情報を有する際には、送信制御装置101は、送信すると決定した場合に、自身が有する認証関連情報を、認証の対象となる者が保持する端末に送信する。または、送信制御装置101は、認証関連情報を有さなくてもよい。認証関連情報を有さない際には、送信制御装置101は、送信すると決定した場合に、認証関連情報を有する装置に、端末に認証関連情報を送信する指示を送信する。端末は、携帯電話、携帯端末、スマートフォン、タブレット端末等のコンピュータである。以下、端末を、スマートデバイスとする。
近年、スマートデバイスの普及により、スマートデバイスのアプリケーションソフトウェアを用いて認証を行う機会が増えている。認証を行う方法としては、例えば、パスワードやPIN(Personal Identification Number)コードを入力させる方法が考えられる。しかしながら、この方法では、パスワードやPINコードのスキミングにより、なりすましが発生する可能性がある。また、例えば、スマートデバイス固有の情報を用いて認証する方法や、メール配信により個別公開された特定URL(Uniform Resource Locator)経由で認証する方法が考えられる。しかしながら、これらの方法は、スマートデバイスの紛失や盗難により、なりすましが発生する可能性がある。また、例えば、指静脈認証等といった生体認証を行い認証する方法が考えられる。しかしながら、この方法は、秘密鍵となる生体情報が変更不可能である観点から、コンピュータセキュリティ、すなわち、コンピュータを災害、誤用および不正アクセスなどから守ることに対して十分ではなく、また、プライバシーの観点でも導入が難しい。
また、認証関連情報を用いる技術として、FeliCa(登録商標)等の近距離無線通信を用いて、近距離無線通信が可能なスマートデバイスが、ユーザを識別するIDと、有効期間が限られたトークンを、ゲートを制御する装置に送信するものがある。また、OTPと、OTPを生成するための数列を示す世代鍵を用いて、認証を行う技術がある。
しかしながら、これらの技術では、認証関連情報のスマートデバイスへの送信可否を決定することが難しい。例えば、あるスマートデバイスの正当の所有者でない第三者によって、あるスマートデバイスが保持されるという状況では、ある端末に認証関連情報が送信されてしまうと、第三者に対する認証が成功することになる。従って、あるスマートデバイスが第三者によって保持されるという状況では、あるスマートデバイスへ認証関連情報が送信されないようにすることが妥当である。しかしながら、あるスマートデバイスが第三者によって保持されているか否かを判断することは困難であるため、あるスマートデバイスが第三者によって保持されていても、あるスマートデバイスに認証関連情報が送信されてしまうことを防ぐことができない。
例えば、スマートデバイスが無線LAN(Local Area Network)に接続した際、接続した無線LANにおけるネットワークの識別子の一つであるESSID(Extended Service Set IDentifier)を用いて、認証関連情報の送信可否を決定することが考えられる。しかしながら、ESSIDは、複数のアクセスポイントで共用される情報であるため、ESIDを用いてスマートデバイスが不正に第三者に保持されているか否かを判断する方法では、得られる判断結果の精度が不十分である。
そこで、送信制御装置101は、スマートデバイスの正当な所有者の自宅内のアクセスポイントの識別情報、例えばMAC(Media Access Control)アドレスを予め登録しておく。そして、送信制御装置101は、前述したスマートデバイスからの認証関連情報の取得要求に付随するMACアドレスと登録済のMACアドレスから、前述した取得要求に応じるか否かを決める。
図1を用いて、送信制御装置101の動作例について説明する。図1の例では、スマートデバイスsdに対応付けられたユーザの認証を行うものとする。そして、図1の上部では、スマートデバイスsdは、正当な所有者であるユーザuAに保持されているため、ユーザuAの認証を行うことになる。一方、図1の下部では、スマートデバイスsdは、不正な第三者であるユーザuBに保持されているため、ユーザuBの認証を行うことになる。
送信制御装置101は、複数のアクセスポイントとして、アクセスポイントapAと、アクセスポイントapBとに接続する。ここで、アクセスポイントは、無線LANを構築する機器の一種で、ネットワーク内の機器間の通信を中継したり、有線ネットワークや有線接続機器へ接続する装置である。無線LANの規格として、例えば、Wi−Fi(Wireless Fidelity)がある。
アクセスポイントapAは、スマートデバイスsdが正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントである。スマートデバイスsdが正当な所有者に保持されていることを識別可能な場所は、例えば、正当な所有者だけが前述した識別可能な場所に入ることができ、他の者が前述した識別可能な場所に入ることは考え難い場所である。図1の例では、アクセスポイントapAは、スマートデバイスsdが正当な所有者に保持されていることを識別可能な場所として、不正な第三者が立ち入ることが考え難いユーザuAの自宅hA内部に設置されている。また、他の例として、スマートデバイスsdが正当な所有者に保持されていることを識別可能な場所は、スマートデバイスsdの正当な所有者だけが借りている事務所でもよい。
一方、アクセスポイントapBは、公共のアクセスポイントである。アクセスポイントapBが設置された場所は、誰でも入ることができる。
また、送信制御装置101は、記憶部110にアクセス可能である。記憶部110には、登録情報111が保存される。登録情報111には、スマートデバイスが正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントの識別情報が登録される。アクセスポイントの識別情報は、例えば、アクセスポイントのMACアドレスである。また、アクセスポイントの識別情報は、アクセスポイントを一意に特定できるアクセスポイントの製造番号でもよい。
さらに、登録情報111には、スマートデバイスの認証に関連する認証関連情報が登録されてもよい。図1の例では、登録情報111には、アクセスポイントapAの識別情報id_apAと、スマートデバイスsdに対応付けられたユーザアカウントとしてユーザuAのアカウントの認証に関連する認証関連情報authとが登録されている。
そして、登録情報111への識別情報の登録は、ユーザuAの認証より前に行われたものである。例えば、ユーザuAの認証より前に、スマートデバイスsdは、アクセスポイントap1の識別情報id_apAを取得する。そして、スマートデバイスsdは、識別情報id_apAを送信制御装置101に送信し、送信制御装置101は、受信した識別情報id_apAを登録情報111に登録する。また、登録情報111への認証関連情報の登録について、送信制御装置101は、識別情報を登録する際に併せて認証関連情報を登録情報111に登録してもよい。または、送信制御装置101は、定期的に認証関連情報を生成し、生成した認証関連情報を登録情報111に登録してもよい。または、送信制御装置101は、認証関連情報を送信すると決定した際に、認証関連情報を生成し、生成した認証関連情報を登録情報111に登録してもよい。図1の例では、送信制御装置101は、不定の文字列を認証関連情報authとして登録する。
まず、図1の上部について説明する。図1の上部では、ユーザuAが自宅hAに入った際に、ユーザuAがスマートデバイスsdを保持している状態を示す。この状態において、ユーザuAの認証を行うため、スマートデバイスsdは、アクセスポイントapAに接続したことを契機として、自身と接続するアクセスポイントapAの識別情報id_apAを取得する。次に、スマートデバイスsdは、取得した識別情報id_apAと、認証関連情報authとの取得要求rqを送信制御装置101に送信する。
送信制御装置101は、図1の(A−1)で示すように、認証関連情報authの取得要求rqに応じ、取得要求rqの要求元端末が接続するアクセスポイントの識別情報id_apAを取得する。次に、送信制御装置101は、図1の(A−2)で示すように、登録情報111、および、取得した識別情報id_apAに基づき、取得要求rqに応じるか否かを決定する。
図1の上部では、登録情報111に含まれる識別情報id_apAと、取得した識別情報id_apAとが一致したため、送信制御装置101は、取得要求rqに応じると決定する。そして、送信制御装置101は、図1の(A−3)で示すように、認証関連情報authを送信する。これにより、スマートデバイスsdは、認証関連情報authを受け取ることができたため、スマートデバイスsdや、スマートデバイスsdの近距離にある装置は、認証関連情報authを用いて、ユーザuAの認証を行うことができる。
次に、図1の下部について説明する。図1の下部では、図1の上部で示した状態の後、ユーザuAがスマートデバイスsdを紛失し、不正な第三者であるユーザuBが、スマートデバイスsdを不正に入手した状態である。そして、ユーザuBの認証を行うため、スマートデバイスsdは、アクセスポイントapBに接続したことを契機に、自身と接続するアクセスポイントapBの識別情報id_apBを取得する。次に、スマートデバイスsdは、取得した識別情報id_apBと、認証関連情報authとの取得要求rqを送信制御装置101に送信する。
送信制御装置101は、図1の(B−1)で示すように、認証関連情報authの取得要求rqに応じ、取得要求rqの要求元端末が接続するアクセスポイントの識別情報id_apBを取得する。次に、送信制御装置101は、図1の(B−2)で示すように、登録情報111、および、取得した識別情報id_apBに基づき、取得要求rqに応じるか否かを決定する。
図1の下部では、登録情報111に登録された識別情報id_apAと、取得した識別情報id_apBとが一致しなかったため、送信制御装置101は、取得要求rqに応じないと決定する。これにより、送信制御装置101は、ユーザuBによるなりすましを防ぐことができる。
以上のように、送信制御装置101は、認証に関連する認証関連情報の端末への送信可否を、端末の状況に応じて決定することができる。次に、送信制御装置101を認証システムに適用した例について、図2を用いて説明する。
図2は、認証システム200の構成例を示す説明図である。認証システム200は、送信制御装置101と、アクセスポイントapA、apBと、スマートデバイスsdと、プッシュ通知サービスサーバ201と、ロック装置202と、電気錠203とを有する。送信制御装置101、アクセスポイントapA、プッシュ通知サービスサーバ201、ロック装置202は、それぞれ、インターネット、LAN、WAN(Wide Area Network)等のネットワーク210で接続される。
プッシュ通知サービスサーバ201は、いわゆるプッシュ通知をスマートデバイスsdに提供するサーバである。プッシュ通知はユーザがスマートデバイスを起動していなくても通知を送ることができる仕組みである。
ロック装置202は、認証を行う装置である。そして、ロック装置202は、ユーザの認証が成功した場合には、電気錠203を制御して、ドアdをアンロックし、ユーザの認証が失敗した場合には、電気錠203を制御して、ドアdをロックする。電気錠203は、電気を使用して動作する錠前である。
次に、送信制御装置101のハードウェア構成について、図3を用いて説明する。また、スマートデバイスsdのハードウェア構成について、図4を用いて説明する。また、ロック装置202のハードウェア構成について、図5を用いて説明する。プッシュ通知サービスサーバ201のハードウェア構成については、送信制御装置101と同様なハードウェアを有すればよいため、説明を省略する。
(送信制御装置101のハードウェア構成例)
図3は、送信制御装置101のハードウェア構成例を示す説明図である。図3において、送信制御装置101は、CPU(Central Processing Unit)301と、ROM(Read−Only Memory)302と、RAM(Random Access Memory)303と、を含む。また、送信制御装置101は、ディスクドライブ304およびディスク305と、通信インターフェース306と、を含む。また、CPU301〜ディスクドライブ304、通信インターフェース306はバス307によってそれぞれ接続される。
CPU301は、送信制御装置101の全体の制御を司る演算処理装置である。ROM302は、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。RAM303は、CPU301のワークエリアとして使用される揮発性メモリである。
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリードおよびライトを制御する制御装置である。ディスクドライブ304には、例えば、磁気ディスクドライブ、光ディスクドライブ、ソリッドステートドライブなどを採用することができる。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する不揮発性メモリである。例えばディスクドライブ304が磁気ディスクドライブである場合、ディスク305には、磁気ディスクを採用することができる。また、ディスクドライブ304が光ディスクドライブである場合、ディスク305には、光ディスクを採用することができる。また、ディスクドライブ304がソリッドステートドライブである場合、ディスク305には、半導体素子によって形成された半導体メモリ、いわゆる半導体ディスクを採用することができる。
通信インターフェース306は、ネットワーク210と内部のインターフェースを司り、他の装置からのデータの入出力を制御する制御装置である。具体的に、通信インターフェース306は、通信回線を通じてネットワーク210を介して他の装置に接続される。通信インターフェース306には、例えば、モデムやLANアダプタなどを採用することができる。
また、送信制御装置101の管理者が、送信制御装置101を直接操作する場合、送信制御装置101は、ディスプレイ、キーボード、マウスといったハードウェアを有してもよい。
(スマートデバイスsdのハードウェア構成例)
図4は、スマートデバイスsdのハードウェア構成例を示す説明図である。図4において、スマートデバイスsdは、CPU401と、ROM402と、RAM403と、ディスクドライブ404と、ディスク405と、通信インターフェース406と、近距離無線通信インターフェース407と、タッチパネル408と、を有する。また、CPU401〜ディスクドライブ404と、通信インターフェース406〜タッチパネル408とはバス409によってそれぞれ接続される。
ここで、CPU401は、スマートデバイスsdの全体の制御を司る演算処理装置である。ROM402は、ブートプログラムなどのプログラムを記憶する不揮発メモリである。RAM403は、CPU401のワークエリアとして使用される揮発性メモリである。ディスクドライブ404は、CPU401の制御に従ってディスク405に対するデータのリードおよびライトを制御する制御装置である。ディスク405は、ディスクドライブ404の制御で書き込まれたデータを記憶する。ディスクドライブ404には、例えば、磁気ディスクドライブ、ソリッドステートドライブなどを採用することができる。例えばディスクドライブ404が磁気ディスクドライブである場合、ディスク405には、磁気ディスクを採用することができる。また、ディスクドライブ404がソリッドステートドライブである場合、ディスク405には、半導体素子によって形成された半導体メモリ、いわゆる半導体ディスクを採用することができる。
通信インターフェース406は、ネットワーク210と内部のインターフェースを司り、他の装置からのデータの入出力を制御する制御装置である。具体的に、通信インターフェース406は、通信回線を通じてネットワーク210を介して他の装置に接続される。
近距離無線通信インターフェース407は、近距離にあるロック装置202からのデータの入出力を制御する制御装置である。例えば、近距離無線通信インターフェース407は、近距離無線通信の規格であるBluetooth(登録商標)、Felicaの上位規格であるNFC(Near Field Communication)(登録商標)、ZigBee(登録商標)等によって、ロック装置202と接続する。
タッチパネル408は、ユーザuAによるタップ操作やフリック操作を検出するセンサと、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示するディスプレイとを組み合わせた装置である。具体的には、センサは、ディスプレイ上に重ねて配置される。また、センサは、例えば、抵抗膜方式、表面型や投影型の静電容量方式等が採用されたセンサである。ディスプレイは、例えば、TFT(Thin Film Transistor)液晶ディスプレイなどを採用することができる。
(ロック装置202のハードウェア構成例)
図5は、ロック装置202のハードウェア構成例を示す説明図である。図5において、ロック装置202は、CPU501と、ROM502と、RAM503と、フラッシュROM504と、通信インターフェース505と、近距離無線通信インターフェース506と、キーパッド507と、ディスプレイ508とを有する。また、CPU501〜ディスプレイ508とはバス509によってそれぞれ接続される。また、ロック装置202は、電気錠203と接続する。
ここで、CPU501は、ロック装置202の全体の制御を司る演算処理装置である。ROM502は、ブートプログラムなどのプログラムを記憶する不揮発メモリである。RAM503は、CPU501のワークエリアとして使用される揮発性メモリである。
フラッシュROM504は、予め設定されたパスワードを記憶する不揮発性メモリである。フラッシュROM504の記憶媒体としては、例えば、NANDフラッシュを採用することができる。
通信インターフェース505は、ネットワーク210と内部のインターフェースを司り、他の装置からのデータの入出力を制御する制御装置である。具体的に、通信インターフェース505は、通信回線を通じてネットワーク210を介して他の装置に接続される。近距離無線通信インターフェース506は、近距離にあるスマートデバイスsdからのデータの入出力を制御する制御装置である。
キーパッド507は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を受け付ける装置である。ディスプレイ508は、スマートデバイスsdとのデータ通信やキーパッド507からの入力によって得られたデータによる認証結果を表示する装置である。例えば、ディスプレイ508は、TFT液晶ディスプレイなどを採用することができる。次に、認証システム200の機能構成例について、図6を用いて説明する。
図6は、認証システム200の機能構成例を示す説明図である。送信制御装置101は、制御部600を有する。制御部600は、取得部601と、決定部602と、送信部603とを含む。制御部600は、記憶装置に記憶されたプログラムをCPU301が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、例えば、図3に示したROM302、RAM303、ディスク305などである。また、各部の処理結果は、RAM303や、CPU301のレジスタ、CPU301のキャッシュメモリ等に格納される。
また、送信制御装置101は、記憶部110にアクセス可能である。記憶部110は、RAM303、ディスク305といった記憶装置である。記憶部110には、登録情報111が保存される。登録情報111の記憶内容の一例について、図7を用いて説明する。
また、スマートデバイスsdは、制御部620を有する。制御部620は、取得部621と、送信部622と、受け付け部623とを含む。制御部620は、記憶装置に記憶されたプログラムをCPU401が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、例えば、図4に示したROM402、RAM403、ディスク405などである。また、各部の処理結果は、RAM403や、CPU401のレジスタ、CPU401のキャッシュメモリ等に格納される。
また、ロック装置202は、制御部630を有する。制御部630は、受け付け部631と、認証部632と、電気錠制御部633とを有する。制御部630は、記憶装置に記憶されたプログラムをCPU501が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、例えば、図5に示したROM502、RAM503、フラッシュROM504などである。また、各部の処理結果は、RAM503や、CPU501のレジスタ、CPU501のキャッシュメモリ等に格納される。
取得部601は、認証関連情報の取得要求に応じ、前記取得要求の要求元端末が接続するアクセスポイントの識別情報を取得する。以下、アクセスポイントの識別情報は、アクセスポイントのMACアドレスを用いるものとする。また、認証関連情報は、秘密鍵として使用される情報であるとし、電子鍵情報611と称する。電子鍵情報611は、登録情報111の一部の情報となる。電子鍵情報611には、例えば、認証用のトークンとなる不定の文字列が含まれる。例えば、認証用のトークンは、送信制御装置101と、ロック装置202とで共有する値を初期値として生成される文字列である。電子鍵情報611の記憶内容の一例は、図8で示す。
決定部602は、登録情報111、および、取得部601が取得したMACアドレスに基づき、取得要求に応じるか否かを決定する。
送信部603は、登録情報111に登録されたMACアドレスと、取得部601が受け付けたMACアドレスとが一致した場合に、登録情報111に登録された電子鍵情報611を要求元端末に送信する。ここで、電子鍵情報611の送信方法としては、送信部603が直接要求元端末となるスマートデバイスsdに電子鍵情報611を送信してもよいし、プッシュ通知サービスサーバ201が提供するプッシュ通知を利用して電子鍵情報611を送信してもよい。
また、送信部603は、登録情報111に含まれるMACアドレスと、取得したMACアドレスとが一致しなかった場合に、登録情報111に登録された電子鍵情報611を要求元端末に送信しない。
また、送信部603は、登録情報111に含まれるMACアドレスと、取得部601が受け付けたMACアドレスとが一致しなかった場合に、ロック装置202が認証する指示を要求元端末に送信してもよい。また、送信部603は、登録情報111に含まれるMACアドレスと、取得部601が取得したMACアドレスとが一致しなかった場合に、ロック装置202と近距離無線通信により接続される際にロック装置202が認証する指示を、要求元端末に送信してもよい。
また、送信部603は、登録情報111に含まれるMACアドレスと、取得部601が取得したMACアドレスとが一致しなかった場合に、所定の時間経過後に再度の取得要求を送信する指示を要求元端末に送信してもよい。
取得部621は、自端末が接続するアクセスポイントのMACアドレスを取得する。
送信部622は、取得部621が取得したMACアドレスと、電子鍵情報611の取得要求とを、送信制御装置101に送信する。また、送信部622は、受け付け部623が受け付けた電子鍵情報611を、ロック装置202に送信する。また、送信部622は、ロック装置202が認証する指示を受け付け部623が受け付けた場合、ロック装置202が認証する指示を、ロック装置202に送信する。また、ロック装置202と近距離無線通信により接続される際にロック装置202が認証する指示を受け付け部623が受け付けたとする。この場合、送信部622は、ロック装置202と近距離無線通信により接続される際に、ロック装置202が認証する指示を、近距離無線通信によって、ロック装置202に送信する。
受け付け部623は、送信制御装置101から電子鍵情報611を受け付ける。
受け付け部631は、スマートデバイスsdから、電子鍵情報611を受け付ける。また、受け付け部631は、スマートデバイスsdから、ロック装置202が認証する指示を受け付けてもよい。
認証部632は、受け付け部631が受け付けた電子鍵情報611に基づいて、認証を行う。例えば、認証部632は、送信制御装置101とロック装置202とで共有する値を初期値とした文字列を生成し、電子鍵情報611に含まれる文字列と一致するか否かを判定する。そして、認証部632は、2つの文字列が一致する場合に認証に成功したと判定し、2つの文字列が一致しない場合に認証に失敗したと判定する。
また、認証部632は、ロック装置202が認証する指示を送信制御装置101から受け付けた場合、認証を行ってもよい。例えば、ロック装置202が認証する指示を送信制御装置101から受け付けた後、スマートデバイスsdから近距離無線通信により、認証部632は、ディスプレイ508に、パスワード入力を行う旨を表示する。そして、認証部632は、キーパッド507によって入力された文字列と、フラッシュROM504に予め設定されたパスワードとに基づいて、認証を行う。
電気錠制御部633は、認証部632が認証に成功したと判定した場合、電気錠203を制御して、ドアdをアンロックする。また、電気錠制御部633は、認証部632が認証に失敗したと判定した場合、電気錠203を制御して、ドアdをロックする。
図7は、登録情報111の記憶内容の一例を示す説明図である。図7に示す登録情報111は、レコード701−1を有する。
登録情報111は、ユーザID(IDentifier)と、アクセスポイントのMACアドレスと、デバイストークン情報と、更新日時と、許可する物件IDとを含む。さらに、登録情報111は、電子鍵_認証トークンと、電子鍵_有効開始日時と、電子鍵_有効終了日時と、電子鍵受領応答リトライ回数と、電子鍵受領応答フラグ、というフィールドを含む。
ユーザIDフィールドには、ユーザのアカウントを識別するIDが格納される。例えば、ユーザIDは、お客様登録ユーザIDや従業員番号等である。
アクセスポイントのMACアドレスフィールドには、アクセスポイントapAのMACアドレスを示す文字列が格納される。アクセスポイントのMACアドレスフィールドには、ユーザによって個人所有されるアクセスポイントapAのMACアドレスが事前登録される。
デバイストークン情報フィールドには、デバイストークン情報を示す文字列が格納される。デバイストークン情報は、プッシュ通知サービスを利用するために用いられる情報である。そして、スマートデバイスsdにアプリをインストールする際に、インストールされるアプリが送信制御装置101にデバイストークン情報を通知する。
更新日時フィールドには、このレコードの更新日時を示す文字列が格納される。許可する物件IDフィールドには、ユーザIDによって識別されるユーザを認証許可する物件を識別するIDを示す値が格納される。従って、許可する物件IDに登録されていない物件IDへの認証は不可となる。許可する物件IDフィールドに登録される物件IDは、例えば、ユーザIDによって識別されるユーザが作業するフロアのIDである。
電子鍵_認証トークンフィールドには、電子鍵の情報となる認証トークンを示す文字列が格納される。認証トークンは、勤怠管理やゲート通行管理等、認証状況管理向けに用いられる。
電子鍵_有効開始日時フィールドには、電子鍵の有効開始日時を示す文字列が格納される。認証を行った時刻が、有効開始日時より前である場合、ロック装置202は、電子鍵による認証が失敗であると判断する。電子鍵_有効終了日時フィールドには、電子鍵の有効終了日時を示す文字列が格納される。認証を行った時刻が、有効終了日時より後である場合、ロック装置202は、電子鍵による認証が失敗であると判断する。
電子鍵受領応答リトライ回数フィールドには、電子鍵の受領の応答をリトライ可能な閾値が格納される。プッシュ通知した回数が電子鍵受領応答リトライ回数フィールドに格納された値に到達した場合、送信制御装置101は、プッシュ通知サービスサーバ201へのプッシュ通知の要求を終了する。
電子鍵受領応答フラグフィールドには、スマートデバイスsdからの電子鍵の受領応答を示すフラグが格納される。具体的には、電子鍵受領応答フラグフィールドには、初期値としてFALSEが格納されており、スマートデバイスsdからの電子鍵の受領応答があった場合、送信制御装置101は、TRUEに書き換える。また、送信制御装置101は、電子鍵受領応答フラグフィールドにFALSEが格納されている限り、プッシュ通知サービスサーバ201にプッシュ通知の要求を送信する。
図8は、電子鍵情報611の記憶内容の一例を示す説明図である。電子鍵情報611は、登録情報111の一部のフィールドの情報を有する。具体的には、電子鍵情報611は、登録情報111の「電子鍵_」から始まる3つのフィールドと、許可する物件IDフィールドとの値が格納される。このように、電子鍵情報611が有する情報は、登録情報111の一部の情報であるため、説明を省略する。
次に、認証システム200が実行する各処理を示すフローチャートを、それぞれ図9、図11、図13で示し、各処理の動作例をそれぞれ、図10、図12、図14で示す。
図9は、電子鍵送信制御処理手順の一例を示すフローチャートである。また、図10は、電子鍵送信制御処理の動作例を示す説明図である。ここで、電子鍵送信制御処理は、スマートデバイスsdと、送信制御装置101とが協働することにより実行される。従って、電子鍵送信制御処理は、スマートデバイスsdの制御部620と、送信制御装置101の制御部600とにより実行される。また、電子鍵送信制御処理は、例えば、ユーザuAが自宅hA内に入った際に実行される。
スマートデバイスsdは、アクセスポイントapAに接続する(ステップS901)。図10では、ステップS901の処理は、図10の(1)で示す「接続」に相当する。次に、スマートデバイスsdは、アクセスポイントapAのMACアドレスをアプリ内部で取得する(ステップS902)。ステップS902の処理は、図10の(2)で示す「取得」に相当する。そして、スマートデバイスsdは、取得したMACアドレスを付加した電子鍵プッシュ通知リクエストを、送信制御装置101に送信する(ステップS903)。ステップS903の処理は、図10の(3)で示す「送信」に相当する。ステップS903の処理終了後、スマートデバイスsdは、電子鍵情報611のプッシュ通知を待ち受ける。
送信制御装置101は、電子鍵プッシュ通知リクエストを受け付ける(ステップS904)。電子鍵プッシュ通知リクエストには、MACアドレスが付加されているため、送信制御装置101は、受け付けた電子鍵プッシュ通知リクエストに負荷されているMACアドレスを取得する。そして、送信制御装置101は、電子鍵プッシュ通知リクエストに付加されたMACアドレスが、登録情報111に登録済のアクセスポイントのMACアドレスか否かを判断する(ステップS905)。ステップS905の処理は、図10の(4)で示す「判断」に相当する。
電子鍵プッシュ通知リクエストに含まれるMACアドレスが、登録済のアクセスポイントのMACアドレスである場合(ステップS905:Yes)、スマートデバイスsdの持ち主が、ユーザuAであると確認できるため、送信制御装置101は、電子鍵プッシュ通知処理を実行する(ステップS906)。電子鍵プッシュ通知処理は、図11、図12で説明する。そして、送信制御装置101は、電子鍵送信制御処理を終了する。
登録済のアクセスポイントのMACアドレスでない場合(ステップS905:No)、スマートデバイスsdの持ち主が、ユーザuAでない第三者であると確認できるため、送信制御装置101は、電子鍵送信制御処理を終了する。また、図6で説明したように、ステップS905:Noとなる場合、送信制御装置101は、ロック装置202が認証する指示をスマートデバイスsdに送信してもよい。また、ステップS905:Noとなる場合、送信制御装置101は、ロック装置202とスマートデバイスsdとが近距離無線通信によって接続される際にロック装置202が認証する指示をスマートデバイスsdに送信してもよい。また、ステップS905:Noとなる場合、送信制御装置101は、所定の時間経過後に再度の電子鍵プッシュ通知リクエストを送信する指示を、スマートデバイスsdに送信してもよい。
図11は、電子鍵プッシュ通知処理手順の一例を示すフローチャートである。また、図12は、電子鍵プッシュ通知処理の動作例を示す説明図である。電子鍵プッシュ通知処理は、送信制御装置101と、プッシュ通知サービスサーバ201と、スマートデバイスsdとが協働することにより実行される。従って、電子鍵プッシュ通知処理は、送信制御装置101の制御部600と、プッシュ通知サービスサーバ201のCPUがプログラムを実行することにより実現する機能と、スマートデバイスsdの制御部620とにより実行される。
送信制御装置101は、登録情報111を参照して生成した電子鍵情報611と、スマートデバイスsdのデバイストークンとを付加した電子鍵情報611のプッシュ通知要求を、プッシュ通知サービスサーバに送信する(ステップS1101)。ステップS1101の処理は、図12の(1)で示す「送信」に相当する。
電子鍵情報611のプッシュ通知要求を受け付けた送信制御装置101は、付与されたデバイストークンに対応するスマートデバイスsdに、電子鍵情報611をプッシュ通知する(ステップS1102)。ステップS1102の処理は、図12の(2)で示す「プッシュ通知」に相当する。
プッシュ通知を受け付けたスマートデバイスsdは、電子鍵受領の応答を、送信制御装置101に送信する(ステップS1103)。ステップS1103の処理は、図12の(3)で示す「応答」に相当する。
送信制御装置101は、ステップS1101の処理を実行してから、所定の待ち時間内にスマートデバイスsdから電子鍵受領の応答があったか否かを判断する(ステップS1104)。所定の待ち時間は、認証システム200の運用者によって設定される時間である。例えば、所定の待ち時間は、30秒である。所定の待ち時間内にスマートデバイスsdから電子鍵受領の応答があった場合(ステップS1104:Yes)、送信制御装置101は、無事に電子鍵情報611をスマートデバイスsdに送信できたとして、電子鍵プッシュ通知処理を終了する。
一方、電子鍵受領の応答がなくとも、送信制御装置101は、ステップS904によってスマートデバイスsdの持ち主が、ユーザuAであることが確認済である。従って、所定の待ち時間内にスマートデバイスから電子鍵受領の応答がない場合(ステップS1104:No)、プッシュ通知の送信要求の再送を行うべく、送信制御装置101は、プッシュ通知した回数が所定の受領応答リトライ回数未満か否かを判断する(ステップS1105)。ここで、所定の受領応答リトライ回数は、認証システム200の運用者によって設定される時間である。例えば、所定の受領応答リトライ回数は、3回である。
プッシュ通知した回数が所定の受領応答リトライ回数未満である場合(ステップS1105:Yes)、送信制御装置101は、ステップS1101の処理に移行する。
一方、プッシュ通知した回数が所定の受領応答リトライ回数以上である場合(ステップS1105:No)、何らかの事故が発生したとみなし、送信制御装置101は、電子鍵プッシュ通知処理を終了する。
図13は、認証処理手順の一例を示すフローチャートである。また、図14は、認証処理の動作例を示す説明図である。認証処理は、ロック装置202が行う処理である。従って、認証処理は、ロック装置202の制御部630の機能により実行される。また、認証処理は、スマートデバイスsdがロック装置202に近づいた際に実行される。
ロック装置202は、近距離無線通信によって、スマートデバイスsdから、電子鍵情報611を受信する(ステップS1301)。ステップS1301の処理は、図14の(1)で示す「受信」に相当する。
そして、ロック装置202は、受信した電子鍵情報611が有効期間内か否かを判断する(ステップS1302)。具体的には、ロック装置202は、電子鍵情報611内の有効開始日時≦現在の日時≦有効終了日時という不等式が満たされる場合、電子鍵情報611が有効期間であると判断する。
受信した電子鍵が有効期間内でない場合(ステップS1302:No)、ロック装置202は、キーパッド507によって、ユーザuAによるパスワード入力を受け付ける(ステップS1303)。次に、ロック装置202は、フラッシュROM504内に記憶されたパスワードと、受け付けたパスワードが一致するか否かを判断する(ステップS1304)。
受信した電子鍵が有効期間内である場合(ステップS1302:Yes)または、受け付けたパスワードが一致する場合(ステップS1304:Yes)、ロック装置202は、認証成功と判定する(ステップS1305)。例えば、本実施の形態では、ロック装置202は、認証成功と判定した場合、電気錠203を制御して、ドアdをアンロックする。
一方、受け付けたパスワードが一致しない場合(ステップS1304:No)、ロック装置202は、認証失敗と判定する(ステップS1306)。ステップS1302〜S1305の一連の処理は、図14の(2)で示す「判定」に相当する。ステップS1305、またはステップS1306の処理終了後、ロック装置202は、認証処理を終了する。次に、本実施の形態における効果の一例として、スマートデバイスsdが紛失や盗難にあった場合の動作例を、図15を用いて説明する。
図15は、スマートデバイスsdが紛失や盗難にあった場合の動作例を示す説明図である。図15の例では、ユーザuAがスマートデバイスsdを紛失し、不正な第三者であるユーザuBが、スマートデバイスsdを不正に入手したとする。
この場合、スマートデバイスsdは、ステップS901の処理として、公共のWi−Fiとして、アクセスポイントapBに接続し、ステップS902の処理として、アクセスポイントapBのMACアドレスをアプリ内部で取得する。ここで、取得したMACアドレスは、登録情報111に登録されたMACアドレスとは異なる情報となる。そして、スマートデバイスsdは、ステップS903の処理として、取得したMACアドレスを付加した電子鍵プッシュ通知リクエストを、送信制御装置101に送信する。
電子鍵プッシュ通知リクエストを受け付けた送信制御装置101は、電子鍵プッシュ通知リクエストに含まれるMACアドレスが、登録情報111に登録済のアクセスポイントのMACアドレスか否かを判断する。ここで、電子鍵プッシュ通知リクエストに含まれるMACアドレスは、登録情報111に登録されていない。従って、送信制御装置101は、スマートデバイスsdを操作している者がユーザuAでない第三者であると判断して、電子鍵情報611のプッシュ通知をせずに終了する。
以上説明したように、送信制御装置101は、あるスマートデバイスsdの正当な所有者の自宅内のアクセスポイントのMACアドレスを登録情報111に予め登録しておく。そして、送信制御装置101は、あるスマートデバイスsdからの認証関連情報の取得要求に付随するMACアドレスと登録済のMACアドレスから、前述した取得要求に応じるか否かを決める。これにより、送信制御装置101は、あるスマートデバイスsdが第三者によって保持されているか否かを特定することができ、認証関連情報のあるスマートデバイスsdへの送信可否を、あるスマートデバイスsdの状況に応じて決定することができる。
また、送信制御装置101は、登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致した場合に、認証成功として、電子鍵情報611をスマートデバイスsdに送信する。登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致する場合、スマートデバイスsdが正当な所有者に保持されていることが担保されることになる。従って、送信制御装置101は、スマートデバイスsdが電子鍵情報611を送信すべき状況にあるときに、電子鍵情報611を送信することができる。
また、送信制御装置101は、登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致しなかった場合に、認証失敗として、電子鍵情報611をスマートデバイスsdに送信しない。登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致しない場合、スマートデバイスsdが第三者に保持されているとみなすことができる。従って、送信制御装置101は、スマートデバイスsdが電子鍵情報611を送信すべき状況にないときに、電子鍵情報611を送信しないことができる。そして、スマートデバイスsdは、電子鍵情報611を受け取ることができないため、第三者によるなりすましを防ぐことができる。
また、登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致しないとする。この場合、送信制御装置101は、ロック装置202が認証する指示をスマートデバイスsdに送信してもよい。登録情報111に登録されたMACアドレスと受け付けたMACアドレスとが一致しない場合として、例えば、公共のアクセスポイントの電波がユーザuAの自宅hAに入り込む可能性がある。この場合、正当な所有者であるユーザuAが自宅hAにいたとしても、スマートデバイスsdが公共のアクセスポイントと接続してしまうことがある。このように、正当な所有者がスマートデバイスsdを保持する状況にもかかわらずスマートデバイスsdが公共のアクセスポイントと接続してしまった場合も、認証を行う現場で認証することにより、送信制御装置101は、認証成功とすることができる。
また、登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致しないとする。この場合、送信制御装置101は、ロック装置202とスマートデバイスsdとが近距離無線通信により接続される際にロック装置202が認証する指示を、スマートデバイスsdに送信してもよい。ロック装置202とスマートデバイスsdとが近距離無線通信により接続される際とは、スマートデバイスsdを保持する者が、認証を行う現場に入ることを示す。従って、送信制御装置101は、正当な所有者がスマートデバイスsdを保持する状況にもかかわらずスマートデバイスsdが公共のアクセスポイントと接続してしまった場合も、正当な所有者が認証を行う現場に入る際に、認証を行う現場で認証することができる。
また、登録情報111に登録されたMACアドレスと、スマートデバイスsdから受け付けたMACアドレスとが一致しないとする。この場合、送信制御装置101は、所定の時間経過後に再度の取得要求を送信する指示をスマートデバイスsdに送信してもよい。前述したように、正当な所有者であるユーザuAが自宅hAにいたとしても、スマートデバイスsdが公共のアクセスポイントと接続してしまうことがある。そして、公共のアクセスポイントの電波が、自宅hAの居室に入り込んでおり、自宅hAのリビングには入り込んでいないとする。この場合、ユーザuAは、所定の時間経過後に再度の取得要求を送信する指示を閲覧した場合にスマートデバイスsdを保持したまま自宅hAのリビングに移動することにより、スマートデバイスsdは、電子鍵情報611を受け取ることができる。このように、送信制御装置101は、公共のアクセスポイントの電波がユーザuAの自宅hAに入り込んでいる場合でも、電子鍵情報611を送信することができる。
なお、本実施の形態で説明した認証関連情報の送信制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本認証関連情報の送信制御プログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本認証関連情報の送信制御プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)認証関連情報の取得要求に応じ、前記取得要求の要求元端末が接続するアクセスポイントの識別情報を取得し、
記憶部に保存されたアクセスポイントに関する登録情報、および、前記識別情報に基づき、前記取得要求に応じるか否かを決定する、
処理をコンピュータに実行させる認証関連情報の送信制御プログラム。
(付記2)前記登録情報は、端末に対応付けられたユーザアカウントの認証に関連する認証関連情報と、前記端末が正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントの識別情報とを有し、
前記登録情報に含まれる前記識別情報と、取得した前記識別情報とが一致した場合に、前記登録情報に含まれる前記認証関連情報を前記要求元端末に送信する、
処理を前記コンピュータに実行させる付記1に記載の認証関連情報の送信制御プログラム。
(付記3)前記登録情報は、端末が正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントの識別情報を有し、
前記登録情報に含まれる前記識別情報と、取得した前記識別情報とが一致しなかった場合に、前記認証関連情報を前記要求元端末に送信しない、
処理を前記コンピュータに実行させる付記1または2に記載の認証関連情報の送信制御プログラム。
(付記4)前記登録情報は、端末が正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントの識別情報を有し、
前記登録情報に含まれる前記識別情報と、取得した前記識別情報とが一致しなかった場合に、認証を行う装置が認証する指示を前記要求元端末に送信する、
処理を前記コンピュータに実行させる付記1または2に記載の認証関連情報の送信制御プログラム。
(付記5)前記認証を行う装置と前記要求元端末とは、近距離無線通信が可能であり、
前記登録情報に含まれる前記識別情報と、取得した前記識別情報とが一致しなかった場合に、前記認証を行う装置と前記要求元とが前記近距離無線通信によって接続される際に前記認証を行う装置が認証する指示を、前記要求元端末に送信する、
処理を前記コンピュータに実行させる付記4に記載の認証関連情報の送信制御プログラム。
(付記6)前記登録情報は、端末が正当な所有者に保持されていることを識別可能な場所に設置されたアクセスポイントの識別情報を有し、
前記登録情報に含まれる前記識別情報と、取得した前記識別情報とが一致しなかった場合に、所定の時間経過後に再度の取得要求を送信する指示を前記要求元端末に送信する、
処理を前記コンピュータに実行させる付記1または2に記載の認証関連情報の送信制御プログラム。
(付記7)認証関連情報の取得要求に応じ、前記取得要求の要求元端末が接続するアクセスポイントの識別情報を取得し、
記憶部に保存されたアクセスポイントに関する登録情報、および、前記識別情報に基づき、前記取得要求に応じるか否かを決定する、
制御部を有する認証関連情報の送信制御装置。
(付記8)認証関連情報の取得要求に応じ、前記取得要求の要求元端末が接続するアクセスポイントの識別情報を取得し、
記憶部に保存されたアクセスポイントに関する登録情報、および、前記識別情報に基づき、前記取得要求に応じるか否かを決定する、
処理をコンピュータが実行する認証関連情報の送信制御方法。