(57)【特許請求の範囲】
【請求項１】
ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うための利用権情報処理装置であって、
前記ユーザーが使用するユーザー端末との間で共有され、前記処理ごとに異なる値を有する認証用データを記憶する記憶部と、
前記ユーザー端末において前記ユーザーに対応する秘密鍵を用いて、所定の署名アルゴリズムによって前記認証用データを署名することによって生成された署名データを、前記ユーザー端末から受信する受信部と、
前記受信部において受信された前記署名データおよび前記認証用データから、前記所定の署名アルゴリズムを用いて前記秘密鍵に対応する公開鍵を導出する導出部と、
前記公開鍵または前記公開鍵に対応する識別情報を用いて、前記スマートコントラクトにおいて前記公開鍵または前記識別情報に関連付けて予め記録された前記ユーザーの前記機器の利用権に関する情報を取得する取得部と、
を有し、
前記取得部によって取得された前記利用権に関する情報に基づいて前記ユーザーによる前記機器の利用が可能と判断された場合に、アクセストークンを生成して前記ユーザー端末に送信するトークン生成部と、
前記ユーザー端末から制御指示と共にアクセストークンを受け付けた前記機器から、アクセストークンを受信し、前記機器から受信したアクセストークンと前記トークン生成部によって生成されたアクセストークンとが同一であるか否かを判断し、同一である場合に前記アクセストークンが正当である旨を示す情報を前記機器に送信する正当性確認部をさらに有する利用権情報処理装置。
【請求項２】
ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うための利用権情報処理装置であって、
前記ユーザーが使用するユーザー端末との間で共有され、前記処理ごとに異なる値を有する認証用データを記憶する記憶部と、
前記ユーザー端末において前記ユーザーに対応する秘密鍵を用いて、所定の署名アルゴリズムによって前記認証用データを署名することによって生成された署名データを、前記ユーザー端末から受信する受信部と、
前記受信部において受信された前記署名データおよび前記認証用データから、前記所定の署名アルゴリズムを用いて前記秘密鍵に対応する公開鍵を導出する導出部と、
前記公開鍵または前記公開鍵に対応する識別情報を用いて、前記スマートコントラクトにおいて前記公開鍵または前記識別情報に関連付けて予め記録された前記ユーザーの前記機器の利用権に関する情報を取得する取得部と、
を有し、
前記受信部は、前記ユーザー端末から前記機器に対する制御指示をさらに受信し、
前記取得部によって取得された前記利用権に関する情報に基づいて前記ユーザーによる前記機器の利用が可能と判断された場合に、前記機器に対して前記制御指示を送信する機器制御部をさらに有する利用権情報処理装置。
【請求項３】
ユーザーが使用するユーザー端末からの要求に基づいて前記認証用データを生成し、生成された前記認証用データを前記ユーザー端末に送信することによって前記認証用データを前記ユーザー端末との間で共有させる認証用データ生成部をさらに有する請求項１または２に記載の利用権情報処理装置。
【請求項４】
前記取得部によって取得された前記利用権に関する情報に基づいて、前記ユーザーによる前記機器の利用可否を判断する判断部をさらに有する請求項１〜３のいずれかに記載の利用権情報処理装置。
【請求項５】
前記所定の署名アルゴリズムは、前記署名データおよび前記認証用データから前記公開鍵を導出可能である楕円曲線デジタル署名アルゴリズムである請求項１〜４のいずれかに記載の利用権情報処理装置。
【請求項６】
前記識別情報は、前記公開鍵から一意に導出可能なアドレス情報である請求項１〜５のいずれかに記載の利用権情報処理装置。
【請求項７】
前記スマートコントラクトにおいて、前記公開鍵または前記識別情報に関連付けて、前記機器の利用権に関する情報として、利用可能時間に関する情報が記録される請求項１〜６のいずれかに記載の利用権情報処理装置。
【請求項８】
前記スマートコントラクトにおいて、前記公開鍵または前記識別情報に関連付けて、前記機器の利用権に関する情報として、利用可能回数に関する情報が記録される請求項１〜７のいずれかに記載の利用権情報処理装置。
【請求項９】
前記アクセストークンは、前記処理ごとにユニークに生成されるデータであり、利用期限に関する情報を含む請求項１に記載の利用権情報処理装置。
【請求項１０】
請求項１〜９のいずれかに記載の利用権情報処理装置と、
ユーザーによって使用されるユーザー端末と、
を有する利用権情報処理システムであって、
前記ユーザー端末は、
前記ユーザーからの指示に基づいて、前記機器を利用するための要求を前記利用権情報処理装置に送信し、
前記ユーザーに対応する秘密鍵を用いて、楕円曲線デジタル署名アルゴリズムによって前記利用権情報処理装置と共有される認証用データに署名して署名データを生成し、生成された前記署名データを前記利用権情報処理装置に送信する利用権情報処理システム。
【請求項１１】
制御対象となる機器をさらに有し、
前記ユーザー端末は、
前記利用権情報処理装置の前記トークン生成部によって生成された前記アクセストークンを前記利用権情報処理装置から受信し、
前記ユーザーから前記機器を制御するための制御指示を受け付け、当該制御指示を、前記利用権情報処理装置から受信した前記アクセストークンと共に前記機器に送信し、
前記機器は、
前記ユーザー端末から受信した前記アクセストークンを前記利用権情報処理装置に送信し、
前記利用権情報処理装置の前記正当性確認部から当該アクセストークンが正当である旨を示す情報を受信した場合に、前記制御指示に対応する制御を実行する請求項１または９を引用する請求項１０に記載の利用権情報処理システム。
【請求項１２】
ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うための利用権情報処理方法であって、
前記ユーザーが使用するユーザー端末との間で共有され、前記処理ごとに異なる値を有する認証用データを記憶するステップ（ａ）と、
前記ユーザー端末において前記ユーザーに対応する秘密鍵を用いて所定の署名アルゴリズムによって前記認証用データを署名することによって生成された署名データを、前記ユーザー端末から受信するステップ（ｂ）と、
前記ステップ（ｂ）において受信された前記署名データおよび前記認証用データから、前記所定の署名アルゴリズムを用いて前記秘密鍵に対応する公開鍵を導出するステップ（ｃ）と、
前記公開鍵または前記公開鍵に対応する識別情報を用いて、前記スマートコントラクトにおいて前記公開鍵または前記識別情報に関連付けて予め記録された前記ユーザーの前記機器の利用権に関する情報を取得するステップ（ｄ）と、
前記ステップ（ｄ）によって取得された前記利用権に関する情報に基づいて前記ユーザーによる前記機器の利用が可能と判断された場合に、アクセストークンを生成して前記ユーザー端末に送信するステップ（ｅ）と、
前記ユーザー端末から制御指示と共にアクセストークンを受け付けた前記機器から、アクセストークンを受信し、前記機器から受信したアクセストークンと前記ステップ（ｅ）において生成されたアクセストークンとが同一であるか否かを判断し、同一である場合に前記アクセストークンが正当である旨を示す情報を前記機器に送信するステップ（ｆ）と、
を有する利用権情報処理方法。
【請求項１３】
ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うための利用権情報処理方法であって、
前記ユーザーが使用するユーザー端末との間で共有され、前記処理ごとに異なる値を有する認証用データを記憶するステップ（ａ）と、
前記ユーザー端末において前記ユーザーに対応する秘密鍵を用いて所定の署名アルゴリズムによって前記認証用データを署名することによって生成された署名データを、前記ユーザー端末から受信するステップ（ｂ）と、
前記ステップ（ｂ）において受信された前記署名データおよび前記認証用データから、前記所定の署名アルゴリズムを用いて前記秘密鍵に対応する公開鍵を導出するステップ（ｃ）と、
前記公開鍵または前記公開鍵に対応する識別情報を用いて、前記スマートコントラクトにおいて前記公開鍵または前記識別情報に関連付けて予め記録された前記ユーザーの前記機器の利用権に関する情報を取得するステップ（ｄ）と、
を有し、
前記ステップ（ｂ）は、前記ユーザー端末から前記機器に対する制御指示をさらに受信し、
前記ステップ（ｄ）において取得された前記利用権に関する情報に基づいて前記ユーザーによる前記機器の利用が可能と判断された場合に、前記機器に対して前記制御指示を送信するステップ（ｇ）をさらに有する利用権情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スマートコントラクトに基づいた利用権情報処理装置、利用権情報処理システム、および利用権情報処理方法に関する。より具体的には、本発明は、電子署名検証およびスマートコントラクトの状態に基づき、サービスおよび装置の利用権を管理することを可能とする技術に関する。
【背景技術】
【０００２】
ブロックチェーンは、改竄が困難な方法でデータを記録する分散台帳技術である。【０００３】
スマートコントラクトは、ブロックチェーンの応用例であり、分散台帳上に管理するデータおよび処理条件をプログラムにより定義可能にするシステムであって、分散台帳上に記録されたデータの取得、および、分散台帳に格納されたトランザクションの内容に応じて、所定のプログラムの実行および分散台帳上のデータ変更を行うことを特徴とする（非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【非特許文献１】Ｅｔｈｅｒｅｕｍ  Ｙｅｌｌｏｗ  Ｐａｐｅｒ：ａ  ｆｏｒｍａｌ  ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  Ｅｔｈｅｒｅｕｍ，ａ  ｐｒｏｇｒａｍｍａｂｌｅ  ｂｌｏｃｋｃｈａｉｎ＜ＵＲＬ：ｈｔｔｐｓ：／／ｅｔｈｅｒｅｕｍ．ｇｉｔｈｕｂ．ｉｏ／ｙｅｌｌｏｗｐａｐｅｒ／ｐａｐｅｒ．ｐｄｆ＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、近年では、情報通信技術の発展や環境保全意識の高まり等に伴い、カーシェアリングやシェアオフィス等のように、様々なモノが、特定のユーザーに所有されるのではなく、不特定多数のユーザーに共有されて利用されることが多くなっている。【０００６】
このようなシェアリングを円滑に実行するためには、対象物の利用権、すなわち対象物を利用するための鍵をどのように管理し、どのように各ユーザーに受け渡すかが重要な課題となる。現在、利用権を受け渡す方法としては、物理的な鍵を用意して実際に各ユーザーに受け渡す方式と、ＷＥＢシステムを構築して電子的な鍵を各ユーザーに受け渡す方式がある。【０００７】
しかしながら、物理的な鍵を使用する方式は、管理や受け渡しに要する手間、破損や紛失等のリスクといった観点から望ましくない。また、近年主流となっているＷＥＢシステムを使用する方式は、認証サーバーをセキュアに構築し運用するためのコストや負荷が極めて高いという問題がある。【０００８】
本発明は、上記事情に鑑みてなされたものであり、認証サーバーを用いることなくセキュアにユーザーの利用権を管理し、正当なユーザーに対して適切に機器の利用を許可（認可）できるようにするための利用権情報処理装置、利用権情報処理システム、および利用権情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的は、下記の手段によって達成される。【００１０】
利用権情報処理装置は、ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うために設けられ、記憶部、受信部、導出部、および取得部を有する。記憶部は、ユーザーが使用するユーザー端末との間で共有され、処理ごとに異なる値を有する認証用データを記憶する。受信部は、ユーザー端末においてユーザーに対応する秘密鍵を用いて、所定の署名アルゴリズムによって認証用データを署名することによって生成された署名データを、ユーザー端末から受信する。導出部は、受信部において受信された署名データおよび認証用データから、楕円曲線デジタル署名アルゴリズムを用いて秘密鍵に対応する公開鍵を導出する。取得部は、公開鍵または公開鍵に対応する識別情報を用いて、スマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの機器の利用権に関する情報を取得する。【００１１】
利用権情報処理システムは、上記の利用権情報処理装置と、ユーザーによって使用されるユーザー端末と、を有する。ユーザー端末は、ユーザーからの指示に基づいて、機器を利用するための要求を利用権情報処理装置に送信し、ユーザーに対応する秘密鍵を用いて、楕円曲線デジタル署名アルゴリズムによって利用権情報処理装置と共有される認証用データに署名して署名データを生成し、生成された署名データを利用権情報処理装置に送信する。【００１２】
利用権情報処理方法は、ブロックチェーン上に記録されるコードをコンピューターが実行することによって機能するスマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行うように構成され、ユーザーが使用するユーザー端末との間で共有され、処理ごとに異なる値を有する認証用データを記憶するステップ（ａ）と、ユーザー端末においてユーザーに対応する秘密鍵を用いて所定の署名アルゴリズムによって認証用データを署名することによって生成された署名データを、ユーザー端末から受信するステップ（ｂ）と、ステップ（ｂ）において受信された署名データおよび認証用データから、楕円曲線デジタル署名アルゴリズムを用いて秘密鍵に対応する公開鍵を導出するステップ（ｃ）と、公開鍵または公開鍵に対応する識別情報を用いて、スマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの機器の利用権に関する情報を取得するステップ（ｄ）と、を有する。
【発明の効果】
【００１３】
本発明の利用権情報処理装置によれば、ユーザー端末から受信した署名データと、ユーザー端末に送信した認証用データから、秘密鍵に対応する公開鍵を導出する。そして、利用権情報処理装置は、公開鍵または公開鍵に対応する識別情報を用いて、スマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの機器の利用権に関する情報を取得する。これにより、構築および運用に莫大なコストと負荷のかかる認証サーバーを用いることなく、データ改竄耐性の高いブロックチェーン上のデータによってセキュアに利用権を管理することができ、正当なユーザーに対して適切に機器の利用を許可することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態に係る利用権情報処理装置が適用される利用権情報処理システムの概略構成を示す図である。
【図２】ユーザー端末の概略構成を示すブロック図である。
【図３】情報処理装置の概略構成を示すブロック図である。
【図４】制御対象機器の概略構成を示すブロック図である。
【図５】ピア・ツー・ピアネットワークに接続するノードとなるサーバーの概略構成を示すブロック図である。
【図６】情報処理装置のＣＰＵの機能構成を示すブロック図である。
【図７】利用権情報処理システムにおいて実行される利用権登録（購入）処理の手順を示すシーケンスチャートである。
【図８】ブロックチェーン上に記録されるアドレスごとの利用権情報の一例を示す図である。
【図９】利用権情報処理システムにおいて実行される認証および認可処理の手順の一例を示すシーケンスチャートである。
【図１０】利用権情報処理システムにおいて実行される認証および認可処理の手順の他の例を示すシーケンスチャートである。
【発明を実施するための形態】
【００１５】
以下、添付した図面を参照して、本発明の実施形態を説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【００１６】
＜利用権情報処理システムの構成＞
図１は、本発明の一実施形態に係る利用権情報処理装置が適用される利用権情報処理システムの概略構成を示す図である。
【００１７】
図１に示すように、利用権情報処理システムは、ユーザー端末１００、利用権情報処理装置として機能する情報処理装置２００、制御対象機器３００、およびピア・ツー・ピアネットワークに接続するノードとなるサーバー４００を有する。利用権情報処理システムは、認証サーバーを用いることなくセキュアに制御対象機器３００の利用権を管理して正当なユーザーに対して適切に制御対象機器３００の利用を許可するためのシステムである。ユーザー端末１００は、インターネット等のネットワークや各種無線通信等を介して情報処理装置２００、制御対象機器３００、サーバー４００等と相互に通信可能に接続されている。情報処理装置２００は、インターネット等のネットワークや各種無線通信等を介してユーザー端末１００、制御対象機器３００、サーバー４００等と相互に通信可能に接続されている。制御対象機器３００は、各種無線通信等を介してユーザー端末１００、情報処理装置２００と相互に通信可能に接続されている。サーバー４００は、インターネット等のネットワークや各種無線通信等を介してユーザー端末１００、情報処理装置２００と相互に通信可能に接続されている。また、サーバー４００は、ピア・ツー・ピアネットワークを介して他のサーバー４００ａ、４００ｂ等と相互に通信可能に接続されている。なお、各構成間の接続は、上記の例に限定されず、各構成同士が任意の方法によって接続されてもよい。
【００１８】
以下、各構成について詳細に説明する。
【００１９】
＜ユーザー端末１００＞
ユーザー端末１００は、ユーザーが使用するスマートフォン等のモバイル端末やノートＰＣ、デスクトップＰＣなどの情報端末である。
【００２０】
図２は、ユーザー端末の概略構成を示すブロック図である。
【００２１】
図２に示すように、ユーザー端末１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２０、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３０、ストレージ１４０、通信インターフェース１５０および操作表示部１６０を有する。各構成は、バス１７０を介して相互に通信可能に接続されている。
【００２２】
ＣＰＵ１１０は、ＲＯＭ１２０やストレージ１４０に記録されているプログラムにしたがって、上記各構成の制御や各種の演算処理を行う。
【００２３】
ＲＯＭ１２０は、各種プログラムや各種データを格納する。
【００２４】
ＲＡＭ１３０は、作業領域として一時的にプログラムやデータを記憶する。
【００２５】
ストレージ１４０は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。たとえば、ストレージ１４０には、ネットワークを介して情報処理装置２００等の他の装置との間で各種情報を送受信したり、他の装置から提供される各種情報を表示したりするためのアプリケーションがインストールされている。
【００２６】
通信インターフェース１５０は、情報処理装置２００等の外部機器と通信するためのインターフェースである。通信インターフェース１５０としては、たとえば、携帯電話通信用の３Ｇ、４Ｇ等の規格や、Ｗｉ−Ｆｉ（登録商標）等の規格が用いられる。通信インターフェース１５０として、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の近距離無線通信のための規格が用いられ、近接する近距離無線通信装置との通信が行われてもよい。
【００２７】
操作表示部１６０は、たとえば、タッチパネル式のディスプレイであり、各種情報を表示すると共に、ユーザーからの各種入力を受け付ける。
【００２８】
＜情報処理装置２００＞
情報処理装置２００は、たとえばサーバー等のコンピューターであり、本実施形態では利用権情報処理装置として機能する。
【００２９】
図３は、情報処理装置の概略構成を示すブロック図である。
【００３０】
図３に示すように、情報処理装置２００は、ＣＰＵ２１０、ＲＯＭ２２０、ＲＡＭ２３０、ストレージ２４０、通信インターフェース２５０および操作表示部２６０を有する。各構成は、バス２７０を介して相互に通信可能に接続されている。なお、ＣＰＵ２１０、ＲＯＭ２２０、ＲＡＭ２３０、ストレージ２４０、通信インターフェース２５０および操作表示部２６０は、ユーザー端末１００の対応する各構成と同様の機能を有するため、重複する説明は省略する。
【００３１】
ストレージ２４０には、各種処理を行うためのプログラムやデータがインストールされている。また、ストレージ２４０には、ユーザー端末１００、制御対象機器３００、サーバー４００と通信を行うための各種識別情報等が記憶される。また、ストレージ２４０には、認証用データを生成するためのプログラムや、署名データを検証するためのプログラム、アクセストークンを生成するためのプログラムなどが記憶される。
【００３２】
ＣＰＵ２１０は、本実施形態では、受信部、導出部、取得部、認証用データ生成部、判断部、トークン生成部、および正当性確認部として機能する。ＣＰＵ２１０によって実現される各機能について、詳細は後述する。また、ストレージ２４０は、本実施形態では、記憶部として機能する。
【００３３】
＜制御対象機器３００＞
制御対象機器３００は、ユーザーが利用権を得て制御する対象となる機器であり、たとえば、カーシェアリングにおける車両の電子制御可能な鍵や、シェアオフィスサービスにおける建物の電子制御可能な鍵等である。制御対象機器３００は、上記のような鍵に限定されず、ユーザーによって利用される電子制御可能な機器であればいかなる機器であってもよい。
【００３４】
図４は、制御対象機器の概略構成を示すブロック図である。
【００３５】
図４に示すように、制御対象機器３００は、ＣＰＵ３１０、ＲＯＭ３２０、ＲＡＭ３３０、ストレージ３４０、通信インターフェース３５０および操作表示部３６０を有する。各構成は、バス３７０を介して相互に通信可能に接続されている。なお、ＣＰＵ３１０、ＲＯＭ３２０、ＲＡＭ３３０、ストレージ３４０、通信インターフェース３５０および操作表示部３６０は、ユーザー端末１００の対応する各構成と同様の機能を有するため、重複する説明は省略する。
【００３６】
ストレージ３４０には、制御指示を実行して制御対象機器３００を動作させるための各種プログラムやデータが記憶される。
【００３７】
＜サーバー４００＞
サーバー４００は、ピア・ツー・ピアネットワークに接続するノードであり、当該ピア・ツー・ピアネットワークを介して他のノードであるサーバー４００ａ、４００ｂ等と相互に通信する。サーバー４００等の各ノードは、共通のブロックチェーンを記憶し、ブロックチェーン上に記録されるコードを実行することによってスマートコントラクトを実行する。サーバー４００は、ブロックチェーンにおける全ての情報を保有するフルノードであってもよく、各データを証明するためのハッシュ値等の情報を保有するライトノードであってもよい。
【００３８】
図５は、サーバーの概略構成を示すブロック図である。
【００３９】
図５に示すように、サーバー４００は、ＣＰＵ４１０、ＲＯＭ４２０、ＲＡＭ４３０、ストレージ４４０、通信インターフェース４５０、および操作表示４６０部を有する。各構成は、バス４７０を介して相互に通信可能に接続されている。なお、ＣＰＵ４１０、ＲＯＭ４２０、ＲＡＭ４３０、通信インターフェース４５０および操作表示部４６０は、ユーザー端末１００の対応する各構成と同様の機能を有するため、重複する説明は省略する。
【００４０】
ストレージ４４０には、スマートコントラクトを実行するためのコードや設定値等が記録されたブロックチェーン５００が記憶されている。ブロックチェーン５００については、スマートコントラクトを実行可能なＥｔｈｅｒｅｕｍ等の公知のブロックチェーンのプラットフォームによって構成されうるため、詳細な説明は割愛する。また、秘密鍵、公開鍵を用いた電子署名の方式についても、公知の技術であるため、詳細な説明は割愛する。
【００４１】
たとえば、スマートコントラクトを実現するためのブロックチェーンのプラットフォームとしてＥｔｈｅｒｅｕｍが用いられる場合、ユーザーは自身のＥｔｈｅｒｅｕｍアカウントを有し、当該アカウントには、ユーザーの秘密鍵、ユーザーの公開鍵、およびユーザーのアドレスが対応付けられる。ユーザーの秘密鍵と公開鍵とは、ブロックチェーンプラットが採用する電子署名アルゴリズムにおいて使用される暗号化方式において対応付けられて定義される。ユーザーのアドレスは、ユーザーを特定するための情報であり、たとえばユーザーの公開鍵から一意に導出可能な情報が用いられる。スマートコントラクトを実現するためのブロックチェーンのプラットフォームはＥｔｈｅｒｅｕｍに限定されず、ＥＯＳ、ＮＥＯ、Ｚｉｌｌｉｑａ、あるいは独自に構築されたプラットフォーム等の各種プラットフォームが用いられる。
【００４２】
＜情報処理装置２００の機能＞
図６は、情報処理装置のＣＰＵの機能構成を示すブロック図である。
【００４３】
図６に示すように、情報処理装置２００は、ＣＰＵ２１０がストレージ２４０に記憶されたプログラムを読み込んで処理を実行することによって、受信部２１１、導出部２１２、取得部２１３、認証用データ生成部２１４、判断部２１５、トークン生成部２１６、正当性確認部２１７として機能する。
【００４４】
受信部２１１は、ユーザー端末１００においてユーザーに対応する秘密鍵を用いて、所定の署名アルゴリズムによって認証用データを署名することによって生成された署名データを、ユーザー端末１００から受信する。受信部２１１は、ユーザー端末１００から制御対象機器３００に対する制御指示をさらに受信してもよい。
【００４５】
導出部２１２は、受信部２１１において受信された署名データおよび認証用データから、所定の署名アルゴリズムを用いて秘密鍵に対応する公開鍵を導出する。
【００４６】
取得部２１３は、導出部２１２によって導出された公開鍵または当該公開鍵に対応する識別情報を用いて、スマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの制御対象機器３００の利用権に関する情報を取得する。
【００４７】
認証用データ生成部２１４は、ユーザーが使用するユーザー端末１００からの要求に基づいて認証用データを生成し、生成された認証用データをユーザー端末１００に送信することによって、認証用データを情報処理装置２００とユーザー端末１００との間で共有させる。
【００４８】
判断部２１５は、取得部２１３によって取得された利用権に関する情報に基づいて、ユーザーによる制御対象機器３００の利用可否を判断する。
【００４９】
トークン生成部２１６は、取得部２１３によって取得された利用権に関する情報に基づいてユーザーによる制御対象機器３００の利用が可能と判断された場合に、アクセストークンを生成してユーザー端末１００に送信する。
【００５０】
正当性確認部２１７は、ユーザー端末１００から制御指示と共にアクセストークンを受け付けた制御対象機器３００から、アクセストークンを受信し、制御対象機器３００から受信したアクセストークンとトークン生成部２１６によって生成されたアクセストークンとが同一であるか否かを判断し、同一である場合にアクセストークンが正当である旨を示す情報を制御対象機器３００に送信する。
【００５１】
＜利用権情報処理システムにおける処理の概要＞
以下、利用権情報処理システムにおいて実行される処理の例について説明する。
【００５２】
まず、利用権を登録（購入）する処理について説明する。
【００５３】
図７は、利用権情報処理システムにおいて実行される利用権登録（購入）処理の手順を示すシーケンスチャートである。図８は、ブロックチェーン上に記録されるアドレスごとの利用権情報の一例を示す図である。図７のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のＣＰＵが各部を制御することにより実行される。
【００５４】
図７に示すように、ユーザー端末１００は、制御対象機器３００を利用するための指示をユーザーから受け付け、制御対象機器３００の利用権を購入するためのスマートコントラクトを含むトランザクションデータ（ＴＸデータ）を生成する（ステップＳ１０１）。たとえば、所定の宛先アドレスに所定の数量の暗号通貨を送信することによって、所定の時間分の利用権を購入できるサービスを提供する事業者を介して制御対象機器３００を利用する場合、ＴＸデータには、ユーザーのアドレス、宛先アドレス（スマートコントラクトのアドレス）、暗号通貨の数量、利用権の購入意思を示す情報、利用開始時間を示す情報等が含まれる。たとえば、利用権の購入意思を示す情報として、スマートコントラクトにおいて定義された購入を示すメソッド（関数）が用いられ、当該メソッドの引数として、ユーザーのアドレスや利用開始時間を示す情報が設定されてもよい。
【００５５】
続いて、ユーザー端末１００は、生成したＴＸデータについて、ストレージ１４０に予め記憶されたユーザーの秘密鍵を用いて電子署名を生成する（ステップＳ１０２）。
【００５６】
続いて、ユーザー端末１００は、生成した電子署名と共にＴＸデータをサーバー４００に送信する（ステップＳ１０３）。
【００５７】
サーバー４００は、受信したＴＸデータをピア・ツー・ピアネットワークに対してブロードキャストする（ステップＳ１０４）。ピア・ツー・ピアネットワークに接続されたサーバー等のノードによってブロックチェーン５００のマイニングが実行されてブロックが生成されると、ＴＸデータに含まれるスマートコントラクトが実行される（ステップＳ１０５）。
【００５８】
これにより、ブロックチェーン５００上に、図８に示すようなユーザーのアドレスごとの利用権情報が記録される。図８の例では、ユーザーのアドレスと、当該ユーザーの利用開始時間と、利用終了時間とが関連付けられて記録されている。この場合、ユーザーのアドレスと現在時刻がわかれば、その時点で当該ユーザーに利用権があるか否かが容易に判断できる。ブロックチェーン５００上に記録される利用権情報の形態は、図８の例に限定されず、任意の形態によって実装されうる。たとえば、利用権情報として、利用可否等のステータスを示す情報が関連付けられて記録されてもよい。また、利用権情報として、たとえば、利用可能時間数に関する情報や利用回数に関する情報、利用可能な曜日や時間帯、利用可能な位置、領域、範囲、利用可能な制御対象機器３００の種類、それらの組み合わせ等の任意の利用条件に関する情報が記録されうる。また、利用権情報として、利用可能な条件のみならず、利用不能な条件（除外条件）に関する情報が記録されてもよい。すなわち、利用権情報としては、利用権を定義するための様々な条件を表現するための情報が適宜設定されうる。
【００５９】
サーバー４００は、ＴＸデータに基づいてスマートコントラクトが実行された結果をユーザー端末１００に通知し（ステップＳ１０６）、ユーザー端末１００は、通知された結果を操作表示部１６０に表示する（ステップＳ１０７）。
【００６０】
なお、上記の例では、ユーザー端末１００においてＴＸデータを生成してサーバー４００に送信するものとして説明したが、これらの処理は、いわゆる交換所と称される代行業者が運営するサーバー等によって実行されてもよい。
【００６１】
次に、ユーザーを認証して利用権を確認し、ユーザーによる利用を認可する処理について説明する。
【００６２】
図９は、利用権情報処理システムにおいて実行される認証および認可処理の手順を示すシーケンスチャートである。図９のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のＣＰＵが各部を制御することにより実行される。
【００６３】
図９に示すように、ユーザー端末１００は、ユーザーからの指示等に基づいて、制御対象機器３００の制御に関する機器制御要求を生成し（ステップＳ２０１）、情報処理装置２００に送信する（ステップＳ２０２）。
【００６４】
情報処理装置２００は、ユーザー端末１００から機器制御要求を受信すると、認証用データを生成し（ステップＳ２０３）、ユーザー端末１００に送信する（ステップＳ２０４）。認証用データは、ユーザー端末１００およびユーザーの正当性を確認するための情報であり、ユーザー端末１００と情報処理装置２００との間で共有され、毎回の処理ごとに異なる値を有する情報である。本実施形態では、認証用データは、情報処理装置２００によって、毎回異なる値を有するようにランダムに生成される。情報処理装置２００は、ユーザー端末１００に送信した認証用データを当該ユーザー端末１００に関する情報と関連付けてストレージ２４０に記憶する。
【００６５】
ユーザー端末１００は、情報処理装置２００から受信した認証用データについて、ユーザーに対応する秘密鍵を用いて、所定の署名アルゴリズムによって電子署名を行って署名データを生成し（ステップＳ２０５）、情報処理装置２００に送信する（ステップＳ２０６）。本実施形態において、所定の署名アルゴリズムとしては、認証用データと、認証用データを秘密鍵によって署名した署名データとから、当該秘密鍵に対応する公開鍵を導出可能である楕円曲線デジタル署名アルゴリズムが用いられる。
【００６６】
情報処理装置２００は、ユーザー端末１００から受信した署名データを上記の署名アルゴリズムによって検証し（ステップＳ２０７）、署名データを署名したユーザーの秘密鍵に対応する公開鍵を導出する（ステップＳ２０８）。具体的には、情報処理装置２００は、ユーザー端末１００から受信した署名データと、ストレージ２４０に記憶されている当該ユーザー端末１００に送信した認証用データとを用いて、楕円曲線デジタル署名アルゴリズムによる署名データの検証を行うことによってユーザーの公開鍵を導出する。
【００６７】
情報処理装置２００は、導出した公開鍵からユーザーの識別情報であるアドレスを導出する（ステップＳ２０９）。なお、アドレスとして公開鍵の値がそのまま使用されている場合は、ステップＳ２０９の処理は省略されてもよい。
【００６８】
情報処理装置２００は、導出したユーザーのアドレスをサーバー４００に送信して、ユーザーの制御対象機器３００に関する利用権に関する情報を要求する（ステップＳ２１０）。
【００６９】
サーバー４００は、受信したユーザーのアドレスを用いて、ブロックチェーン上のスマートコントラクトにおいてユーザーのアドレスに関連付けられて予め記録されているユーザーの制御対象機器３００に関する利用権に関する情報を確認する（ステップＳ２１１）。
【００７０】
サーバー４００は、ステップＳ２１１の処理において確認した利用権に関する情報を情報処理装置２００に送信する（ステップＳ２１２）。
【００７１】
情報処理装置２００は、サーバー４００から送信された利用権に関する情報の内容を確認し、ユーザーが制御対象機器３００の利用権を保有している状態であれば、ユーザーによる制御対象機器３００の制御を許可してアクセストークンを生成し（ステップＳ２１３）、ユーザー端末１００に送信する（ステップＳ２１４）。アクセストークンは、処理ごとにユニークに生成される情報であり、たとえば１６バイト、または３２バイト等の十分な大きさまたは長さを有するランダムな値である。アクセストークンは、ユーザーが制御対象機器３００を制御する際に認証コードとして使用される。アクセストークンには、当該アクセストークンの利用期限に関する情報が含まれる。情報処理装置２００は、ユーザー端末１００に送信したアクセストークンを、当該ユーザー端末１００または当該ユーザー端末１００を使用するユーザーに関する情報等と関連付けてストレージ２４０に記憶する。なお、ユーザーが制御対象機器３００の利用権を保有していない状態であれば、情報処理装置２００は、ユーザーによる制御対象機器３００の制御を許可せずに、その旨をユーザー端末１００に通知する。
【００７２】
ユーザー端末１００は、制御対象機器３００を制御するための制御指示に情報処理装置２００から送信されたアクセストークンを付加し（ステップＳ２１５）、制御対象機器３００に送信する（ステップＳ２１６）。
【００７３】
制御対象機器３００は、ユーザー端末１００から送信された制御指示およびアクセストークンを取得し（ステップＳ２１７）、当該ユーザー端末１００またはユーザーに関する情報と共にアクセストークンを情報処理装置２００に送信する（ステップＳ２１８）。
【００７４】
情報処理装置２００は、制御対象機器３００から送信されたアクセストークンの正当性を確認する（ステップＳ２１９）。具体的には、情報処理装置２００は、制御対象機器３００から送信された当該ユーザー端末１００またはユーザーに関する情報を用いてストレージ２４０を検索し、当該ユーザー端末１００またはユーザーに関する情報に関連付けて記憶されているアクセストークンを抽出する。そして、情報処理装置２００は、ストレージ２４０から抽出されたアクセストークンと、制御対象機器３００から送信されたアクセストークンと比較し、両者が同一である場合にアクセストークンが正当であると判断する。この場合、情報処理装置２００は、アクセストークンが正当である旨を示す情報（正当性情報）を制御対象機器３００に送信する（ステップＳ２２０）。一方、両者が同一でない場合、アクセストークンは正当でないと判断される。また、アクセストークンに含まれる利用期限が徒過している場合も、アクセストークンは正当でないと判断される。アクセストークンが正当でないと判断されると、情報処理装置２００は、制御対象機器３００にその旨を通知し、制御対象機器３００は、ユーザー端末１００にその旨を通知する。
【００７５】
制御対象機器３００は、情報処理装置２００から送信された正当性情報を確認して、ユーザー端末１００から受信している制御指示を実行する（ステップＳ２２１）。
【００７６】
なお、本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【００７７】
たとえば、上記の実施形態においては、図９のステップＳ２１６の処理において、ユーザー端末１００が制御対象機器３００に制御指示を送信する例について説明したが、これに限定されない。たとえば、ユーザー端末１００は、情報処理装置２００に制御指示を送信し、情報処理装置２００が制御対象機器３００に制御指示を送信してもよい。この場合、情報処理装置２００のＣＰＵ２１０は、機器制御部として機能する。以下、この例について、具体的に説明する。
【００７８】
図１０は、利用権情報処理システムにおいて実行される認証および認可処理の手順の他の例を示すシーケンスチャートである。図１０のステップＳ２０１〜Ｓ２１２の処理は、図９と同様であるため説明を省略する。
【００７９】
図１０に示すように、情報処理装置２００は、サーバー４００から送信された利用権に関する情報の内容を確認し、ユーザーが制御対象機器３００の利用権を保有している状態であれば、ユーザーによる制御対象機器３００の制御を許可して（ステップＳ３１３）、ユーザー端末１００にその旨を通知する（ステップＳ３１４）。
【００８０】
ユーザー端末１００は、制御対象機器３００を制御するための制御指示を生成し（ステップＳ３１５）、情報処理装置２００に送信する（ステップＳ３１６）。
【００８１】
情報処理装置２００は、ユーザー端末１００から送信された制御指示を確認し（ステップＳ３１７）、制御対象機器３００に送信する（ステップＳ３１８）。
【００８２】
制御対象機器３００は、情報処理装置２００から送信された制御指示を確認して実行する（ステップＳ３１９）。
【００８３】
なお、上記では、ステップ３１５の処理において制御指示が新たに生成されるものとして説明したが、制御指示は、ステップＳ２０１の処理において生成される機器制御要求に含まれていてもよい。この場合、情報処理装置２００は、ステップＳ３１３の処理において機器制御を許可すると、既に受信している機器制御要求に含まれる制御指示を制御対象機器３００に送信することができる。これにより、ステップＳ３１４〜Ｓ３１７の処理は省略されうる。
【００８４】
また、上記の実施形態においては、ユーザー端末１００は、ランダムな値である認証用データのみをユーザーの秘密鍵で署名する例について説明したが、これに限定されない。ユーザー端末１００は、認証用データに制御指示等の任意の情報を付加してユーザーの秘密鍵で署名することができる。この場合でも、情報処理装置２００は、認証用データおよび付加された任意の情報と、署名された署名データから、ユーザーの公開鍵を導出してアドレスを導出することができる。
【００８５】
さらに、上記の実施形態においては、認証用データは、情報処理装置２００によって、毎回異なる値を有するようにランダムに生成されるものとして説明したが、これに限定されない。認証用データは、ユーザー端末１００と情報処理装置２００との間で共有され、毎回の処理ごとに異なる値を有する情報であればよい。したがって、ユーザー端末１００と情報処理装置２００との間で、ＡＥＳ方式等の暗号化を行う場合、ＡＥＳの暗号化処理において、ユーザー端末１００と情報処理装置２００との間で共有されるランダムな値（イニシャライゼーションベクター）が用いられるため、これを認証用データの代わりに用いることができる。たとえば、ユーザー端末１００は、制御指示をＡＥＳ方式で暗号化した情報を認証用データとして生成し、これをユーザーの秘密鍵で署名して署名データを情報処理装置２００に送信する。この場合、情報処理装置２００は、制御指示をＡＥＳ方式で暗号化した情報と署名データからユーザーの公開鍵を導出できる。
【００８６】
また、利用権情報処理システムが有するユーザー端末１００、情報処理装置２００、制御対象機器３００、サーバー４００の各構成は、それぞれ上記の構成要素以外の構成要素を含んでいてもよく、あるいは、上記の構成要素のうちの一部が含まれていなくてもよい。
【００８７】
また、ユーザー端末１００、情報処理装置２００、制御対象機器３００、サーバー４００は、それぞれ複数の装置によって構成されてもよく、あるいは単一の装置によって構成されてもよい。また、各構成が有する機能は、他の構成によって実現されてもよい。たとえば、情報処理装置２００とサーバー４００とが１つの装置によって実現されてもよい。また、情報処理装置２００が制御対象機器３００に組み込まれ、情報処理装置２００によって実行されるものとして説明した各処理が、制御対象機器３００によって実行されてもよい。また、情報処理装置２００が有する機能が、ユーザー端末１００のアプリケーションとして実装され、ユーザー端末１００によって実行されてもよい。
【００８８】
また、上述した実施形態に係る利用権情報処理システムにおける処理は、上記のフローチャートまたはシーケンスチャートのステップ以外のステップを含んでもよく、あるいは、上述したステップのうちの一部を含まなくてもよい。また、ステップの順序は、上述した実施形態に限定されない。さらに、各ステップは、他のステップと組み合わされて一つのステップとして実行されてもよく、他のステップに含まれて実行されてもよく、複数のステップに分割されて実行されてもよい。また、一部のステップが省略されてもよく、他のステップが追加されてもよい。
【００８９】
以上のように、本実施形態の情報処理装置２００によれば、ユーザー端末１００から受信した署名データと、ユーザー端末１００に送信した認証用データから、秘密鍵に対応する公開鍵を導出する。そして、情報処理装置２００は、公開鍵または公開鍵に対応する識別情報を用いて、スマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの制御対象機器３００の利用権に関する情報を取得する。これにより、構築および運用に莫大なコストと負荷のかかる認証サーバーを用いることなく、データ改竄耐性の高いブロックチェーン上のデータによってセキュアにユーザーの利用権を管理することができ、正当なユーザーに対して適切に制御対象機器３００の利用を許可（認可）することができる。
【００９０】
また、情報処理装置２００は、ユーザー端末１００からの要求に基づいて認証用データを生成し、生成された認証用データをユーザー端末１００に送信することによって認証用データをユーザー端末１００との間で共有させる。これにより、ユーザー端末１００から要求がある毎に異なる認証用データが生成されて電子署名に利用されるため、不正なユーザー端末１００による署名データの不正利用等を抑止して、よりセキュアに利用権を管理することができる。
【００９１】
また、情報処理装置２００は、取得された利用権に関する情報に基づいて、ユーザーによる制御対象機器３００の利用可否を判断する。これにより、迅速かつ確実に、正当なユーザーに対して制御対象機器３００の利用を許可することができる。
【００９２】
また、所定の署名アルゴリズムとして、署名データおよび認証用データから公開鍵を導出可能である楕円曲線デジタル署名アルゴリズムが用いられる。これにより、情報処理装置２００は、秘密鍵によって署名された結果である署名データおよび署名される対象のデータである認証用データから、公開鍵を導出することができる。その結果、ユーザー端末１００と情報処理装置２００との間で、署名検証のための公開鍵を事前に共有する必要性をなくすことができる。公開鍵を事前に共有するためには、受け取った公開鍵が正当なものであるか否かをチェックした上で保存という処理が発生してしまう。本実施形態によれば、署名データおよび認証用データから公開鍵を導出することができるため、公開鍵を事前に共有したり、公開鍵の正当性をチェックしたりする必要がなく、効率的にシステムを構築・運用することができる。
【００９３】
また、識別情報は、公開鍵から一意に導出可能なアドレス情報である。したがって、ユーザーを識別するための情報を別途用意して管理する必要がなく、より効率的にシステムを構築・運用することができる。
【００９４】
また、スマートコントラクトにおいて、公開鍵または識別情報に関連付けて、機器の利用権に関する情報として、利用可能時間に関する情報が記録される。これにより、利用可能時間を指定してユーザーに利用権を付与するサービスを提供することができ、サービス提供事業者およびユーザーの利便性を高めることができる。
【００９５】
また、スマートコントラクトにおいて、公開鍵または識別情報に関連付けて、機器の利用権に関する情報として、利用可能回数に関する情報が記録される。これにより、利用可能回数を指定してユーザーに利用権を付与するサービスを提供することができ、サービス提供事業者およびユーザーの利便性を高めることができる。
【００９６】
また、情報処理装置２００は、取得した利用権に関する情報に基づいてユーザーによる制御対象機器３００の利用が可能と判断された場合に、アクセストークンを生成してユーザー端末１００に送信する。そして、ユーザー端末１００から制御指示と共にアクセストークンを受け付けた制御対象機器３００から、アクセストークンを受信し、制御対象機器３００から受信したアクセストークンと、生成したアクセストークンとが同一であるか否かを判断し、同一である場合にアクセストークンが正当である旨を示す情報を制御対象機器３００に送信する。これにより、ユーザーの利用権を確認した情報処理装置２００が、制御対象機器３００を直接制御せず、他の装置が制御対象機器３００を制御する場合でも、確実に正当なユーザーによる制御対象機器３００の利用を実現することができる。
【００９７】
また、アクセストークンは、処理ごとにユニークに生成されるデータであり、利用期限に関する情報を含む。これにより、ユーザーの利用権を確認した情報処理装置２００が、制御対象機器３００を直接制御せず、他の装置が制御対象機器３００を制御する場合でも、より確実に正当なユーザーによる制御対象機器３００の利用を実現することができる。
【００９８】
また、情報処理装置２００は、ユーザー端末１００から制御対象機器３００に対する制御指示をさらに受信し、取得した利用権に関する情報に基づいてユーザーによる制御対象機器３００の利用が可能と判断された場合に、制御対象機器３００に対して制御指示を送信してもよい。これにより、ユーザーの利用権を確認した情報処理装置２００が、制御対象機器３００を直接制御できるため、迅速、確実かつ効率的に正当なユーザーによる制御対象機器３００の利用を実現することができる。
【００９９】
上述した実施形態に係る利用権情報処理システムにおける各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピューターのいずれによっても実現することが可能である。上記プログラムは、たとえば、フレキシブルディスクおよびＣＤ−ＲＯＭ等のコンピューター読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピューター読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、利用権情報処理システムの一機能としてその装置のソフトウエアに組み込まれてもよい。
【０１００】
本出願は、２０１９年１２月１３日に出願された日本特許出願（特願２０１９−２２５３７５号）に基づいており、その開示内容は、参照され、全体として組み入れられている。
【符号の説明】
【０１０１】
１００  ユーザー端末、
２００  情報処理装置、
３００  制御対象機器、
４００  サーバー、
５００  ブロックチェーン、
１１０、２１０、３１０、４１０  ＣＰＵ、
１２０、２２０、３２０、４２０  ＲＯＭ、
１３０、２３０、３３０、４３０  ＲＡＭ、
１４０、２４０、３４０、４４０  ストレージ、
１５０、２５０、３５０、４５０  通信インターフェース、
１６０、２６０、３６０、４６０  操作表示部。
【要約】
【課題】認証サーバーを用いることなくセキュアに利用権を管理して正当なユーザーに対して適切に機器の利用を許可するための利用権情報処理装置を提供する。
【解決手段】利用権情報処理装置は、スマートコントラクトを用いて、制御対象となる機器をユーザーが利用するための認証および認可に関する処理を行う。利用権情報処理装置は、ユーザーが使用するユーザー端末との間で共有され処理ごとに異なる値を有する認証用データを記憶し、ユーザー端末においてユーザーに対応する秘密鍵を用いて認証用データを署名することによって生成された署名データをユーザー端末から受信し、署名データおよび認証用データから楕円曲線デジタル署名アルゴリズムを用いて秘密鍵に対応する公開鍵を導出し、公開鍵または対応する識別情報を用いてスマートコントラクトにおいて公開鍵または識別情報に関連付けて予め記録されたユーザーの機器の利用権に関する情報を取得する。
【選択図】図９【図１】
0006894160.tif 000002
【図２】
0006894160.tif 000003
【図３】
0006894160.tif 000004
【図４】
0006894160.tif 000005
【図５】
0006894160.tif 000006
【図６】
0006894160.tif 000007
【図７】
0006894160.tif 000008
【図８】
0006894160.tif 000009
【図９】
0006894160.tif 000010
【図１０】
0006894160.tif 000011