IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社東芝の特許一覧

<>
  • 特開-通信システム及び通信方法 図1
  • 特開-通信システム及び通信方法 図2
  • 特開-通信システム及び通信方法 図3
  • 特開-通信システム及び通信方法 図4
  • 特開-通信システム及び通信方法 図5
  • 特開-通信システム及び通信方法 図6
  • 特開-通信システム及び通信方法 図7
  • 特開-通信システム及び通信方法 図8
  • 特開-通信システム及び通信方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022191825
(43)【公開日】2022-12-28
(54)【発明の名称】通信システム及び通信方法
(51)【国際特許分類】
   H04L 9/32 20060101AFI20221221BHJP
   G06F 21/60 20130101ALI20221221BHJP
   G06F 21/33 20130101ALI20221221BHJP
   G06F 21/31 20130101ALI20221221BHJP
   G09C 1/00 20060101ALI20221221BHJP
【FI】
H04L9/00 675B
G06F21/60 320
G06F21/33
G06F21/31
G09C1/00 640E
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021100282
(22)【出願日】2021-06-16
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】田中 康之
(72)【発明者】
【氏名】伊藤 俊夫
(57)【要約】
【課題】悪意のあるユーザ端末によるデバイスへの不正な設定を防ぐ。
【解決手段】実施形態の通信システムは、デバイスとサーバ装置とユーザ端末とを備える。前記デバイスの設定処理部は、前記サーバ装置により生成された認可情報を前記ユーザ端末から受信すると、前記デバイスの運用設定を設定する運用設定処理を実行する。前記デバイスの通信部は、前記運用設定処理で前記デバイスから送信される運用設定データを暗号化して前記ユーザ端末に送信する。前記サーバ装置の通信部は、前記運用設定処理で前記サーバ装置から送信される運用設定データを暗号化して前記ユーザ端末に送信する。前記ユーザ端末の取得部は、前記サーバ装置との間で認証を行い、前記認証が成功した場合、前記サーバ装置から前記認可情報を取得する。前記ユーザ端末の転送部は、前記認可情報を前記デバイスに転送後、前記デバイスと前記サーバ装置との間で、前記運用設定データを転送する。
【選択図】図7
【特許請求の範囲】
【請求項1】
デバイスと、サーバ装置と、ユーザ端末と、を備え、
前記デバイスは、
前記サーバ装置により生成された認可情報を前記ユーザ端末から受信すると、前記デバイスの運用設定を設定する運用設定処理を実行する設定処理部と、
前記運用設定処理で前記デバイスから送信される運用設定データを暗号化して前記ユーザ端末に送信する通信部と、
前記運用設定処理によって設定された前記運用設定を記憶する運用設定記憶部と、
を備え、
前記サーバ装置は、
前記ユーザ端末の認証が成功した場合、前記認可情報を生成する生成部と、
前記運用設定処理で前記サーバ装置から送信される運用設定データを暗号化して前記ユーザ端末に送信する通信部と、を備え、
前記ユーザ端末は、
前記サーバ装置との間で認証を行い、前記認証が成功した場合、前記サーバ装置から前記認可情報を取得する取得部と、
前記認可情報を前記デバイスに転送後、前記デバイスと前記サーバ装置との間で、前記運用設定データを転送する転送部と、
前記運用設定が完了すると、前記デバイス及び前記サーバ装置の少なくとも一方から、完了通知を受信する通信部と、
を備える通信システム。
【請求項2】
前記デバイスは、所定の操作によって、一定期間、前記運用設定処理の受付状態になる、
請求項1に記載の通信システム。
【請求項3】
前記デバイスは、
前記デバイスの初期設定を記憶する初期設定記憶部を更に備え、
前記デバイスは、電源投入後、前記初期設定による初期化処理の受付状態になる、
請求項1又は2に記載の通信システム。
【請求項4】
前記初期設定は、前記サーバ装置のサーバ証明書、及び、前記サーバ装置の公開鍵の少なくとも一方を含むサーバ認証情報を含み、
前記デバイスは、
前記サーバ認証情報を用いて、前記サーバ装置から前記ユーザ端末を介して受信された前記認可情報の正当性を検証する検証部を更に備える、
請求項3に記載の通信システム。
【請求項5】
前記認可情報は、シーケンス番号が付与されたトークンであり、
前記運用設定記憶部は、既に実行された前記運用設定処理で使用された前記トークンのシーケンス番号を記憶し、
前記検証部は、前記トークンに付与されたシーケンス番号と、前記運用設定記憶部に記憶されたシーケンス番号とを比較することによって、前記トークンの正当性を検証する、
請求項4に記載の通信システム。
【請求項6】
前記サーバ装置は、
前記ユーザ端末を使用するユーザのユーザ情報を記憶するユーザ情報記憶部を更に記憶し、
前記生成部は、前記ユーザ情報を用いて、前記ユーザ端末の認証を行う、
請求項1乃至5のいずれか1項に記載の通信システム。
【請求項7】
前記ユーザ情報では、前記デバイスの運用設定の可否を示す情報が、前記ユーザ毎に設定され、
前記生成部は、前記ユーザ端末の認証が成功した場合、前記運用設定の可否を示す情報を用いて、前記ユーザ端末のユーザが、前記デバイスの運用設定が可能か否かを判定し、前記デバイスの運用設定が可能な場合、前記認可情報を生成する、
請求項6に記載の通信システム。
【請求項8】
デバイスと、サーバ装置と、ユーザ端末と、を備える通信システムの通信方法であって、
前記デバイスが、前記サーバ装置により生成された認可情報を前記ユーザ端末から受信すると、前記デバイスの運用設定を設定する運用設定処理を実行するステップと、
前記デバイスが、前記運用設定処理で前記デバイスから送信される運用設定データを暗号化して前記ユーザ端末に送信するステップと、
前記デバイスが、前記運用設定処理によって設定された前記運用設定を記憶するステップと、
前記サーバ装置が、前記ユーザ端末の認証が成功した場合、前記認可情報を生成するステップと、
前記サーバ装置が、前記運用設定処理で前記サーバ装置から送信される運用設定データを暗号化して前記ユーザ端末に送信するステップと、
前記ユーザ端末が、前記サーバ装置との間で認証を行い、前記認証が成功した場合、前記サーバ装置から前記認可情報を取得するステップと、
前記ユーザ端末が、前記認可情報を前記デバイスに転送後、前記デバイスと前記サーバ装置との間で、前記運用設定データを転送するステップと、
前記運用設定が完了すると、前記ユーザ端末が、前記デバイス及び前記サーバ装置の少なくとも一方から、完了通知を受信するステップと、
を含む通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は通信システム及び通信方法に関する。
【背景技術】
【0002】
ネットワークへデバイスを接続する技術が従来から知られている。例えば、Wi-Fi Device Provisioning Protocol(DPP)では、ユーザ端末が、デバイスにより表示されたQRコード(登録商標)を読み込み、その後、QRコード(登録商標)の情報に基づきユーザ端末とデバイスとの間で認証が行われる。認証が成功した場合、ユーザ端末がデバイスへ無線LANのアクセスポイントに接続するための設定を送信する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2020/054365号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら従来の技術では、悪意のあるユーザ端末によるデバイスへの不正な設定を防ぐことが難しかった。
【課題を解決するための手段】
【0005】
実施形態の通信システムは、デバイスと、サーバ装置と、ユーザ端末と、を備える。前記デバイスは、設定処理部と、通信部と、運用設定記憶部とを備える。設定処理部は、前記サーバ装置により生成された認可情報を前記ユーザ端末から受信すると、前記デバイスの運用設定を設定する運用設定処理を実行する。通信部は、前記運用設定処理で前記デバイスから送信される運用設定データを暗号化して前記ユーザ端末に送信する。運用設定記憶部は、前記運用設定処理によって設定された前記運用設定を記憶する。前記サーバ装置は、生成部と、通信部とを備える。生成部は、前記ユーザ端末の認証が成功した場合、前記認可情報を生成する。通信部は、前記運用設定処理で前記サーバ装置から送信される運用設定データを暗号化して前記ユーザ端末に送信する。前記ユーザ端末は、取得部と、転送部と、通信部とを備える。取得部は、前記サーバ装置との間で認証を行い、前記認証が成功した場合、前記サーバ装置から前記認可情報を取得する。転送部は、前記認可情報を前記デバイスに転送後、前記デバイスと前記サーバ装置との間で、前記運用設定データを転送する。通信部は、前記運用設定が完了すると、前記デバイス及び前記サーバ装置の少なくとも一方から、完了通知を受信する。
【図面の簡単な説明】
【0006】
図1】第1実施形態の通信システムの装置構成の例を示す図。
図2】第1実施形態のユーザ端末の機能構成の例を示す図。
図3】第1実施形態のトークン管理情報の例を示す図。
図4】第1実施形態のデバイスの機能構成の例を示す図。
図5】第1実施形態のサーバ装置の機能構成の例を示す図。
図6】第1実施形態のユーザ情報の例を示す図。
図7】第1実施形態の通信方法の例を示すシーケンス図。
図8】第2実施形態のユーザ端末の機能構成の例を示す図。
図9】第1乃至第4実施形態のユーザ端末、デバイス及びサーバ装置の主要部のハードウェア構成の例を示す図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、通信システム及び通信方法の実施形態を詳細に説明する。
【0008】
[装置構成の例]
図1は第1実施形態の通信システム100の装置構成の例を示す図である。第1実施形態の通信システム100は、ユーザ端末10、デバイス20、サーバ装置30及びネットワーク200を備える。
【0009】
ユーザ端末10及びデバイス20は有線または無線で接続される。有線の場合、RS-232CケーブルやUSBケーブル、イーサネットケーブルなどの使用が考えられるが、その限りではない。また、無線の場合、BluetoothやWi-Fi、IEEE 802.15.4、赤外線通信、超音波通信などの使用が考えられるが、その限りではない。
【0010】
ユーザ端末10はネットワーク200を介してサーバ装置30と接続する。
【0011】
ネットワーク200は任意でよい。ネットワーク200は、例えばインターネットのような広域ネットワークである。また例えば、ネットワーク200は、広域の閉域ネットワークである。また例えば、ネットワーク200は、企業内ネットワークなどのローカルネットワークである。
【0012】
また、デバイス20は任意でよい。例えば、デバイス20は、インフラサービスに用いられるエッジデバイス等である。具体的には、デバイス20は、例えばセンサ及びIoT(Internet of Things)機器等である。
【0013】
また、サーバ装置30の実現方法は任意でよい。サーバ装置30は、例えば伝統的なサーバコンピュータを用いて実現される。また例えば、サーバ装置30は、物理サーバを、サーバ仮想化技術を用いて仮想化した仮想サーバとして実現される。また例えば、サーバ装置30は、その機能がクラウドサービスとして実現される。
【0014】
[ユーザ端末の機能構成の例]
図2は第1実施形態のユーザ端末10の機能構成の例を示す図である。第1実施形態のユーザ端末10は、第1の通信部11a、第2の通信部11b、取得部12、記憶部13及び転送部14を備える。
【0015】
第1の通信部11aは、第1の通信方式によって、デバイス20との通信を行う。
【0016】
第2の通信部11bは、第2の通信方式によって、サーバ装置30との通信を行う。なお、第1の通信方式と、第2の通信方式とが同じである場合、第1の通信部11a及び11bが、1つの通信部11(第2実施形態の図8参照)として実現されていてもよい。
【0017】
取得部12はサーバ装置30と通信し、サーバ装置30からトークン(認可情報の一例)を取得する。取得部12は、このトークンをサーバ装置30へ要求する際に、トークン要求をサーバ装置30へ送信する。トークン要求は、ユーザ端末10の情報や、ユーザ端末10の使用者であるユーザの情報、第1の通信部11aで通信するデバイスの情報の少なくともひとつを含む。
【0018】
ユーザ端末10の情報は、例えばユーザ端末10の型式や製造番号、関連するアプリケーションのバージョンなどである。
【0019】
ユーザの情報は、例えばユーザ名やパスワード、ユーザ証明書などである。
【0020】
デバイス情報は、例えばデバイス20の型式や製造番号、MACアドレスなどである。例えば、デバイス情報は、デバイス20の銘板などから特定され、ユーザによりユーザ端末10に入力される。また例えば、デバイス情報は、QRコード(登録商標)などに符号化され、ユーザ端末10のカメラ等を使って読み取られる。QRコード(登録商標)は、例えばデバイス20の筐体に貼り付けられていてもよいし、デバイス20の表示部に表示されてもよい。また例えば、デバイス情報は、第1の通信部11aを介してデバイス20から受信されてもよい。
【0021】
取得部12がサーバ装置30からトークンを得るために行う通信では攻撃者からの攻撃を防ぐための追加のやり取りが発生してもよい。例えば、取得部12が、サーバ証明書によるサーバ装置30の認証を行ってもよいし、サーバ装置30から事前に取得したnonceを更に含む、前述のトークン要求をサーバ装置30へ送信してもよい。いずれにしても、取得部12がサーバ装置30へ送信するユーザ端末10の情報やユーザの情報、デバイス情報などはセキュリティ上、十分に保護されているものとする。
【0022】
取得部12がサーバ装置30からトークンを取得すると、そのトークンを記憶部13へ記憶する。典型的にはトークンは有効期限を持つ。取得部12が、複数のトークンを取得した場合、記憶部13は、例えば、トークン、トークンの有効期限、及び、トークンの対象デバイスを含むトークン管理情報を記憶する。
【0023】
図3は第1実施形態のトークン管理情報の例を示す図である。第1実施形態のトークン管理情報は、トークン、有効期限及び対象デバイスを含む。図3のトークン管理情報の例では、例えば、有効期限が2021年5月7日13時00分15秒のトークンaaaaaaaaaが、デバイスAに用いられていることが管理されている。
【0024】
図2に戻り、取得部12は、サーバ装置30へトークンを要求する前に記憶部13へ問合せ、対象となるデバイス20に対応付けられた有効なトークンが存在するか否かを確認してもよい。そして、取得部12は、そのようなトークンが存在する場合は、サーバ装置30から新たにトークンを取得しなくてもよい。
【0025】
転送部14は、例えば、サーバ装置30からトークンを取得した取得部12からの指示により、転送処理を開始する。また例えば、転送部14は、有効なトークンが記憶部13に存在することを確認した取得部12からの指示により、転送処理を開始する。また例えば、転送部14は、ユーザの操作入力による指示によって、転送処理を開始する。
【0026】
転送部14は、第1の通信部11aの通信相手であるデバイス20に対応付けられたトークンを記憶部13から取得し、取得されたトークンを第1の通信部11aからデバイス20へ送信する。その後、転送部14は、デバイス20からサーバ装置30宛のメッセージを受信すると、当該メッセージをサーバ装置30へ転送する。
【0027】
また、転送部14は、サーバ装置30からデバイス20宛のメッセージを受信すると、当該メッセージをデバイス20へ転送する。なお、転送部14からデバイス20へのトークンの送信は一連のメッセージ転送がはじまる直前に一度行われてもよいし、メッセージ転送の都度、行われてもよい。
【0028】
転送部14は、デバイス20又はサーバ装置30からメッセージ転送の終了通知を受けると一連の転送処理を終了する。また、転送部14は、一定期間、デバイス20又はサーバ装置30からメッセージを受信しない場合、一連の転送処理を自立的に終了してもよい。
【0029】
[デバイスの機能構成の例]
図4は第1実施形態のデバイス20の機能構成の例を示す図である。第1実施形態のデバイス20は通信部21、初期設定記憶部22、検証部23、設定処理部24及び運用設定記憶部25を備える。
【0030】
通信部21はユーザ端末10との通信を行う。
【0031】
初期設定記憶部22はデバイス20の初期設定を記憶する。ここで初期設定とは、典型的にはデバイス20が工場出荷時に持つ設定である。初期設定の中にはサーバ認証情報及びデバイス情報が含まれる。
【0032】
サーバ認証情報は、例えばサーバ装置30のサーバ証明書、及び、サーバ装置30の公開鍵の少なくとも一方を含む。
【0033】
デバイス情報は、例えばデバイス20の型式や製造番号、MACアドレス、デバイス20の公開鍵・秘密鍵ペアなどを含む。デバイス20の初期設定はデバイス20の製造時等に初期設定記憶部22へ設定される。
【0034】
初期設定記憶部22は、例えば耐タンパ性を持つ不揮発メモリである。デバイス20は、例えば、電源投入後、初期設定記憶部22から読み出された初期設定による初期化処理の受付状態になり、当該初期化処理が終わると、運用設定がされるまでは初期設定で動作する。
【0035】
検証部23は通信部21を介してユーザ端末10から受信されたトークンを検証する。トークンの検証には初期設定記憶部22に記憶されたサーバ認証情報を使用する。検証済みトークンの再送によるリプレイ攻撃を防ぐため、トークンの検証にはサーバ認証情報に加えて過去に検証されたトークンの情報も使ってもよい。例えば、トークンにはシーケンス番号が付与されており、過去に検証されたトークンの情報が、シーケンス番号により判定されてもよい。具体的には、検証部23が、トークンを検証するとそのシーケンス番号を、デバイス20の不揮発メモリ(例えば、運用設定記憶部25)等に記憶する。そして、検証部23は、次回のトークン検証時には検証対象のトークンが過去に検証済みであるか否かを、トークンに付与されたシーケンス番号と、不揮発メモリ等に記憶されたシーケンス番号とを比較することによって判定する。
【0036】
通信部21及び検証部23は、例えばデバイス20が所定の操作を受け付けた場合に、トークンの受信及び検証をするようにしてもよい。所定の操作とは、例えば、デバイス20のボタンを押しながらの電源投入や、ボタンの長押し操作である。
【0037】
また例えば、工場出荷状態のデバイス20は、常にトークンの受信動作を行い、トークンが受信された場合に、トークンの検証をしてもよい。
【0038】
設定処理部24は、検証部23によるトークンの検証が成功すると、通信部21を介してサーバ装置30宛にメッセージを送信する。このメッセージは、トークンに含まれる情報で暗号化されていてもよい。例えば、トークンにはデバイス20の公開鍵で暗号化された暗号鍵が含まれており、通信部21は、その暗号鍵を使ってサーバ装置30とやり取りするメッセージを暗号化したり、メッセージの認証データを付与したりしてもよい。また例えば、通信部21が、デバイス20の暗号鍵を生成し、この暗号鍵をサーバ装置30の公開鍵で暗号化してデバイス20がサーバ装置30へ送信する最初のメッセージに含め、以降のメッセージではこの暗号鍵を用いた保護を行ってもよい。いずれにしても、デバイス20及びサーバ装置30はあらかじめお互いに持つ情報を使い、お互いのメッセージを保護し、そのメッセージを転送するユーザ端末10を含む他の通信装置に対してもそのメッセージのすべて、または、一部を秘匿し、他の通信装置による改ざん等の攻撃から守る。
【0039】
デバイス20はサーバ装置30に対し、以降の運用に必要な設定を要求する。運用に必要な設定とはデバイス20がネットワーク200に接続するための設定や、デバイス20が連携するシステム固有の設定などである。
【0040】
ネットワーク200に接続するための設定とは、例えば、デバイス20がWi-Fiネットワークに接続する場合は、そのネットワーク識別子やパスワード、もしくはそのネットワーク用のデバイス20の証明書などである。また、デバイス20がセルラーネットワークに接続する場合は、接続するキャリアやアクセスポイント名、ユーザ名やパスワードなどである。加えて、デバイス20が使用するIPアドレスやゲートウェイ、DNSサーバの情報などがネットワークから自動的に与えられない場合は、ネットワークに接続するための設定としてこれらもサーバ装置30から提供されてもよい。
【0041】
デバイス20が連携するシステム固有の設定とは、典型的にはアプリケーションの設定であり、デバイス20が連携する先のアプリケーションサーバの識別子やURL、そのサーバ証明書、公開鍵情報が含まれる。また例えば、デバイス20が連携するシステム固有の設定には、アプリケーションサーバと連携する際に使用するデバイス20の識別子やパスワード、デバイス20の証明書なども含まれる。
【0042】
初期設定記憶部22がデバイス20の秘密鍵及び公開鍵を持たない場合、設定処理部24とサーバ装置30とのやり取りの中でデバイス20の秘密鍵及び公開鍵が生成され、その公開鍵が設定処理部24からサーバ装置30へ送信され、サーバ装置30に登録されてもよい。さらに、この結果として、サーバ装置30から設定処理部24へデバイス20の公開鍵証明書が提供されてもよい。
【0043】
運用設定記憶部25は、例えば耐タンパ性を持つ不揮発メモリである。運用設定記憶部25は、設定処理部24とサーバ装置30とのやり取りの間に取得または生成された情報を管理・保持する。そして、デバイス20は、運用設定記憶部25により管理・保持される設定情報を使い、ネットワーク200への接続やシステムとの連携を行う。
【0044】
[サーバ装置の機能構成の例]
図5は第1実施形態のサーバ装置の機能構成の例を示す図である。第1実施形態のサーバ装置30は通信部31、生成部32、ユーザ情報記憶部33、デバイス情報記憶部34及び設定処理部35を備える。
【0045】
通信部31はユーザ端末10との通信を行う。
【0046】
生成部32はトークン(認可情報の一例)を生成する。なお、トークンには、デバイス20側で、トークンの正当性を検証するために使用される情報が埋め込まれていてもよい。例えば、サーバ装置30の秘密鍵によって生成された情報がトークンに埋め込まれていてもよい。
【0047】
生成部32は、トークンを通信部31を介してユーザ端末10へ提供する。具体的には、生成部32はユーザ端末10からトークン要求を受け付ける。トークン要求は、ユーザ端末10の情報やユーザ情報、デバイス情報のすべてまたは一部を含む。生成部32は、トークン要求に含まれる情報と、ユーザ情報記憶部33に記憶されたユーザ情報とに基づいて、正当なトークン要求であるか否かを判定する。そして、生成部32は、正当なトークン要求である場合、対象のデバイス20用のトークンを生成し、通信部31を介してユーザ端末10へ提供する。
【0048】
ユーザ情報記憶部33は、ユーザ端末10からのトークン要求の正当性を検証するときに、生成部32により利用されるユーザ情報を記憶する。
【0049】
図6は第1実施形態のユーザ情報の例を示す図である。第1実施形態のユーザ情報は、例えばユーザ名、パスワード、使用デバイス及び運用設定を含む。ユーザ名は、ユーザの名前(名称)である。パスワードは、ユーザにより使用されるパスワードである。使用デバイスは、ユーザにより使用されるデバイスである。
【0050】
運用設定は、ユーザの使用デバイスに対する運用設定の可否を示す。生成部32は、ユーザ端末10の認証が成功した場合、運用設定の可否を示す情報を用いて、ユーザ端末10のユーザが、デバイス20の運用設定が可能か否かを判定し、デバイス20の運用設定が可能な場合、認可情報を生成する。
【0051】
なお、ユーザ情報は、図6の例に限られない。例えば、パスワードの代わりにユーザの公開鍵やユーザ証明書がユーザ情報に含まれていてもよい。また例えば、ユーザによって使用されるユーザ端末10の型式や製造番号がユーザ情報に更に含まれていてもよい。また例えば、使用デバイスについて製造番号のみが、ユーザ情報で管理されていてもよい。
【0052】
いずれにしても、生成部32は、ユーザ端末10からのトークン要求を受けた際に提供された情報と、ユーザ情報記憶部33が持つ情報とを照らし合わせ、十分に一致する場合に、そのトークン要求が正当であると判定する。
【0053】
図5に戻り、生成部32は、デバイス20とのやり取りを保護するための暗号鍵をデバイス20の公開鍵で暗号化してトークンに埋め込む場合などでは、デバイス情報記憶部34に問い合わせる。
【0054】
デバイス情報記憶部34は、デバイス20ごとに、そのデバイス20の型式や製造番号に加え、デバイス20固有の情報(例えばMACアドレスや公開鍵など)を、デバイス情報として管理する。また、デバイス情報記憶部34は、デバイス20とのやり取りで使用される暗号鍵も、その値とともに、付帯情報(例えば暗号鍵の識別子や有効期限など)が存在すれば、暗号鍵の値と付帯情報とを、デバイス20ごとにデバイス情報として管理する。また、デバイス情報記憶部34はデバイス20の運用時に使用される設定情報なども、デバイス情報として管理する。
【0055】
設定処理部35は、デバイス情報記憶部34からデバイス情報を読み出し、ユーザ端末10を介して、デバイス情報をデバイス20に提供する。デバイス情報の提供は、デバイス20からサーバ装置30宛に送られたメッセージを設定処理部35が受信した後に実行される。
【0056】
[通信方法の例]
図7は第1実施形態の通信方法の例を示すシーケンス図である。はじめに、デバイス20が、デバイス20を運用設定待機の状態にするための操作を受け付ける(ステップS1)。デバイス20は、例えば、電源ボタンの長押し等の所定の操作によって、一定期間、運用設定処理の受付状態(待機状態)になる。
【0057】
次に、ユーザ端末10が、ユーザの操作入力などに応じて、上述のトークン要求をサーバ装置30に送信する(ステップS2)。次に、サーバ装置30が、メッセージ(トークン要求)の正当性を検証する(ステップS3)。なお、ステップS3の検証処理で、ユーザの使用デバイスに対する運用設定の可否も判定されてもよい。運用設定の可否も判定される場合は、サーバ装置30は、運用設定が許可されていないデバイス20に対しては、トークンを発行しない。
【0058】
次に、サーバ装置30が、メッセージが正当である場合、トークンを発行する(ステップS4)。次に、ユーザ端末10が、ステップS4で発行されたトークンを、運用設定待機状態のデバイス20に第1の通信部11aを介して提示する(ステップS5)。次に、デバイス20及びサーバ装置30が、ユーザ端末10を介して、デバイス20の運用設定処理を行う(ステップS6)。運用設定処理には、例えば、デバイス20の運用設定をするために必要な運用設定データの送受信などが含まれる。次に、サーバ装置30が、ステップS6の運用設定処理が終了すると、運用設定完了通知をユーザ端末10に送信する(ステップS7)。
【0059】
以上説明したように、第1実施形態の通信システム100では、デバイス20と、サーバ装置30と、ユーザ端末10と、を備える。デバイス20は、設定処理部24と、通信部21と、運用設定記憶部25とを備える。設定処理部24は、サーバ装置30により生成された認可情報をユーザ端末10から受信すると、デバイス20の運用設定を設定する運用設定処理を実行する。通信部21は、運用設定処理でデバイス20から送信される運用設定データを暗号化してユーザ端末10に送信する。運用設定記憶部25は、運用設定処理によって設定された運用設定を記憶する。サーバ装置30は、生成部32と、通信部31とを備える。生成部32は、ユーザ端末10の認証が成功した場合、認可情報を生成する。通信部31は、運用設定処理でサーバ装置30から送信される運用設定データを暗号化してユーザ端末10に送信する。ユーザ端末10は、取得部12と、転送部14と、通信部11とを備える。取得部12は、サーバ装置30との間で認証を行い、認証が成功した場合、サーバ装置30から認可情報を取得する。転送部14は、認可情報をデバイス20に転送後、デバイス20とサーバ装置30との間で、運用設定データを転送する。通信部11は、運用設定が完了すると、デバイス20及びサーバ装置30の少なくとも一方から、完了通知を受信する。
【0060】
これにより第1実施形態の通信システム100によれば、悪意のあるユーザ端末10によるデバイス20への不正な設定を防ぐことができる。例えば、第1実施形態の通信システム100によれば、工場出荷状態(初期設定状態)のデバイス20が、信頼できるユーザからの設定処理は受け入れつつも、ユーザへはその設定の詳細を開示することなく、また攻撃者からの設定を拒否できる。
【0061】
従来は、例えば、DPPを用いた方法ではデバイス20のQRコード(登録商標)を読み取ることができる悪意のあるユーザ端末10によるデバイス20への不正な設定を防ぐことができなかった。
【0062】
なお、信頼できるユーザは、例えば、インフラサービス向けデバイス20の個別設定、例えば個別暗号鍵や接続先クラウドサービスの詳細設定をデバイス20の設置現場では、フィールドエンジニア、及び、インフラサービスを受けるユーザなどである。
【0063】
なお、例えばインフラサービス向けデバイス20では、工場出荷状態のデバイス20は最低限の個別情報(製造番号など)しか設定されておらず、そのままの状態では、デバイス20がインフラサービスの一部として動作しない。第1実施形態によれば、工場出荷状態のデバイス20は、ユーザ端末10を介して受信されたトークンが正しいサーバ装置30(例えばクラウドサービス)によって発行されたものである場合、サーバ装置30との間で運用設定を行う。このとき、ユーザ端末10はデバイス20とサーバ装置30との間のメッセージを転送するのみなので、メッセージの内容をユーザ端末10に開示されないようにすることができる(メッセージの内容は暗号処理により秘匿される)。そして、ひととおりの運用設定が完了すると、完了通知が、サーバ装置30及びデバイス20の少なくとも一方から、ユーザ端末10に送信される。
【0064】
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第2実施形態では、ユーザ端末10が1つのネットワークインタフェースしか持たない場合について説明する。
【0065】
[ユーザ端末の機能構成の例]
図8は第2実施形態のユーザ端末10の機能構成の例を示す図である。第2実施形態のユーザ端末10は、通信部11、取得部12、記憶部13及び転送部14を備える。第2実施形態では、ユーザ端末10は1つの通信部11しか持たない。例えば、ユーザ端末10とデバイス20とが同一のLANに接続しており、そのLANがネットワーク200に接続する形態では、図8のようなユーザ端末10の構成となる。
【0066】
(第3実施形態)
次に第3実施形態について説明する。第3実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第3実施形態のサーバ装置30の生成部32は、ユーザ端末10からのトークン要求のメッセージ検証結果を、不揮発メモリに記憶する。これにより、正当なトークン要求の受付事実や、不正なトークン要求の受信事実を後から確認できるようになる。トークンの検証結果は、検証が行われた時刻を示す時刻情報と共に保存されていてもよい。
【0067】
(第4実施形態)
次に第4実施形態について説明する。第4実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。第4実施形態のデバイス20の検証部23は不正なトークンを受信した際は、その事実を不揮発メモリへ記憶する。これにより、不正なトークンの受信事実を後から確認できるようになる。不正なトークンの受信記録には、受信時刻を示す時刻情報が含まれていてもよい。
【0068】
最後に、第1乃至第4実施形態のユーザ端末10、デバイス20及びサーバ装置30のハードウェア構成の例について説明する。
【0069】
[ハードウェア構成の例]
図9は第1乃至第4実施形態のユーザ端末10、デバイス20及びサーバ装置30の主要部のハードウェア構成の例を示す図である。第1乃至第4実施形態のユーザ端末10、デバイス20及びサーバ装置30は、制御装置201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205及び通信装置206を備える。制御装置201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205及び通信装置206は、バス210を介して接続されている。
【0070】
なお、第1乃至第4実施形態のユーザ端末10、デバイス20及びサーバ装置30は、上記構成の一部が備えられていなくてもよい。例えば、デバイス20が、インフラサービスの一部として提供されるセンサ等の場合、表示装置204及び入力装置205が備えられていなくてもよい。
【0071】
ユーザ端末10、デバイス20及びサーバ装置30の主要部のハードウェア構成は、同様なので、以下の説明では、ユーザ端末10の場合を例にして説明する。
【0072】
制御装置201は、補助記憶装置203から主記憶装置202に読み出されたプログラムを実行する。主記憶装置202は、ROM及びRAM等のメモリである。補助記憶装置203は、HDD(Hard Disk Drive)及びメモリカード等である。
【0073】
表示装置204は、例えば液晶ディスプレイ等である。入力装置205は、ユーザ端末10を操作するためのインタフェースである。入力装置305は、例えばキーボード、マウス、及び、ユーザ端末10の筐体に備えられたボタン等である。なお、表示装置204及び入力装置205は、表示機能と入力機能とを有するタッチパネル等により実現されていてもよい。
【0074】
通信装置206は、他の装置と通信するためのインタフェースである。
【0075】
ユーザ端末10、デバイス20及びサーバ装置30で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、メモリカード、CD-R及びDVD等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
【0076】
またユーザ端末10、デバイス20及びサーバ装置30で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。またユーザ端末10、デバイス20及びサーバ装置30で実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
【0077】
またユーザ端末10、デバイス20及びサーバ装置30のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0078】
ユーザ端末10、デバイス20及びサーバ装置30で実行されるプログラムは、上述した図2、4、5及び8の機能構成のうち、プログラムによっても実現可能な機能を含むモジュール構成となっている。当該各機能は、実際のハードウェアとしては、制御装置201が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置202上にロードされる。すなわち上記各機能ブロックは主記憶装置202上に生成される。
【0079】
なお上述した図2、4、5及び8の各機能の一部又は全部をソフトウェアにより実現せずに、IC等のハードウェアにより実現してもよい。
【0080】
また複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2以上を実現してもよい。
【0081】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0082】
10 ユーザ端末
11 通信部
12 取得部
13 記憶部
14 転送部
20 デバイス
21 通信部
22 初期設定記憶部
23 検証部
24 設定処理部
25 運用設定記憶部
30 サーバ装置
31 通信部
32 生成部
33 ユーザ情報記憶部
34 デバイス情報記憶部
35 設定処理部
100 通信システム
200 ネットワーク
201 制御装置
202 主記憶装置
203 補助記憶装置
204 表示装置
205 入力装置
206 通信装置
210 バス
図1
図2
図3
図4
図5
図6
図7
図8
図9