(57)【要約】【課題】格納器の解施錠に要する時間を削減する。【解決手段】格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法は、ブロックチェーンには、格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、端末から解施錠の要求を示す第一要求情報を受けた場合に、ブロックチェーンに格納された鍵保有者情報を読み出すことで得られる鍵保有者と、第一要求情報の送信元である端末の所有者とが一致するか否かを判定し（ステップＳ５０１）、鍵保有者と所有者とが一致すると判定した場合に、第一要求情報に係る解施錠を格納器に実行させるための解施錠処理を実行し（ステップＳ５０２）、解施錠処理の実行後に、解施錠処理を実行したことを示すトランザクションデータをブロックチェーンに格納する第一格納処理を実行する（ステップＳ５０３）。【選択図】図１２
2019181149.tif 000002
【特許請求の範囲】
【請求項１】
格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法であって、
前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、
端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、
前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、
前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する
制御方法。
【請求項２】
前記制御方法は、さらに、
端末から鍵保有者情報の変更の要求を示す第二要求情報を受けた場合に、前記第二要求情報を前記ブロックチェーンに格納する第二格納処理を実行し、
前記第一要求情報を受けた場合には、前記第二格納処理が実行されている最中であるか否かを判定し、
前記判定の結果に応じて、前記解施錠処理の実行を制御する
請求項１に記載の制御方法。
【請求項３】
前記解施錠処理の実行を制御する際には、
前記第一要求情報に係る前記解施錠処理を前記格納器に実行させることを禁止する
請求項２に記載の制御方法。
【請求項４】
前記解施錠処理の実行を制御する際には、
前記第二格納処理が終了するまで待機し、前記第二格納処理が終了した後で前記解施錠処理を実行する
請求項２に記載の制御方法。
【請求項５】
前記解施錠処理の実行を制御する際には、
前記第二格納処理が終了するまで待機することを示す画像を表示する
請求項４に記載の制御方法。
【請求項６】
前記解施錠を前記格納器に実行させた場合には、
前記解施錠が実際に実行されたか否かを示す結果情報を取得し、
前記解施錠が実際に実行されたことを、取得した前記結果情報が示す場合に限り、前記トランザクションデータを前記ブロックチェーンに格納する
請求項１〜５のいずれか１項に記載の制御方法。
【請求項７】
前記トランザクションデータを前記ブロックチェーンに格納する際には、
前記トランザクションデータを含むブロックを生成し、生成したブロックについて合意形成がなされた場合に、前記トランザクションデータを前記ブロックチェーンに格納する
請求項１〜６のいずれか１項に記載の制御方法。
【請求項８】
格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する、複数の情報処理装置のうちの一の情報処理装置であって、
プロセッサと、
メモリと、
前記ブロックチェーンによる分散台帳が記憶されている記憶装置とを備え、
前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、
前記プロセッサは、前記メモリを用いて、
端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、
前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、
前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する
情報処理装置。
【請求項９】
請求項８に記載の情報処理装置を含む前記複数の情報処理装置と、
前記複数の情報処理装置によって前記ブロックチェーンを用いて解錠又は施錠が制御される前記格納器とを備える
管理システム。
【請求項１０】
請求項１〜６のいずれか１項に記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御方法、情報処理装置、管理システム、及び、プログラムに関する。
【背景技術】
【０００２】
宅配ボックスのような、物品が格納される格納器の解錠又は施錠である解施錠をブロックチェーンを用いて管理する技術が開示されている（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】GMOインターネット株式会社、“GMOインターネットグループ、セゾン情報システムズ、パルコが共同でブロックチェーンとIoTを活用した実証実験の第二弾を実施”、［online］、平成29年6月21日、［平成30年10月25日検索］、インターネット〈URL：https://cloud.z.com/jp/news-ep/iot2/〉
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、格納器の解施錠の際に比較的長い時間を要するという問題がある。
【０００５】
そこで、本発明は、格納器の解施錠に要する時間を削減し得る情報処理方法などを提供する。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る制御方法は、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法であって、前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する。
【０００７】
なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【０００８】
本発明の制御方法によれば、格納器の解施錠に要する時間を削減することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態１における管理システムの構成を模式的に示すブロック図である。
【図２】図２は、実施の形態１におけるサーバの機能の構成を示すブロック図である。
【図３】図３は、ブロックチェーンのデータ構造を示す説明図である。
【図４】図４は、トランザクションデータのデータ構造を示すの説明図である。
【図５】図５は、実施の形態１における格納器の構成を模式的に示すブロック図である。
【図６】図６は、実施の形態１における管理システムの解施錠の処理を示すフロー図である。
【図７】図７は、実施の形態１における格納器の解施錠の処理を示すフロー図である。
【図８】図８は、比較例における管理システムの解施錠の処理を示すフロー図である。
【図９】図９は、実施の形態２におけるサーバの機能の構成を示すブロック図である。
【図１０】図１０は、実施の形態２における管理システムの鍵の保有者変更の処理を示すフロー図である。
【図１１】図１１は、実施の形態２における管理システムの解施錠の処理を示すフロー図である。
【図１２】図１２は、各実施の形態の変形例における制御方法を示すフロー図である。
【図１３】図１３は、各実施の形態の変形例における情報処理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
（本発明の基礎となった知見）
本発明の一態様に係る制御方法は、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法であって、前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する。
【００１１】
上記態様によれば、格納器の解施錠の要求を受けてから解施錠の実行までの間にトランザクションデータをブロックチェーンに格納する処理が含まれない。よって、本発明の一態様に係る制御方法によれば、格納器の解施錠に要する時間を削減し得る。
【００１２】
例えば、前記制御方法は、さらに、端末から鍵保有者情報の変更の要求を示す第二要求情報を受けた場合に、前記第二要求情報を前記ブロックチェーンに格納する第二格納処理を実行し、前記第一要求情報を受けた場合には、前記第二格納処理が実行されている最中であるか否かを判定し、前記判定の結果に応じて、前記解施錠処理の実行を制御してもよい。
【００１３】
上記態様によれば、鍵保有者の変更に係る処理が実行されている最中であることによる、鍵保有者変更の未反映状態において、格納器の解施錠の実行を制御することができる。よって、未反映状態において不適切な格納器の解施錠が行われことを回避しながら、格納器の解施錠に要する時間を削減し得る。
【００１４】
例えば、前記解施錠処理の実行を制御する際には、前記第一要求情報に係る前記解施錠処理を前記格納器に実行させることを禁止してもよい。
【００１５】
上記態様によれば、未反映状態における解施錠の実行の制御として、その解施錠処理を禁止する。これにより、より容易に、未反映状態において不適切な格納器の解施錠が行われことを回避し得る。
【００１６】
例えば、前記解施錠処理の実行を制御する際には、前記第二格納処理が終了するまで待機し、前記第二格納処理が終了した後で前記解施錠処理を実行してもよい。
【００１７】
上記態様によれば、未反映状態における解施錠の実行の制御として、未反映状態が終了するまでその解施錠処理を待機し、鍵保有者変更が反映された後に解施錠の実行を行う。これにより、より容易に、未反映状態において不適切な格納器の解施錠が行われことを回避し得る。
【００１８】
例えば、前記解施錠処理の実行を制御する際には、前記第二格納処理が終了するまで待機することを示す画像を表示してもよい。
【００１９】
上記態様によれば、未反映状態における解施錠の実行の制御として未反映状態が終了するまで解錠処理を待機する場合に、表示画像によってそのことをユーザに伝えることができる。これにより、未反映状態の終了まで待機していることをユーザに認識させることができる。また、この表示がない場合にユーザが誤認識をして行い得る不適切な操作などを未然に回避できる。
【００２０】
例えば、前記解施錠を前記格納器に実行させた場合には、前記解施錠が実際に実行されたか否かを示す結果情報を取得し、前記解施錠が実際に実行されたことを、取得した前記結果情報が示す場合に限り、前記トランザクションデータを前記ブロックチェーンに格納してもよい。
【００２１】
上記態様によれば、格納器の解施錠が実際に実行された場合に限り解施錠履歴が更新される。よって、何らかの事情によって解施錠が実際には実行されたかった場合に解施錠履歴が更新されることを回避しながら、格納器の解施錠に要する時間を削減し得る。
【００２２】
例えば、前記トランザクションデータを前記ブロックチェーンに格納する際には、前記トランザクションデータを含むブロックを生成し、生成したブロックについて合意形成がなされた場合に、前記トランザクションデータを前記ブロックチェーンに格納してもよい。
【００２３】
上記態様によれば、管理システムは、複数のサーバによって合意形成がなされたブロックをブロックチェーンに格納することができる。
【００２４】
また、本発明の一態様に係る情報処理装置は、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する、複数の情報処理装置のうちの一の情報処理装置であって、プロセッサと、メモリと、前記ブロックチェーンによる分散台帳が記憶されている記憶装置とを備え、前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、前記プロセッサは、前記メモリを用いて、端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する。
【００２５】
また、本発明の一態様に係る管理システムは、上記の情報処理装置を含む前記複数の情報処理装置と、前記複数の情報処理装置によって前記ブロックチェーンを用いて解錠又は施錠が制御される前記格納器とを備える。
【００２６】
上記態様によれば、上記の制御方法と同様の効果を奏する。
【００２７】
また、本発明の一態様に係るプログラムは、上記の制御方法をコンピュータに実行させるためのプログラムである。
【００２８】
上記態様によれば、上記の制御方法と同様の効果を奏する。
【００２９】
なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
【００３０】
以下、実施の形態について、図面を参照しながら具体的に説明する。
【００３１】
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００３２】
（実施の形態）
本実施の形態において、格納器の解施錠に要する時間を削減し得る制御方法などについて説明する。本実施の形態に係る制御方法は、物品が格納され得る１以上の格納器の解錠又は施錠を分散台帳を用いて制御する制御方法である。なお、格納器は、例えば、宅配ボックス又はコインロッカーなどである。また、本実施の形態に係る制御方法は、解施錠がなされるもの、例えば、ホテルの客室、オフィス、住宅、又は、乗用車などの車両などにも適用され得る。
【００３３】
図１は、本実施の形態における管理システム１の構成を示すブロック図である。
【００３４】
図１に示されるように、管理システム１は、サーバ１０Ａ、１０Ｂ、・・・、１０Ｅと、端末２１及び２２と、格納器３０とを備える。なお、サーバ１０Ａ、１０Ｂ、・・・、１０Ｅを「サーバ１０Ａ等」ともいい、サーバ１０Ａ等のそれぞれを「サーバ１０」ともいう。
【００３５】
管理システム１は、格納器３０を利用してユーザＵ１からユーザＵ２に物品５を渡す場合に、格納器３０の解施錠を管理するシステムである。例えば、格納器３０が宅配ボックスであり、管理システム１が宅配ボックスの解施錠を管理する場合を想定して説明する。例えば、宅配業者を経由して受取人が物品５を受け取る場合、ユーザＵ１が宅配業者に相当し、ユーザＵ２が受取人に相当する。
【００３６】
サーバ１０Ａ等それぞれは、格納器３０の解錠又は施錠をコンピュータ上で分散台帳によって管理する情報処理装置であるサーバ装置である。サーバ１０Ａ等それぞれは、解錠又は施錠の管理のための台帳を保有しており、自装置が保有している台帳と、他のサーバ１０Ａ等が保有している台帳との同期をとりながら台帳を更新している。分散台帳は、記録されている情報の改ざんが困難である利点があるブロックチェーン技術により実現され得る。
【００３７】
サーバ１０Ａ等が保有している台帳には、格納器３０が解錠状態であるか、または、施錠状態であるかを示す情報と、格納器３０の解施錠をする権限を有する者である鍵保有者が誰であるかを示す鍵保有者情報とが格納されている。サーバ１０Ａ等は、ネットワークＮを介して端末２１及び２２、並びに格納器３０と通信可能に接続されている。サーバ１０Ａ等は互いに通信できるようにネットワークＭで接続されている。なお、ネットワークＭは、ネットワークＮと接続されていてもよいし、ネットワークＮであってもよい。
【００３８】
なお、格納器３０の解施錠を管理する機能、及び、鍵保有者を管理する機能は、通常のコンピュータプログラムコードの実行によって実現されてもよいし、台帳に記録されたプログラムコードであるコントラクトコードの実行、言い換えればスマートコントラクトによって実現されてもよい。
【００３９】
端末２１及び２２は、格納器３０の解錠又は施錠のための操作をユーザから受け、サーバ１０Ａなどに情報を送信する情報処理端末である。ここでは、端末２１は、物品５を渡すユーザＵ１が保有する端末であるとし、端末２２は、物品５を受け取るユーザＵ２が保有する端末であるとする。端末２１及び２２は、スマートフォン、パーソナルコンピュータなどである。
【００４０】
格納器３０は、ユーザＵ１からユーザＵ２に物品５が渡されるときに用いられる、物品５の一時的な格納場所である。格納器３０の解施錠をすることができる権限を有する者は所定の人数に限定されることが想定される。所定の人数は、例えば１人であり、この場合を例として説明するが、所定の人数は１人に限られない。
【００４１】
格納器３０は、物品５を収容する収容室を少なくとも有する。格納器３０は、ユーザＵ１による操作に基づいて解錠され、ユーザＵ１により物品５が格納された後に施錠される。その後、ユーザＵ２による操作に基づいて解錠され、ユーザＵ２により物品５が搬出される。
【００４２】
以降の説明では、ユーザＵ１が物品５を格納器３０に収容するときの管理システム１の処理を例として説明するが、物品５を格納器３０から搬出するときにも同様の説明が成立する。
【００４３】
図２は、本実施の形態におけるサーバ１０の機能の構成を示すブロック図である。
【００４４】
図２に示されるように、サーバ１０は、受付部１１と、解施錠管理部１２と、台帳記憶部１４と、同期部１５とを備える。
【００４５】
受付部１１は、格納器３０の解錠又は施錠である解施錠の要求を受け付ける処理部である。受付部１１は、プロセッサが所定のプログラムを実行することで実現され得る。
【００４６】
受付部１１は、通信インタフェースを介してユーザＵ１の端末２１から、解施錠の要求を示す要求情報（第一要求情報ともいう）を受け付ける。受付部１１は、要求情報を受け付けると、要求情報の送信者であるユーザＵ１を認証するための認証処理を行う。認証処理には、端末２１の識別情報などが用いられ、ＰＫＩ（Ｐｕｂｌｉｃ−Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）技術などの公知の技術が適用され得る。ユーザＵ１の認証が成功したら、受付部１１は、要求情報を解施錠管理部１２に提供する。
【００４７】
解施錠管理部１２は、格納器３０の解施錠を管理する処理部である。解施錠管理部１２は、プロセッサが所定のプログラムを実行することで実現され得る。解施錠管理部１２は、鍵保有者と、要求情報の送信元である端末の所有者とが一致するか否かを判定する判定部１３を有する。具体的には、判定部１３は、端末２１から開施錠の要求を示す要求情報を受けた場合に、台帳記憶部１４に格納された鍵保有者情報を読み出すことで得られる鍵保有者と、要求情報の送信元である端末の所有者とが一致するか否かを判定する。
【００４８】
また、解施錠管理部１２は、鍵保有者と所有者とが一致すると判定部１３が判定した場合に、要求情報に係る開施錠を格納器３０に実行させるための解施錠処理を実行する。解施錠処理では、解施錠管理部１２は、解錠命令又は施錠命令である解施錠命令を格納器３０に送信する。
【００４９】
台帳記憶部１４は、分散台帳を記憶している記憶部である。台帳記憶部１４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの記憶装置、及び、プロセッサが所定のプログラムを実行することで実現する機能により実現される。分散台帳は、トランザクションデータをブロックに含めて格納するブロックチェーンにより実現される。台帳記憶部１４には、解施錠履歴１７と、鍵保有者履歴１８とが格納されている。台帳記憶部１４に格納された解施錠履歴１７のうちの最新のデータが、現時点の格納器３０の解施錠状態を表している。また、台帳記憶部１４に格納された鍵保有者履歴１８のうちの最新のデータが、現時点の格納器３０の鍵保有者を表している。
【００５０】
同期部１５は、複数のサーバ１０間で台帳記憶部１４の同期をとりながら、台帳記憶部１４にトランザクションデータを格納する処理部である。同期部１５は、プロセッサが、所定のプログラムを実行することで実現され得る。
【００５１】
同期部１５は、解施錠管理部１２による解施錠処理の実行後に、解施錠処理を実行したことを示すトランザクションデータを解施錠履歴１７に格納する。ここで、格納に係る処理を第一格納処理ともいう。第一格納処理を行う際には、所定時間間隔でコンセンサスアルゴリズムに基づいて他のサーバ１０との間で合意形成を試みる。そして、同期部１５は、合意形成に成功した場合に、記録単位であるブロックに新たな情報を含めて台帳記憶部１４に格納する。同期部１５が他のサーバ１０と合意形成をするには、数分〜数１０分程度の時間を要する。コンセンサスアルゴリズムには、ＰＢＦＴ（Ｐｒａｃｔｉｃａｌ  Ｂｙｚａｎｔｉｎｅ  Ｆａｕｌｔ  Ｔｏｌｅｒａｎｃｅ）など、従来提案されているものが適用され得る。
【００５２】
図３は、ブロックチェーンのデータ構造を示す説明図である。図３には、ブロックチェーンに含まれるブロックのうちの３つのブロックＢ１、Ｂ２及びＢ３が示されている。
【００５３】
ブロックチェーンは、その記録単位であるブロックがチェーン（鎖）上に接続されたものである。それぞれのブロックは、複数のトランザクションデータと、直前のブロックのハッシュ値とを有している。具体的には、ブロックＢ２には、その前のブロックＢ１のハッシュ値が含まれている。そして、ブロックＢ２に含まれる複数のトランザクションデータと、ブロックＢ１のハッシュ値とから演算されたハッシュ値が、ブロックＢ２のハッシュ値としてブロックＢ３に含められる。このように、前のブロックの内容をハッシュ値として含めながら、ブロックをチェーン状に接続することで、記憶されているトランザクションデータの改ざんを有効に防止する。
【００５４】
仮に、ブロックチェーンに格納されている過去のトランザクションデータが変更されると、ブロックのハッシュ値が変更前と異なる値になり、改ざんしたブロックを正しいものとみせかけるには、それ以降のブロックすべてを作り直さなければならず、この作業は現実的には非常に困難である。
【００５５】
図４は、トランザクションデータＤ１のデータ構造を示す説明図である。
【００５６】
図４に示されるトランザクションデータＤ１は、トランザクションの内容を示すデータフィールドＤ２と、署名フィールドＤ３とを含んでいる。
【００５７】
データフィールドＤ２には、解施錠の実行の履歴を示すデータ、又は、鍵保有者の変更の履歴を示すデータが含まれる。
【００５８】
署名フィールドＤ３には、データフィールドＤ２に含まれるデータのハッシュ値を、データフィールドＤ２を生成した者の署名鍵で暗号化することで生成される電子署名が含まれる。
【００５９】
解施錠の実行を示すデータを含むトランザクションデータＤ１が解施錠履歴１７に相当し、鍵保有者の変更を示すデータを含むトランザクションデータＤ１が鍵保有者履歴１８に相当する。
【００６０】
図５は、本実施の形態における格納器３０の構成を模式的に示すブロック図である。
【００６１】
図５に示されるように格納器３０は、通信部３１と、解施錠制御部３２とを備える。
【００６２】
通信部３１は、他の装置と通信可能に接続される通信インタフェース装置である。通信部３１は、ネットワークＮに接続され、ネットワークＮを介してサーバ１０と通信可能である。
【００６３】
解施錠制御部３２は、格納器３０を解錠するか、又は、施錠するかを制御する。解施錠制御部３２は、通信部３１を介してサーバ１０の解施錠管理部１２から解錠命令を受信すると、受信した解錠命令に従って格納器３０を解錠する。また、サーバ１０の解施錠管理部１２から施錠命令を受信すると、受信した施錠命令に従って格納器３０を施錠する。
【００６４】
以上のように構成された管理システム１の処理について、比較例と対比して説明する。
【００６５】
図６は、本実施の形態における管理システム１の解施錠の処理を示すフロー図である。図６に示される一連の処理は、格納器３０が施錠されている状態において、ユーザＵ１が格納器３０を解錠するときの処理を示している。
【００６６】
図６に示されるように、ステップＳ１０１において、受付部１１は、端末２１から解錠又は施錠の要求である解施錠要求を受信したか否かを判定する。解施錠要求を受信したと判定した場合（ステップＳ１０１でＹｅｓ）には、ステップＳ１０２に進み、そうでない場合（ステップＳ１０１でＮｏ）には、ステップＳ１０１を再び実行する。つまり、受付部１１は、端末２１から解施錠要求を受信するまでステップＳ１０１で待機する。ここでは、解錠要求を受信したとして以降の説明を進める。
【００６７】
ステップＳ１０２において、受付部１１は、ステップＳ１０１で受信した解錠要求の送信者であるユーザＵ１の認証処理を行い、認証処理が成功するか否かを判定する。認証処理が成功したと判定した場合（ステップＳ１０２でＹｅｓ）には、ステップＳ１０３に進み、そうでない場合（ステップＳ１０２でＮｏ）には、図６に示される一連の処理を終了する。
【００６８】
ステップＳ１０３において、判定部１３は、ステップＳ１０１で受信した解錠要求の送信元である端末２１のユーザＵ１と、現時点の鍵保有者とが一致するか否かを判定する。現時点の鍵保有者は、台帳記憶部１４の鍵保有者履歴１８を読み出すことで得られる。
【００６９】
ステップＳ１０４において、判定部１３は、ステップＳ１０３で解錠要求の送信者と現時点の鍵保有者とが一致すると判定した場合（ステップＳ１０４でＹｅｓ）には、ステップＳ１０５に進み、そうでない場合（ステップＳ１０４でＮｏ）には、ステップＳ１０６に進む。
【００７０】
ステップＳ１０５において、解施錠管理部１２は、ステップＳ１０１で受信した解錠要求に基づいて、格納器３０に解錠命令を送信する。
【００７１】
ステップＳ１０６において、解施錠管理部１２は、格納器３０を解錠したことを示す履歴情報を台帳記憶部１４の解施錠履歴１７に格納する。解施錠履歴１７の格納は、解施錠履歴１７の更新情報を他のサーバ１０などに送信し、コンセンサスアルゴリズムによって合意形成をしたうえでなされる。なお、ステップＳ１０６で履歴情報を解施錠履歴１７に格納することは、ステップＳ１０５で送信された解錠命令に対して、格納器３０が実際に解錠を実行したことを示す結果情報を受信した場合に限り、なされてもよい。
【００７２】
なお、上記では、施錠されている格納器３０を解錠する際の処理を説明したが、解錠されている格納器３０を施錠する際の処理も同様になされる。その場合、上記説明における解錠要求及び解錠命令をそれぞれ、施錠要求及び施錠命令に適宜読み替える。
【００７３】
なお、図６ではステップＳ１０１からステップＳ１０６までの一連の処理を実行すると説明しているが、ステップＳ１０１からＳ１０５までの解錠処理を一連の処理として実行し、その処理とは独立のタイミングでステップＳ１０６の格納及び合意形成処理を実行してもよい。
【００７４】
図７は、本実施の形態における格納器３０の解施錠の処理を示すフロー図である。
【００７５】
図７に示されるように、ステップＳ２０１において、解施錠制御部３２は、サーバ１０から解施錠命令を受信したか否かを判定する。解施錠命令を受信した場合にはステップＳ２０２に進み、そうでない場合には、ステップＳ２０１を再び実行する。つまり、解施錠制御部３２は、サーバ１０から解施錠命令を受信するまでステップＳ２０１で待機する。
【００７６】
ステップＳ２０２において、解施錠制御部３２は、ステップＳ２０１で受信した解施錠命令に基づいて格納器３０の解錠又は施錠を実行する。ステップＳ２０２の処理を終えたら、ステップＳ２０１を再び実行する。
【００７７】
次に比較例における管理システムの解施錠の処理を説明する。比較例における管理システムは、従来の管理システムに相当するシステムの一例であり、本実施の形態の管理システム１と解施錠履歴を格納するタイミングが異なる。以降の説明において、比較例における管理システムの構成要素は、本実施の形態の管理システム１と同じ名称とし符号を付さずに説明する。
【００７８】
図８は、比較例における管理システムの解施錠の処理を示すフロー図である。
【００７９】
ステップＳ３０１及びＳ３０２は、管理システム１のステップＳ１０１及びＳ１０２の処理と同じである。ここでは、ステップＳ３０１で解錠要求を受信したとして以降の説明を進める。
【００８０】
ステップＳ３０３において、解施錠管理部は、ステップＳ３０１で受信した解施錠の要求情報を台帳管理部の解施錠履歴に格納する。解施錠履歴の格納は、解施錠履歴の更新情報を他のサーバに送信し、コンセンサスアルゴリズムによって合意形成をしたうえでなされる。
【００８１】
ステップＳ３０４において、判定部は、ステップＳ３０１で受信した解錠要求の送信者と、現時点の鍵保有者とが一致するか否かを判定する。現時点の鍵保有者は、台帳記憶部の鍵保有者情報を読み出すことで得られる。
【００８２】
ステップＳ３０５において、判定部は、ステップＳ３０４で解錠要求の送信者と現時点の鍵保有者とが一致すると判定した場合（ステップＳ３０５でＹｅｓ）には、ステップＳ３０６に進み、そうでない場合（ステップＳ３０５でＮｏ）には、図８に示されている一連の処理を終了する。
【００８３】
ステップＳ３０６において、解施錠管理部は、ステップＳ３０１で受信した解錠要求に基づいて、格納器３０に解錠命令を送信する。
【００８４】
このように、比較例における管理システムでは、ステップＳ３０３における合意形成に係る処理に数分〜数１０分程度の時間を要する。つまり、解施錠要求を受信してから、格納器３０の解施錠が実際になされるまで、数分〜数１０分程度を超える時間を要する。
【００８５】
一方、本実施の形態の管理システム１では、解施錠要求を受信してから格納器３０の解施錠が実際になされるまでに合意形成に係る処理が含まれていない。そのため、解施錠要求を受信してから、格納器３０の解施錠が実際になされるまでの時間が比較的短い時間、例えば１秒程度以下に短縮し得る。
【００８６】
なお、上記では、ユーザＵ１が物品５を格納器３０に収容するときの管理システム１の処理に着目して説明したが、ユーザＵ２が物品５を格納器３０から搬出するときにも同様の説明が成立する。
【００８７】
以上のように、本実施の形態に係る制御方法によれば、格納器の解施錠の要求を受けてから解施錠の実行までの間にトランザクションデータをブロックチェーンに格納する処理が含まれない。よって、本発明の一態様に係る制御方法によれば、格納器の解施錠に要する時間を削減し得る。
【００８８】
また、格納器の解施錠が実際に実行された場合に限り解施錠履歴が更新される。よって、何らかの事情によって解施錠が実際には実行されたかった場合に解施錠履歴が更新されることを回避しながら、格納器の解施錠に要する時間を削減し得る。
【００８９】
また、管理システムは、複数のサーバによって合意形成がなされたブロックをブロックチェーンに格納することができる。
【００９０】
（実施の形態２）
本実施の形態では、格納器の解施錠に要する時間を削減し得る制御方法などについて、鍵保有者の変更後に適切に格納器を解施錠し得る技術を説明する。
【００９１】
本実施の形態におけるサーバ１０Ｆは、実施の形態１におけるサーバ１０と一部が異なる。以降では、サーバ１０Ｆなどについて、サーバ１０と異なる部分を主に説明する。
【００９２】
図９は、本実施の形態におけるサーバ１０Ｆの機能の構成を示すブロック図である。
【００９３】
図９に示されるように、サーバ１０Ｆは、受付部１１と、解施錠管理部１２と、台帳記憶部１４と、同期部１５Ａとを備える。サーバ１０Ｆの機能の構成のうち、同期部１５Ａが、サーバ１０の同期部１５と異なる。
【００９４】
同期部１５Ａは、実施の形態１の同期部１５と同様の機能を備え、さらに、検出部１５Ｂを備える。
【００９５】
同期部１５Ａは、同期部１５と同様に、台帳記憶部１４に記憶すべき情報を、他のサーバ１０Ｆ等との合意形成を経て、台帳記憶部１４に記憶する。同期部１５Ａが台帳記憶部１４に記憶すべき情報として有する情報は、解施錠の要求を示す要求情報と、鍵保有者の変更の要求を示す要求情報（第二要求情報ともいう）である。ここで、鍵保有者の変更の要求を示すトランザクションデータについて他のサーバ１０Ｆと合意形成を経て台帳記憶部１４に記憶する処理を第二格納処理ともいう。
【００９６】
検出部１５Ｂは、同期部１５Ａが一時的に保有している、台帳記憶部１４に記憶すべき情報のうちから、鍵保有者の変更の要求を示すトランザクションデータを検出する処理部である。
【００９７】
同期部１５Ａは、格納器３０の解施錠の要求情報を受けた場合には、台帳記憶部１４に記憶すべき情報のうちから、鍵保有者の変更の要求を示すトランザクションデータを格納する第二格納処理が実行されている最中であるか否かを検出部１５Ｂにより判定する。そして、検出部１５Ｂによる判定の結果に応じて、格納器３０の解施錠処理の実行を制御する。
【００９８】
解施錠処理の実行の制御は、例えば、第一要求情報に係る解施錠処理を格納器３０に実行させることを禁止することを含んでもよい。
【００９９】
また、解施錠処理の実行の制御は、例えば、第二格納処理が終了するまで待機し、第二格納処理が終了した後で解施錠処理を実行することを含んでもよい。
【０１００】
また、解施錠処理の実行の制御は、例えば、第二格納処理が終了するまで待機することを示す画像を表示することを含んでもよい。画像の表示は、例えば、ユーザＵ１の端末２１によりなされる。その場合、同期部１５Ａは、通信インタフェース（不図示）を介して上記画像を表示するための信号を端末２１に送信する。
【０１０１】
図１０は、本実施の形態における管理システム２の鍵の保有者変更の処理を示すフロー図である。
【０１０２】
図１０に示されるように、ステップＳ４０１において、受付部１１は、端末２１から鍵保有者の変更要求（単に、変更要求ともいう）を受信したか否かを判定する。変更要求を受信したと判定した場合（ステップＳ４０１でＹｅｓ）には、ステップＳ４０２に進み、そうでない場合（ステップＳ４０１でＮｏ）には、ステップＳ４０１を再び実行する。つまり、受付部１１は、端末２１から変更要求を受信するまでステップＳ４０１で待機する。
【０１０３】
ステップＳ４０２において、受付部１１は、ステップＳ４０１で受信した変更要求の送信者であるユーザＵ１の認証処理を行い、認証処理が成功するか否かを判定する。認証処理が成功したと判定した場合（ステップＳ４０２でＹｅｓ）には、ステップＳ４０３に進み、そうでない場合（ステップＳ４０２でＮｏ）には、図１０に示される一連の処理を終了する。
【０１０４】
ステップＳ４０３において、解施錠管理部１２は、ステップＳ４０１で受信した変更要求に基づいて鍵保有者を変更する処理を行う。具体的には、解施錠管理部１２は、鍵保有者の変更の要求を示すトランザクションデータを鍵保有者履歴１８に格納する格納処理を行う。格納処理では、上記トランザクションデータを生成し、同期部１５Ａにより他のサーバ１０Ｆとコンセンサスアルゴリズムにより合意形成をしたうえで、上記トランザクションデータを鍵保有者履歴１８に格納する。合意形成に必要な時間は、ブロックチェーンソフトウェアの種別によって異なるが、例えば数分〜数１０分程度である。
【０１０５】
そのため、ステップＳ４０１で変更要求を受信してからステップＳ４０３で鍵保有者の履歴情報を台帳記憶部１４に格納するまでの間、ユーザからの変更要求が鍵保有者履歴１８に反映されない状態になる。この状態を未反映状態ともいう。
【０１０６】
仮に、ユーザＵ１からユーザＵ２への鍵保有者の変更が未反映である未反映状態においてユーザＵ２から格納器３０の解施錠の要求を受けると、その要求に係る解施錠を実行することができない。
【０１０７】
図１１は、本実施の形態における管理システム２の解施錠の処理を示すフロー図である。図１１に示される一連の処理は、実施の形態１の管理システム１の解施錠の処理（図６参照）と一部が異なる。
【０１０８】
図１１に示されるステップＳ１０１〜Ｓ１０４、及び、Ｓ１０５〜Ｓ１０６は、図６に示される同名のステップと同じである。
【０１０９】
ステップＳ１０４Ａにおいて、検出部１５Ｂは、同期部１５Ａが保有している、台帳記憶部１４に記憶すべき情報のうちから、鍵保有者の変更の要求を示すトランザクションデータを検出することを試みる。同期部１５Ａは、上記トランザクションデータを検出部１５Ｂが検出したか否かを判定する。上記トランザクションデータを検出したと判定した場合（ステップＳ１０４ＡでＹｅｓ）には、ステップＳ１０４Ｂに進み、そうでない場合（ステップＳ１０４ＡでＮｏ）には、ステップＳ１０５に進む。
【０１１０】
ステップＳ１０５Ｂにおいて、管理システム２は、所定の処理を行う。例えば、所定の処理は、この時点で図１１に示される一連の処理を終了することである。この処理を実行することは、ステップＳ１０１で受信した、格納器３０の解施錠処理の実行が禁止されるように制御することに相当する。
【０１１１】
また、所定の処理は、所定時間待機することであってもよい。所定時間待機するようにすれば、所定時間経過後に再び検出部１５ＢがステップＳ１０４Ａを実行することになる。その結果、解施錠管理部１２は、変更要求が反映されるまで格納器３０の解施錠処理を待機し、待機した後で解施錠命令の送信処理を実行するように制御することになる。
【０１１２】
図１１に示される処理によれば、上記の未反映状態における解施錠処理を禁止又は待機させることができる。これにより、未反映状態において解施錠に係る処理を実行することが回避される利点がある。
【０１１３】
以上のように、本実施の形態に係る制御方法によれば、鍵保有者の変更に係る処理が実行されている最中であることによる、鍵保有者変更の未反映状態において、格納器の解施錠の実行を制御することができる。よって、未反映状態において不適切な格納器の解施錠が行われことを回避しながら、格納器の解施錠に要する時間を削減し得る。
【０１１４】
また、未反映状態における解施錠の実行の制御として、その解施錠処理を禁止する。これにより、より容易に、未反映状態において不適切な格納器の解施錠が行われことを回避し得る。
【０１１５】
また、未反映状態における解施錠の実行の制御として、未反映状態が終了するまでその解施錠処理を待機し、鍵保有者変更が反映された後に解施錠の実行を行う。これにより、より容易に、未反映状態において不適切な格納器の解施錠が行われことを回避し得る。
【０１１６】
また、未反映状態における解施錠の実行の制御として未反映状態が終了するまで解錠処理を待機する場合に、表示画像によってそのことをユーザに伝えることができる。これにより、未反映状態の終了まで待機していることをユーザに認識させることができる。また、この表示がない場合にユーザが誤認識をして行い得る不適切な操作などを未然に回避できる。
【０１１７】
（各実施の形態の変形例）
本変形例では、上記各実施の形態の変形例に係る制御方法及び情報処理装置を説明する。
【０１１８】
図１２は、本変形例における制御方法を示すフロー図である。
【０１１９】
図１２に示されるように、本変形例における制御方法は、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法である。ここで、ブロックチェーンには、格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されている。
【０１２０】
ステップＳ５０１において、端末から解施錠の要求を示す第一要求情報を受けた場合に、ブロックチェーンに格納された鍵保有者情報を読み出すことで得られる鍵保有者と、第一要求情報の送信元である端末の所有者とが一致するか否かを判定する。鍵保有者と前記所有者とが一致すると判定した場合にステップＳ５０２に進む。
【０１２１】
ステップＳ５０２において、第一要求情報に係る解施錠を格納器に実行させるための解施錠処理を実行する。
【０１２２】
ステップＳ５０３において、解施錠処理の実行後に、解施錠処理を実行したことを示すトランザクションデータをブロックチェーンに格納する第一格納処理を実行する。
【０１２３】
これにより、格納器の解施錠に要する時間を削減することができる。
【０１２４】
図１３は、本変形例における情報処理装置１０Ｇの構成を示すブロック図である。
【０１２５】
図１３に示されるように、本変形例に係る情報処理装置１０Ｇは、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する、複数の情報処理装置のうちの一の情報処理装置１０Ｇである。
【０１２６】
情報処理装置１０Ｇは、プロセッサ４１と、メモリ４２と、ブロックチェーンによる分散台帳が記憶されている記憶装置４３とを備える。ブロックチェーンには、格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されている。
【０１２７】
プロセッサ４１は、メモリ４２を用いて、端末から解施錠の要求を示す第一要求情報を受けた場合に、ブロックチェーンに格納された鍵保有者情報を読み出すことで得られる鍵保有者と、第一要求情報の送信元である端末の所有者とが一致するか否かを判定する。
【０１２８】
また、プロセッサ４１は、メモリ４２を用いて、鍵保有者と所有者とが一致すると判定した場合に、第一要求情報に係る解施錠を格納器に実行させるための解施錠処理を実行する。
【０１２９】
また、プロセッサ４１は、メモリ４２を用いて、解施錠処理の実行後に、解施錠処理を実行したことを示すトランザクションデータをブロックチェーンに格納する第一格納処理を実行する。
【０１３０】
これにより、格納器の解施錠に要する時間を削減することができる。
【０１３１】
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態の情報処理装置などを実現するソフトウェアは、次のようなプログラムである。
【０１３２】
すなわち、このプログラムは、コンピュータに、格納器の解錠又は施錠である解施錠をブロックチェーンを用いて制御する制御方法であって、前記ブロックチェーンには、前記格納器の解施錠をする権限を有する者を示す鍵保有者情報が格納されており、端末から解施錠の要求を示す第一要求情報を受けた場合に、前記ブロックチェーンに格納された前記鍵保有者情報を読み出すことで得られる鍵保有者と、前記第一要求情報の送信元である端末の所有者とが一致するか否かを判定し、前記鍵保有者と前記所有者とが一致すると判定した場合に、前記第一要求情報に係る解施錠を前記格納器に実行させるための解施錠処理を実行し、前記解施錠処理の実行後に、前記解施錠処理を実行したことを示すトランザクションデータを前記ブロックチェーンに格納する第一格納処理を実行する制御方法を実行させる。
【０１３３】
以上、一つまたは複数の態様に係る制御方法などについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０１３４】
本発明は、格納器の解施錠に要する時間を削減し得る制御方法などに利用可能である。具体的には、公衆の利用に供するロッカーなどに利用可能である。
【符号の説明】
【０１３５】
１、２    管理システム
５    物品
１０、１０Ａ、１０Ｂ、１０Ｃ、１０Ｄ、１０Ｅ、１０Ｆ    サーバ
１０Ｇ    情報処理装置
１１    受付部
１２    解施錠管理部
１３    判定部
１４    台帳記憶部
１５、１５Ａ    同期部
１５Ｂ    検出部
１７    解施錠履歴
１８    鍵保有者履歴
２１、２２    端末
３０    格納器
３１    通信部
３２    解施錠制御部
４１    プロセッサ
４２    メモリ
４３    記憶装置
Ｂ１、Ｂ２、Ｂ３    ブロック
Ｄ１    トランザクションデータ
Ｄ２    データフィールド
Ｄ３    署名フィールド
Ｎ、Ｍ    ネットワーク
Ｕ１、Ｕ２    ユーザ
【図１】
2019181149.tif 000003
【図２】
2019181149.tif 000004
【図３】
2019181149.tif 000005
【図４】
2019181149.tif 000006
【図５】
2019181149.tif 000007
【図６】
2019181149.tif 000008
【図７】
2019181149.tif 000009
【図８】
2019181149.tif 000010
【図９】
2019181149.tif 000011
【図１０】
2019181149.tif 000012
【図１１】
2019181149.tif 000013
【図１２】
2019181149.tif 000014
【図１３】
2019181149.tif 000015