(57)【特許請求の範囲】
【請求項１】
ネットワークを介して端末装置が接続されるサーバであって、
前記ネットワーク上における前記サーバのＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部に指示する生成指示部と、
前記生成指示部による指示に従って前記サーバ証明書生成部により生成されたサーバ証明書を記憶する証明書記憶部と、
前記証明書記憶部に記憶されたサーバ証明書を用いて、前記端末装置と通信する通信部と、を備え、
前記生成指示部は、予め定められた時間が経過する毎に、前記サーバのＩＰアドレスが変更されたか否かを判別するアドレス変更判別部を備え、前記アドレス変更判別部により前記サーバのＩＰアドレスが変更されたと判別されたことに応答して、前記サーバの新たなＩＰアドレスを含むサーバ証明書を生成することを前記サーバ証明書生成部に指示する、
サーバ。
【請求項２】
前記生成指示部は、前記サーバのＩＰアドレスが変更された場合、前記サーバが起動又は再起動されたことに応答して、前記サーバの新たなＩＰアドレスを含むサーバ証明書を生成することを前記サーバ証明書生成部に指示する、
請求項１に記載のサーバ。
【請求項３】
前記サーバ証明書生成部は、ルート証明書生成部により生成されたルート証明書に基づいて、前記サーバ証明書を生成し、
前記証明書記憶部は、前記ルート証明書生成部により生成されたルート証明書と前記サーバ証明書生成部により生成されたサーバ証明書とを記憶し、
前記通信部は、前記証明書記憶部に記憶されたルート証明書及びサーバ証明書を用いて、前記端末装置と通信し、
前記生成指示部は、前記証明書記憶部に記憶されたルート証明書が変更されたことに応答して、新たなサーバ証明書を生成することを前記サーバ証明書生成部に指示する、
請求項１又は２に記載のサーバ。
【請求項４】
前記証明書記憶部に記憶されたサーバ証明書には、前記サーバ証明書の有効期限が含まれ、
前記生成指示部は、現在時刻が前記証明書記憶部に記憶されたサーバ証明書に含まれる有効期限を基準とする特定期間外の時刻である場合、新たなサーバ証明書を生成することを前記サーバ証明書生成部に指示する、
請求項１から３のいずれか１項に記載のサーバ。
【請求項５】
前記サーバ証明書の有効期限は、協定世界時により示される有効期限であり、
前記生成指示部は、前記協定世界時により示される有効期限を、前記サーバが設置された国の標準時により示される有効期限に変換する、
請求項４に記載のサーバ。
【請求項６】
前記生成指示部は、前記証明書記憶部にサーバ証明書が記憶されていない場合、サーバ証明書を生成することを前記サーバ証明書生成部に指示する、
請求項１から５のいずれか１項に記載のサーバ。
【請求項７】
前記サーバは、前記サーバ証明書生成部を備える、
請求項１から６のいずれか１項に記載のサーバ。
【請求項８】
前記サーバは、空調機器を制御又は監視する空調コントローラである、
請求項１から７のいずれか１項に記載のサーバ。
【請求項９】
前記サーバは、照明機器を制御又は監視する照明コントローラである、
請求項１から７のいずれか１項に記載のサーバ。
【請求項１０】
予め定められた時間が経過する毎に、ネットワークを介して端末装置が接続されるサーバの前記ネットワーク上におけるＩＰアドレスが変更されたか否かを判別し、
前記サーバのＩＰアドレスが変更されたと判別されたことに応答して、前記サーバの新たなＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部に指示する、
証明書生成指示方法。
【請求項１１】
ネットワークを介して端末装置が接続されるサーバが備えるコンピュータを、
前記ネットワーク上における前記サーバのＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部に指示する生成指示部、
前記生成指示部による指示に従って前記サーバ証明書生成部により生成されたサーバ証明書を用いて、前記端末装置と通信する通信部、として機能させるプログラムであって、
前記生成指示部は、予め定められた時間が経過する毎に、前記サーバのＩＰアドレスが変更されたか否かを判別するアドレス変更判別部を備え、前記アドレス変更判別部により前記サーバのＩＰアドレスが変更されたと判別されたことに応答して、前記サーバの新たなＩＰアドレスを含むサーバ証明書を生成することを前記サーバ証明書生成部に指示する、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ証明書を生成することを指示するサーバ、証明書生成指示方法、及び、プログラムに関する。
【背景技術】
【０００２】
情報漏洩や改竄防止などの観点からサーバと端末装置とがＳＳＬ（Secure Sockets Layer）などの通信手順に従って通信することがある。このような通信では、例えば、サーバと端末装置とがルート証明書とサーバ証明書とを用いて通信する。一般的に、ルート証明書やサーバ証明書は、認証局により発行又は認証され、サーバに配布される。しかしながら、サーバ証明書やルート証明書を認証局に発行又は認証してもらう場合、費用がかかる。そこで、サーバ証明書やルート証明書をサーバが独自に生成する種々の技術が考案されている。例えば、特許文献１には、サーバであるデバイスが、ルート証明書と、サーバ証明書である自己作成証明書と、を作成し、ルート証明書と自己作成証明書とを端末装置であるクライアントに送信する技術が開示されている。【０００３】
このような通信では、サーバ証明書にコモンネームとして記載されたサーバの識別子と、端末装置がアクセス先として指定したサーバの識別子とが一致しない場合、端末装置は警告画面を表示する。ここで、ＤＮＳ（Domain Name System）が用いられる環境では、サーバの識別子として、例えば、サーバのドメイン名が採用される。従って、この場合、サーバ証明書に記載されたサーバのドメイン名と、端末装置がアクセス先として指定したサーバのドメイン名とが一致しない場合、端末装置は警告画面を表示することになる。一方、ＤＮＳが用いられない環境では、端末装置がアクセス先として指定するサーバの識別子として、例えば、サーバのＩＰ（Internet Protocol）アドレスが採用される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−６０７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、このような場合、サーバのＩＰアドレスが適切にサーバ証明書に記載されていないと、端末装置は警告画面を表示することになる。そして、このような警告画面が表示されると、ユーザの利便性が損なわれる可能性がある。【０００６】
本発明は、端末装置がＩＰアドレスによりサーバを指定してサーバ証明書を用いてサーバと通信するときのユーザの利便性の低下を抑制するサーバ、証明書生成指示方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明に係るサーバは、
ネットワークを介して端末装置が接続されるサーバであって、
前記ネットワーク上における前記サーバのＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部に指示する生成指示部と、
前記生成指示部による指示に従って前記サーバ証明書生成部により生成されたサーバ証明書を記憶する証明書記憶部と、
前記証明書記憶部に記憶されたサーバ証明書を用いて、前記端末装置と通信する通信部と、を備え、
前記生成指示部は、予め定められた時間が経過する毎に、前記サーバのＩＰアドレスが変更されたか否かを判別するアドレス変更判別部を備え、前記アドレス変更判別部により前記サーバのＩＰアドレスが変更されたと判別されたことに応答して、前記サーバの新たなＩＰアドレスを含むサーバ証明書を生成することを前記サーバ証明書生成部に指示する。
【発明の効果】
【０００８】
本発明では、予め定められた時間が経過する毎に、サーバのＩＰアドレスが変更されたか否かが判別され、サーバのＩＰアドレスが変更されたと判別されたことに応答して、サーバの新たなＩＰアドレスを含むサーバ証明書を生成することがサーバ証明書生成部に指示される。従って、本発明によれば、端末装置がＩＰアドレスによりサーバを指定してサーバ証明書を用いてサーバと通信するときのユーザの利便性の低下を抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態１に係るサーバを含むシステムの構成図である。
【図２】本発明の実施形態１に係るサーバの構成図である。
【図３】本発明の実施形態１に係るサーバの機能を説明するための図である。
【図４】ルート証明書とサーバ証明書の生成手順を示す図である。
【図５】本発明の実施形態に係るサーバが実行するサーバ処理を示すフローチャートである。
【図６】図５に示す生成要否チェック処理を示すフローチャートである。
【図７】図５に示すサーバ証明書生成処理を示すフローチャートである。
【図８】本発明の実施形態２に係るサーバを含むシステムの構成図である。
【図９】本発明の実施形態２に係るサーバの機能を説明するための図である。
【図１０】本発明の実施形態２に係る証明書生成装置の機能を説明するための図である。
【発明を実施するための形態】
【００１０】
（実施形態１）
図１に、本発明の実施形態１に係るサーバ１００を含むシステムの構成を示す。サーバ１００は、ＳＳＬ（Secure Sockets Layer）などの通信手順に従った暗号化通信により、端末装置２００に各種のサービスを提供する機能（以下、適宜「サービス提供機能」という。）を有するサーバである。本実施形態では、サーバ１００が端末装置２００に提供するサービスは、設備機器４００の制御を中継するサービスや設備機器４００の運転状態を示す情報を提供するサービスなど、端末装置２００が備えるブラウザを介して提供されるサービスであるものとする。サーバ１００は、設備機器４００を制御する機能（以下、適宜「設備機器制御機能」という。）と、設備機器４００の運転状態を示す情報を取得する機能（以下、適宜「設備機器監視機能」という。）と、を備える。また、サーバ１００は、上述した暗号化通信において用いられる各種の証明書を生成する機能（以下、適宜「証明書生成機能」という。）と、これらの証明書を管理する機能（以下、適宜「証明書管理機能」という。）と、を有する。
【００１１】
サーバ１００は、例えば、空調システムにおける空調コントローラに、証明書生成機能と証明書管理機能とを持たせた装置である。サーバ１００は、第１ネットワーク５１０に接続する機能を有する。サーバ１００は、第１ネットワーク５１０に接続された端末装置２００と通信することが可能である。サーバ１００は、第２ネットワーク５２０に接続する機能を有する。サーバ１００は、第２ネットワーク５２０に接続された設備機器４００と通信することが可能である。以下、図２を参照して、サーバ１００の構成について説明する。
【００１２】
図２に示すように、サーバ１００は、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、フラッシュメモリ１４、ＲＴＣ（Real Time Clock）１５、タッチスクリーン１６、第１ネットワークインターフェース１７、第２ネットワークインターフェース１８を備える。サーバ１００が備える各構成要素は、バスを介して相互に接続される。
【００１３】
ＣＰＵ１１は、サーバ１００の全体の動作を制御する。なお、ＣＰＵ１１は、ＲＯＭ１２に格納されているプログラムに従って動作し、ＲＡＭ１３をワークエリアとして使用する。ＲＯＭ１２には、サーバ１００の全体の動作を制御するためのプログラムやデータが記憶される。ＲＡＭ１３は、ＣＰＵ１１のワークエリアとして機能する。つまり、ＣＰＵ１１は、ＲＡＭ１３にプログラムやデータを一時的に書き込み、これらのプログラムやデータを適宜参照する。
【００１４】
フラッシュメモリ１４は、各種の情報を記憶する不揮発性メモリである。ＲＴＣ１５は、計時用のデバイスである。ＲＴＣ１５は、例えば、電池を内蔵し、サーバ１００の電源がオフの間も計時を継続する。ＲＴＣ１５は、例えば、水晶発振子を備える発振回路を備える。
【００１５】
タッチスクリーン１６は、ユーザによりなされたタッチ操作を検知し、検知の結果を示す信号をＣＰＵ１１に供給する。また、タッチスクリーン１６は、ＣＰＵ１１などから供給された画像信号に基づく画像を表示する。このように、タッチスクリーン１６は、サーバ１００のユーザインターフェースとして機能する。
【００１６】
第１ネットワークインターフェース１７は、サーバ１００を、第１ネットワーク５１０に接続するためのインターフェースである。サーバ１００は、第１ネットワーク５１０を介して、第１ネットワーク５１０に接続された端末装置２００と通信することが可能である。第１ネットワークインターフェース１７は、例えば、ＮＩＣ（Network Interface Card）などのＬＡＮ（Local Area Network）インターフェースを備える。
【００１７】
第２ネットワークインターフェース１８は、サーバ１００を、第２ネットワーク５２０に接続するためのインターフェースである。サーバ１００は、第２ネットワーク５２０を介して、第２ネットワーク５２０に接続された設備機器４００と通信することが可能である。第２ネットワークインターフェース１８は、例えば、空調システムで用いられる独自の通信プロトコルに従って通信する通信インターフェースを備える。
【００１８】
端末装置２００は、ブラウザを介して、サーバ１００からサービスの提供を受ける装置である。端末装置２００は、サーバ１００から供給された情報をブラウザ上で閲覧可能に表示する機能を有する。端末装置２００は、第１ネットワーク５１０に接続する機能を有する。端末装置２００は、ＨＴＴＰＳ（Hypertext Transfer Protocol Secure）などのＳＳＬ暗号化通信により第１ネットワーク５１０に接続されたサーバ１００と通信する。サーバ１００と端末装置２００とは、特に、漏洩したり改竄されたりすると問題が生じる情報をＳＳＬ暗号化通信により授受する。端末装置２００は、例えば、パーソナルコンピュータ、スマートフォン、携帯電話、タブレット端末などである。
【００１９】
ＨＵＢ３００は、第１ネットワーク５１０に接続される複数の機器を相互に接続する集線装置である。本実施形態では、サーバ１００とＨＵＢ３００とがイーサネット（登録商標）ケーブルにより接続され、端末装置２００とＨＵＢ３００とがイーサネット（登録商標）ケーブルにより接続されることにより、サーバ１００と端末装置２００とが接続される。
【００２０】
設備機器４００は、サーバ１００や図示しないリモートコントローラにより制御及び監視される機器である。設備機器４００は、第２ネットワーク５２０に接続する機能を有する。従って、設備機器４００は、第２ネットワーク５２０に接続されたサーバ１００や他の設備機器４００と通信することが可能である。設備機器４００は、サーバ１００による制御に従って動作する。また、設備機器４００は、定期的に、又は、サーバ１００による要求に従って、運転状態を示す情報をサーバ１００に供給する。設備機器４００は、例えば、空調機器（室外機、室内機）である。
【００２１】
第１ネットワーク５１０は、サーバ１００と端末装置２００とが相互に通信するためのネットワークである。第１ネットワーク５１０は、例えば、サーバ１００と端末装置２００とがＨＵＢ３００を介して相互に接続されることにより構築される。第１ネットワーク５１０では、ＤＮＳ（Domain Name System）が用いられないものとする。このため、第１ネットワーク５１０に接続されたノードは、ＩＰ（Internet Protocol）アドレスにより特定される。例えば、端末装置２００が、通信相手としてサーバ１００を指定する場合、通信相手としてサーバ１００のＩＰアドレスを指定する。第１ネットワーク５１０は、例えば、無線ＬＡＮなどのネットワークである。
【００２２】
第２ネットワーク５２０は、サーバ１００と設備機器４００とが相互に通信するためのネットワークである。第２ネットワーク５２０は、例えば、サーバ１００と設備機器４００が通信線により相互に接続されることにより構築される。第２ネットワーク５２０は、例えば、空調システムで採用される独自の通信プロトコルに従って通信するためのネットワークである。
【００２３】
次に、図３を参照して、サーバ１００の基本的な機能について説明する。サーバ１００は、機能的には、生成指示部１０１、証明書記憶部１０２、通信部１０３、ルート証明書生成部１０５、サーバ証明書生成部１０６、情報処理部１０７、第２通信部１０８を備える。
【００２４】
生成指示部１０１は、コモンネームとして第１ネットワーク５１０上におけるサーバ１００のＩＰアドレスが記載されたサーバ証明書（以下、適宜、「サーバ１００のＩＰアドレスを含むサーバ証明書」という。）を生成することをサーバ証明書生成部１０６に指示する。なお、「ある情報が記載されたサーバ証明書」のことを、適宜、「ある情報を含むサーバ証明書」という。本実施形態では、生成指示部１０１は、サーバ１００のＩＰアドレスが変更されたことに応答して、サーバ１００の新たなＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部１０６に指示するものとする。また、本実施形態では、サーバ１００がサーバ証明書生成部１０６を有するものとする。サーバ１００は、サーバ１００のＩＰアドレスが変更されたことに応答して、サーバ１００のＩＰアドレスを含むサーバ証明書を自動的に生成する装置といえる。なお、本実施形態では、「指示する」とは、例えば、「指示する制御信号を送信する」ことである。
【００２５】
サーバ１００と端末装置２００とがＳＳＬ通信する場合、端末装置２００は、サーバ１００のＩＰアドレスを含むサーバ証明書を用いて、サーバ１００を認証する。例えば、端末装置２００は、通信相手として指定したサーバ１００のＩＰアドレスとサーバ証明書に記載されたＩＰアドレスとが一致しない場合、サーバ１００が正当な通信相手でない可能性がある旨を示す警告画面をブラウザ上に表示する。そこで、生成指示部１０１は、サーバ１００のＩＰアドレスが変更された場合、サーバ１００の新たなＩＰアドレスを含む新たなサーバ証明書（コモンネームとしてサーバ１００の新たなＩＰアドレスが記載された新たなサーバ証明書）を生成することをサーバ証明書生成部１０６に指示する。これにより、サーバ１００のＩＰアドレスが変更されても、警告画面が表示されることが抑制される。
【００２６】
なお、上述したサーバ１００のＩＰアドレスは、サーバ１００のローカルなネットワーク環境に合わせてサーバ１００に割り当てられるＩＰアドレスである。そして、サーバ１００のネットワーク環境が変化すると、サーバ１００のＩＰアドレスも変更されやすい。なお、サーバ１００のネットワーク環境が変化するとは、例えば、サーバ１００が接続された第１ネットワーク５１０に通信装置が追加されたり、第１ネットワーク５１０から通信装置が切り離されたりして、第１ネットワーク５１０のネットワーク構成が変化することである。生成指示部１０１の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００２７】
なお、端末装置２００がサーバ１００に接続する度に警告画面がブラウザ上で表示されると、以下のような問題が生じる。例えば、ユーザに「端末装置２００の接続先が誤っているのではないか？」という不安を抱かせてしまう可能性がある。或いは、熟練していないユーザに対して、「誤った操作をしてしまったのではないか？」と勘違いさせてしまう可能性がある。或いは、ユーザに「このシステムのメーカーは、本当に大丈夫？」などと不信感を抱かせてしまう可能性がある。また、ユーザに警告画面を閉じるための操作を強いることになり、ユーザに余計な手間をかけてさせてしまう。
【００２８】
証明書記憶部１０２は、生成指示部１０１による指示に従ってサーバ証明書生成部１０６により生成されたサーバ証明書を記憶する。証明書記憶部１０２の機能は、例えば、ＣＰＵ１１とフラッシュメモリ１４とが協働することにより実現される。
【００２９】
通信部１０３は、証明書記憶部１０２に記憶されたサーバ証明書を用いて、端末装置２００と通信する。例えば、通信部１０３は、ＨＴＴＰＳなどのＳＳＬ暗号化通信により端末装置２００と通信する。例えば、通信部１０３は、サーバ証明書に含まれる公開鍵に対応する秘密鍵により暗号化した情報を、端末装置２００に送信する。この場合、端末装置２００は、受信した情報を、サーバ証明書に含まれる公開鍵で復号化する。また、端末装置２００は、例えば、サーバ証明書に含まれる公開鍵で暗号化した情報を、通信部１０３に送信する。この場合、通信部１０３は、受信した情報を、サーバ証明書に含まれる公開鍵に対応する秘密鍵で復号化する。通信部１０３の機能は、例えば、ＣＰＵ１１と第１ネットワークインターフェース１７とが協働することにより実現される。
【００３０】
ここで、生成指示部１０１は、アドレス変更判別部１０４を備える。アドレス変更判別部１０４は、サーバ１００が起動又は再起動されたことに応答して、サーバ１００のＩＰアドレスが変更されたか否かを判別する。一般的に、サーバ１００のＩＰアドレスが変更された場合、サーバ１００を再起動（もしくは、一度電源をオフしてから、電源をオンし直す。）することが要求される。言い換えれば、再起動等を伴わずにサーバ１００のＩＰアドレスが変更されることは稀であると考えられる。このため、アドレス変更判別部１０４は、サーバ１００の起動時又は再起動時にサーバ１００のＩＰアドレスが変更されたか否かを判別することにより、サーバ１００のＩＰアドレスが変更されたことを速やかに検知することができる。
【００３１】
なお、アドレス変更判別部１０４は、例えば、最新のサーバ証明書に含まれるＩＰアドレスと判別時におけるサーバ１００のＩＰアドレスとが一致しない場合、サーバ１００のＩＰアドレスが変更されたと判別する。或いは、アドレス変更判別部１０４は、例えば、最新のサーバ証明書の生成時におけるサーバ１００のＩＰアドレスをフラッシュメモリ１４に記憶させ、このＩＰアドレスと判別時におけるサーバ１００のＩＰアドレスとが一致しない場合、サーバ１００のＩＰアドレスが変更されたと判別する。アドレス変更判別部１０４の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００３２】
或いは、アドレス変更判別部１０４は、予め定められた時間（例えば、数日程度）が経過する毎に、サーバ１００のＩＰアドレスが変更されたか否かを判別してもよい。この場合、アドレス変更判別部１０４は、例えば、サーバ１００の再起動を伴わずにサーバ１００のＩＰアドレスが変更された場合でも、サーバ１００のＩＰアドレスが変更されてからあまり時間が経過しないうちに、サーバ１００のＩＰアドレスが変更されたことを検知することができる。この場合、アドレス変更判別部１０４の機能は、例えば、ＣＰＵ１１とＲＴＣ１５とが協働することにより実現される。
【００３３】
ルート証明書生成部１０５は、ルート証明書を生成する。ルート証明書は、ルート認証局がルート認証局の正当性を証明するために、ルート認証局がルート認証局に対して生成する証明書である。ルート証明書は、ルート認証局からサーバ１００に配布され、サーバ１００から端末装置２００に配布される。端末装置２００は、サーバ１００から配布されたルート証明書が予め記憶されている複数の信頼できるルート証明書のうちのいずれかと一致する場合、サーバ１００から配布されたルート証明書が信頼できると判別する。本実施形態では、ルート認証局はサーバ１００であり、サーバ１００により生成されたルート証明書は、端末装置２００にインストールされ、信頼できるルート証明書として登録されるものとする。ルート証明書生成部１０５の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００３４】
サーバ証明書生成部１０６は、ルート証明書生成部１０５により生成されたルート証明書に基づいて、サーバ証明書を生成する。サーバ証明書は、サーバ１００がサーバ１００の正当性を証明するために、サーバ１００がサーバ１００に対して生成し、ルート認証局の署名を受けた証明書である。サーバ証明書は、ルート認証局からサーバ１００に配布され、サーバ１００から端末装置２００に配布される。端末装置２００は、サーバ１００から配布されたサーバ証明書の正当性を、サーバ１００から配布されたルート証明書に基づいて判別する。サーバ証明書生成部１０６の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００３５】
ここで、証明書記憶部１０２は、ルート証明書生成部１０５により生成されたルート証明書とサーバ証明書生成部１０６により生成されたサーバ証明書とを記憶する。そして、通信部１０３は、証明書記憶部１０２に記憶されたルート証明書及びサーバ証明書を用いて、端末装置２００と通信する。なお、端末装置２００は、サーバ１００から受信したルート証明書及びサーバ証明書を用いて、サーバ１００を認証する。
【００３６】
ここで、生成指示部１０１は、証明書記憶部１０２に記憶されたルート証明書が変更されたことに応答して、新たなサーバ証明書を生成することをサーバ証明書生成部１０６に指示する。サーバ証明書は、ルート証明書に基づいて生成される。このため、ルート証明書が変更された場合、サーバ証明書を新たに生成することが好適である。そこで、生成指示部１０１は、ルート証明書が変更されたことに応答して、新たなサーバ証明書を生成することをサーバ証明書生成部１０６に指示する。なお、生成指示部１０１は、例えば、最新のサーバ証明書に対応するルート証明書をフラッシュメモリ１４に記憶させ、このルート証明書と証明書記憶部１０２に記憶されたルート証明書とが一致しない場合、ルート証明書が変更されたと判別する。
【００３７】
ここで、証明書記憶部１０２に記憶されたサーバ証明書には、サーバ証明書の有効期限が含まれていてもよい。この場合、生成指示部１０１は、現在時刻が証明書記憶部１０２に記憶されたサーバ証明書に含まれる有効期限を基準とする特定期間外の時刻である場合、新たなサーバ証明書を生成することを証明書生成装置に指示する。特定期間は、サーバ証明書を生成する必要がない期間と考えることができる。特定期間は、典型的には、有効期限の開始時刻から有効期限の終了時刻までの期間である。或いは、特定期間は、有効期限の開始時刻から、有効期限の終了時刻よりも予め定められた時間（以下、適宜「余裕時間」という。）だけ前の時刻であってもよい。この場合、サーバ証明書の有効期限が切れる前に、新たなサーバ証明書が生成されることになる。なお、余裕時間は、適宜、調整することができる。例えば、余裕時間を長くすることにより、より早い段階で、サーバ証明書を更新することができる。
【００３８】
また、サーバ証明書の有効期限は、協定世界時により示される有効期限であってもよい。この場合、生成指示部１０１は、協定世界時により示される有効期限を、サーバ１００が設置された国の標準時により示される有効期限に変換する。例えば、日本標準時は、協定世界時より９時間進んでいる。そこで、例えば、サーバが設置された国が日本国である場合、協定世界時により示される有効期限を後ろに９時間シフトさせた有効期限が、日本国における有効期限として認識される。なお、サーバ１００が設置された国を示す情報は、例えば、フラッシュメモリ１４に記憶される。
【００３９】
また、生成指示部１０１は、証明書記憶部１０２にサーバ証明書が記憶されていない場合、サーバ証明書を生成することをサーバ証明書生成部１０６に指示する。例えば、新たにシステムが導入された場合、もしくは、何らかの理由によりサーバ証明書が消去された場合、生成指示部１０１による指示に従って、サーバ証明書が生成される。
【００４０】
情報処理部１０７は、端末装置２００や設備機器４００からサーバ１００に供給された情報や、サーバ１００から端末装置２００や設備機器４００に供給する情報を処理する。例えば、通信部１０３が端末装置２００から設備機器４００に対する制御信号やデータ要求信号を受信するものとする。この場合、情報処理部１０７は、制御信号やデータ要求信号を、適宜、変換し、変換後の信号を、第２通信部１０８を介して設備機器４００に送信する。また、例えば、第２通信部１０８が設備機器４００からデータを受信するものとする。この場合、情報処理部１０７は、受信されたデータを、適宜、変換し、変換後のデータを、通信部１０３を介して端末装置２００に送信する。情報処理部１０７は、受信されたデータをバッファリングし、端末装置２００からの要求に従って、端末装置２００に供給してもよい。情報処理部１０７の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００４１】
第２通信部１０８は、情報処理部１０７による制御に従って、設備機器４００と通信する。第２通信部１０８の機能は、例えば、ＣＰＵ１１と第２ネットワークインターフェース１８とが協働することにより実現される。
【００４２】
端末装置２００は、制御部２０１、記憶部２０２、通信部２０３、表示部２０４を備える。制御部２０１は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備え、端末装置２００全体の動作を制御する。記憶部２０２は、フラッシュメモリなどを備え、各種の情報を記憶する。通信部２０３は、第１ネットワークインターフェース１７と同様の構成を備え、サーバ１００と通信する。表示部２０４は、サーバ１００から供給された情報などを画面に表示する。
【００４３】
設備機器４００は、制御部４０１、記憶部４０２、通信部４０３を備える。制御部４０１は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備え、設備機器４００全体の動作を制御する。記憶部４０２は、フラッシュメモリなどを備え、各種の情報を記憶する。通信部４０３は、第２ネットワークインターフェース１８と同様の構成を備え、サーバ１００と通信する。
【００４４】
次に、図４を参照して、ルート証明書とサーバ証明書の生成手順について説明する。まず、ルート証明書の生成手順について説明する。なお、ルート証明書は、ルート証明書生成部１０５により生成される。
【００４５】
まず、ルート証明書生成部１０５は、ルート証明書に含める公開鍵とルート証明書に含める公開鍵に対応する秘密鍵とのペアを生成する。ルート証明書生成部１０５は、生成した公開鍵と秘密鍵とのペアを、フラッシュメモリ１４に記憶する。ルート証明書生成部１０５は、ルート証明書に含める各種の情報を取得する。ルート証明書に含める情報は、例えば、ルート証明書の公開鍵、ルート証明書の有効期限である。ここで、ルート証明書生成部１０５は、公開鍵と有効期限とを含むルート証明書（以下、適宜「未署名のルート証明書」という。）に署名を追加する。具体的には、ルート証明書生成部１０５は、まず、未署名のルート証明書のハッシュ値を抽出する。そして、ルート証明書生成部１０５は、抽出したハッシュ値をルート証明書の秘密鍵で暗号化することにより、署名を作成する。ルート証明書生成部１０５は、未署名のルート証明書に作成した署名を追加することで署名付きのルート証明書を生成する。
【００４６】
次に、サーバ証明書の生成手順について説明する。なお、サーバ証明書は、サーバ証明書生成部１０６により生成される。
【００４７】
まず、サーバ証明書生成部１０６は、サーバ証明書に含める公開鍵とサーバ証明書に含める公開鍵に対応する秘密鍵とのペアを生成する。サーバ証明書生成部１０６は、生成した公開鍵と秘密鍵とのペアを、フラッシュメモリ１４に記憶する。サーバ証明書生成部１０６は、サーバ証明書に含める各種の情報を取得する。サーバ証明書に含める情報は、例えば、上位証明書の指定、サーバ証明書の公開鍵、サーバ１００のＩＰアドレス、サーバ証明書の有効期限である。上位証明書の指定は、サーバ証明書に署名する上位の認証局の証明書の指定であり、本実施形態では、ルート証明書の指定である。
【００４８】
ここで、サーバ証明書生成部１０６は、上位証明書の指定と公開鍵とＩＰアドレスと有効期限とを含むサーバ証明書（以下、適宜「未署名のサーバ証明書」という。）に署名を追加する。具体的には、サーバ証明書生成部１０６は、まず、未署名のサーバ証明書のハッシュ値を抽出する。そして、サーバ証明書生成部１０６は、抽出したハッシュ値をルート証明書の秘密鍵で暗号化することにより、署名を作成する。サーバ証明書生成部１０６は、未署名のサーバ証明書に作成した署名を追加することで署名付きのサーバ証明書を生成する。
【００４９】
なお、端末装置２００は、ＳＳＬ通信の開始時に、サーバ１００から配布された署名付きのルート証明書及び署名付きのサーバ証明書に基づいて、サーバ１００を認証する。具体的には、まず、端末装置２００は、サーバ証明書に記載された上位証明書指定を取得し、上位証明書指定により指定される上位証明書であるルート証明書を取得する。ここで、端末装置２００は、取得されたルート証明書が信頼できる証明書であるか否かを判別する。本実施形態では、ルート証明書は信頼できる証明書であるものとして端末装置２００に登録されている。従って、本実施形態では、ルート証明書は信頼できる証明書であると判別する。
【００５０】
そして、端末装置２００は、取得したルート証明書に記載された公開鍵で、サーバ証明書に記載された署名を復号化することを試みる。ここで、端末装置２００は、署名が復号化できた場合、サーバ証明書のハッシュ値（ただし、署名を除く部分のハッシュ値）を抽出する。そして、端末装置２００は、署名の復号化により取得されたハッシュ値と自ら抽出したハッシュ値とが一致する場合、サーバ証明書が正当な証明書であると判別する。端末装置２００は、サーバ証明書が正当な証明書であると判別した場合、サーバ証明書に含まれる公開鍵などを使用して、サーバ１００とＳＳＬにより通信する。一方、端末装置２００は、サーバ証明書が正当な証明書でないと判別した場合、サーバ証明書が正当な証明書でない旨を表示部２０４に表示する。なお、端末装置２００によるサーバ１００の認証処理については、例えば、特開２００５−６０７６号公報に詳細に開示されている。
【００５１】
次に、図５に示すフローチャートを参照して、サーバ１００が実行するサーバ処理について説明する。サーバ処理は、例えば、サーバ１００の電源が投入されたとき、すなわち、サーバ１００の起動時、或いは、サーバ１００の再起動時に開始される。
【００５２】
まず、ＣＰＵ１１は、生成要否チェック処理を実行する（ステップＳ１０１）。生成要否チェック処理については、図６に示すフローチャートを参照して、詳細に説明する。
【００５３】
まず、ＣＰＵ１１は、サーバ証明書があるか否かを判別する（ステップＳ２０１）。なお、サーバ証明書は、フラッシュメモリ１４に記憶されているものとする。
【００５４】
ＣＰＵ１１は、サーバ証明書があると判別した場合（ステップＳ２０１：ＹＥＳ）、サーバ１００のＩＰアドレスが変更されたか否かを判別する（ステップＳ２０２）。例えば、ＣＰＵ１１は、サーバ１００の現在のＩＰアドレスとサーバ証明書に記載されたサーバ１００のＩＰアドレスとが一致しない場合、サーバ１００のＩＰアドレスが変更されたと判別する。なお、サーバ１００の現在のＩＰアドレスやサーバ証明書は、フラッシュメモリ１４に記憶されているものとする。
【００５５】
ＣＰＵ１１は、サーバ１００のＩＰアドレスが変更されていないと判別した場合（ステップＳ２０２：ＮＯ）、ルート証明書が変更されたか否かを判別する（ステップＳ２０３）。例えば、ＣＰＵ１１は、サーバ証明書の作成時のルート証明書と現在のルート証明書とが一致しない場合、ルート証明書が変更されたと判別する。なお、サーバ証明書の作成時のルート証明書や現在のルート証明書は、フラッシュメモリ１４に記憶されているものとする。
【００５６】
ＣＰＵ１１は、ルート証明書が変更されていないと判別した場合（ステップＳ２０３：ＮＯ）、現在時刻が特定期間内であるか否かを判別する（ステップＳ２０４）。例えば、ＣＰＵ１１は、ＲＴＣ１５から取得した情報に基づいて特定される現在時刻が、サーバ証明書に含まれる有効期限に基づいて特定される特定期間内であるか否かを判別する。ＣＰＵ１１は、現在時刻が特定期間内であると判別した場合（ステップＳ２０４：ＹＥＳ）、サーバ証明書を生成する必要なしと判別する（ステップＳ２０６）。
【００５７】
一方、ＣＰＵ１１は、サーバ証明書がないと判別した場合（ステップＳ２０１：ＮＯ）、サーバ１００のＩＰアドレスが変更されたと判別した場合（ステップＳ２０２：ＹＥＳ）、ルート証明書が変更されたと判別した場合（ステップＳ２０３：ＹＥＳ）、現在時刻が生成不要期間内でないと判別した場合（ステップＳ２０４：ＮＯ）、サーバ証明書を生成する必要ありと判別する（ステップＳ２０５）。ＣＰＵ１１は、ステップＳ２０５又はステップＳ２０６の処理を完了すると、生成要否チェック処理を完了する。
【００５８】
ＣＰＵ１１は、ステップＳ１０１の生成要否チェック処理を完了すると、サーバ証明書を生成する必要があるか否かを判別する（ステップＳ１０２）。ＣＰＵ１１は、サーバ証明書を生成する必要があると判別した場合（ステップＳ１０２：ＹＥＳ）、サーバ証明書生成処理を実行する（ステップＳ１０３）。サーバ証明書生成処理については、図７に示すフローチャートを参照して、詳細に説明する。
【００５９】
まず、ＣＰＵ１１は、公開鍵と秘密鍵とのペアを生成する（ステップＳ３０１）。ＣＰＵ１１が公開鍵と秘密鍵とのペアを生成する手法は、適宜、調整することができる。ＣＰＵ１１は、生成した公開鍵と秘密鍵とのペアをフラッシュメモリ１４に記憶する。
【００６０】
ＣＰＵ１１は、ステップＳ３０１の処理を完了すると、未署名のサーバ証明書を生成する（ステップＳ３０２）。未署名のサーバ証明書は、例えば、ルート証明書を指定する上位証明書指定と、ステップＳ３０１で生成した公開鍵と、サーバ１００のＩＰアドレスと、サーバ証明書の有効期限と、を含み、署名を含まない証明書である。
【００６１】
ＣＰＵ１１は、ステップＳ３０２の処理を完了すると、署名を生成する（ステップＳ３０３）。具体的には、ＣＰＵ１１は、まず、未署名のサーバ証明書のハッシュ値を抽出する。そして、ＣＰＵ１１は、抽出したハッシュ値をルート証明書の秘密鍵で暗号化することにより、署名を生成する。
【００６２】
ＣＰＵ１１は、ステップＳ３０３の処理を完了すると、署名付きのサーバ証明書を生成する（ステップＳ３０４）。具体的には、ＣＰＵ１１は、ステップＳ３０２で生成した未署名のサーバ証明書にステップＳ３０３で生成した署名を追加することにより、署名付きのサーバ証明書を生成する。
【００６３】
ＣＰＵ１１は、ステップＳ３０４の処理を完了すると、サーバ証明書を更新する（ステップＳ３０５）。具体的には、ＣＰＵ１１は、フラッシュメモリ１４に記憶されているサーバ証明書に代えて、ステップＳ３０４で生成したサーバ証明書をフラッシュメモリ１４に記憶する。なお、ＣＰＵ１１は、新たにフラッシュメモリ１４に記憶されたサーバ証明書を、サーバ証明書の更新時、又は、端末装置２００との通信開始時に、端末装置２００に送信する。ＣＰＵ１１は、ステップＳ３０５の処理を完了すると、サーバ証明書生成処理を完了する。
【００６４】
ＣＰＵ１１は、サーバ証明書を生成する必要がないと判別した場合（ステップＳ１０２：ＮＯ）、又は、ステップＳ１０３の処理を完了した場合、チェック用タイマを再起動する（ステップＳ１０４）。チェック用タイマは、生成要否チェック処理を実行すべきか否かを判別する際に参照されるフラグをセットするタイマである。チェック用タイマは、例えば、再起動時にフラグをリセットし、再起動されてから予め定められた時間（例えば、１日）が経過したことに応答して、フラグをセットする。
【００６５】
ＣＰＵ１１は、ステップＳ１０４の処理を完了すると、サービスの提供要求があるか否かを判別する（ステップＳ１０５）。例えば、ＣＰＵ１１は、サービスの提供を要求する制御信号であって、端末装置２００から送信された制御信号が、第１ネットワークインターフェース１７により受信されたか否かを判別する。
【００６６】
ＣＰＵ１１は、サービスの提供要求があると判別した場合（ステップＳ１０５：ＹＥＳ）、サービス提供処理を実行する（ステップＳ１０６）。サービス提供処理は、例えば、サーバ１００が端末装置２００に設備機器４００の運転状態をリアルタイムに提示する監視画面を提供する処理である。サービス提供処理の開始時には、サーバ１００から端末装置２００にルート証明書とサーバ証明書とが送信され、ルート証明書とサーバ証明書とを用いたサーバ１００の認証処理が端末装置２００により実行される。そして、サービス提供処理中は、サーバ１００と端末装置２００との間でＳＳＬによる通信が実行される。
【００６７】
ＣＰＵ１１は、サービスの提供要求がないと判別した場合（ステップＳ１０５：ＮＯ）、又は、ステップＳ１０６の処理を完了した場合、チェック用タイマによりフラグがセットされたか否かを判別する（ステップＳ１０７）。ＣＰＵ１１は、チェック用タイマによりフラグがセットされていないと判別した場合（ステップＳ１０７：ＮＯ）、ステップＳ１０５に処理を戻す。一方、ＣＰＵ１１は、チェック用タイマによりフラグがセットされたと判別した場合（ステップＳ１０７：ＹＥＳ）、生成要否チェック処理を実行する（ステップＳ１０８）。なお、ステップＳ１０８における生成要否チェック処理は、ステップＳ１０１における生成要否チェック処理と同様の処理であるため、説明を省略する。
【００６８】
ＣＰＵ１１は、ステップＳ１０８の生成要否チェック処理を完了すると、サーバ証明書を生成する必要があるか否かを判別する（ステップＳ１０９）。ＣＰＵ１１は、サーバ証明書を生成する必要があると判別した場合（ステップＳ１０９：ＹＥＳ）、サーバ証明書生成処理を実行する（ステップＳ１１０）。なお、ステップＳ１１０におけるサーバ証明書生成処理は、ステップＳ１０３におけるサーバ証明書生成処理と同様の処理であるため、説明を省略する。ＣＰＵ１１は、サーバ証明書を生成する必要がないと判別した場合（ステップＳ１０９：ＮＯ）、又は、ステップＳ１１０の処理を完了した場合、ステップＳ１０４に処理を戻す。
【００６９】
以上説明したように、本実施形態では、サーバ１００のＩＰアドレスを含むサーバ証明書を生成することがサーバ証明書生成部１０６に指示される。従って、本実施形態によれば、端末装置２００がサーバ１００のＩＰアドレスが記載されたサーバ証明書を用いてサーバ１００と通信する場合、サーバ１００のＩＰアドレスの不整合に起因する警告画面が表示されない。その結果、本実施形態によれば、端末装置２００がＩＰアドレスによりサーバ１００を指定してサーバ証明書を用いてサーバ１００と通信するときのユーザの利便性の低下を抑制することができる。
【００７０】
また、本実施形態では、サーバ１００のＩＰアドレスが変更されたことに応答してサーバ１００の新たなＩＰアドレスを含むサーバ証明書を生成することがサーバ証明書生成部１０６に指示される。従って、本実施形態によれば、サーバ１００のＩＰアドレスの不整合に起因する警告画面を表示されにくくすることができる。その結果、本実施形態によれば、端末装置２００がＩＰアドレスによりサーバ１００を指定してサーバ証明書を用いてサーバ１００と通信するときのユーザの利便性の低下を抑制することができる。
【００７１】
また、本実施形態では、サーバ１００が起動又は再起動したことに応答して、サーバ１００のＩＰアドレスが変更されたか否かが判別される。従って、本実施形態によれば、サーバ１００のＩＰアドレスが変更された直後である可能性が高いタイミングで、サーバ１００のＩＰアドレスが変更されたか否かが判別される。その結果、本実施形態によれば、ユーザの利便性の低下を少ない処理負荷で抑制することができる。
【００７２】
また、本実施形態では、予め定められた時間が経過する毎に、サーバ１００のＩＰアドレスが変更されたか否かが判別される。従って、本実施形態によれば、定期的に、サーバ１００のＩＰアドレスが変更されたか否かが判別される。その結果、本実施形態によれば、ユーザの利便性の低下をより確実に抑制することができる。
【００７３】
また、本実施形態では、ルート証明書が変更されたことに応答して、新たなサーバ証明書を生成することが指示される。従って、本実施形態によれば、サーバ証明書が適切に使用できなくなった直後である可能性が高いタイミングで、新たなサーバ証明書を生成することが指示される。その結果、本実施形態によれば、ユーザの利便性の低下を少ない処理負荷でより確実に抑制することができる。
【００７４】
また、本実施形態では、サーバ証明書の有効期限に応じて、新たなサーバ証明書を生成することが指示される。従って、本実施形態によれば、サーバ証明書が適切に使用できなくなる直前である可能性が高いタイミングで、新たなサーバ証明書を生成することが指示される。その結果、本実施形態によれば、ユーザの利便性の低下を少ない処理負荷でより確実に抑制することができる。
【００７５】
また、本実施形態では、協定世界時により示される有効期限が、サーバ１００が設置された国の標準時により示される有効期限に変換される。その結果、本実施形態によれば、ユーザの利便性の低下を少ない処理負荷でより確実に且つより適切に抑制することができる。
【００７６】
また、本実施形態では、サーバ証明書がない場合に、サーバ証明書を生成することが指示される。従って、本実施形態によれば、サーバ証明書がない場合、速やかにサーバ証明書を生成することが指示される。その結果、本実施形態によれば、ユーザの利便性の低下をより確実に抑制することができる。
【００７７】
また、本実施形態では、サーバ１００がサーバ証明書生成部１０６を備える。その結果、本実施形態によれば、ユーザの利便性の低下を少ないリソースで抑制することができる。
【００７８】
また、本実施形態では、サーバ１００は、空調機器を制御又は監視する空調コントローラである。このような場合、サーバ１００と端末装置２００とは、ＤＮＳが採用されないローカルなネットワークを介して、ＩＰアドレスにより宛先を指定して通信することも多い。かかる場合であっても、サーバ１００のＩＰアドレスの不整合に起因する警告画面を表示されにくくすることができる。
【００７９】
（実施形態２）
実施形態１では、証明書管理機能に加え、証明書生成機能を有するサーバ１００を採用する例について説明した。本発明において、証明書生成機能を有さないサーバ１２０を採用してもよい。図８に、本発明の実施形態２に係るサーバ１２０を含むシステムの構成を示す。図８に示すシステムでは、証明書生成機能を有する証明書生成装置１３０が、ＨＵＢ３００を介して、サーバ１２０と端末装置２００とに接続されている。つまり、証明書生成装置１３０は、第１ネットワーク５１０に接続されている。本実施形態では、サーバ１２０と証明書生成装置１３０とが協働することにより、サーバ１００の機能を実現する。なお、サーバ１２０の物理的な構成は、図２に示すサーバ１００の物理的な構成と同様であるため、説明を省略する。また、証明書生成装置１３０の物理的な構成は、例えば、図２に示すサーバ１００の物理的な構成から、第２ネットワークインターフェース１８を除外した構成である。以下、サーバ１２０の機能的な構成と、証明書生成装置１３０の機能的な構成を中心に説明する。
【００８０】
まず、図９を参照して、サーバ１２０の基本的な機能について説明する。サーバ１２０は、機能的には、生成指示部１０１、証明書記憶部１０２、通信部１０３、情報処理部１０７、第２通信部１０８、第３通信部１０９を備える。
【００８１】
生成指示部１０１は、サーバ１２０のＩＰアドレスが変更されたことに応答して、サーバ１２０のＩＰアドレスを含むサーバ証明書を生成することをサーバ証明書生成部１３３に指示する。なお、生成指示部１０１は、上記サーバ証明書を生成することを、第３通信部１０９を介して、サーバ証明書生成部１３３に指示する。生成指示部１０１の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００８２】
証明書記憶部１０２は、生成指示部１０１による指示に従ってサーバ証明書生成部１３３により生成されたサーバ証明書を記憶する。また、証明書記憶部１０２は、ルート証明書生成部１３２により生成されたルート証明書を記憶する。証明書記憶部１０２は、第３通信部１０９を介して、サーバ証明書生成部１３３からサーバ証明書を取得する。証明書記憶部１０２は、第３通信部１０９を介して、ルート証明書生成部１３２からルート証明書を取得する。証明書記憶部１０２の機能は、例えば、ＣＰＵ１１とフラッシュメモリ１４とが協働することにより実現される。
【００８３】
通信部１０３は、証明書記憶部１０２に記憶されたルート証明書及びサーバ証明書を用いて、端末装置２００と通信する。通信部１０３の機能は、例えば、ＣＰＵ１１と第１ネットワークインターフェース１７とが協働することにより実現される。
【００８４】
ここで、生成指示部１０１は、アドレス変更判別部１０４を備える。アドレス変更判別部１０４は、サーバ１２０が起動又は再起動されたことに応答して、サーバ１２０のＩＰアドレスが変更されたか否かを判別する。アドレス変更判別部１０４の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００８５】
或いは、アドレス変更判別部１０４は、予め定められた時間（例えば、数日程度）が経過する毎に、サーバ１２０のＩＰアドレスが変更されたか否かを判別してもよい。この場合、アドレス変更判別部１０４の機能は、例えば、ＣＰＵ１１とＲＴＣ１５とが協働することにより実現される。
【００８６】
情報処理部１０７は、端末装置２００や設備機器４００からサーバ１２０に供給された情報や、サーバ１２０から端末装置２００や設備機器４００に供給する情報を処理する。情報処理部１０７の機能は、例えば、ＣＰＵ１１がＲＯＭ１２に記憶されたプログラムを実行することにより実現される。
【００８７】
第２通信部１０８は、情報処理部１０７による制御に従って、設備機器４００と通信する。第２通信部１０８の機能は、例えば、ＣＰＵ１１と第２ネットワークインターフェース１８とが協働することにより実現される。
【００８８】
第３通信部１０９は、第１ネットワーク５１０を介して、証明書生成装置１３０と通信する。具体的には、第３通信部１０９は、生成指示部１０１によるサーバ証明書の生成指示に従って、サーバ証明書を生成することを指示する制御信号をサーバ証明書生成部１３３に送信する。また、第３通信部１０９は、サーバ証明書生成部１３３から受信したサーバ証明書を証明書記憶部１０２に供給する。また、第３通信部１０９は、生成指示部１０１によるルート証明書の生成指示に従って、ルート証明書を生成することを指示する制御信号をルート証明書生成部１３２に送信する。また、第３通信部１０９は、ルート証明書生成部１３２から受信したルート証明書を証明書記憶部１０２に供給する。第３通信部１０９の機能は、例えば、ＣＰＵ１１と第１ネットワークインターフェース１７とが協働することにより実現される。
【００８９】
次に、図１０を参照して、証明書生成装置１３０の基本的な機能について説明する。証明書生成装置１３０は、機能的には、通信部１３１、ルート証明書生成部１３２、サーバ証明書生成部１３３、証明書記憶部１３４を備える。
【００９０】
通信部１３１は、第１ネットワーク５１０を介して、サーバ１２０と通信する。具体的には、通信部１３１は、サーバ１２０から受信した制御信号を、ルート証明書生成部１３２やサーバ証明書生成部１３３に供給する。また、通信部１３１は、ルート証明書生成部１３２から供給されたルート証明書やサーバ証明書生成部１３３から供給されたサーバ証明書を、サーバ１２０に送信する。通信部１３１の機能は、例えば、図示しないＣＰＵ（ＣＰＵ１１に対応するＣＰＵ）と図示しないネットワークインターフェース（第１ネットワークインターフェース１７に対応するネットワークインターフェース）とが協働することにより実現される。
【００９１】
ルート証明書生成部１３２は、ルート証明書を生成する。ルート証明書生成部１３２は、例えば、通信部１３１から供給された制御信号に従って、ルート証明書を生成する。ルート証明書生成部１３２は、生成したルート証明書を、通信部１３１と証明書記憶部１３４とに供給する。ルート証明書生成部１３２の機能は、例えば、図示しないＣＰＵが図示しないＲＯＭ（ＲＯＭ１２に対応するＲＯＭ）に記憶されたプログラムを実行することにより実現される。
【００９２】
サーバ証明書生成部１３３は、証明書記憶部１３４に記憶されたルート証明書に基づいて、サーバ証明書を生成する。サーバ証明書生成部１３３は、例えば、通信部１３１から供給された制御信号に従って、サーバ証明書を生成する。サーバ証明書生成部１３３は、生成したサーバ証明書を、通信部１３１と証明書記憶部１３４とに供給する。サーバ証明書生成部１３３の機能は、例えば、図示しないＣＰＵが図示しないＲＯＭに記憶されたプログラムを実行することにより実現される。
【００９３】
証明書記憶部１３４は、ルート証明書生成部１３２により生成されたルート証明書とサーバ証明書生成部１３３により生成されたサーバ証明書とを記憶する。証明書記憶部１３４に記憶されたルート証明書やサーバ証明書は、適宜、通信部１３１を介して、サーバ１２０に供給される。証明書記憶部１３４の機能は、例えば、図示しないＣＰＵと図示しないフラッシュメモリ（フラッシュメモリ１４に対応するフラッシュメモリ）とが協働することにより実現される。
【００９４】
以上説明したように、本実施形態では、サーバ１２０のＩＰアドレスが変更されたことに応答して、サーバ１２０のＩＰアドレスを含むサーバ証明書を生成することが、証明書生成装置１３０が備えるサーバ証明書生成部１３３に指示され、証明書生成装置１３０が備えるサーバ証明書生成部１３３により生成されたサーバ証明書がサーバ１２０に供給される。従って、本実施形態によれば、例えば、証明書生成機能を有する証明書生成装置１３０が存在する場合に、サーバ１２０に証明書生成機能を持たせずに、サーバ１２０のＩＰアドレスの不整合に起因する警告画面を表示されにくくすることができる。その結果、本実施形態によれば、サーバ１２０のＩＰアドレスを含むサーバ証明書を用いてサーバ１２０と端末装置２００とが通信するときのユーザの利便性の低下を簡単な構成で抑制することができる。
【００９５】
（変形例）
以上、本発明の実施形態を説明したが、本発明を実施するにあたっては、種々の形態による変形及び応用が可能である。
【００９６】
本発明において、上記実施形態において説明した構成、機能、動作のどの部分を採用するのかは任意である。また、本発明において、上述した構成、機能、動作のほか、更なる構成、機能、動作が採用されてもよい。また、上記実施形態において説明した構成、機能、動作は、自由に組み合わせることができる。
【００９７】
実施形態１では、サーバ１００が認証局の認証を得ずに、ルート証明書とサーバ証明書とを独自で生成する例について説明し、実施形態２では、証明書生成装置１３０が認証局の認証を得ずに、ルート証明書とサーバ証明書とを独自で生成する例について説明した。本発明において、サーバ１００や証明書生成装置１３０は、認証局の認証を得て、正式なルート証明書やサーバ証明書を生成してもよい。
【００９８】
実施形態１では、サーバ１００が空調コントローラであり、実施形態２では、サーバ１２０が空調コントローラである例について説明した。本発明において、サーバ１００やサーバ１２０は、空調コントローラに限定されないことは勿論である。本発明において、サーバ１００やサーバ１２０は、種々のサービスを提供するサーバであってよい。例えば、サーバ１００やサーバ１２０は、少なくとも１つの照明機器を制御又は監視する照明コントローラであってもよい。このような場合、サーバ１００（又は、サーバ１２０）と端末装置２００とは、ＤＮＳが採用されないローカルなネットワークを介して、ＩＰアドレスにより宛先を指定して通信することも多い。そして、このＩＰアドレスは、頻繁に変更される可能性が高い。そこで、上述したように、ルート証明書やサーバ証明書を自動生成して、生成したルート証明書やサーバ証明書を用いてＳＳＬなどの暗号化通信をする。これにより、サーバ１００（又は、サーバ１２０）のＩＰアドレスの不整合に起因する警告画面を表示されにくくすることができる。なお、サーバ１００（又は、サーバ１２０）と端末装置２００とは、テナントの課金情報などの重要な情報を伝達する場合、上述したサーバ証明書を用いてＳＳＬ暗号化通信を実行し、特に重要でない情報を伝達する場合、サーバ証明書を用いずに通信することができる。
【００９９】
本発明に係るサーバ１００やサーバ１２０の動作を規定する動作プログラムを既存のパーソナルコンピュータや情報端末装置に適用することで、当該パーソナルコンピュータ等を本発明に係るサーバ１００やサーバ１２０として機能させることも可能である。
【０１００】
また、このようなプログラムの配布方法は任意であり、例えば、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。
【０１０１】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【産業上の利用可能性】
【０１０２】
本発明は、サーバ証明書を用いて通信するシステムに適用可能である。
【符号の説明】
【０１０３】
１１  ＣＰＵ、１２  ＲＯＭ、１３  ＲＡＭ、１４  フラッシュメモリ、１５  ＲＴＣ、１６  タッチスクリーン、１７  第１ネットワークインターフェース、１８  第２ネットワークインターフェース、１００，１２０  サーバ、１０１  生成指示部、１０２，１３４  証明書記憶部、１０３，１３１，２０３，４０３  通信部、１０４  アドレス変更判別部、１０５，１３２  ルート証明書生成部、１０６，１３３  サーバ証明書生成部、１０７  情報処理部、１０８  第２通信部、１０９  第３通信部、１３０  証明書生成装置、２００  端末装置、２０１，４０１  制御部、２０２，４０２  記憶部、２０４  表示部、３００  ＨＵＢ、４００  設備機器、５１０  第１ネットワーク、５２０  第２ネットワーク
【図１】
0006490191.tif 000002
【図２】
0006490191.tif 000003
【図３】
0006490191.tif 000004
【図４】
0006490191.tif 000005
【図５】
0006490191.tif 000006
【図６】
0006490191.tif 000007
【図７】
0006490191.tif 000008
【図８】
0006490191.tif 000009
【図９】
0006490191.tif 000010
【図１０】
0006490191.tif 000011