(57)【要約】      （修正有）【課題】長い時間をかけてデジタル証明書に含まれる拡張領域の確認を行ってしまう可能性を低減することができる通信装置を提供する。【解決手段】情報処理装置から受信したデジタル証明書に含まれる所定の拡張領域のサイズ情報、もしくは、データの数に関する情報を取得する。また、所定の拡張領域に含まれるドメイン名に、情報処理装置のドメイン名が含まれるかの確認を行う。確認結果に基づき情報処理装置と暗号通信を行う。または、取得した情報に基づいて、上記確認を行うことなく、情報処理装置との通信を切断する。【選択図】図５
2020167469.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
情報処理装置からデジタル証明書を受信する受信手段と、
前記受信手段により受信した前記デジタル証明書に含まれる所定の拡張領域のサイズ情報、および、当該所定の拡張領域に含まれるデータの数に関する情報の少なくとも一方を取得する取得手段と、
前記所定の拡張領域に含まれるドメイン名に、前記情報処理装置のドメイン名が含まれるかを確認する確認手段と、
前記確認手段による確認の結果に基づいて、前記情報処理装置と暗号通信を行う通信手段と、
前記取得手段により取得した情報に基づいて、前記確認手段による確認を行うことなく、前記情報処理装置との通信を切断するように制御する制御手段と、
を有することを特徴とする通信装置。
【請求項２】
前記所定の拡張領域は、ＳＡＮ（Ｓｕｂｊｅｃｔ  Ａｌｔｅｒｎａｔｉｖｅ  Ｎａｍｅ）の領域であることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記デジタル証明書は、Ｘ．５０９規格に準拠したデジタル証明書であることを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記所定の拡張領域は、当該所定の拡張領域のサイズを示すフィールドを有し、
前記取得手段は、前記フィールドから、前記サイズ情報を取得することを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記データの数に関する情報は、前記所定の拡張領域に含まれるデータ種別の数、もしくは、前記所定の拡張領域に含まれるドメイン名の数であることを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項６】
前記情報処理装置が第１の条件を満たす装置である場合、前記取得手段により取得される情報によらず、前記確認手段による確認を行うことを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記情報処理装置が前記第１の条件を満たす装置である場合とは、前記情報処理装置がユーザにより信頼済みである装置である場合であることを特徴とする請求項６に記載の通信装置。
【請求項８】
前記通信装置と前記情報処理装置との間のネットワークが第２の情報を満たす場合、前記取得手段により取得される情報によらず、前記確認手段による確認を行うことを特徴とする請求項１から７のいずれか１項に記載の通信装置。
【請求項９】
前記第２の条件とは、前記ネットワークがローカルエリアネットワークであることを特徴とする請求項８に記載の通信装置。
【請求項１０】
前記確認手段による確認が開始されてからの時間が所定の時間を経過した場合、前記制御手段は、前記確認手段による確認を中止し、前記情報処理装置と切断するように制御することを特徴とする請求項１から９のいずれか１項に記載の通信装置。
【請求項１１】
前記制御手段が前記情報処理装置と切断するように制御した場合に、所定のエラーを通知する通知手段を更に有することを特徴とする請求項１から１０いずれか１項に記載の通信装置。
【請求項１２】
前記通知手段は、前記所定のエラーをユーザに通知することを特徴とする請求項１１に記載の通信装置。
【請求項１３】
前記所定のエラーは、前記取得手段により取得した情報に基づくエラーであることを示すことを特徴とする請求項１１または１２に記載の通信装置。
【請求項１４】
前記暗号通信は、ＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）プロトコルに準拠した通信であることを特徴とする請求項１から１３のいずれか１項に記載の通信装置。
【請求項１５】
前記制御手段は、前記取得手段により取得した情報に基づいて、前記確認手段による確認を行うことなく、前記情報処理装置とのＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）、もしくは、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）のセッションを切断するように制御することを特徴とする請求項１から１４のいずれか１項に記載の通信装置。
【請求項１６】
制御方法であって、
情報処理装置からデジタル証明書を受信する受信工程と、
前記受信工程において受信された前記デジタル証明書に含まれる所定の拡張領域のサイズ情報、および、当該所定の拡張領域に含まれるデータの数に関する情報の少なくとも一方を取得する取得工程と、
前記所定の拡張領域に含まれるドメイン名に、前記情報処理装置のドメイン名が含まれるかを確認する確認工程と、
前記確認工程における確認の結果に基づいて、前記情報処理装置との所定の通信を行う通信工程と、
前記取得工程において取得された情報に基づいて、前記確認工程における確認を行うことなく、前記情報処理装置と切断するように制御する制御工程と、
を有することを特徴とする制御方法。
【請求項１７】
コンピュータを請求項１から１６のいずれか１項に記載の通信装置として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル証明書の確認を行う装置に関する。
【背景技術】
【０００２】
デジタル証明書を用いてクライアントとサーバとの間で認証を行い、暗号化通信を行う通信システムがある（特許文献１）。デジタル証明書には拡張領域が存在し、様々な拡張データを含めることができるため、拡張データの数やサイズによってデジタル証明書のサイズは増減する。また、拡張領域には、デジタル証明書の所有者情報の１つであるドメイン名を含めることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２４８４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
拡張領域にドメイン名を含むデジタル証明書を受け付けるクライアントは、改竄や、なりすまし等へのセキュリティ対策のため、接続先であるサーバのドメイン名とデジタル証明書に含まれるドメイン名とが一致するかを確認する必要がある。一般に、デジタルカメラ等の計算資源の限られた通信装置においては、当該確認のための処理に時間を要する。そのため、不正なサーバ等から大きな拡張領域を含むデジタル証明書を受信した場合、確認に係る処理が完了するまでに時間を要した上に、当該サーバを確認することができず、ユーザの利便性が低下するという課題があった。
【０００５】
上記課題に鑑み、長い時間をかけてデジタル証明書に含まれる拡張領域の確認を行ってしまう可能性を低減することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る通信装置は、情報処理装置からデジタル証明書を受信する受信手段と、前記受信手段により受信した前記デジタル証明書に含まれる所定の拡張領域のサイズ情報、および、当該所定の拡張領域に含まれるデータの数に関する情報の少なくとも一方を取得する取得手段と、前記所定の拡張領域に含まれるドメイン名に、前記情報処理装置のドメイン名が含まれるかを確認する確認手段と、前記確認手段による確認の結果に基づいて、前記情報処理装置と暗号通信を行う通信手段と、前記取得手段により取得した情報に基づいて、前記確認手段による確認を行うことなく、前記情報処理装置と切断するように制御する制御手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、長い時間をかけてデジタル証明書に含まれる拡張領域の確認を行ってしまう可能性を低減することができる。
【図面の簡単な説明】
【０００８】
【図１】通信システムの構成図。
【図２】デジタルカメラのハードウェア構成図。
【図３】デジタルカメラで実行されるフローチャート。
【図４】デジタルカメラで実行されるフローチャート。
【図５】デジタルカメラで実行されるフローチャート。
【図６】デジタルカメラで実行されるフローチャート。
【図７】通信システムで実行される処理を示すシーケンス図。
【図８】デジタル証明書の構成図。
【発明を実施するための形態】
【０００９】
図１に、本実施形態に係る通信システム１００の構成を示す。通信システム１００は、通信装置（例えば、デジタルカメラ）と、情報処理装置（例えば、サーバ）とを含んで構成される。以下、通信装置の例として、デジタルカメラを用いて説明するが、これに限られない。即ち、通信装置として、例えば、ＰＣ、タブレット端末、ポータブルゲーム機、パーソナルデジタルアシスタント（ＰＤＡ）などであってもよい。また、１台の通信装置としてではなく、複数の装置からなる通信システムとして上記の構成を有するようにしてもよい。
【００１０】
本実施形態においてデジタルカメラ１０１は無線通信機能を有する。ここでは、無線通信機能は、ＩＥＥＥ８０２．１１シリーズ規格に準拠した無線ＬＡＮ機能であるものとして説明する。しかし、これに限らず、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＭＢＯＡ、ＵＷＢ、ＺｉｇＢｅｅ、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）等、他の無線通信機能であってもよい。また、無線通信に代えて、もしくは、加えて、有線ＬＡＮ等の有線通信を行ってもよい。ここで、ＬＡＮは、ローカルエリアネットワーク（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の略である。また、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。また、ＵＷＢは、Ｕｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄの略であり、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。サーバ１０２および無線ＬＡＮ  ＡＰ１０３はバックボーンネットワーク１０５と接続している。なお、バックボーンネットワーク１０５は例えばＩｎｔｅｒｎｅｔであるが、ローカルネットワーク等でもよい。デジタルカメラ１０１は、無線ＬＡＮ  ＡＰ１０３が構築する無線ＬＡＮネットワークに接続し、無線ＬＡＮ通信１０４を介してサーバ１０２と通信が可能である。なお、デジタルカメラ１０１は無線ＬＡＮ  ＡＰ１０３以外の外部装置が構築する無線ＬＡＮネットワークを利用してもよい。ここで、外部装置はスマートフォンやＰＣ等でありうる。
【００１１】
図２（ａ）に、本実施形態に係るデジタルカメラ１０１のハードウェア構成図を示す。無線ＬＡＮ制御部２０１は、ＩＥＥＥ８０２．１１シリーズ規格に準拠した無線ＬＡＮ通信の各種制御や、無線ＬＡＮ通信関連のプロトコル処理を行う。アンテナ２０２は、無線ＬＡＮ通信を行うために用いられる。制御部２０３は、ＲＯＭ２０４に記憶される制御プログラムを実行することによりデジタルカメラ１０１全体を制御する。
【００１２】
ＲＯＭ２０４は、制御部２０３が実行する制御プログラムを記憶するＲＯＭである。後述する各種動作は、ＲＯＭ２０４に記憶された制御プログラムを制御部２０３が実行することにより行われる。ＲＡＭ２０５は、制御プログラムを実行する際のワークメモリやデータの一時保存などに利用される。記憶部２０６は、通信に必要なパラメータ等の各種情報や圧縮符号化された画像データを記憶する。記憶部２０６は、デジタルカメラ１０１と着脱可能であってもよい。
【００１３】
操作部２０７は、ユーザがデジタルカメラ１０１を操作するために利用される。表示部２０８は、ＬＣＤやＬＥＤのように視覚で認知可能な情報の出力、あるいはスピーカ等の音出力を行う。マイク２０９は、音声等を取得する。パケット送受信部２１０は、各種通信にかかわるパケットを送受信する。撮像部２１１は、被写体の光学像を撮像する。２１２は撮像部２１１から出力された撮像画像を所定フォーマットの画像データに変換し、画像データの輝度や色補正等の各種処理を施す画像処理部である。符号／復号化部２１３は、画像処理部２１２から出力された画像データに対して、所定の高能率符号化（例えば、離散コサイン変換、量子化後に可変長符号化）を行う。再生部２１４は、圧縮符号化された画像データを再生する。電源部２１５はデジタルカメラ１０１に電源を供給する。
【００１４】
次に、図２（ｂ）に、ＲＯＭ２０４に記憶されたプログラムを制御部２０３が読み出すことで実現されるソフトウェアブロック構成を示す。指示判定部２５１は、操作部２０７のボタン等を介してユーザから通信機能の開始を指示されたことを判定する。記憶制御部２５２は、記憶部２０６を制御し、データの保存やＲＡＭ２０５への読み出しを行う。表示制御部２５３は、表示部２０８を制御して各種表示を行う。送信部２５４は、パケット送受信部２１０、無線ＬＡＮ制御部２０１等を用いてサーバ１０２への要求やデータ送信等を行う。受信部２５５は、パケット送受信部２１０、無線ＬＡＮ制御部２０１等を用いてサーバ１０２からの応答やデータ受信等を行う。
【００１５】
拡張領域属性取得部２５６は、受信部２５５によりサーバ１０２から受信したデジタル証明書内の拡張領域に関する属性の取得を行う。なお、デジタル証明書は、図８（ａ）に示す構成（フィールド）を有する。なお、当該デジタル証明書に含まれる拡張領域の詳細は、図８（ｂ）に示すような構成（フィールド）を有する。拡張領域には、拡張領域全体のサイズを示すサイズ情報８０１や、拡張領域のデータ部分のサイズを示すサイズ情報８０２などが含まれる。
【００１６】
ドメイン名検証部２５７は、受信部２５５によりサーバ１０２から受信したデジタル証明書に含まれるドメイン名と接続先であるサーバ１０２のドメイン名の検証（確認）を行う。切断判定部２５８は、ドメイン名検証部２５７の検証結果（確認結果）に基づいてサーバ１０２から切断を行うか否かを判定する。
【００１７】
図２に示した全ての機能ブロックは、ソフトウェアもしくはハードウェア的に相互関係を有するものである。また、上記機能ブロックは一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。
【００１８】
以下では、デジタルカメラ１０１が実行する処理について説明した後に、通信システム内で実行される処理の流れの例について説明する。以降の説明では、デジタルカメラ１０１と無線ＬＡＮ  ＡＰ１０３間の無線ＬＡＮ通信１０４は予め確立されているものとする。また、デジタルカメラ１０１およびサーバ１０２間の暗号通信には、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）およびＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）プロトコルが利用されるものとして説明を行う。
【００１９】
図３は、デジタルカメラ１０１が、クラウド連携モードを開始した場合に実行される処理の流れを示すフローチャートである。本処理は、ユーザがデジタルカメラ１０１の操作部２０７を操作することにより、クラウド連携モードの開始が選択された場合に開始されうるが、これに限られない。例えば、デジタルカメラ１０１において撮像が行われたことや、外部装置からクラウド連携モード開始の要求を受信したことを契機に開始されうる。
【００２０】
クラウド連携モードが開始されると、まず、Ｓ３０１において、デジタルカメラ１０１は接続先であるサーバ１０２の選択を行い、Ｓ３０２へ処理を進める。ここで、接続先であるサーバ１０２の選択は、記憶部２０６に記憶されている接続可能なサーバのリストを表示部２０８に表示し、ユーザが操作部２０７を介して指示することにより選択しうるが、これに限られない。例えば、クラウド連携モードにより実行予定の機能に応じて、デジタルカメラ１０１が自動で選択する等である。なお、実行予定の機能は、動画像のアップロードやライブストリーミング等でありうるが、これに限るものではない。Ｓ３０２では、デジタルカメラ１０１は、セキュア接続処理を開始する。なお、セキュア接続処理は、サーバ１０２との間で暗号化通信を行うためのＴＣＰセッションの確立や鍵情報の交換等を行う処理を指す。セキュア接続処理の詳細については後述する。
【００２１】
その後、デジタルカメラ１０１は、Ｓ３０３において、Ｓ３０２でセキュア接続が正常に完了したか否かの判定を行う。セキュア接続が正常に完了した場合（Ｓ３０２でＹＥＳ）はＳ３０４へ処理を進め、セキュア接続が正常に完了しなかった場合（Ｓ３０２でＮＯ）はＳ３１０へ処理を進める。Ｓ３０４では、デジタルカメラ１０１は、Ｓ３０１で選択されたサーバ１０２のドメイン名がＩＰアドレス表記であるか否かの判定を行う。ＩＰアドレス表記である場合（Ｓ３０４でＹＥＳ）はＳ３０７へ処理を進め、ＩＰアドレス表記でない場合（Ｓ３０４でＮＯ）はＳ３０５へ処理を進める。Ｓ３０５では、デジタルカメラ１０１は、ドメイン名検証処理を開始する。なお、ドメイン名検証処理は、Ｓ３０１で選択されたサーバ１０２のドメイン名とサーバ１０２から受信したサーバ証明書内のドメイン名が一致するか否かの検証を行う処理を指す。ここで、サーバ証明書はＸ．５０９規格のデジタル証明書でありうるが、これに限られるものではなく、どのようなデジタル証明書が用いられてもよい。すなわち、暗号鍵や署名等を含む任意のデジタル証明書と置き換えられうる。ドメイン名検証処理の詳細については後述する。その後、デジタルカメラ１０１は、Ｓ３０６において、Ｓ３０５でドメイン名検証処理が成功したか否かの判定を行う。ドメイン名検証処理が成功した場合（Ｓ３０６でＹＥＳ）はＳ３０７へ処理を進め、成功しなかった場合（Ｓ３０６でＮＯ）はＳ３１０へ処理を進める。Ｓ３０７では、デジタルカメラ１０１は、Ｓ３０１で選択したサーバ１０２との接続が成功した旨を表示部２０８に表示し、Ｓ３０８へ処理を進める。Ｓ３０８では、デジタルカメラ１０１は、Ｓ３０２で交換した鍵情報を用いてサーバ１０２と暗号化データ通信を行い、Ｓ３０９へ処理を進める。ここで、暗号化データ通信は、ＴＬＳ  Ａｐｐｌｉｃａｔｉｏｎ  Ｄａｔａプロトコルのメッセージ送受信でありうる。Ｓ３０９では、デジタルカメラ１０１は、クラウド連携モードを終了するか否かの判定を行う。ここで、クラウド連携モードを終了するか否かの判定は、ユーザの操作部２０７の操作による終了指示の有無により判定しうるが、これに限られない。例えば、デジタルカメラ１０１において暗号化データ通信が一定期間ないことや、外部装置からクラウド連携モードの終了指示を受信したことを契機に終了されうる。クラウド連携モードを終了する場合（Ｓ３０９でＹＥＳ）はＳ３１０へ処理を進め、クラウド連携モードを終了しない場合（Ｓ３０９でＮＯ）はＳ３０８へ処理を戻す。Ｓ３１０では、デジタルカメラ１０１は、セキュア切断処理を開始する。なお、セキュア切断処理は、Ｓ３０２で確立したサーバ１０２との間で暗号化通信を行うための通信セッションを切断する処理を指す。セキュア切断処理の詳細については後述する。その後、デジタルカメラ１０１は、Ｓ３１１において、Ｓ３１０のセキュア切断処理が正常な切断であるか否か、すなわち、Ｓ３０２のセキュア接続処理やＳ３０５のドメイン名検証処理に成功したか否かの判定を行う。正常な切断である場合（Ｓ３１１でＹＥＳ）はＳ３１２へ処理を進め、正常な切断でない場合（Ｓ３１１でＮＯ）はＳ３１３へ処理を進める。Ｓ３１２では��デジタルカメラ１０１は、サーバ１０２との切断が完了した旨を表示部２０８に表示し、クラウド連携モードを終了する。一方、Ｓ３１３では、デジタルカメラ１０１は、サーバ１０２との接続がエラーとなった旨を表示部２０８に表示し、クラウド連携モードを終了する。
【００２２】
続いて、図４を用いて、デジタルカメラ１０１においてセキュア接続処理が開始された際に実行される処理の流れについて説明する。
【００２３】
まず、デジタルカメラ１０１は、Ｓ４０１において、ＴＣＰ接続を行い、Ｓ４０２へ処理を進める。Ｓ４０２では、デジタルカメラ１０１は、セキュア接続開始要求を送信し、Ｓ４０３へ処理を進める。ここで、セキュア接続開始要求は、ＴＬＳ  ＨａｎｄｓｈａｋｅプロトコルのＣｌｉｅｎｔ  Ｈｅｌｌｏメッセージでありうる。Ｃｌｉｅｎｔ  Ｈｅｌｌｏメッセージには、デジタルカメラ１０１のサポートするＴＬＳのプロトコルバージョンや暗号化アルゴリズム、セッションＩＤ等が含まれうる。Ｓ４０３では、デジタルカメラ１０１は、サーバ証明書を受信し、Ｓ４０４へ処理を進める。ここで、サーバ証明書の受信は、ＴＬＳ  ＨａｎｄｓｈａｋｅプロトコルのＣｅｒｔｉｆｉｃａｔｅメッセージにより受信しうる。なお、Ｃｅｒｔｉｆｉｃａｔｅメッセージの受信の前後でＳｅｒｖｅｒ  ＨｅｌｌｏメッセージやＳｅｒｖｅｒ  Ｈｅｌｌｏ  Ｄｏｎｅメッセージ、Ｓｅｒｖｅｒ  Ｋｅｙ  Ｅｘｃｈａｎｇｅメッセージを受信しうる。Ｓ４０４では、デジタルカメラ１０１は、Ｓ４０３でサーバ証明書の受信に成功したか否かの判定を行う。ここで、サーバ証明書の受信に成功したか否かの判定は、サーバ証明書のサイズが閾値以下であるか否かにより判定を行いうるが、これに限られない。例えば、受信したサーバ証明書の形式が所定の形式以外である場合に、受信に失敗したと判定してもよい。サーバ証明書の受信に成功した場合（Ｓ４０４でＹＥＳ）はＳ４０５へ処理を進め、サーバ証明書の受信に失敗した場合（Ｓ４０４でＮＯ）はＳ４１１へ処理を進める。Ｓ４０５では、デジタルカメラ１０１は、Ｓ４０３で受信したサーバ証明書の正当性検証を行い、Ｓ４０６へ処理を進める。なお、サーバ証明書の正当性検証は、記憶部２０６にあらかじめ記憶されたルート（ＣＡ）証明書を用いて、サーバ証明書に含まれる署名が改竄されたものでないか否かを判定することにより検証されうる。Ｓ４０６では、デジタルカメラ１０１は、Ｓ４０５で受信したサーバ証明書が正当と判断されたか否かの判定を行う。サーバ証明書が正当と判断された場合（Ｓ４０６でＹＥＳ）はＳ４０７へ処理を進め、サーバ証明書が正当でないと判断された場合（Ｓ４０６でＮＯ）はＳ４１１へ処理を進める。Ｓ４０７では、デジタルカメラ１０１は、鍵情報を送信し、Ｓ４０８へ処理を進める。ここで、鍵情報の送信は、ＴＬＳ  ＨａｎｄｓｈａｋｅプロトコルのＣｌｉｅｎｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅメッセージにより送信しうる。また、鍵情報は、受信したサーバ証明書に含まれる公開鍵を用いて、自身で生成したプリマスターシークレットを暗号化した情報でありうる。Ｓ４０８では、デジタルカメラ１０１は、セキュア接続完了通知を送信し、Ｓ４０９へ処理を進める。ここで、セキュア接続完了通知は、ＴＬＳ  ＨａｎｄｓｈａｋｅプロトコルのＦｉｎｉｓｈｅｄメッセージでありうる。なお、Ｆｉｎｉｓｈｅｄメッセージの送信の前に、Ｃｈａｎｇｅ  Ｃｉｐｈｅｒ  ＳｐｅｃプロトコルのＣｈａｎｇｅ  Ｃｉｐｈｅｒ  Ｓｐｅｃメッセージを送信しうる。Ｓ４０９では、デジタルカメラ１０１は、セキュア接続完了通知を受信し、Ｓ４１０へ処理を進める。なお、セキュア接続完了通知の受信の前に、Ｃｈａｎｇｅ  Ｃｉｐｈｅｒ  ＳｐｅｃプロトコルのＣｈａｎｇｅ  Ｃｉｐｈｅｒ  Ｓｐｅｃメッセージを受信しうる。Ｓ４１０では、デジタルカメラ１０１は、セキュア接続処理に成功したと判断して本処理を終了する。一方、Ｓ４１１では、デジタルカメラ１０１は、セキュア接続処理がエラーとなったと判断して本処理を終了する。
【００２４】
続いて、図５を用いて、デジタルカメラ１０１においてドメイン名検証処理が開始された際に実行される処理の流れについて説明する。
【００２５】
まず、デジタルカメラ１０１は、Ｓ５０１において、受信したサーバ証明書の所定の拡張領域全体のサイズ８０１を取得し、Ｓ５０２へ処理を進める。ここで、所定の拡張領域はＳＡＮ（Ｓｕｂｊｅｃｔ  Ａｌｔｅｒｎａｔｉｖｅ  Ｎａｍｅ）でありうるが、これに限られるものではない。すなわち、ドメイン名を含む任意の領域と置き換えられうる。
【００２６】
続いて、Ｓ５０２では、デジタルカメラ１０１は、受信したサーバ証明書に所定の拡張領域が存在するか否かの判定を行う。ここで、所定の拡張領域が存在するか否かの判定は、Ｓ５０１で取得した所定の拡張領域全体のサイズが０か否かにより判定を行いうる。所定の拡張領域が存在する場合（Ｓ５０２でＹＥＳ）はＳ５０３へ処理を進め、所定の拡張領域が存在しない場合（Ｓ５０２でＮＯ）はＳ５１２へ処理を進める。Ｓ５０３では、デジタルカメラ１０１は、Ｓ５０１で取得した所定の拡張領域全体のサイズ８０１を確認し、当該拡張領域のサイズが閾値以下であるか否かの判定を行う。拡張領域のサイズが閾値以下である場合（Ｓ５０３でＹＥＳ）はＳ５０４へ処理を進め、拡張領域のサイズが閾値より大きい場合（Ｓ５０３でＮＯ）はＳ５１５へ処理を進める。ここで、拡張領域のサイズが閾値以下であるか否かの判定は、受信したサーバ証明書の所定の拡張領域全体のサイズ８０１を用いて行うようにしたが、これに限られない。例えば、所定の拡張領域のデータサイズ８０２を用いて判定しうる。Ｓ５０４では、デジタルカメラ１０１は、検証の対象データとして拡張領域の先頭データをセットし、Ｓ５０５へ処理を進める。なお、拡張領域および拡張領域内のデータはＡＳＮ．１（Ａｂｓｔｒａｃｔ  Ｓｙｎｔａｘ  Ｎｏｔａｔｉｏｎ  Ｏｎｅ）のＤＥＲ（Ｄｉｓｔｉｎｇｕｉｓｈｅｄ  Ｅｎｃｏｄｉｎｇ  Ｒｕｌｅｓ）形式で記述されたデータでありうるが、これに限られない。例えば、ＡＳＮ．１の別形式で記述されたデータやＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等であってもよい。Ｓ５０５では、デジタルカメラ１０１は、対象データのデータタイプを取得し、Ｓ５０６へ処理を進める。ここで、データタイプは、ドメイン名やＩＰアドレス、メールアドレス、ＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）等でありうる。Ｓ５０６では、デジタルカメラ１０１は、データタイプがドメイン名であるか否かの判定を行う。データタイプがドメイン名である場合（Ｓ５０６でＹＥＳ）はＳ５０７へ処理を進め、データタイプがドメイン名でない場合（Ｓ５０６でＮＯ）はＳ５１０へ処理を進める。Ｓ５０７では、デジタルカメラ１０１は、データサイズすなわちドメイン名の長さを取得し、Ｓ５０８へ処理を進める。Ｓ５０８では、デジタルカメラ１０１は、データすなわちドメイン名を取得し、Ｓ５０９へ処理を進める。Ｓ５０９では、デジタルカメラ１０１は、Ｓ３０１で選択した接続先であるサーバ１０２のドメイン名とＳ５０８で取得したドメイン名が一致するか否かの判定を行う。ここで、ドメイン名が一致するか否かの判定は、大文字小文字の区別を行わず比較しうる。また、Ｓ５０８で取得したドメイン名にワイルドカード表記が含まれる場合は、当該箇所を任意の文字列として解釈して比較しうるが、これらに限られない。例えば、完全一致による比較や、ワイルドカード表記を文字と解釈して比較しうる。ドメイン名が一致した場合（Ｓ５０９でＹＥＳ）はＳ５１４へ処理を進め、ドメイン名が一致しない場合（Ｓ５０９でＮＯ）はＳ５１０へ処理を進める。Ｓ５１０では、デジタルカメラ１０１は、拡張領域内に次データが存在するか否かの判定を行う。ここで、拡張領域内に次データがあるか否かの判定は、検証済みデータのサイズの合計がＳ５０１で取得した拡張領域のサイズよりも大きいか否かにより判定を行いうる。拡張領域内に次データが存在する場合（Ｓ５１０でＹＥＳ）はＳ５１１へ処理を進め、拡張領域内に次データが存在しない場合（Ｓ５１０でＮＯ）はＳ５１５へ処理を進める。Ｓ５１１では、デジタルカメラ１０１は、検証の対象データとして拡張領域内の次データをセットし、Ｓ５０５へ処理を戻す。一方、Ｓ５１２では、デジタルカメラ１０１は、サーバ証明書内のドメイン名を取得し、Ｓ５１３へ処理を進める。ここで、サーバ証明書内のドメイン名は、ＣＮ（Ｃｏｍｍｏｎ  Ｎａｍｅ）でありうる。Ｓ５１３では、デジタルカメラ１０１は、Ｓ３０１で選択した接続先であるサーバ１０２のドメイン名とＳ５１２で取得したドメイン名が一致するか否かの判定を行う。なお、ドメイン名が一致するか否かの判定は、Ｓ５０９と同様であるため説明を省略する。ドメイン名が一致した場合（Ｓ５１３でＹＥＳ）はＳ５１４へ処理を進め、ドメイン名が一致しない場合（Ｓ５１３でＮＯ）はＳ５１５へ処理を進める。Ｓ５１４では、デジタルカメラ１０１は、ドメイン名の検証に成功したと判断して本処理を終了する。一方、Ｓ５１５では、デジタルカメラ１０１は、ドメイン名の検証に失敗したと判断して本処理を終了する。
【００２７】
続いて、図６を用いて、デジタルカメラ１０１においてセキュア切断処理が開始された際に実行される処理の流れについて説明する。
【００２８】
まず、デジタルカメラ１０１は、Ｓ６０１において、セキュア接続切断通知を送信し、Ｓ６０２へ処理を進める。ここで、セキュア接続切断通知は、ＴＬＳ  ＡｌｅｒｔプロトコルのＣｌｏｓｅ  Ｎｏｔｉｆｙメッセージでありうるが、これに限られない。例えば、セキュア切断処理の開始要因に応じて、ＴＬＳ  Ａｌｅｒｔプロトコルで規定された他のメッセージを送信しうる。なお、セキュア切断処理の開始要因は、サーバ証明書の受信失敗、サーバ証明書の正当性検証失敗、サーバ証明書の拡張領域のサイズ超過、ドメイン名不一致等でありうる。Ｓ６０２では、デジタルカメラ１０１は、セキュア接続切断通知を受信し、Ｓ６０３へ処理を進める。Ｓ６０３では、デジタルカメラ１０１は、ＴＣＰ切断を行い、本処理を終了する。
【００２９】
なお、本処理では、セキュア接続切断通知をＴＣＰ切断の前に送受信するようにしたが、セキュア接続切断通知を送受信せずにＴＣＰ切断を行ってもよい。これにより、電源ＯＦＦ等で即時に処理を終了したい場合に、切断処理にかかる時間を短縮することができる。
【００３０】
次に、図７を用いて通信システムで実行される処理の流れについて説明する。本処理例では、デジタルカメラ１０１が、不正なサーバ１０２との間でセキュア接続処理を行った後、ドメイン名検証処理を開始する。デジタルカメラ１０１は、サーバ１０２から受信したサーバ証明書内の拡張領域のサイズが閾値より大きいため、その後の検証にかかる処理を実施せず、セキュア切断処理を行い、クラウド連携モードを終了する。なお、本処理例において、接続先であるサーバ１０２のドメイン名はＩＰアドレス表記でないものとして説明を行う。
【００３１】
デジタルカメラ１０１において、ユーザがクラウド連携モードを開始するための操作を行い（Ｍ７０１）、接続先であるサーバ１０２を選択する（Ｍ７０２、Ｓ３０１）。前記選択が行われると、デジタルカメラ１０１は無線ＬＡＮ  ＡＰ１０３との接続を行い（Ｍ７０３）、セキュア接続処理を開始する（Ｓ３０２）。デジタルカメラ１０１は、セキュア接続処理を開始すると、サーバ１０２とのＴＣＰ接続を行う（Ｍ７０４、Ｓ４０１）。デジタルカメラ１０１は、サーバ１０２とのＴＣＰ接続が完了すると、サーバ１０２にセキュア接続開始要求を送信する（Ｍ７０５、Ｓ４０２）。サーバ１０２は、セキュア接続開始要求を受信すると、デジタルカメラ１０１にサーバ証明書を送信する（Ｍ７０６、Ｓ４０３）。デジタルカメラ１０１は、サーバ証明書の受信が成功すると（Ｓ４０４でＹＥＳ）、サーバ証明書の正当性検証を行う（Ｍ７０７、Ｓ４０５）。デジタルカメラ１０１は、サーバ証明書の正当性検証の結果、正当であると判定すると（Ｓ４０６でＹＥＳ）、サーバ１０２に鍵情報を送信し（Ｍ７０８、Ｓ４０７）、セキュア接続完了通知を送信する（Ｍ７０９、Ｓ４０８）。サーバ１０２は、セキュア接続完了通知を受信すると、デジタルカメラ１０１にセキュア接続完了通知を送信する（Ｍ７１０、Ｓ４０９）。デジタルカメラ１０１は、セキュア接続完了通知を受信すると、接続が正常に完了したと判断し（Ｓ４１０）、セキュア接続処理を終了する。デジタルカメラ１０１は、セキュア接続処理が正常に完了し（Ｓ３０３でＹＥＳ）、接続先であるサーバ１０２のドメイン名がＩＰアドレス表記でないため（Ｓ３０４でＮＯ）、ドメイン名検証処理を開始する（Ｓ３０５）。デジタルカメラ１０１は、ドメイン名検証処理を開始すると、サーバ証明書内の拡張領域のサイズを取得する（Ｍ７１１、Ｓ５０１）。ここで、デジタルカメラ１０１は、サーバ証明書内に拡張領域が存在し（Ｓ５０２でＹＥＳ）、サイズが閾値よりも大きいため（Ｓ５０３でＮＯ）、以降の処理を行わず、ドメイン名の検証に失敗したと判断して（Ｓ５１５）、ドメイン名検証処理を終了する。デジタルカメラ１０１は、ドメイン名検証処理が失敗したため（Ｓ３０６でＮＯ）、セキュア切断処理を開始する（Ｓ３１０）。デジタルカメラ１０１は、セキュア切断処理を開始すると、サーバ１０２にセキュア接続切断通知を送信する（Ｍ７１２、Ｓ６０１）。サーバ１０２は、セキュア接続切断通知を受信すると、デジタルカメラ１０１にセキュア接続切断通知を送信する（Ｍ７１３、Ｓ６０２）。デジタルカメラ１０１は、セキュア接続切断通知を受信すると、ＴＣＰ切断を行い（Ｍ７１４、Ｓ６０３）、セキュア切断処理を終了する。デジタルカメラ１０１は、セキュア切断処理を完了すると、セキュア切断処理の開始要因がドメイン名検証処理の失敗であるため、正常切断でないと判定して（Ｓ３１１でＮＯ）、接続エラーＵＩ表示を行う（Ｍ７１５、Ｓ３１３）。その後、デジタルカメラ１０１はクラウド連携モードを終了する（Ｍ７１６）。
【００３２】
以上のように、本処理例では、デジタルカメラ１０１が、サーバ証明書内の拡張領域のサイズが閾値より大きい場合に、以降のドメイン名の検証にかかる処理を行わず、検証に失敗したと判断するようにした。これにより、接続すべきでない不正なサーバ等から大きな拡張領域を含むサーバ証明書を受信した場合に、不要なドメイン名の検証を回避することが可能となり、ユーザ使用性の低下を抑制することができる。
【００３３】
本実施形態において、デジタルカメラ１０１は、サーバ証明書内の拡張領域のサイズが閾値よりも大きい場合に、以降のドメイン名の検証にかかる処理を行わず、検証に失敗したと判断するようにしたが、これに限られない。例えば、接続先であるサーバ１０２が事前にユーザによって信頼済みであると記憶されたサーバである場合や、接続中のネットワークがローカルネットワークである場合等の所定の条件を満たした場合には、処理を継続しうる。これにより、閾値をより小さく設定した場合であっても、正当な接続先であるサーバとは確実に接続可能であると共に、接続先が不正なサーバの場合には不要なドメイン名の検証を回避することができる。
【００３４】
本実施形態において、デジタルカメラ１０１は、サーバ証明書内の拡張領域のサイズが閾値以下であるか否かにより、ドメイン名の検証にかかる処理を継続するか否かの判定を行うようにしたが、これに限られない。例えば、拡張領域に含まれるデータ種別の数やデータの内ドメイン名であるデータ数が閾値以下であるか否かにより判定しうる。また、拡張領域のサイズや拡張領域に含まれるデータ数を用いてドメイン名の検証にかかる処理時間を推定し、推定された処理時間が閾値以下であるか否かにより判定しうる。さらに、ドメイン名の検証にかかる処理を開始した後、処理済みのデータサイズやデータ数、処理の累計時間（処理を実行し始めてからの経過時間）等が閾値以上となったことを契機に処理を中止し、検証に失敗したと判断してもよい。これにより、正当な接続先であるサーバのサーバ証明書内の拡張領域のサイズがある程度大きい場合であっても接続可能であると共に、接続先が不正なサーバの場合には不要なドメイン名の検証を回避することができる。
【００３５】
本実施形態において、デジタルカメラ１０１は、サーバ１０２との接続に失敗した場合に、接続がエラーとなった旨を表示部２０８に表示するようにしたが、これに限られない。例えば、サーバ証明書の受信失敗、サーバ証明書の正当性検証失敗、サーバ証明書の拡張領域のサイズ超過、ドメイン名不一致等のエラー種別を表示しうる。これにより、ユーザが接続エラーの要因を容易に把握することが可能になり、ユーザ使用性をさらに向上させることができる。また、デジタルカメラ１０１は、当該エラーをサーバ１０２に通知するようにしてもよい。
【００３６】
本実施形態において、デジタルカメラ１０１は、セキュア接続処理が完了した後にドメイン名検証処理を行うようにしたが、これに限られない。例えば、サーバ証明書の受信後や正当性検証完了後にドメイン名検証処理を行いうる。これにより、不正なサーバの場合に不要なドメイン名の検証を回避すると共に、不要な鍵情報の送信等を抑制してセキュリティを向上させることができる。
【００３７】
本実施形態において、デジタルカメラ１０１は、ドメイン名検証処理に失敗したと判断した場合に、即座にセキュア切断処理を実施するようにしたが、これに限られない。例えば、サーバ証明書が不正である旨の警告をユーザに通知し、暗号化データ通信を継続しうる。なお、サーバ証明書が不正である旨の警告は、正当性検証失敗、有効期限切れ、ドメイン名不一致等でありうる。これにより、正当な接続先のサーバであるが、事前設定の不備等によりサーバ証明書が不正であると判断される場合に、ユーザがセキュリティリスクを把握しつつ、当該サーバとの一時的な通信を行うことができる。
【００３８】
このようにして、計算資源に制約のある装置において、不要なドメイン名の検証に係る処理を回避し、ユーザ使用性の低下を抑制することができる。
【００３９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４０】
１０１  デジタルカメラ
１０２  サーバ
１０３  無線ＬＡＮ  ＡＰ
１０４  無線ＬＡＮの信号
１０５  Ｉｎｔｅｒｎｅｔ
【図１】
2020167469.tif 000003
【図２】
2020167469.tif 000004
【図３】
2020167469.tif 000005
【図４】
2020167469.tif 000006
【図５】
2020167469.tif 000007
【図６】
2020167469.tif 000008
【図７】
2020167469.tif 000009
【図８】
2020167469.tif 000010