以下では、本発明の実施の形態に係る家電制御システムについて、図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、いずれも本発明の一具体例を示すものである。したがって、以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置及び接続形態、ステップ及びステップの順序等は、一例であり、本発明を限定する趣旨ではない。よって、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
また、各図は、模式図であり、必ずしも厳密に図示されたものではない。また、各図において、同じ構成部材については同じ符号を付している。
(実施の形態)
[家電制御システムの構成]
図1は、実施の形態に係る家電制御システム1の特徴的な機能構成を示すブロック図である。
家電制御システム1は、エアコン、又は、給湯器等の家電機器を制御するためのコントローラ200を備えるシステムである。家電制御システム1は、第1家電機器400と、第2家電機器410と、コントローラ200と、サーバ500と、を備える。
第1家電機器400及び第2家電機器410は、ネットワーク通信機能が搭載された家庭用の電子機器(家電機器)の一例であって、洗濯機、エアーコンディショナ、テレビ、録画装置、照明装置、給湯機等である。
第1家電機器400は、インターネット600及びルータ700を介して第1家電機器400のメーカ等が管理するサーバ500と通信可能に接続されている。第1家電機器400は、メーカが独自に定めた暗号規格に準拠し、当該暗号規格に基づいて暗号化した電文でサーバ500とセキュア通信を行う。
なお、以下では、家電機器のメーカ等が独自に定めた規格を第1暗号規格と呼称し、第1暗号規格で暗号化された電文を第1暗号電文と呼称する。
第2家電機器410は、宅内ネットワーク(Home Area Network/HAN)を介して、コントローラ200と通信する。なお、図1においては、HANの範囲を、一点鎖線で図示している。また、第2家電機器410は、例えば、ECHONET Lite(登録商標)等の公知の規格に準拠し、当該規格に従って暗号化された電文でコントローラ200とセキュア通信を行う。
なお、以下では、ECHONET Lite等の電文を暗号化する公知の規格を第2暗号規格と呼称し、第2暗号規格で暗号化された電文を第2暗号電文と呼称する。
第1家電機器400と第2家電機器410とは、通信に用いる電文を暗号化する際に準拠する暗号規格が異なる。具体的には、第1家電機器400は、第1暗号規格に準拠し、第2暗号規格に準拠せず、第2家電機器410は、第1暗号規格に準拠せず、第2暗号規格に準拠する。
コントローラ200は、家電機器を制御するための制御データを、当該家電機器間で送受信することで、家電機器を制御するコントローラである。コントローラ200は、グループマネージャ部(GM部)100と、制御部202と、ダミー部300と、制御部202と、家電機器と通信するためのインターフェースである通信部(不図示)を備える。
GM部100は、HANを介して通信可能に接続された機器と通信し、当該機器の機器認証をする。GM部100は、第2暗号電文で機器と通信し、通信した機器が、GM部100が機器認証するための認証情報であって、任意の認証局により発行された機器証明書等である認証情報を有しているか否かを確認(判定)する。
GM部100は、通信した機器が認証情報を有していると判定した場合に、電文を暗号化及び復号するための暗号鍵を、認証情報を有する機器に送信する。GM部100は、暗号鍵101を送信した機器を特定する情報(例えば、機器のアドレス、機種名、機器が制御可能な項目等)を受信して記憶することで、機器認証グループを作成して記憶し、機器を管理する。暗号鍵101を受信した機器は、暗号鍵101を用いて電文を暗号化及び復号する。こうすることで、GM部100は、第2暗号規格で暗号化された第2暗号電文で機器と通信して機器を認証し、認証した機器同士のみが解する暗号化された電文での通信(つまり、セキュア通信)を可能にする。
つまり、GM部100は、第2暗号電文で機器と通信し、通信した機器がGM部100が解する認証情報を有している場合に機器を認証し、認証した機器同士の通信に用いられる暗号化された電文を復号するための暗号鍵を送信することで、認証した機器間のみが解する暗号化された電文での通信(セキュア通信)を可能にする。
そのため、GM部100は、準拠している暗号規格が異なる第1家電機器400を認証することができず、GM部100が解する認証情報411を有する第2家電機器410を認証することができる。
GM部100は、例えば、CPU(Central Processing Unit)と、当該CPUが実行する制御プログラムが格納されたROM(Read Only Memory)、RAM(Random Access Memory)等の記憶部とから実現される。なお、GM部100は、1つの筐体に配置された機器として実現されてもよいし、GM部100が実行する機能がコントローラ200等の機器に制御プログラムとして記憶されてもよい。
制御部202は、制御データを用いて、家電機器を制御する。制御部202は、例えば、第2家電機器410がエアコンである場合には、エアコンの動作指示を制御データとして第2電文で第2家電機器410へ送信する。また、例えば制御部202は、第2家電機器410から、第2家電機器410の稼働状態等の情報を制御データとして、第2暗号電文で受信する。
また、制御部202は、GM部100が認証でき、且つ、第2暗号規格に準拠し、且つ、制御データを第2暗号電文で送受信する。具体的には、制御部202は、GM部100が機器認証するための認証情報201を有する。制御部202は、例えば、CPUと、認証情報201及びCPUが実行する制御プログラムが格納された記憶部(不図示)を備える。
ダミー部300は、GM部100が認証でき、第1暗号規格及び第2暗号規格に準拠し、サーバ500を経由して第1家電機器400と第1暗号規格で暗号化された第1暗号電文で制御データを通信する。また、ダミー部300は、制御データを第1暗号電文と第2暗号電文とに相互に変換する。
ダミー部300は、例えば、CPUと、当該CPUが実行する制御プログラムが格納されたROM、RAM等の記憶部とから実現される。また、ダミー部300は、1つの筐体に配置された機器として実現されてもよいし、ダミー部300が実行する機能がコントローラ200等の機器に制御プログラムとして記憶されてもよい。
なお、コントローラ200は、GM部100、制御部202及びダミー部300を有する場合、1つのCPUと、GM部100、制御部202及びダミー部300それぞれが実行する制御プログラムが記憶されたROM、RAM等の記憶部とから実現されてもよい。
サーバ500は、ダミー部300及び第1家電機器400の一方から受信した制御データを含む第1暗号電文を他方に転送する。つまり、ダミー部300は、第1家電機器400とは直接的には電文のやり取りをせず、サーバ500を経由して第1家電機器400と第1暗号電文のやり取りをする。サーバ500は、例えば、CPUと、当該CPUが実行する制御プログラムが格納されたROM、RAM等の記憶部とから実現され、ダミー部300及び第1家電機器400の一方から受信した制御データを含む第1暗号電文を他方に転送する転送部510を備える。
続いて、ダミー部300の詳細について説明する。
図2は、実施の形態に係るダミー部300の特徴的な機能構成の詳細を示すブロック図である。
ダミー部300は、通信部310と、変換部320と、認証部330と、記憶部340とを備える。
通信部310は、サーバ500を経由してインターネット600を介して第1家電機器400と通信し、且つ、第2家電機器410と通信するためのインターフェースである。第2家電機器410と通信するためのインターフェースと、サーバ500を経由してインターネット600を介して第1家電機器400と通信するためのインターフェースとをそれぞれ独立して備えてもよい。
変換部320は、制御データを第1暗号電文と第2暗号電文とに相互に変換する。具体的には、変換部320は、インターネットを介してサーバを経由して第1家電機器400から受信した制御データである第1暗号電文を復号して、制御データを第2暗号電文で制御部202へ送信する。また、変換部320は、制御部202から受信した制御データである第2暗号電文を復号して、制御データを第1暗号電文でインターネットを介してサーバを経由して第1家電機器400へ送信する。
認証部330は、通信部310を介してGM部100と通信し、GM部100からGM部100が認証可能な認証情報を有しているかを確認するための確認データを含む第2暗号電文を受信した場合に、GM部100が認証可能な認証情報341を有していることを示す応答データを含む第2暗号電文を送信することで、応答する。
記憶部340は、CPUが実行する制御プログラムが格納されたROM、RAM等のメモリである。また、記憶部340には、GM部100が認証可能な認証情報341と、第1暗号規格を暗号化及び復号するための第1暗号規格情報342と、第2暗号規格を暗号化及び復号するための第2暗号規格情報343とが記憶されている。変換部320は、第1暗号規格情報342及び第2暗号規格情報343を用いて、受信した制御データを、第1暗号電文及び第2暗号電文に双方向に変換する。
なお、家電制御システム1が備える各機器の通信方式は、特に限定されるものではない。例えば、ダミー部300と第1家電機器400とサーバ500とは、それぞれTCP/IP(Transmission Control Protocol/Internet Protocol)等の通信方式を用いて通信してもよい。また、例えば、GM部100とコントローラ200とダミー部300と第2家電機器410とは、それぞれ無線LAN(Local Area Network)のIEEE802.11方式、IEEE802.15.1、IEEE802.15.4、Bluetooth(登録商標)、ZigBee(登録商標)、有線LAN(IEEE802.3)、Ethernet(登録商標)等の通信方式を用いて通信してもよい。また、ここに列挙した通信方式以外の方式で通信を行ってもよい。
なお、ダミー部300は、例えば、第2家電機器410等と無線LANにより接続され、サーバ500とインターネット600により接続される。このように、ダミー部300は、電文を送受信する間に通信メディアを変換する場合、ヘッダ情報等を受信した電文に新たに付与する等、通信プロトコルを変換してもよい。
[家電制御システムの動作手順]
続いて、家電制御システム1の動作手順の詳細について説明する。
図3は、実施の形態に係る家電制御システム1が実行する電文のやり取りの手順を説明するためのシーケンス図である。
まず、サーバ500は、ダミー部300及び第1家電機器400と通信し、それぞれの機器を認証(機器認証)する(ステップS101)。ダミー部300及び第1家電機器400は、例えば、サーバ500が機器を認証するための認証情報を有し、サーバ500は、それぞれが有するサーバ500が認証可能な認証情報を確認することでそれぞれの機器を認証する。また、サーバ500は、共通の暗号鍵をダミー部300及び第1家電機器400に送信することで、サーバ500、ダミー部300及び第1家電機器400のみが解する電文で通信可能とする。言い換えると、サーバ500は、サーバ500、ダミー部300及び第1家電機器400間でのセキュア通信を可能にする。
次に、ダミー部300は、サーバ500へ、ダミー部300が送信した第1暗号電文の制御データを第1家電機器400への転送を要求する電文を送信する(ステップS102)。
次に、サーバ500は、第1家電機器400に関する機器情報をダミー部300へ送信する(ステップS103)。例えば、サーバ500は、ステップS101で第1家電機器400を認証する際に、第1家電機器400の機種名、第1家電機器400が制御可能な項目等の機器情報を取得し、ステップS104でダミー部300へ当該機器情報を送信する。第1家電機器400が制御可能な項目とは、例えば、第1家電機器400がエアコンである場合、温度制御、送風制御等である。
次に、サーバ500は、ダミー部300と第1家電機器400とを関連付けて記憶する(ステップS104)。こうすることで、サーバ500は、ダミー部300及び第1家電機器400の一方から受信した第1暗号電文の制御データを、他方に転送する。
次に、GM部100は、制御部202及びダミー部300と通信し、それぞれの機器を認証(機器認証)する(ステップS105)。制御部202及びダミー部300は、例えば、GM部100が機器を認証するための認証情報を有し、GM部100は、それぞれが有する認証情報201、341を確認することでそれぞれの機器を認証する。また、GM部100は、暗号鍵101を制御部202及びダミー部300に送信することで、GM部100、制御部202及びダミー部300のみが解する電文で通信可能とする。言い換えると、GM部100は、GM部100、制御部202及びダミー部300でのセキュア通信を可能とする。
次に、ダミー部300は、サーバ500から受信した第1家電機器400に関する機器情報を、制御部202に送信する(ステップS106)。こうすることで、制御部202は、第1家電機器400の機器情報を取得できるために、第1家電機器400を制御するための制御データを取得した機器情報に基づいて作成し、送信することができる。つまり、制御部202は、ダミー部300を仮想的に第1家電機器400として認識することとなる。
次に、制御部202は、第1家電機器400を制御する場合に、第2暗号電文の制御データを、ダミー部300に送信する(ステップS107)。
次に、ダミー部300は、受信した第2暗号電文の制御データを第1暗号電文に変換して(ステップS108)、サーバ500に第1暗号電文の制御データを送信する(ステップS109)。具体的には、ステップS108では、ダミー部300は、受信した第2暗号電文の制御データを、GM部100から取得した暗号鍵101を用いて復号し、当該制御データをサーバ500から取得した暗号鍵を用いて暗号化して、第1暗号電文の制御データに変換する。このように、ダミー部300は、第1暗号電文と第2暗号電文とを相互に変換する。
次に、サーバ500は、ダミー部300から受信した第1暗号電文の制御データを、第1家電機器400に転送する(ステップS110)。こうすることで、第1家電機器400は、受信した第1暗号電文の制御データを解することができるため、制御部202が送信した制御データに基づいた動作を実行することができる。
また、第1家電機器400は、例えば、第1家電機器400の動作状態を示すデータを制御データとして、第1暗号電文でサーバ500へ送信する(ステップS111)。
次に、サーバ500は、第1家電機器400から受信した第1暗号電文の制御データをダミー部300に転送する(ステップS112)。
次に、ダミー部300は、受信した第1暗号電文の制御データを第2暗号電文に変換して(ステップS113)、制御部202に第2暗号電文の制御データを送信する(ステップS114)。具体的には、ステップS113では、ダミー部300は、受信した第1暗号電文の制御データを、サーバ500から取得した暗号鍵を用いて復号し、当該制御データをGM部100から取得した暗号鍵101を用いて暗号化して、第2暗号電文の制御データに変換する。
こうすることで、制御部202は、第1家電機器400が送信した制御データを受信し、当該制御データを解することができる。つまり、ステップS107〜ステップS114に示すように、家電制御システム1によれば、制御部202と第1家電機器400とで、制御部202と第1家電機器400とが制御データを解することができるように、当該制御データの送受信をすることができる。
図4は、実施の形態に係るGM部100が機器を認証する手順の詳細を説明するためのシーケンス図である。具体的には、図4は、図3に示すステップS105の詳細を説明するためのシーケンス図である。
まず、GM部100は、制御部202及びダミー部300と通信することで、それぞれの機器がGM部100が解する認証情報を記憶しているか否かを確認する(ステップS201)。具体的には、GM部100は、ステップS201において、制御部202及びダミー部300のそれぞれの機器がGM部100が解する認証情報を記憶しているか否かを確認するための電文をそれぞれに送信する。ここで、GM部100は、当該電文を、ユニキャストで送信してもよいし、マルチキャストで送信してもよいし、ブロードキャストで送信してもよい。
次に、制御部202及びダミー部300は、GM部100が解する認証情報を記憶している場合、認証情報を記憶している旨を示す情報である応答情報を含む電文をGM部100に送信する(ステップS202及びステップS203)。こうすることで、GM部100は、制御部202及びダミー部300が認証情報を有しているかを確認する。
次に、GM部100は、制御部202及びダミー部300から応答情報を含む電文を受信した場合に、GM部100が認証情報を有していることを確認した機器が通信する際に用いる電文を暗号化及び復号するための暗号鍵を、それぞれに送信する(ステップS203)。こうすることで、GM部100は、制御部202及びダミー部300の間での暗号鍵を用いたセキュア通信を可能とする(ステップS204)。
ところで、第1家電機器400の故障等により、第1家電機器400を制御部202で制御することを停止させたい場合が想定される。
続いて、ダミー部300と第1家電機器400との間の転送を停止させる手順について説明する。
図5Aは、実施の形態に係る家電制御システム1が実行するダミー部300の機能を停止する際の手順の一例を説明するためのシーケンスである。なお、図5Aでは、図3に示すステップS101〜ステップS106までがすでに実行されている家電制御システム1について説明する。
まず、第1家電機器400は、制御部202の制御対象から削除する旨を示す削除要求の情報を含む第1暗号電文をサーバ500へ送信する(ステップS301)。
次に、サーバ500は、受信した削除要求を転送し(ステップS302)、ダミー部300と第1家電機器400との対応情報を削除する(ステップS303)。こうすることで、サーバ500は、ダミー部300と第1家電機器400との第2暗号電文の双方向への転送を止める。
次に、ダミー部300は、削除要求の情報を含む第1暗号電文を第2暗号電文に変換して、GM部100及び制御部202に送信する(ステップS304)。
次に、GM部100は、ダミー部300から削除要求の情報を含む第2暗号電文を受信した場合に、ダミー部300を認証した機器から削除する(ステップS305)。
また、制御部202及びダミー部300は、第1家電機器400の機器情報を削除する(ステップS306)。こうすることで、制御部202は、ダミー部300を仮想的に第1家電機器400として認識しなくなり、第1家電機器400を制御できなくなる。
なお、ダミー部300からの指示により、ダミー部300を、GM部100が管理する機器から削除してもよい。
図5Bは、実施の形態に係る家電制御システム1が実行するダミー部300の機能を停止する際の手順の別の一例を説明するためのシーケンス図である。なお、図5Bでは、図3に示すステップS101〜ステップS106までの処理がすでに実行されている家電制御システム1について説明する。
まず、ダミー部300は、第1家電機器400を制御部202の制御対象から削除する旨を示す削除要求の情報を含む第1暗号電文をGM部100、制御部202及びサーバ500へ送信する(ステップS301a)。例えば、ダミー部300は、ユーザが操作するためのタッチパネル、ボタン等から構成される操作部(不図示)を有し、ユーザから操作部を介して削除要求を送信する旨を示す操作を受け付けた場合に、ステップS301aを実行する。
次に、サーバ500は、ダミー部300から削除要求の情報を含む第1暗号電文を受信した場合に、ダミー部300と第1家電機器400との対応情報を削除する(ステップS303)。
また、GM部100は、ダミー部300から削除要求の情報を含む第2暗号電文を受信した場合に、ダミー部300を認証した機器から削除する(ステップS305)。
また、制御部202及びダミー部300は、第1家電機器400の機器情報を削除する(ステップS306)。
ここで、家電制御システム1が備えるダミー部300、第1家電機器400、第2家電機器410、ダミー部300等の機器の数は特に限定されるものではない。家電制御システム1が、ダミー部300及び第1家電機器400をそれぞれ複数備える場合、サーバ500が受信した制御データの転送先は任意に定められてよいし、変更できてもよい。
図6は、実施の形態に係る家電制御システム1が備えるダミー部300が電文のやり取りをする第1家電機器400を変更する手順を説明するためのシーケンスである。なお、図6では、家電制御システム1が第1家電機器を2つ備える場合について説明する。なお、図6では、説明のために、家電制御システム1が備える2つの第1家電機器のうちの1つを、第3家電機器401として記載している。また、図6では、図3に示すステップS101〜ステップS106までの処理がすでに実行されており、第3家電機器401もまた、第1家電機器400と同様に、サーバ500によって機器認証がされているとして説明する。
まず、ダミー部300は、サーバ500へ、ダミー部300が送信した第1暗号電文の制御データを第3家電機器401への転送を要求する電文を送信する(ステップS401)。例えば、ダミー部300は、ユーザが操作するためのタッチパネル、ボタン等から構成される操作部(不図示)を有し、ユーザから操作部を介して転送要求を送信する旨を示す操作を受け付けた場合に、ステップS401を実行する。
次に、ダミー部300は、第1家電機器400を制御部202の制御対象から削除する旨を示す削除要求の情報を含む第2暗号電文を、GM部100及び制御部202に送信する(ステップS402)。
次に、GM部100は、ダミー部300から削除要求の情報を含む第2暗号電文を受信した場合に、ダミー部300を認証した機器から削除する(ステップS403)。
また、制御部202及びダミー部300は、第1家電機器400の機器情報を削除する(ステップS404)。
次に、サーバ500は、ダミー部300から第3家電機器401への転送要求を含む第1暗号電文を受信した場合に、第3家電機器401に関する機器情報をダミー部300へ送信する(ステップS405)。例えば、サーバ500は、第3家電機器401を機器認証する際に、第3家電機器401の機種名、第3家電機器401が制御可能な項目等の機器情報を取得し、ステップS405でダミー部300へ当該機器情報を送信する。
次に、サーバ500は、ダミー部300と第3家電機器401とを関連付けて記憶する(ステップS406)。なお、サーバ500は、ステップS406において、ダミー部300と第3家電機器401とを関連付けて記憶する前に、ダミー部300と第1家電機器400との対応情報の削除を行う。
次に、GM部100は、ダミー部300と通信して、ダミー部300が認証情報を有している場合に、ダミー部300を認証する(ステップS407)。ステップS407は、例えば、図4に示すステップS201〜ステップS203と同様の手順である。
次に、ダミー部300は、サーバ500から受信した第3家電機器401に関する機器情報を、制御部202に送信する(ステップS408)。こうすることで、制御部202は、第3家電機器401の機器情報を取得できるために、第3家電機器401を制御するための制御データを取得した機器情報に基づいて作成し、送信することができる。つまり、制御部202は、ダミー部300を仮想的に第3家電機器401として認識することとなる。
ここで、家電制御システム1のユーザは、例えば、ユーザが有するスマートフォン等の端末装置を操作することにより、サーバ500が受信した制御データの転送先が変更されてもよい。
図7は、実施の形態に係る家電制御システム1が備える端末装置800によってダミー部300が電文のやり取りをする第1家電機器を決定する手順を説明するためのフローチャートである。図8は、実施の形態に係る家電制御システム1が備える端末装置800が、ダミー部300が電文のやり取りをする第1家電機器を決定する際に表示する画像を示す図である。なお、図7に示すフローチャートでは、サーバ500は、複数の第1家電機器400及び複数のダミー部300と機器認証をすでに行っているとして説明する。
端末装置800は、サーバ500と通信可能な通信装置であり、サーバ500と通信するための専用のアプリケーションを有するスマートフォン、タブレット端末、リモートコントローラ等である。端末装置800は、例えば、インターネット600、ルータ700を介してサーバ500と通信可能となっている。端末装置800は、画像を表示するためのディスプレイ等の表示部と、ユーザの操作を受け付けるタッチパネル、ボタン等の操作部を備える。図8には、端末装置800の一例として、表示部及び操作部とが一体的に形成されたタッチパネルディスプレイを有する端末装置を示している。
図7に示すように、まず、端末装置800は、ユーザの操作を受け付けて、サーバ500が有する複数の第1家電機器400及び複数のダミー部300の機器情報を取得する(ステップS501)。機器情報は、例えば、複数の第1家電機器400及び複数のダミー部300をそれぞれ区別して特定できる情報であればよく、例えば、機種名等である。コントローラ200が機能として複数のダミー部300を有する場合、ダミー部300の機器情報は、複数のダミー部300をそれぞれ区別して特定できればよく、任意に定められた名前でもよい。
次に、端末装置800は、第1家電機器400とダミー部300とを関連付ける操作を受け付ける(ステップS502)。
次に、端末装置800は、第1家電機器400とダミー部300との対応情報を作成する(ステップS503)。対応情報とは、端末装置800がユーザの操作を受け付け、受け付けた操作に基づいて複数の第1家電機器400と複数のダミー部300とを1対1で関連付けした情報である。具体的には、対応情報は、サーバ500に第1家電機器400及びダミー部300の一方から受信した第1暗号電文を、関連付けられた第1家電機器400及びダミー部300の他方に転送させるための情報である。
図8に示すように、端末装置800は、サーバ500から受信した第1家電機器400及びダミー部300の機器情報に基づいて、画像810を作成して表示する。
画像810には、例えば、サーバ500から受信した複数の第1家電機器400の名前とダミー部300の名前とが表示される。ユーザは、端末装置800を操作して、複数の第1家電機器400及び複数のダミー部300の中からそれぞれ一つずつ第1家電機器400とダミー部300とを選択する。図8には、ユーザが、複数の第1家電機器400の中から家電機器Aを選択し、複数のダミー部300の中からダミー部Aを選択した場合について図示している。端末装置800は、ユーザの選択結果に応じて、家電機器Aとダミー部300とが関連付けられたことを示す対応情報画像811を表示する。
再び図7を参照し、端末装置800は、ステップS503で作成した対応情報を、サーバ500へ送信する(ステップS504)。サーバ500は、受信した対応情報に基づいて、ダミー部300へ当該ダミー部300に対応付けられた第1家電機器400の機種名、制御可能な項目等を含む機器情報を送信し、第1家電機器400とダミー部300間での双方向の第1暗号電文の制御データの転送を行う。
図9は、実施の形態に係る家電制御システム1が備える端末装置800によって、ダミー部300が電文のやり取りをする第1家電機器400を決定する手順を説明するためのシーケンス図である。なお、図9においては、GM部100は、制御部202の機器認証をすでに行っているものとして説明する。
まず、サーバ500は、ダミー部300及び第1家電機器400と通信し、それぞれを機器認証する(ステップS601)。ステップS601は、例えば、図3に示すステップS101と同様の手順である。なお、図9には、説明のために1つの第1家電機器400と1つのダミー部300とを図示しているが、家電制御システム1が複数の第1家電機器400及び複数のダミー部300を備える場合、サーバ500は、複数の第1家電機器400及び複数のダミー部300それぞれを機器認証する。また、例えば、サーバ500は、ステップS601で複数の第1家電機器400及び複数のダミー部300を機器認証する際に、第1家電機器400の機種名、第1家電機器400が制御可能な項目等の機器情報を取得する。
次に、端末装置800は、サーバ500へ、複数の第1家電機器400及び複数のダミー部300の機器情報を要求する要求電文を送信する(ステップS602)。例えば、端末装置800は、例えば、ユーザからサーバ500が有する機器情報を要求する操作を受け付けた場合に、ステップS602を実行する。
次に、サーバ500は、機器情報を要求する要求電文を受信した場合に、サーバ500が有する機器情報を端末装置800に送信する(ステップS603)。
次に、端末装置800は、図8に示すステップS501〜ステップS503を実行し、作成した対応情報をサーバ500へ送信する(ステップS604)。
次に、サーバ500は、受信した対応情報に基づいて、ダミー部300へ当該ダミー部300に対応付けられた第1家電機器400の機種名、制御可能な項目等を含む機器情報を送信する(ステップS605)。
また、サーバ500は、ダミー部300と第1家電機器400とを関連付けて記憶する(ステップS606)。こうすることで、サーバ500は、第1家電機器400とダミー部300間での双方向の第1暗号電文の制御データの転送を行う。
次に、GM部100は、ダミー部300を機器認証する(ステップS607)。ステップS607は、例えば、図3に示すステップS105と同様の手順である。
次に、ダミー部300は、サーバ500から受信した第1家電機器400に関する機器情報を、制御部202に送信する(ステップS608)。こうすることで、制御部202は、第1家電機器400の機器情報を取得できるために、第1家電機器400を制御するための制御データを取得した機器情報に基づいて作成し、送信することができる。つまり、制御部202は、ダミー部300を仮想的に第1家電機器400として認識することとなる。
[効果等]
以上のように、本実施の形態に係る家電制御システム1は、第1家電機器400と、GM部100と、第2家電機器410と、コントローラ200と、ダミー部300を備える。第1家電機器400は、第1暗号規格に準拠し、第2暗号規格に準拠せず、サーバ500とインターネット600を介して通信できる。GM部100は、第2暗号規格で暗号化された第2暗号電文で機器と通信して機器を認証し、認証した機器同士のみが解する暗号化された電文での通信を可能にする。コントローラ200は、GM部100が認証でき、第2暗号規格に準拠し、家電機器を制御するための制御データを第2暗号電文で送受信する。第2家電機器410は、GM部100が認証でき、第2暗号規格に準拠する。ダミー部300は、GM部100が認証でき、第1暗号規格及び第2暗号規格に準拠する。また、ダミー部300は、サーバ500を経由して第1家電機器400と第1暗号規格で暗号化された第1暗号電文で制御データを通信でき、且つ、制御データを第1暗号電文と第2暗号電文とに相互に変換できる。
このような構成によれば、第1家電機器400をGM部100で認証することなく、コントローラ200(具体的には、制御部202)と第1家電機器400とは、異なる暗号規格で暗号化された電文の制御データをやり取りすることが可能となる。つまり、家電制御システム1によれば、準拠する電文の暗号規格が異なる機器間で、簡便にセキュリティ性を維持しつつ電文のやり取りを可能とすることができる。
特に、従来、HEMS(Home Energy Management System)に対応する家電機器であって、当該家電機器のメーカが独自に定めた独自の暗号規格に準拠して、サーバ500と通信する家電機器は、既に一般家庭で多く利用されている。家電制御システム1によれば、サーバ500と従来から通信可能であった第1家電機器400を改変することなく、セキュリティ性の高いセキュア通信を維持しつつ、且つ、GM部100が管理する機器認証グループに参加させ、コントローラ200(具体的には、制御部202)で第1家電機器400を制御することができる。
例えば、GM部100は、第2暗号電文で機器と通信し、通信した機器がGM部100が解する認証情報を有している場合に機器を認証し、認証した機器同士の通信に用いられる暗号化された電文を復号するための暗号鍵101を送信することで、認証した機器間のみが解する暗号化された電文での通信を可能にする。
これにより、GM部100によって、GM部100が管理する機器間でのみ解することが可能な電文を用いたセキュア通信が可能となる。そのため、GM部100が管理する機器間で、よりセキュリティ性の高い通信が可能となる。
また、例えば、家電制御システム1は、さらに、複数の第1家電機器400と、複数のダミー部300と、サーバ500と通信可能な端末装置800を備える。端末装置800は、ユーザの操作を受け付け、受け付けた操作に基づいて複数の第1家電機器400と複数のダミー部300とを1対1で関連付けした対応情報であって、サーバ500に第1家電機器400及びダミー部300の一方から受信した第1暗号電文の制御データを、関連付けられた第1家電機器400及びダミー部300の他方に転送させるための対応情報をサーバ500に送信する。
これにより、家電制御システム1が複数の第1家電機器400とダミー部300と備える場合に、関連付けられる機器を簡便に変更することができる。そのため、家電制御システム1が端末装置800を備えることにより、利便性が向上される。
(その他の実施の形態)
以上、本実施の形態に係る家電制御システムについて、上記実施の形態に基づいて説明したが、本発明は、上記実施の形態に限定されるものではない。
例えば、上記実施の形態では、制御部、変換部、認証部及び転送部は、CPUと制御プログラムとによって構成されると説明した。しかしながら、制御部、変換部、認証部及び転送部の構成は、これに限定されない。制御部、変換部、認証部及び転送部は、専用の電子回路としてハードウェア的に実現されてもよい。
また、本発明は、家電制御システムとして実現できるだけでなく、家電制御システムの行う各構成要素が行う処理をステップとして含むプログラム、及び、そのプログラムを記録したコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray(登録商標) Disc)、半導体メモリ等の記録媒体として実現することもできる。また、当該プログラムは、インターネット等の通信路で配信されてもよい。
つまり、上記包括的又は具体的な態様は、システム、装置、集積回路、コンピュータプログラム又はコンピュータ読み取り可能な記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
また、ダミー部は、当該ダミー部が実行する機能を制御プログラムとしてコントローラ等に組み込まれてもよいし、ダミー部が実行する機能を制御プログラムとしてサーバに組み込まれてもよいし、1つの筐体に配置され、コントローラ、サーバ等と通信可能なダミー機器として実現されてもよい。
また、GM部は、当該GM部が実行する機能を制御プログラムとしてコントローラ等に組み込まれてもよいし、1つの筐体に配置され、コントローラ、第2家電機器等と通信可能なグループマネージャ機器として実現されてもよい。
また、端末装置は、本実施の形態に係る家電制御システムで利用される専用の通信端末でもよいし、ユーザが有するスマートフォン等の通信端末装置でもよい。また、端末装置が実行する、第1家電機器とダミー部との関連付け、ユーザからの操作の受け付け等の機能がコントローラに備えられることで、端末装置が実現されてもよい。
また、第2暗号規格として、公知の規格であるECHONET Liteを例示したが、ECHONET Lite以外の規格が採用されてもよい。
また、例えば、図3に示すステップS103とステップS104とは、順序が変更されてよい。このように、上記実施の形態に示すステップ及びステップの順序等は、一例であり、本発明の趣旨を逸脱しない範囲で、変更されてよい。
その他、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態や、本発明の趣旨を逸脱しない範囲で各実施の形態における構成要素及び機能を任意に組み合わせることで実現される形態も本発明に含まれる。