(57)【特許請求の範囲】
【請求項１】
ホームネットワークで、第１デバイスと第２デバイスとが通信する方法において、
前記第１デバイスが、所定のシード（seed）情報を前記第２デバイスに送信し、かつ、前記第２デバイスが、前記第１デバイスから前記所定のシード情報を受信する段階と、
前記第２デバイスが、ユーザが入力した個人情報と、前記所定のシード情報とを利用して、所定のＩＢＥスキームによって、公開キーを生成する段階と、
前記第２デバイスが、前記公開キーを利用して、秘密情報を暗号化する段階と、
前記第２デバイスが、前記暗号化された秘密情報を含むメッセージを、前記第１デバイスに送信する段階と、
前記第１デバイスが、前記所定の公開キーで暗号化された前記秘密情報を含むメッセージを第２デバイスから受信する段階と、
前記第１デバイスが、前記所定のシード情報と、前記ユーザが前記第１デバイスに入力した個人情報とを利用し、前記所定のＩＢＥスキームによって、前記公開キーに対応する秘密キーを生成する段階と、
前記第１デバイスが、前記秘密キーを利用して、前記メッセージから前記秘密情報を復号化する段階と、を含み、
前記公開キーは、前記シード情報と、前記第２デバイスにユーザが入力した前記個人情報とを利用して、前記ＩＢＥスキームによって、前記第２デバイスが生成したものであることを特徴とする方法。
【請求項２】
前記第１デバイスは、ＲＵＩ（remote  user  interface）サーバであり、前記第２デバイスは、ＲＵＩクライアントであり、
前記シード情報は、前記ＲＵＩサーバが、前記ＲＵＩクライアントに提供するＵＩオブジェクトを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記シード情報は、前記第１デバイスのデバイス識別情報を含み、
前記メッセージは、前記秘密情報と、前記第１デバイスのデバイス識別情報とを、前記公開キーで暗号化したことを特徴とする請求項１に記載の方法。
【請求項４】
前記シード情報は、前記ＩＢＥスキームで使われる前記第１デバイスのマスター公開キー及びＩＢＥパラメータを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記第１デバイス及び前記第２デバイスは、ＵＰｎＰデバイスであり、
前記送信段階は、
前記第１デバイスのデバイス・デスクリプションを介して、前記シード情報を前記第２デバイスに送信し、かつ、前記第２デバイスが受信することを特徴とする請求項１に記載の方法。
【請求項６】
前記秘密情報は、前記第１デバイスと前記第２デバイスとの通信に使われるセッションキーであることを特徴とする請求項１に記載の方法。
【請求項７】
前記第２デバイスが、デバイス識別情報及び所定のリストを参照し、前記第１デバイスが有効なデバイスであるか否かを判断する段階とを含み、
前記シード情報は、前記第１デバイスのデバイス識別情報を含み、
前記メッセージは、前記秘密情報と、前記第１デバイスのデバイス識別情報とを、前記公開キーで暗号化したものであって、
前記判断の結果、前記第１デバイスが有効な場合にだけ、前記公開キー生成段階、前記暗号化段階及び前記送信段階を遂行することを特徴とする請求項１に記載の方法。
【請求項８】
請求項１項に記載の方法を実行するコンピュータ・プログラムを記録したコンピュータで読取り可能な記録媒体。
【請求項９】
ホームネットワークで、第１デバイスと第２デバイスとが安全に通信できるようにするネットワーク装置において、
前記第１デバイスが、所定のシード情報を、前記第２デバイスに送信する送信部と、
前記第２デバイスが、前記第１デバイスから所定のシード情報を受信する受信部と、
前記第２デバイスが、ユーザが入力した個人情報と、前記所定のシード情報とを利用し、所定のＩＢＥスキームによって公開キーを生成する公開キー生成部と、
前記第２デバイスが、前記公開キーを利用して、前記第１デバイスと共有するための秘密情報を暗号化する暗号化部と、を含み、
前記送信部は、さらに、前記第２デバイスが、暗号化された秘密情報を含むメッセージを、前記第１デバイスに送信し、
前記受信部は、さらに、前記第１デバイスが、所定の公開キーで暗号化された秘密情報を含むメッセージを第２デバイスから受信し、
前記ネットワーク装置は、さらに、
前記第１デバイスが、前記所定のシード情報と、ユーザが前記第１デバイスに入力した個人情報とを利用し、前記所定のＩＢＥスキームによって、前記公開キーに対応する秘密キーを生成する秘密キー生成部と、
前記第１デバイスが、前記秘密キーを利用して、前記メッセージから前記秘密情報を復号化する復号化部と、を含み、
前記公開キーは、前記シード情報と、ユーザが前記第２デバイスに入力した前記個人情報とを利用し、前記ＩＢＥスキームによって、前記第２デバイスが生成したものであることを特徴とする装置。
【請求項１０】
前記第１デバイスは、ＲＵＩサーバであり、前記第２デバイスは、ＲＵＩクライアントであり、前記シード情報は、前記ＲＵＩサーバが前記ＲＵＩクライアントに提供するＵＩオブジェクトを含むことを特徴とする請求項９に記載の装置。
【請求項１１】
前記シード情報は、前記第１デバイスのデバイス識別情報を含み、
前記メッセージは、前記秘密情報と、前記第１デバイスのデバイス識別情報とを、前記公開キーで暗号化したことを特徴とする請求項９に記載の装置。
【請求項１２】
前記シード情報は、前記ＩＢＥスキームで使われる前記第１デバイスのマスター公開キー及びＩＢＥパラメータを含むことを特徴とする請求項９に記載の装置。
【請求項１３】
前記第１デバイス及び前記第２デバイスは、ＵＰｎＰデバイスであり、
前記送信部は、
前記第１デバイスのデバイス・デスクリプションを介して、前記シード情報を前記第２デバイスに送信することを特徴とする請求項９に記載の装置。
【請求項１４】
前記秘密情報は、前記第１デバイスと前記第２デバイスとの通信に使われるセッションキーであることを特徴とする請求項９に記載の装置。
【請求項１５】
前記ネットワーク装置は、さらに、
前記第２デバイスが、デバイス識別情報及び所定のリストを参照し、前記第１デバイスが有効なデバイスであるか否かを判断する判断部とを含み、
前記シード情報は、前記第１デバイスのデバイス識別情報を含み、
前記メッセージは、前記秘密情報と、前記第１デバイスのデバイス識別情報とを、前記公開キーで暗号化したものであって、
前記判断の結果、前記第１デバイスが有効な場合にだけ、前記公開キー生成、前記暗号化及び伝送を行うことを特徴とする、請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホームネットワークに係り、さらに詳細には、ホームネットワークでデバイス間に秘密情報を共有する方法に関する。
【背景技術】
【０００２】
ＤＬＮＡ（digital  living  network  alliance）、ＨＡＶｉ（home  audio-video  interoperability）、ＵＰｎＰ（universal plug and play）のような多くの産業標準団体によって、ホームネットワーク技術の向上のための研究が活発に進められている。
【０００３】
ホームネットワークで、１つのデバイスが他のデバイスの機能を制御するために、ＲＵＩ（remote  user  interface）技術が使われうる。簡単に説明すれば、ＲＵＩ技術は、クライアント・サーバ・アーキテクチャを基盤にしたものであり、ＲＵＩクライアントがＲＵＩサーバからＵＩを持ってきて、ユーザにＲＵＩクライアントで、ＵＩを介してＲＵＩサーバを制御させる技術である。
【０００４】
ホームネットワークが構築された環境でユーザは、ＲＵＩを介して電子商取引きやホームショッピングのようなサービスを利用できるが、現在のＲＵＩ技術は、保安が脆弱であって、ユーザの住民登録番号（social  security  numbers）やクレジットカード番号のような重要な個人情報がアタッカに露出しうる危険がある。例えば、ホームショッピング・サービスのためのプロトコルスタックが、ＲＵＩを支援するセットトップボックスによってのみ提供される場合、ユーザは、ＲＵＩを支援するＴＶを利用し、セットトップボックスのＵＩをＴＶに持ってきて、ホームショッピング・サービスを利用できる。このとき、ＴＶとセットトップボックスとの間には、ユーザの重要な個人情報が送受信されうるが、この過程でかような情報は、ホームネットワーク内に存在するアタッカに容易に露出されうる。従って、ホームネットワーク・デバイス間に、安全にメッセージを送受信できる方法が必要であり、このために、セッションキーのような秘密情報をアタッカに露出させずに共有することが重要である。
【０００５】
図１は、ＲＤＰ（remote  desktop  protocol）での中間者アタック（man-in-the-middle  attack）を説明するための図である。図１に図示されているように、クライアント（client）は、サーバ（server）に接続を試みるが、ＤＮＳ（domain  name  service）spoofingやＡＲＰ（address  resolution  protocol）poisoningのような方法によって、アタッカ（attacker）のデバイスに接続される。サーバとクライアントは、両者間のセッションキーを生成するために、ランダム数（random  number）Ｒｓ，Ｒｃを交換しようとする。しかし、アタッカは、サーバの公開キー（public  key）Ｐ及びランダム数Ｒｓを受信した後、サーバの公開キーを他のランダム数Ｒｓ’に変えてクライアントに伝達し、クライアントは、伝達されたキー（Ｒｓ’）を、サーバの公開キーであると信じ、自身が選択したランダム数Ｒｃを暗号化して伝送する。アタッカは、クライアントから受信したメッセージを復号化してＲｃを獲得し、Ｒｃを再びＰに暗号化してサーバに伝達する。従って、アタッカは、サーバとクライアントとの間で送受信されるメッセージをいずれも探り当てられる。
【０００６】
かような場合に備え、ＰＫＩ（public  key  infrastructure）では、サーバの公開キーが偽造されているか否かを判断できる認証書（certificate）が使われるが、このためには、ＣＡ（certificate  authority）が必要であり、また、クライアントが認証書の真偽いかんを判断する過程で、多くの計算が必要になるので、ホームネットワーク・デバイスに負担を与えうる。すなわち、ホームネットワークで、デバイスが認証書なしに、少ない計算量で、安全に秘密情報を共有できる方法が要請されている。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、ホームネットワークでデバイスが認証書を使用せずにも、秘密情報を安全に共有させる装置及び方法を提供するところにその目的がある。
【課題を解決するための手段】
【０００８】
かような目的を達成するための本発明は、ホームネットワークで、第１デバイスが第２デバイスと通信する方法において、所定のシード（seed）情報を前記第２デバイスに送信する段階と、前記第２デバイスから所定の公開キーに、秘密情報を暗号化したメッセージを受信させる段階と、前記シード情報と、ユーザが前記第１デバイスに入力した個人情報とを利用し、所定のＩＢＥ（identity-based  encryption）スキームによって、前記公開キーに対応する秘密キーを生成する段階と、前記秘密キーを利用し、前記メッセージから前記秘密情報を復号化する段階とを含み、前記公開キーは、前記シード情報と、前記第２デバイスにユーザが入力した前記個人情報とを利用し、前記ＩＢＥスキームによって、前記第２デバイスが生成したものであるを特徴とする。
【０００９】
前記第１デバイスは、ＲＵＩ（remote  user  interface）サーバであり、前記第２デバイスは、ＲＵＩクライアントであり、前記シード情報は、前記ＲＵＩサーバが前記ＲＵＩクライアントに提供するＵＩオブジェクトを含むことが望ましい。
【００１０】
前記シード情報は、前記ＩＢＥスキームで使われる前記第１デバイスのマスター公開キー及びＩＢＥパラメータを含むことが望ましい。
【００１１】
また本発明は、前記通信方法を実行するコンピュータ・プログラムを記録した記録媒体を提供する。
【００１２】
また本発明は、ホームネットワークで、第１デバイスが第２デバイスと安全に通信できるようにする装置において、所定のシード情報を前記第２デバイスに送信する送信部と、前記第２デバイスから所定の公開キーに、秘密情報を暗号化したメッセージを受信させる受信部と、前記シード情報と、ユーザが前記第１デバイスに入力した個人情報とを利用し、所定のＩＢＥスキームによって、前記公開キーに対応する秘密キーを生成する秘密キー生成部と、前記秘密キーを利用し、前記メッセージから前記秘密情報を復号化する復号化部とを含み、前記公開キーは、前記シード情報と、前記第２デバイスにユーザが入力した前記個人情報とを利用し、前記ＩＢＥスキームによって、前記第２デバイスが生成したものであることを特徴とする。
【００１３】
前記第１デバイスは、ＲＵＩサーバであり、前記第２デバイスは、ＲＵＩクライアントであり、前記シード情報は、前記ＲＵＩサーバが前記ＲＵＩクライアントに提供するオブジェクトを含むことが望ましい。
【００１４】
また本発明は、ホームネットワークで第２デバイスが第１デバイスと安全に通信できるようにする装置において、前記第１デバイスから所定のシード情報を受信する受信部と、ユーザが入力した個人情報及び前記シード情報を利用し、所定のＩＢＥスキームによって公開キーを生成する公開する生成部と、前記第１デバイスと共有するための秘密情報を前記公開キーを利用して暗号化する暗号化部と、前記暗号化した秘密情報を含むメッセージを、前記第１デバイスに送信する送信部とを含むことを特徴とする。
【００１５】
また本発明は、ホームネットワークで、第２デバイスが第１デバイスと安全に通信できるようにする装置において、前記第１デバイスから所定のシード情報を受信する受信部と、ユーザが入力した個人情報及び前記シード情報を利用し、所定のＩＢＥスキームによって公開キーを生成する公開キー生成部と、前記第１デバイスと共有するための秘密情報を、前記公開キーを利用して暗号化する暗号化部と、前記暗号化した秘密情報を含むメッセージを、前記第１デバイスに送信する送信部と、前記デバイス識別情報及び所定のリストを参照し、前記第１デバイスが有効なデバイスであるか否かを判断する判断部とを含み、前記シード情報は、前記第１デバイスのデバイス識別情報を含み、前記メッセージは、前記秘密情報と、前記第１デバイスのデバイス識別情報とを、前記公開キーで暗号化したものであって、前記判断結果、前記第１デバイスが有効な場合にだけ、前記公開キー生成、前記暗号化及び前記伝送を行うことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ホームネットワークで、認証機関（certificate  authority）や認証書（certificate）がなくとも、デバイス間に安全なセッションを介して秘密情報が共有されうる。従って、認証書交換（exchange）のためのホームネットワークのトラフィックを減らすことができ、ホームネットワーク・デバイスは、認証書検証（verification）のための複雑な計算を行わなくともよい。
【図面の簡単な説明】
【００１７】
【図１】ＲＤＰ（remote  desktop  protocol）での中間者アタックを説明するための図である。
【図２】本発明の一実施形態によって、ホームネットワークで、第１デバイスが第２デバイスから秘密情報を安全に受信する過程を示したフローチャートである。
【図３】本発明の一実施形態によって、ホームネットワークで、第２デバイスが第１デバイスに秘密情報を安全に送信する過程を示したフローチャートである。
【図４】本発明の第１実施例によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。
【図５】本発明の第１実施例によって、ホームネットワークで通信する第１デバイスと第２デバイスとの構造を示した図である。
【図６】本発明の第２実施例によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。
【図７Ａ】本発明の第３実施形態によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。
【図７Ｂ】本発明の第３実施形態であり、第１デバイスのＵＰｎＰデバイス・デスクリプションを示した図である。
【図７Ｃ】本発明の第３実施形態での第１デバイスが第２デバイスに、ＵＩオブジェクトとして提供するＣＥ−ＨＴＭＬページを示した図である。
【発明を実施するための形態】
【００１８】
本発明では、ホームネットワークのデバイスが、ユーザが入力した個人情報を利用し、ＩＢＥ（identity  based  encryption）スキームによってキーを生成する。
【００１９】
ＩＢＥスキームは、いかなるストリング（string）も、有効な公開キーとして使用できるようにする公開キー暗号化システムである。従って、ＩＢＥスキームでのメッセージ送信者は、情報受信者の身分（identity）を示す任意の情報でメッセージを暗号化して伝送できる。例えば、受信者の電子メールアドレスを公開キーとして使用することもできる。
【００２０】
受信者は、秘密キーを利用し、暗号化されたメッセージを復号化できるが、かような秘密キーは、信頼性ある第三者から獲得できる。かような第三者を、ＰＫＧ（private  key  generator）といって、秘密キーはただＰＫＧだけが保有している秘密情報であるマスターキー（master  key）から計算される。ＩＢＥスキームに係わるさらに詳細な説明は、Ｄ．Boneh，Ｍ．Franklinの論文「Identity  based  encryption  from  the  Weil  pairing」など、さまざまな文献に記載されているので、ここでは省略する。
【００２１】
以下、添付された図面を参照しつつ、本発明の望ましい実施形態について詳細に説明する。
【００２２】
図２は、本発明の一実施形態によって、ホームネットワークで、第１デバイスが第２デバイスから秘密情報を安全に受信する過程を示したフローチャートである。
【００２３】
段階２１０で、第１デバイスは、第２デバイスにシード（seed）情報を送信する。このときのシード情報は、第２デバイスがＩＢＥスキームによって、第１デバイスの公開キーを生成するときに使用するための情報を通称する広い意味であり、ＩＢＥスキームで使われる第１デバイスのマスター公開キー、ＩＢＥパラメータ、第１デバイスの識別情報などがここに含まれうる。
【００２４】
第１デバイス及び第２デバイスが、ＵＰｎＰ（universal  plug  and  play）デバイスである場合、かようなシード情報は、第１デバイスのデバイス・デスクリプション（device  description）を介して、第２デバイスに提供されうるものである。
【００２５】
一方、第１デバイスがＲＵＩ（remote  user  interface）サーバであり、前記第２デバイスがＲＵＩクライアントである場合、シード情報には、第１デバイスが第２デバイスに提供するＵＩオブジェクトが含まれうる。この場合、ＵＩオブジェクトの無欠性（integrity）が保護される。これについての詳細な説明は後述する。
【００２６】
段階２２０で、第１デバイスは、第２デバイスから暗号化された秘密情報を受信する。暗号化された秘密情報は、第１デバイスの公開キーを利用して暗号化されたものであって、第２デバイスが所定のＩＢＥスキームによって、シード情報及びクレデンシャル（credential）を利用し、第１デバイスの公開キーを計算する。従って、ユーザは、第２デバイスにも別途にクレデンシャルを入力しなければならない。
【００２７】
一方、秘密情報は、第１デバイスと第２デバイスとの間でだけ共有されねばならない情報を示し、特定の用途及び形式に限定するものではない。例えば、第１デバイスと第２デバイスとの通信に使われるセッションキーも、ここでの秘密情報に該当しうる。
【００２８】
段階２３０で、第１デバイスは、ユーザが入力したユーザの個人情報を受信する。ユーザの個人情報とは、ユーザだけ知っている暗証番号のような情報を意味し、以下では、クレデンシャルと称する。
【００２９】
段階２４０で、第１デバイスは、シード情報とクレデンシャルとを利用し、ＩＢＥスキームによる秘密キーを生成する。もちろん、このときのＩＢＥスキームは、第２デバイスで、第１デバイスの公開キーを計算するときに使われたＩＢＥスキームと同じものである。
【００３０】
本発明では、第１デバイスが、ＩＢＥスキームによる秘密キーを生成するので、第１デバイスには、ＰＫＧがエンベディッド（embedded）されていたり、または第１デバイスと外部のＰＫＧとの間には、安全な（secure）通信チャンネルが存在すると仮定する。以下でも同一である。
【００３１】
段階２５０で、第１デバイスは、秘密キーを利用して暗号化された秘密情報を復号化する。
【００３２】
前記のような一連の過程によって、もしアタッカ（attacker）が第１デバイスと第２デバイスとの間で送受信されるあらゆる情報を獲得したとしても、ユーザのクレデンシャルは分からないために、アタッカは、第１デバイスの公開キーを正確に計算できない。従って、第１デバイスは、自身が計算した秘密キーで秘密情報の復号化に失敗すれば、相手が第２デバイスであることを信じなければよい。また、もしＵＩオブジェクトが変造された場合にも、第１デバイスは、復号化に失敗することになるので、ＵＩオブジェクトの無欠性も保護される。
【００３３】
従って、本発明によれば、デバイス間で送受信されるメッセージの無欠性を保証するための別途のメカニズム、例えば、ＭＡＣ（message  authentication  code）などを使用する必要がない。
【００３４】
さらに、段階２２０で受信されたメッセージが、秘密情報だけを暗号化したものではなく、秘密情報と第１デバイスのデバイス識別情報とを共にＩＢＥスキームによる公開キーで暗号化したものであるならば、第１デバイスは、メッセージを復号化した結果を、自身のデバイス識別情報と比較することによって、相手をさらにはっきりと認証できる。
【００３５】
図３は、本発明の一実施形態によって、ホームネットワークで、第２デバイスが第１デバイスに秘密情報を安全に送信する過程を示したフローチャートである。
【００３６】
段階３１０で、第２デバイスは、第１デバイスからシード情報を受信する。前述の通り、このときのシード情報は、ＩＢＥスキームで使われる第１デバイスのマスター公開キー、ＩＢＥパラメータ、第１デバイスの識別情報などになりうる。
【００３７】
また、第１デバイスがＲＵＩサーバであり、前記第２デバイスがＲＵＩクライアントである場合、第１デバイスが第２デバイスに提供するＵＩオブジェクトも、このときのシード情報に含めることができる。
【００３８】
段階３２０で、第２デバイスは、シード情報に含まれた第１デバイスの識別情報及び取消しデバイスリスト（revoked  device  list）を参照し、第１デバイスがホームネットワークで除去され、それ以上有効ではないデバイスであるか否かを判断する。このときの取消しデバイスリストは、ユーザが取消したデバイスのデバイス識別情報が登録されたデータベースであり、第２デバイス内に保存されもし、遠隔の他の場所に保存されもする。第２デバイスがかような判断段階を遂行するので、ユーザは、ホームネットワークのデバイスを紛失したり、またはホームネットワークから除去した場合、クレデンシャルを変更する必要なしに、当該デバイスの識別情報を、取消しデバイスリストに登録しさえすればよい。望ましくは、デバイス識別情報は、ユーザのクレデンシャルを利用して計算されたダイジェスト形式で、取消しデバイスリストに登録される。
【００３９】
段階３３０で、第２デバイスは、ユーザが入力したユーザの個人情報、すなわちクレデンシャルを受信する。
【００４０】
段階３４０で、第２デバイスは、シード情報及びクレデンシャルを利用し、ＩＢＥスキームによって第１デバイスの公開キーを計算する。
【００４１】
段階３５０で、第２デバイスは、秘密情報をＩＢＥスキームによって計算された公開キーで暗号化する。前述の通り、このときの秘密情報は、追って第１デバイスと第２デバイスとの通信に使われるセッションキーになりうる。
【００４２】
段階３６０で、第２デバイスは、暗号化された秘密情報を含むメッセージを第１デバイスに送信する。
【００４３】
前述の通り、このときのメッセージは、秘密情報及び第１デバイスの識別情報を、ＩＢＥスキームによって計算された公開キーで暗号化したものでありうる。この場合、第１デバイスは、メッセージを復号化した結果を、自身のデバイス識別情報と比較することによって、公開キーの計算に間違ったクレデンシャルが使われたり、またはＵＩオブジェクトがアタッカによって変造されたことを探知できる。
【００４４】
図４は、本発明の一実施形態によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。
【００４５】
段階４１０で、第１デバイスは、第２デバイスにシード情報を送信する。
【００４６】
段階４２０で、ユーザは、第２デバイスにクレデンシャルを入力する。
【００４７】
段階４０３で、第２デバイスは、シード情報とユーザのクレデンシャルとを利用し、所定のＩＢＥスキームによって、第１デバイスの公開キーを計算する。
【００４８】
段階４０５で、第２デバイスは、秘密情報を公開キーで暗号化する。
【００４９】
段階４０６で、第２デバイスは、暗号化された秘密情報を第１デバイスに伝送する。
【００５０】
段階４０７で、ユーザは、第１デバイスにクレデンシャルを入力する。
【００５１】
段階４０８で、第１デバイスは、段階４０１で第２デバイスに送信したシード情報、及び段階４０７で入力されたユーザのクレデンシャルを利用し、ＩＢＥスキームによって秘密キーを計算する。
【００５２】
段階４０９で、第１デバイスは、秘密キーを利用し、暗号化された秘密情報を復号化する。
【００５３】
図５は、本発明の一実施形態によって、ホームネットワークで通信する第１デバイス５００と第２デバイス５５０との構造を示した図である。図５に図示されているように、第１デバイス５００は、ＵＩ部５０１、送信部５０２、復号化部５０３、秘密キー生成部５０４、ＲＵＩサーバ（ＲＵＩＳ）５０５及び受信部５０６を含む。
【００５４】
ＵＩ部５０１は、ユーザからクレデンシャルを入力される。また、デバイス名のようなデバイスの識別情報を入力されもする。
【００５５】
送信部５０２は、デバイス識別情報、ＩＢＥパラメータなどのシード情報を、第２デバイス５５０に送信する。前述の通り、このときのシード情報には、ＲＵＩサーバ５０５が第２デバイス５５０のＲＵＩクライアント５５５に提供するＵＩオブジェクトが含まれうる。また、第１デバイス及び第２デバイスが、ＵＰｎＰデバイスである場合、送信部５０２は、第１デバイスのデバイス・デスクリプションを介して、シード情報を第２デバイスに提供する。
【００５６】
秘密キー生成部５０４は、クレデンシャルとＵＩオブジェクトとを利用し、所定のＩＢＥスキームによって秘密キーを計算する。
【００５７】
受信部５０６は、第２デバイス５５０から、ＩＢＥスキームによる公開キーで暗号化された秘密情報を受信する。前述の通り、第２デバイス５５０から受信されるメッセージは、秘密情報と第１デバイスのデバイス識別情報とを共に公開キーで暗号化することによって、生成されたものでありうる。
【００５８】
復号化部５０３は、暗号化された秘密情報を、秘密キー生成部５０４で計算した秘密キーを利用して復号化する。暗号化された秘密情報が、第１デバイスの識別情報と共に暗号化された場合、第１デバイス５００は、ＩＢＥスキームによって計算された秘密キーで復号化を試み、自身の正確なデバイス識別情報が得られるか否かを判断することによって、第１デバイスを認証できる。
【００５９】
一方、第２デバイス５５０は、受信部５５１、判断部５５２、公開キー生成部５５３、ＵＩ部５５４、ＲＵＩクライアント（ＲＵＩＣ）５５５、暗号化部５５６及び送信部５５７を含む。
【００６０】
受信部５５１は第１デバイス５００からシード情報を受信する。
【００６１】
判断部５５２は、受信されたシード情報に含まれた第１デバイスのデバイス識別情報を、所定の取消しデバイスリストと比較し、第１デバイスが有効なものであるか否かを判断する。もし、第１デバイスが取消しデバイスリストに登録されていると判断された場合、第２デバイス５５０は、第１デバイス５００との通信を終了する。
【００６２】
ＵＩ部５５４は、ユーザからクレデンシャルを入力される。
【００６３】
ＲＵＩクライアント５５５は、第１デバイス５００のＲＵＩサーバ５０５から、ＵＩオブジェクトを受信する。
【００６４】
公開キー生成部５５３は、シード情報、クレデンシャル及びＵＩオブジェクトを利用し、ＩＢＥスキームによって、第１デバイス５００の公開キーを計算する。
【００６５】
暗号化部５５６は、公開キー生成部５５３で計算した公開キーを利用し、秘密情報を暗号化する。このとき、秘密情報と第１デバイスの識別情報とを共に暗号化することが望ましい。
【００６６】
送信部５５７は、暗号化の結果、生成されたメッセージを第１デバイス５００に送信する。
【００６７】
図６は、本発明の第２実施形態によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。図６に図示されているように、第１デバイスは、ＲＵＩサーバであり、第２デバイスは、ＲＵＩクライアントである。
【００６８】
段階６０１で、ユーザは、第１デバイスのデバイス名Ｄｉｄとクレデンシャルｃｒｅｄとを定め、第１デバイスに入力する。
【００６９】
段階６０２で、第１デバイスは、クレデンシャルをＨ（Ｐ，Ｍｐｕｂ，Ｄｉｄ，ｃｒｅｄ）のようなダイジェスト形式で保存する。この値は、ホームネットワークのデバイスごとに固有な値になりうるので、以下では、ＩＤと称する。ここで、Ｐは、第１デバイスと第２デバイスとで使用するＩＢＥスキームに係わるパラメータ（例えば、二進マッピング）の集合であり、Ｍｐｕｂは、ＩＢＥスキームで、キー生成に使われる第１デバイスのマスター公開キーである。Ｈは、安全な一方向関数（one-way function）であり、第１デバイスと第２デバイスとが共有する。
【００７０】
段階６０３で、第１デバイスは、ＩＢＥスキームパラメータＰ、第１デバイスのマスター公開キーＭｐｕｂ、デバイス名Ｄｉｄを、第２デバイスに伝送する。前述の通り、第１デバイス及び第２デバイスが、ＵＰｎＰデバイスである場合、かような情報は、ＵＰｎＰネットワークで使われるディスカバリ・プロトコルによって、第２デバイスに伝えられうる。
【００７１】
段階６０４で、第２デバイスは、ユーザからクレデンシャルを入力される。
【００７２】
段階６０５で、第２デバイスは、ＩＤ＝Ｈ（Ｐ，Ｍｐｕｂ，Ｄｉｄ，ｃｒｅｄ）を計算し、最小デバイスリストに計算された値が登録されているか否かを検索することによって、第１デバイスの有効性を確認する。もし同じ値が取消しデバイスリストにあるならば、第１デバイスは、ユーザのドメインに属したデバイスではないので、第２デバイスは、第１デバイスとの通信を終了する。本実施形態では、第１デバイスが有効であると仮定する。
【００７３】
段階６０６で、ＲＵＩクライアントの第２デバイスは、ＲＵＩサーバの第１デバイスに、ＵＩオブジェクトＵを要請し、段階６０７では、第１デバイスからＵＩオブジェクトを受信する。
【００７４】
段階６０８で、第２デバイスは、ＩＢＥスキームによって、Ｐ，Ｍｐｕｂ，ＩＤ，Ｕと所定の公開キー発生関数Ｇ１とを利用し、公開キーＫｐｕｂを計算する。
【００７５】
段階６０９で、第２デバイスは、ランダムな値をセッションキーＫｓｙｍとして選択する。すなわち、本実施形態では、セッションキーが第１デバイスと第２デバイスとの間でのみ共有しなければならない秘密情報である。
【００７６】
段階６１０で、第２デバイスは、ＩＢＥスキームによって計算された公開キーを利用し、セッションキーと第１デバイスのデバイス名Ｄｉｄとを暗号化する。
【００７７】
段階６１１で、第２デバイスは、暗号化の結果として生成されたメッセージを、第１デバイスに送信する。
【００７８】
段階６１２で、第１デバイスも、第２デバイスが段階６０８で遂行した過程と同じ過程を介して、Ｋｐｕｂを計算する。
【００７９】
段階６１３で、第１デバイスは、ＩＢＥスキームによって、Ｐ，Ｍｓｅｃ，Ｋｐｕｂ，ＩＤ，Ｕと、所定の秘密キー発生関数Ｇ２とを利用し、秘密キーＫｓｅｃを計算する。
【００８０】
段階６１４で、第１デバイスは、秘密キーを利用し、受信されたメッセージを復号化する。第１デバイスは、もし復号化した結果として、自身の正しいデバイス名Ｄｉｄが得られなければ、以前に、第１デバイスと第２デバイスとの間で交換されたメッセージ（例えば、ＵＩオブジェクト）のうち、少なくとも一つが、アタッカによって変造されたと判断し、第１デバイスとの通信を終了する。すなわち、自身の正しいデバイス名が得られた場合にのみ、第１デバイス及び第２デバイスは、Ｋｓｙｍをセッションキーとして使用する。
【００８１】
本実施形態から分かるように、本発明によれば、アタッカは、第１デバイスと第２デバイスとの間で交換されるあらゆる情報を獲得しても、ユーザのクレデンシャルを知らない限り、セッションキーを計算できない。また、アタッカが、第１デバイスと第２デバイスとの間でのメッセージを変造しても、第１デバイスはこれを感知し、第２デバイスとの通信を中断できるので、アタッカが行える最大のアタックは、第１デバイスと第２デバイスとの間の認証失敗を引き起こすことに終わる。
【００８２】
図７Ａは、本発明の第３実施形態によって、第１デバイスと第２デバイスとが通信する方法を説明するためのフローチャートである。
【００８３】
本実施形態では、第１デバイスは、ＲＵＩサーバ、第２デバイスは、ＲＵＩクライアントであり、ＣＥＡ（consumer  electronics  association）のホームネットワーク標準であるＣＥＡ−２０１４に本発明が適用される。ＣＥＡ−２０１４は、ＵＰｎＰホームネットワークで、ブラウザ基盤の通信方法を提供し、デバイスは、ＨＴＭＬの特殊なバージョンであるＣＥ−ＨＴＭＬによって構成されたウェブページとしてＵＩを提供する。
【００８４】
また、本実施形態では、Ｄ．BonehとＭ．Franklinとが考案したＩＢＥスキームを採用するが、該ＩＢＥスキームでは、双一次（bilinear）Diffie-Helman仮定（assumption）及びランダム・オラクルモデルが使われる。これに係わるさらに詳細な説明は、公開された文献「Identity  based  encryption  from  the  Weil  pairing」を参照できる。
【００８５】
また、本実施形態では、第１デバイスに双一次マッピング（bilinear  mapping）：
【００８６】
【数１】
0005543349.tif 000002
の関係にあるプライム・オーダ（prime  order）ｑの楕円曲線群（elliptic  curve  group）Ｇ１、プライム・オーダｑの有限体（finite  field）Ｇ２、ＩＢＥパラメータの双一次マッピングｅ、発生器（generator）Ｐ、マスター秘密キーである：
【００８７】
【数２】
0005543349.tif 000003
及びこれに相応するマスター公開キーｓＰがエンベディッドされている。
【００８８】
段階７０１で、ユーザは、第１デバイスにデバイスの名前Ｄｉｄとクレデンシャルｃｒｅｄとを入力する。例えば、ユーザは、デバイス名を「Ｍｙ  ＤＶＤ  Player」のように定めることができる。
【００８９】
段階７０２で、第１デバイスは、ＵＰｎＰディスカバリ・メカニズムによって、ホームネットワークのあらゆるコントロール・ポイント（control  point）に、サービスとエンベディッド・デバイスとを広告を出すために、ＳＳＤＰ  NOTIFYメッセージをマルチキャストする。ディスカバリ段階によって第２デバイスは、第１デバイスのデバイス・デスクリプションに係わるＵＲＬを獲得し、結局、第１デバイスのデスクリプションを獲得する。
【００９０】
第１デバイスのデスクリプションに係わる実施形態を、図７Ｂに示した。図７Ｂに図示されているように、デバイス・デスクリプションには、第１デバイスのマスター公開キー及びデバイス名が含まれている。すなわち、段階７０３で、第２デバイスは、第１デバイスのデバイス・デスクリプションを介して、ｓＰ，Ｄｉｄを獲得する。
【００９１】
段階７０４で、第１デバイスは、ユーザのクレデンシャルｃｒｅｄを、ランダムオラクルＨ１を利用し、ダイジェスト形式：
【００９２】
【数３】
0005543349.tif 000004
で保存する。
【００９３】
段階７０５で、ＲＵＩクライアントの第２デバイスは、第１デバイスにＵＩオブジェクトを要請し、段階７０６で、第１デバイスは、ＣＥ−ＨＴＭＬページであるＵＩオブジェクトｐを第２デバイスに送信する。
【００９４】
ＵＩオブジェクトの実施形態を、図７Ｃに図示した。図７Ｃに図示されているように、ｐは、ｈｔｍｌタグ＜secure＞を利用し、第２デバイスにデータを安全なセッションを介して送信するように要請する。
【００９５】
段階７０７で、ユーザが伝送する秘密情報Ｄを入力すれば、段階７０８で、第２デバイスは、セッションキーＫｓｙｍを生成する。任意の値をＫｓｙｍとして選択してもよい。
【００９６】
段階７０９で、第２デバイスは、秘密情報ＤをセッションキーＫｓｙｍに暗号化する。
【００９７】
段階７１０で、第２デバイスは、第１デバイス固有の値であるＱｓを、次のような式を利用して計算する。
【００９８】
【数４】
0005543349.tif 000005
はランダム・オラクルである。
【００９９】
段階７１１で、第２デバイスは、Ｑｓを利用したマッピング結果
【０１００】
【数５】
0005543349.tif 000006
を、次の通り計算する。
【０１０１】
【数６】
0005543349.tif 000007
マッピング結果
【０１０２】
【数７】
0005543349.tif 000008
は、すなわちＩＢＥスキームによる公開キーＫｐｕｂである。
【０１０３】
段階７１２で、第２デバイスは、セッションキーＫｓｙｍを、ＩＢＥスキームによる公開キーＫｐｕｂで、次のような計算によって暗号化する。
【０１０４】
【数８】
0005543349.tif 000009
は、ランダムオラクルである。
【０１０５】
段階７１３で、第２デバイスは、ＨＴＴＰ
ＰＯＳＴを介して、第１デバイスに暗号化された秘密情報及び暗号化されたセッションキーを送信する。
【０１０６】
段階７１４で、第１デバイスは、段階７１０で第２デバイスが遂行した過程と同じ過程を介して、Ｑｓを計算する。
【０１０７】
段階７１５で、第１デバイスは：
【０１０８】
【数９】
0005543349.tif 000010
を計算し、ＩＢＥスキームによる秘密キーを生成する。
【０１０９】
段階７１６で、第１デバイスは、秘密キーＫｓｅｃを利用し、セッションキーＫｓｙｍを復号化する。
【０１１０】
段階７１７で、第１デバイスは、セッションキーＫｓｙｍを利用し、秘密情報Ｄを復号化する。これにより、秘密情報Ｄは、安全に第１デバイス及び第２デバイス間で共有されている。
【０１１１】
一方、前述の本発明の実施形態は、コンピュータで実行されうるプログラムに作成可能であり、コンピュータ読取り可能な記録媒体を利用し、前記プログラムを動作させる汎用デジタルコンピュータで具現されうる。
【０１１２】
前記コンピュータで読取り可能な記録媒体は、マグネチック記録媒体（例えば、ＲＯＭ（read-only  memory）、ＲＡＭ（random-access  memory）、フロッピー（登録商標）ディスク、ハードディスクなど）、光学的判読媒体（例えば、ＣＤ−ＲＯＭ、ＤＶＤなど）を含む。本発明はまた、コンピュータで読取り可能な伝送媒体上で、コンピュータで読取り可能なコードで具現されうる。コンピュータで読取り可能な伝送媒体の例としては、キャリアウェーブ（例えば、インターネットを介した伝送）が含まれる。
【０１１３】
以上、本発明についてその望ましい実施形態を中心に述べた。本発明が属する技術分野で当業者ならば、本発明が本発明の本質的な特性から外れない範囲で変形された形態で具現されうることを理解することができるであろう。よって、開示された実施形態は、限定的な観点ではなくして、説明的な観点から考慮されねばならない。本発明の範囲は、前述の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にあるあらゆる差異点は、本発明に含まれていると解釈されねばならない。
【図１】
0005543349.tif 000011
【図２】
0005543349.tif 000012
【図３】
0005543349.tif 000013
【図４】
0005543349.tif 000014
【図５】
0005543349.tif 000015
【図６】
0005543349.tif 000016
【図７Ａ】
0005543349.tif 000017
【図７Ｂ】
0005543349.tif 000018
【図７Ｃ】
0005543349.tif 000019