JP2004272632A - 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム - Google Patents

情報処理装置、および情報処理方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2004272632A
JP2004272632A JP2003063019A JP2003063019A JP2004272632A JP 2004272632 A JP2004272632 A JP 2004272632A JP 2003063019 A JP2003063019 A JP 2003063019A JP 2003063019 A JP2003063019 A JP 2003063019A JP 2004272632 A JP2004272632 A JP 2004272632A
Authority
JP
Japan
Prior art keywords
server
client
information
processing
device list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003063019A
Other languages
English (en)
Inventor
Kensuke Baba
健介 馬場
Yasuyuki Kinoshita
康幸 木下
Yoichi Kobori
洋一 小堀
Keigo Ihara
圭吾 井原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2003063019A priority Critical patent/JP2004272632A/ja
Priority to CN2004800038450A priority patent/CN1748207B/zh
Priority to US10/546,822 priority patent/US7870261B2/en
Priority to EP04717870A priority patent/EP1603047A4/en
Priority to KR1020057016744A priority patent/KR101038612B1/ko
Priority to PCT/JP2004/002903 priority patent/WO2004081801A1/ja
Publication of JP2004272632A publication Critical patent/JP2004272632A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network

Abstract

【課題】外部ネットワークに接続されたクライアントによる内部ネットワーク接続サーバの効率的な情報取得を可能とした装置および方法を提供する。
【解決手段】外部ネットワークおよび内部ネットワークの境界に接続されたアプリケーション・ゲートウェイとしての情報処理装置が、内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信したことを条件として、内部ネットワークを介した接続サーバのサーバ情報取得処理を実行し、取得したサーバ情報に基づいてデバイスリストを生成し、外部ネットワークを介してクライアントに送信する構成とした。本構成により、外部ネットワークに接続されたクライアントによる内部ネットワーク接続サーバの情報取得が効率的に実行できる。
【選択図】 図10

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、ホームネットワーク等の内部ネットワークに接続されたサーバ等の情報処理装置に関する情報の取得を外部ネットワークに接続されたクライアントからゲートウェイを仲介として実行することを可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【0002】
【従来の技術】
昨今のデータ通信ネットワークの普及に伴い、家庭内においても家電機器やコンピュータ、その他の周辺機器をネットワーク接続し、各機器間での通信を可能とした、いわゆるホームネットワークが浸透しつつある。ホームネットワークは、ネットワーク接続機器間で通信を行なうことにより各機器のデータ処理機能を共有したり、機器間でコンテンツの送受信を行なう等、ユーザに利便性・快適性を提供するものであり、今後、ますます普及することが予測される。
【0003】
このようなホームネットワークの構成に適するプロトコルとしてユニバーサルプラグアンドプレイ(UPnP:Universal Plug and Play)が知られている。ユニバーサルプラグアンドプレイ(UPnP)は、複雑な操作を伴うことなく容易にネットワークを構築することが可能であり、困難な操作や設定を伴うことなくネットワーク接続された機器において各接続機器の提供サービスを受領可能とするものである。また、UPnPはデバイス上のOS(オペレーティングシステム)にも依存せず、容易に機器の追加ができるという利点を持つ。
【0004】
UPnPは、接続機器間で、XML(eXtensible Markup Language)に準拠した定義ファイルを交換し、機器間において相互認識を行なう。UPnPの処理の概要は、以下の通りである。
(1)IPアドレス等の自己のデバイスIDを取得するアドレッシング処理。
(2)ネットワーク上の各デバイスの検索を行ない、各デバイスから応答を受信し、応答に含まれるデバイス種別、機能等の情報を取得するディスカバリ処理。
(3)ディスカバリ処理で取得した情報に基づいて、各デバイスにサービスを要求するサービス要求処理。
【0005】
上記処理手順を行なうことで、ネットワーク接続された機器を適用したサービスの提供および受領が可能となる。ネットワークに新たに接続される機器は、上記のアドレッシング処理によりデバイスIDを取得し、ディスカバリ処理によりネットワーク接続された他のデバイスの情報を取得して、取得情報に基づいて他の機器にサービスの要求が可能となる。
【0006】
しかし、一方、この種のネットワークでは、不正アクセスに対する対策を考慮することも必要となる。ホームネットワーク内の機器、例えばサーバ等には私的なコンテンツや有料コンテンツ等の著作権管理を要求されるコンテンツが格納されることも多い。
【0007】
このようなホームネットワーク内のサーバに格納されたコンテンツは、ネットワーク接続された他の機器からアクセス可能となる。例えば、上述の簡易な機器接続構成であるUPnP接続を実行した機器によってコンテンツを取得することが可能となる。コンテンツが映画データや音楽データの場合、ネットワーク接続機器としてTV、あるいはプレーヤ等を接続すれば、映画を視聴したり、音楽を聴いたりすることが可能となる。
【0008】
コンテンツの利用権を有するユーザの接続した機器によるアクセスは許容されてもよいが、上述のようなネットワーク構成においては、コンテンツ等の利用権を持たないユーザがネットワークに入り込むことも容易である。例えば無線LANによって構成されたネットワークの場合には家の中にあるサーバに対して、戸外、あるいは隣家等から通信機器を利用して不正にネットワークに参入し、コンテンツの搾取を行なうような事態も発生し得る。このような不正なアクセスを許容する構成は、秘密漏洩を生じさせることにもなり、また、コンテンツ著作権の管理の観点からも重要な問題となる。
【0009】
上述のような不正アクセスを排除するため、例えばサーバにアクセスを許容するクライアントのリストを保持させ、クライアントからサーバに対するアクセス要求の際に、サーバでリストとの照合処理を実行して不正アクセスを排除する構成が提案されている。
【0010】
例えば、ネットワーク接続機器に固有の物理アドレスであるMAC(Media Access Control)アドレスを、アクセス許容機器リストとして設定するMACアドレスフィルタリングが知られている。MACアドレスフィルタリングとは、ホームネットワーク等の内部ネットワーク(サブネット)と外部ネットワークとを隔離するルータあるいはゲートウェイに、予めアクセスを許容するMACアドレスを登録しておき、受信したパケットのMACアドレスと登録されたMACアドレスとを照合し、登録されていないMACアドレスを有する機器からのアクセスを拒否するものである。なお、この種の技術については、例えば特許文献1に開示されている。
【0011】
しかし、アクセス制限をするためのMACアドレスの登録処理を行なうためには、ネットワークに接続される機器の全てのMACアドレスを調べることが必要であり、取得した全ての機器のMACアドレス(48bit)をオペレータが入力してリストを作成するという処理が必要となる。このような処理は、例えば特定の会社、団体等、セキュアな環境を構築することが要求される場合には、所定の管理者の下に行なうことも可能であるが、例えば一般家庭に設定されるホームネットワーク環境において、一般ユーザにMACリストの生成、格納を要求することは現実的ではない。
【0012】
ホームネットワークにおいては、新たな機器の追加処理が行われることは頻繁に発生することであり、このような機器追加処理の際に、ユーザが逐次、機器のMACアドレスを調べて登録処理をしなければならないとすると、ネットワーク構築の容易性を阻害することになる。
【0013】
一方、一般家庭においても、PCのみならず、家電機器も含んだネットワーク構成が構築され、どのような機器からでもネットワークにアクセス可能ないわゆるユビキタス環境が構築されつつあり、また、無線LAN等の普及により、通信可能な機器が外部から無線LANに侵入することも容易となっている。このようなネットワーク環境において、ネットワーク接続機器に対する不正アクセスもより発生しやすくなっており、不正なアクセスによる秘密情報の搾取、コンテンツの不正読み取り等が実行される可能性はますます高くなっている。このような状況において、一般ユーザに負担を強いることなく、適切なアクセス制御構成を容易に実現することが求められている。
【0014】
また、アクセス権限を正しく判定したとしても、外部ネットワークに接続されたクライアントが、ホームネットワークに接続された内部ネットワークの各サーバの情報を取得するためには、例えば各サーバに個別に逐次アクセスして情報を取得することが必要となる。
【0015】
内部ネットワークに接続されたクライアントであれば、前述のUPnPに従ったサーチ処理、すなわちUDP(User Datagram Protocol)に従って、サーチリクエストをマルチキャスト送信(HTTPMU:HTTPMulticast)することで一括して複数サーバからの情報取得が可能となり、容易にサーバ情報を取得することができる。
【0016】
しかし、外部ネットワークに接続されたクライアントが、上記と同様のUDPパケットのマルチキャスト送信により、特定の内部ネットワークに接続されたサーバの情報を取得することは困難である。また、インターネット等の外部ネットワークにサーバ情報を生のまま送信することは盗聴等の危険を伴うことになる。
【0017】
【特許文献1】
特許公開平10−271154号公報
【0018】
【発明が解決しようとする課題】
本発明は、上述の問題点に鑑みてなされたものであり、ホームネットワーク等の内部ネットワークに接続されたサーバ等の装置の情報取得を、外部ネットワークに接続されたクライアントから容易にかつセキュアに実行することを可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明の第1の側面は、
外部ネットワークおよび内部ネットワークの境界において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行する情報処理装置であり、
外部ネットワークおよび内部ネットワークを介したデータ送受信を実行するデータ送受信部と、
内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受領したことを条件として、内部ネットワークを介した接続サーバのサーバ情報取得処理を実行し、該サーバ情報取得処理に基づいて取得したサーバ情報に基づいて、外部ネットワークを介して前記クライアントに送信するデバイスリスト生成処理を実行するサーバ発見処理実行部と、
を有することを特徴とする情報処理装置にある。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記サーバ発見処理実行部は、内部ネットワークを介した接続サーバに関するサーバ情報取得処理をSSDP(Simple Service Discovery Protocol)を適用した処理として実行する構成であることを特徴とする。
【0021】
さらに、本発明の情報処理装置の一実施態様において、前記サーバ発見処理実行部は、内部ネットワークを介した接続サーバのサーバ情報取得処理を、前記内部ネットワークを介したサーチリクエストのマルチキャスト送信により実行し、内部ネットワークに接続されたサーバからの受信情報に基づいて前記デバイスリストを生成する構成であることを特徴とする。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記サーバ発見処理実行部は、内部ネットワークに接続された各サーバから受信するUDP(User Datagram Protocol)パケット格納情報に基づいて、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを生成する構成であることを特徴とする。
【0023】
さらに、本発明の情報処理装置の一実施態様において、前記サーバ発見処理実行部は、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを、前記クライアントと共有する鍵で暗号化する処理を実行し、デバイスリストを暗号化データとしてクライアントに送信する構成であることを特徴とする。
【0024】
さらに、本発明の情報処理装置の一実施態様において、前記デバイスリストの暗号化に適用する鍵は、クライアントと情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵であることを特徴とする。
【0025】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、前記内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、前記外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行する構成であることを特徴とする。
【0026】
さらに、本発明の情報処理装置の一実施態様において、前記サーバ発見処理実行部は、前記デバイスリスト生成処理において、内部ネットワークに接続されたサーバから受信する情報に基づいて、各サーバに対するアクセス情報、および各サーバの提供可能なサービス情報を含むデバイスリストを生成する処理を実行する構成であることを特徴とする。
【0027】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、クライアントのアクセス権限の有無を判定する機器認証処理部を有し、前記サーバ発見処理実行部は、前記機器認証処理部においてクライアントのアクセス権限が認められたことを条件として、サーバ発見処理を実行する構成であることを特徴とする。
【0028】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、クライアント識別子と、クライアントとのコネクション識別情報としてのセッションIDとを対応付けたクライアントセッションIDテーブルを有し、クライアントから受信するセッションIDに基づく前記クライアントセッションIDテーブルの検索によりクライアントの識別処理を実行する構成であることを特徴とする。
【0029】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、外部ネットワークおよび内部ネットワークの境界に位置するアプリケーション・ゲートウェイとしての機能を有することを特徴とする。
【0030】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、外部ネットワークおよび内部ネットワークの境界に位置するリバースプロキシサーバとしての機能を有することを特徴とする。
【0031】
さらに、本発明の第2の側面は、
外部ネットワークおよび内部ネットワークの境界に接続された情報処理装置において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行する情報処理方法であり、
内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信する情報要求受信ステップと、
内部ネットワークを介した接続サーバのサーバ情報取得処理を実行するサーバ情報取得処理ステップと、
前記サーバ情報取得処理ステップにおいて取得したサーバ情報に基づいて前記クライアントに送信するデバイスリストを生成するデバイスリスト生成処理ステップと、
前記デバイスリスト生成処理ステップにおいて生成したデバイスリストを外部ネットワークを介してクライアントに送信するデバイスリスト送信ステップと、
を有することを特徴とする情報処理方法にある。
【0032】
さらに、本発明の情報処理方法の一実施態様において、前記サーバ情報取得処理ステップは、内部ネットワークを介した接続サーバに関するサーバ情報取得処理をSSDP(Simple Service Discovery Protocol)を適用した処理として実行することを特徴とする。
【0033】
さらに、本発明の情報処理方法の一実施態様において、前記サーバ情報取得処理ステップは、内部ネットワークを介した接続サーバのサーバ情報取得処理を、前記内部ネットワークを介したサーチリクエストのマルチキャスト送信により実行することを特徴とする。
【0034】
さらに、本発明の情報処理方法の一実施態様において、前記サーバ情報取得処理ステップは、内部ネットワークに接続された各サーバから受信するUDP(User Datagram Protocol)パケット格納情報を受信し、前記デバイスリスト生成処理ステップは、前記UDP(User Datagram Protocol)パケット格納情報に基づいて、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを生成することを特徴とする。
【0035】
さらに、本発明の情報処理方法の一実施態様において、前記デバイスリスト送信ステップは、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを、前記クライアントと共有する鍵で暗号化する処理を実行し、デバイスリストを暗号化データとしてクライアントに送信することを特徴とする。
【0036】
さらに、本発明の情報処理方法の一実施態様において、前記デバイスリストの暗号化に適用する鍵は、クライアントと情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵であることを特徴とする。
【0037】
さらに、本発明の情報処理方法の一実施態様において、前記サーバ情報取得処理ステップは、前記内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、前記デバイスリスト送信ステップは、前記外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行することを特徴とする。
【0038】
さらに、本発明の情報処理方法の一実施態様において、前記デバイスリスト生成処理ステップは、内部ネットワークに接続されたサーバから受信する情報に基づいて、各サーバに対するアクセス情報、および各サーバの提供可能なサービス情報を含むデバイスリストを生成する処理を実行することを特徴とする。
【0039】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、クライアントのアクセス権限の有無を判定する機器認証処理ステップを有し、前記サーバ情報取得処理ステップは、前記機器認証処理ステップにおいてクライアントのアクセス権限が認められたことを条件として実行することを特徴とする。
【0040】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、クライアント識別子と、クライアントとのコネクション識別情報としてのセッションIDとを対応付けたクライアントセッションIDテーブルに基づいて、クライアントから受信するセッションIDに従ったテーブル検索を実行し、クライアントの識別処理を実行するステップを有することを特徴とする。
【0041】
さらに、本発明の第3の側面は、
外部ネットワークおよび内部ネットワークの境界に接続された情報処理装置において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行するコンピュータ・プログラムであり、
内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信する情報要求受信ステップと、
内部ネットワークを介した接続サーバのサーバ情報取得処理を実行するサーバ情報取得処理ステップと、
前記サーバ情報取得処理ステップにおいて取得したサーバ情報に基づいて前記クライアントに送信するデバイスリストを生成するデバイスリスト生成処理ステップと、
前記デバイスリスト生成処理ステップにおいて生成したデバイスリストを外部ネットワークを介してクライアントに送信するデバイスリスト送信ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【0042】
【作用】
本発明の構成によれば、外部ネットワークおよび内部ネットワークの境界に接続されたアプリケーション・ゲートウェイとしての情報処理装置が、内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信したことを条件として、内部ネットワークを介した接続サーバのサーバ情報取得処理を実行し、取得したサーバ情報に基づいてデバイスリストを生成し、外部ネットワークを介してクライアントに送信する構成としたので、外部ネットワークに接続されたクライアントによるホームネットワーク等、内部ネットワークに接続されたサーバ情報の効率的な取得が可能となる。
【0043】
さらに、本発明の構成によれば、クライアントとアプリケーション・ゲートウェイとしての情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵を用いてデバイスリストを暗号化してクライアントに送信する構成としたので、インターネット等の盗聴のおそれのある通信路を介したデータ通信が必要な場合であっても、セキュアなデバイスリスト送信が可能となる。
【0044】
さらに、本発明の構成によれば、内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行する構成としたので、サーバ情報取得処理は、UPnPの規定に従ったSSDP(Simple Service Discovery Protocol)を適用した処理として実行可能であり、また、外部ネットワークに接続されたクライアントに対するデバイスリスト送信は、安全性、確実性が高いTCPによる通信によるリスト送信が実現される。
【0045】
さらに、本発明の構成によれば、クライアントのアクセス権限の有無を判定する機器認証処理においてクライアントのアクセス権限が認められたことを条件としてデバイスリストの取得および送付を実行する構成としたので、アクセス権限を持たない不正クライアントからのデバイスリスト取得処理が防止される。
【0046】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0047】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づく、より詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0048】
【発明の実施の形態】
以下、図面を参照しながら、本発明の情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。
【0049】
[システム概要]
まず、図1を参照して、本発明の適用可能なネットワーク構成例について説明する。図1は、例えば特定ユーザの家等に構築されたホームネットワーク100等のローカルエリアネットワーク、すなわち内部ネットワークであり、パーソナルコンピュータ(PC)101、102、ハードディスクレコーダ103、TV104、PDA105等の様々な情報処理装置がホームネットワーク100を介してデータ送受信を行う。
【0050】
たとえば、PC101、102、あるいはハードディスクレコーダ103をコンテンツ提供サーバとし、TV104、PDA105をクライアントとして、クライアントがサーバの格納コンテンツをネットワークを介して取得し、クライアントのディスプレイ、スピーカを利用してコンテンツ出力を行う。
【0051】
ホームネットワーク100は、有線、無線等いずれかのネットワークであり、各接続機器は、例えばイーサネット(登録商標)フレーム等の通信パケットをネットワークを介して送受信する。すなわち、クライアントは、イーサネットフレームのデータ部に処理要求情報を格納したフレームをサーバに送信することにより、サーバに対するデータ処理要求を実行する。サーバは、処理要求フレームの受信に応じて、データ処理を実行し、必要に応じてデータ処理結果としての結果データを通信パケットのデータ部に格納し、各クライアントに送信する。
【0052】
ネットワーク接続機器は、例えばユニバーサルプラグアンドプレイ(UPnP:Universal Plug and Play)対応機器によって構成される。従って、ネットワークに対する接続機器の追加、削除が容易な構成である。ネットワークに新たに接続する機器は、
(1)IPアドレス等の自己のデバイスIDを取得するアドレッシング処理。
(2)ネットワーク上の各デバイスの検索を行ない、各デバイスから応答を受信し、応答に含まれるデバイス種別、機能等の情報を取得するディスカバリ処理。
(3)ディスカバリ処理で取得した情報に基づいて、各デバイスにサービスを要求するサービス要求処理。
上記処理手順を行なうことで、ネットワーク接続された機器を適用したサービスを受領することが可能となる。
【0053】
図1において、ホームネットワーク100は、インターネット等の外部ネットワーク120に接続されている。外部ネットワーク120にもPC121、携帯電話122、ポータブル再生プレーヤ123等の各種の情報処理装置が接続される。ホームネットワーク100内の情報処理装置と外部ネットワーク120の情報処理装置とは、外部ネットワーク120およびホームネットワーク100を介して通信が可能となる。
【0054】
外部ネットワーク120およびホームネットワーク100によって構成される内部ネットワークの間には、外部ネットワーク120の接続装置からのアクセスを制限するためのファイアウォール機能を持つアプリケーション・ゲートウェイ110が設置される。アプリケーション・ゲートウェイは、外部ネットワークからのアクセス要求について、アプリケーション層において通信パケットのチェックを実行し、フィルタリングを行う。
【0055】
なお、アプリケーション・ゲートウェイ110は、ホームネットワーク100に接続された情報処理装置の代理応答サーバとしての機能も有する。すなわち、アプリケーション・ゲートウェイ110は、リバースプロキシサーバ機能も兼ね備えた構成をもつ。
【0056】
このように、アプリケーション・ゲートウェイ110は、ホームネットワーク等のローカル領域内の内部ネットワークと、ローカル領域外の外部ネットワークの間に位置するアプリケーション・ゲートウェイであり、またリバースプロキシサーバとしての機能を有する。
【0057】
外部ネットワーク120に接続されたPC121、携帯電話122、ポータブル再生プレーヤ123等の各種の情報処理装置は、アプリケーション・ゲートウェイ110を介してホームネットワーク100内のサーバ、例えばPC101、102、ハードディスクレコーダ103等にアクセスし、これらの装置に格納されたコンテンツを取得してPC121、携帯端末122、再生プレーヤ123等においてコンテンツ出力を行うことが可能となる。
【0058】
ただし、これらのコンテンツ取得を不特定のクライアントに許容することは、コンテンツの著作権、秘密漏洩等の問題から好ましいことではない。従って、外部ネットワーク120とホームネットワーク100の間に配置されたアプリケーション・ゲートウェイ110において、外部からのアクセスについてのアクセス権限判定処理を実行し、権限ありと判定した場合においてのみ、外部からのアクセスを許容する構成を持つ。この詳細処理構成については後述する。
【0059】
図1に示す各情報処理装置、すなわちサーバ、クライアント、およびアプリケーション・ゲートウェイを構成する情報処理装置のハードウェア構成例について図2を参照して説明する。
【0060】
CPU(Central Processing Unit)201は、ROM(Read Only Memory)202、またはHDD(Hard Disk Drive)204等に記憶されているプログラムに従って、各種の処理を実行し、データ処理手段、あるいは通信制御処理手段として機能する。RAM(Random Access Memory)203には、CPU201が実行するプログラムやデータが適宜記憶される。CPU201、ROM202、およびRAM203、HDD204は、バス205を介して相互に接続されている。
【0061】
バス205には、入出力インタフェース206が接続されており、この入出力インタフェース206には、例えば、ユーザにより操作されるキーボード、スイッチ、ボタン、あるいはマウス等により構成される入力部207、ユーザに各種の情報を提示するLCD、CRT、スピーカ等により構成される出力部208が接続される。さらに、データ送受信手段として機能する通信部209、さらに、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体211を装着可能で、これらのリムーバブル記録媒体211からのデータ読み出しあるいは書き込み処理を実行するドライブ210が接続される。
【0062】
図2に示す構成は、図1に示すネットワーク接続機器の一例としての一般的なPCの構成を示すものであるが、ネットワーク接続機器はPCに限らず、図1に示すように携帯電話、PDA等の携帯通信端末、その他の様々な電子機器、情報処理装置によって構成することが可能である。従って、それぞれの機器固有のハードウェア構成を持つことが可能であり、そのハードウェアに従った処理を実行する。
【0063】
[ホームネットワーク内のクライアントによるコンテンツ取得処理]
図1に示すホームネットワーク100に接続されたPC101、102、ハードディスクレコーダ103、TV104、PDA105等の様々な情報処理装置間においては、上述したユニバーサルプラグアンドプレイ(UPnP:Universal Plug and Play)プロトコルに従った通信を実行して、クライアントはサーバからコンテンツを取得することが可能となる。
【0064】
ホームネットワーク100に接続されたクライアント、すなわちサーバからコンテンツを取得しようとする情報処理装置は、ネットワーク上のサーバの検索としてのサーバ発見処理、例えばUPnPの規定するディスカバリ処理によりサーバからサーバの提供可能なサービス情報を取得することができる。ホームネットワーク100に接続されたクライアントによるサーバのディスカバリ処理シーケンスを図3に示す。
【0065】
クライアント301は、ホームネットワークを介して例えばネットワークサービスの検出プロトコルであるSSDP(Simple Service Discovery Protocol)を適用してサーバ発見処理を行う。クライアントは、ステップS1において、ネットワークを介したサーチリクエストをUDP(User Datagram Protocol)に従って、マルチキャスト送信(HTTPMU:HTTPMulticast)する。ホームネットワークに接続されたサーバ1,311、サーバ2,312、サーバ3,313の各々は、クライアントからのサーチリクエストを受信すると、ステップS2,S3,S4において、サービス提供可能であることを示すOKレスポンスをUDPに従って、クライアントに対してユニキャスト送信(HTTPU:HTTPUnicast)する。なお、OKレスポンスには、各サーバに対するアクセス情報、提供可能なサービスについての情報等が含まれる。
【0066】
上記のディスカバリ処理により、各サーバからのOKレスポンスを受信したクライアントは、サーバの提供可能なサービスについての情報を確認し、その後、これらの情報に基づいて、各デバイスにサービスを要求するサービス要求処理を実行する。例えば、サーバに対するコンテンツ送信要求等を実行し、サーバからコンテンツを取得してクライアントのディスプレイ、スピーカを介して出力する処理が可能となる。
【0067】
[ホームネットワーク外のクライアントによるコンテンツ取得処理]
上述した一般的なUPnPに従ったサーバ発見処理を外部ネットワークに接続された情報処理端末とホームネットワーク内のサーバ間で実行すると、不正なクライアント、すなわちコンテンツの利用を許諾されていないクライアントからホームネットワークに接続されたサーバの格納コンテンツが不正に取得され、利用される可能性がある。
【0068】
本発明の構成においては、外部ネットワークに接続されたクライアントからホームネットワーク等の内部ネットワークに接続されたサーバに対するアクセス要求を図1に示すアプリケーション・ゲートウェイ110において検証し、アクセス権限の判定処理を実行した上で、外部ネットワークに接続されたクライアントが正当なアクセス権限を有するとの判定があった場合にのみサーバに対するアクセスを許容する。
【0069】
(1)機器登録処理
ホームネットワーク外のインターネット等の外部ネットワークに接続し、ホームネットワーク内のサーバに対するアクセスを行おうとする情報処理装置(モバイル機器)は、事前に機器登録処理を行うことが必要となる。
【0070】
すなわち、モバイル機器は、ホームネットワーク内のアプリケーション・ゲートウェイを含む情報処理装置との間で、所定のシーケンスに従った機器登録処理を実行する。なお、機器登録処理はユーザが登録処理シーケンスを実行する2つの機器の操作、あるいはパスワード等の表示情報の確認をすることが必要であり、例えばホームネットワークに両機器(モバイル機器とアプリケーション・ゲートウェイ)を接続して実行する。
【0071】
図4を参照してモバイル機器の機器登録処理の手順について説明する。図4には、左側にモバイル機器としてのクライアント、右側にホームネットワーク内のアプリケーション・ゲートウェイを含む情報処理装置を意味するサーバの処理を示している。
【0072】
まず、ステップS11において、ユーザがクライアント側に設けられた機器登録ボタンを押下する。すると、クライアントは、ステップS12において、登録要求をブロードキャストする。これは、UDP(User Datagram Protocol)に従ったマルチキャスト送信として実行される。
【0073】
登録要求を受信したサーバは、ステップS13において確認要求をクライアントに対してユニキャスト送信する。これ以降のデータ送受信処理は、TCP(Transmission Control Protocol)に従って実行される。サーバからクライアントに送信する確認要求には、サーバ名が含まれる。確認要求を受信したクライアントは、ステップS14において確認要求応答をサーバに対して送信する。確認要求応答には、クライアント名が含まれる。
【0074】
確認要求応答を受信したサーバは、ステップS15においてユーザに対して「クライアント“YYYY”のためのワンタイムパスワードは“○○○○”です。」なるメッセージを表示する。すなわち、ワンタイムパスワードをサーバのディスプレイに表示する。このパスワードは、サーバが例えば乱数発生処理により生成するものである。
【0075】
ユーザは、ワンタイムパスワードを確認し、サーバ側からクライアント側に移動する。クライアント側に移動してきたユーザは、ステップS16においてサーバ側に提示されたワンタイムパスワードをクライアントの入力手段から入力する。ステップS17において、クライアントは、入力パスワードをサーバに送信する。
【0076】
サーバは、ワンタイムパスワード提示後の所定時間の待機中にクライアントからのパスワードを受信すると、ステップS18において、先のステップS15においてサーバが生成しユーザに提示したワンタイムパスワードと受信パスワードとの照合処理を実行する。サーバは、ステップS19において、クライアントに対してパスワード照合OK/NGの通知を行う。パスワード照合NGの場合は、処理を中止する。パスワード照合OKの場合は、ステップS20において、暗号化通信処理を可能とするためのSSL(Secure Socket Layer)ハンドシェイク処理に移行する。
【0077】
SSLハンドシェイクにより、サーバおよびクライアントは、暗号通信のための鍵として適用可能な秘密情報の共有を行い、その後の通信においては、共有した秘密情報を用いた暗号化データの送受信が可能となる。
【0078】
ステップS21において、サーバは、例えば乱数発生処理によりIDを生成する。IDは、グローバルユニーク性を有することが好ましく、例えば128bit以上のビット列として生成される。サーバの生成するIDをサーバID:GUID(S)とする。GUIDは、Globally Unique Identifierを意味する。
【0079】
ステップS22において、サーバは、生成したサーバID:GUID(S)をSSLハンドシェイクによりサーバクライアント間で共有した鍵で暗号化してクライアントに送信する。クライアントは、受信データを復号しサーバID:GUID(S)を取得する。
【0080】
一方、クライアントは、ステップS23において、例えば乱数発生処理によりIDを生成する。IDは、グローバルユニーク性を有することが好ましく、例えば128bit以上のビット列として生成される。クライアントの生成するIDをクライアントID:GUID(C)とする。
【0081】
ステップS24において、クライアントは、生成したクライアントID:GUID(C)をSSLハンドシェイクによりサーバクライアント間で共有した鍵で暗号化してサーバに送信する。サーバは、受信データを復号しクライアントID:GUID(C)を取得する。
【0082】
ステップS25において、クライアントは、サーバから受信したサーバID:GUID(S)と自デバイスで生成したクライアントID:GUID(C)を記憶手段に暗号化して格納する。暗号化鍵としては、例えば自デバイスのハードウェアに固有の識別情報、すなわちハードウェアユニークID(Huid(C))を適用する。サーバID:GUID(S)およびクライアントID:GUID(C)は暗号化データとして記憶部に格納される。
【0083】
このように、サーバID:GUID(S)およびクライアントID:GUID(C)は、ハードウェアユニークID(Huid(C))による暗号化がなされ、不正コピー、改ざん困難性を高めた暗号化データとして、すなわち、タンパレジスタント性を確保したデータとして格納される。
【0084】
ステップS26において、サーバは、クライアントから受信したクライアントID:GUID(C)と自デバイスで生成したサーバID:GUID(S)を記憶手段に暗号化して格納する。暗号化鍵としては、クライアントと同様、自デバイスのハードウェアに固有の識別情報、すなわちハードウェアユニークID(Huid(S))を適用する。サーバにおいても、サーバID:GUID(S)およびクライアントID:GUID(C)は暗号化データとして記憶部に格納され、不正コピー、改ざんの困難なタンパレジスタント性が確保される。
【0085】
上述の処理により、外部ネットワークに接続可能なモバイル機器と、ホームネットワーク内のアプリケーション・ゲートウェイを含むサーバの各々は、それぞれ、サーバID:GUID(S)およびクライアントID:GUID(C)を共有する秘密情報(Secret)として保有することになる。
【0086】
(2)機器認証処理
【0087】
上述の機器登録処理により、サーバID:GUID(S)およびクライアントID:GUID(C)をアプリケーション・ゲートウェイとの共有秘密情報(Secret)として保有したモバイル機器は、インターネット等の外部ネットワークに接続し、図1に示すアプリケーション・ゲートウェイ110に接続し、所定のアクセス権限判定処理シーケンスを実行することで、ホームネットワーク等の内部ネットワークに接続されたサーバに対するアクセスが可能となり、サーバからのコンテンツ取得等が許容される。
【0088】
すなわち、モバイル機器は、アプリケーション・ゲートウェイ110によって共有秘密情報(Secret)であるサーバID:GUID(S)およびクライアントID:GUID(C)を適用したアクセス権限判定処理が実行され、アクセス権限ありとの判定を条件として、ホームネットワーク内のサーバに対するアクセスが可能となる。
【0089】
図5に、外部ネットワークに接続したモバイル機器と、アプリケーション・ゲートウェイとの通信処理シーケンスを示す。
【0090】
図5において、クライアントは外部ネットワークに接続されたクライアントであり、サーバはホームネットワーク等の内部ネットワークに属し、アプリケーション・ゲートウェイが、両ネットワークの間に存在している。
【0091】
クライアントは、ステップS31において、アプリケーション・ゲートウェイに接続する。なお、クライアントは、アプリケーション・ゲートウェイに接続するためアプリケーション・ゲートウェイのIPアドレス、ポート番号を取得することが必要である。例えばアプリケーション・ゲートウェイに設定されたホスト名等に基づいて、ネットワーク上のDNS(Domain Name System)サーバ、その他、ISP(Internet Service Provider)の提供するサービスサーバによって、アプリケーション・ゲートウェイのIPアドレス、ポート番号を取得し接続を行う。
【0092】
なお、クライアントは、明示的にアプリケーション・ゲートウェイに接続する処理を実行することなく、例えばアプリケーション・ゲートウェイの接続されたホームネットワーク等、内部ネットワークの接続サーバのホスト名を用いてサーバに対するダイレクト接続を試みた場合においても、各サーバに設定されたゲートウェイの設定情報に基づいて、クライアントは、外部ネットワークと内部ネットワークの間に設置されたアプリケーション・ゲートウェイに接続され、以下に説明する機器認証シーケンスが実行される。
【0093】
なお、クライアントとアプリケーション・ゲートウェイとの接続は、接続期間において複数のHTTPパケットの送受信が可能なHTTPキープアライブ(HTTP Keep Alive)の設定されたTCP接続とし、一接続シーケンスにおいて、以下に説明するSSL(Secure Socket Layer)ハンドシェイク処理、およびログイン処理を継続して実行することが好ましい。
【0094】
ステップS32において、クライアントと、アプリケーション・ゲートウェイ間において、SSL(Secure Socket Layer)ハンドシェイク処理を実行する。SSLハンドシェイクにより、クライアントと、アプリケーション・ゲートウェイは、暗号通信のための鍵として適用可能な秘密情報(セッション鍵)の共有を行い、その後の通信においては、共有した秘密情報(セッション鍵)を用いた暗号化データの送受信が可能となる。
【0095】
ステップS33において、クライアントと、アプリケーション・ゲートウェイ間において、機器認証処理としてのログイン(Login)処理を実行する。ログイン(Login)処理の詳細について、図6、図7を参照して説明する。
【0096】
正規なアクセス権限を有するクライアントは、前述した機器登録処理を実行しており、サーバID:GUID(S)およびクライアントID:GUID(C)をアプリケーション・ゲートウェイとともに共有する秘密情報(Secret)として保有する。なお、サーバID:GUID(S)は、図4を参照して説明した機器登録シーケンスにおいて、アプリケーション・ゲートウェイの生成したサーバIDである。
【0097】
機器認証は、クライアントと、アプリケーション・ゲートウェイの各々が、秘密情報(Secret)、すなわちサーバID:GUID(S)およびクライアントID:GUID(C)を共有していることを相互に確認する処理として実行される。アプリケーション・ゲートウェイは、ゲートウェイの記憶部に格納しているサーバID:GUID(S)およびクライアントID:GUID(C)と同じ値をクライアントが知っていることを確認し、この確認を条件としてクライアントを認証する。また、クライアントは、クライアントの記憶部に格納しているサーバID:GUID(S)およびクライアントID:GUID(C)と同じ値をゲートウェイが知っていることを確認し、この確認を条件としてゲートウェイを認証する。
【0098】
図6、図7において、Secret=GUID(C)‖GUID(S)である。なお、A‖BはAとBの連結を示す。
【0099】
まず、クライアントは、図6に示すステップS51において、Secret=GUID(C)‖GUID(S)に一方向性関数としてのハッシュ関数(h)を適用してダイジェスト値を下記式に従って計算する。
Digest=h(Secret)
さらに、クライアントは、乱数(Nonce1)を生成する。なお、ハッシュ関数としてはたとえばMD5等の関数が適用可能である。
【0100】
ステップS52において、クライアントは、生成したダイジェスト(Digest)および乱数(Nonce1)をアプリケーション・ゲートウェイに送信する。
【0101】
なお、クライアントとアプリケーション・ゲートウェイ間において既にコネクションが設定されセッションが継続している間において再度、認証を実行する場合、クライアントが、アプリケーション・ゲートウェイから受領済みのセッションIDを保有しているので、クライアントは、セッションIDについてもアプリケーション・ゲートウェイに送信する。初期接続の場合は、クライアントは、セッションIDを保持していないので生成したダイジェスト(Digest)および乱数(Nonce1)のみをアプリケーション・ゲートウェイに送信する。
【0102】
なお、図6、図7に示すログイン処理シーケンスにおいてクライアントとアプリケーション・ゲートウェイ間で送受信するデータは、図5に示すステップS32のSSLハンドシェイク処理において双方で共有している鍵を用いて暗号化される。クライアントとアプリケーション・ゲートウェイ間の通信は、インターネット等の外部ネットワークを介した通信として実行されるが、暗号化通信によるセキュリティが確保される。
【0103】
ステップS53において、アプリケーション・ゲートウェイは、クライアントからの受信データに含まれるDigest=h(Secret)を元にクライアントの特定を行う。アプリケーション・ゲートウェイは、図8に示すようなクライアント識別子とDigest=h(Secret)の対応テーブル(クライアント識別テーブル)を記憶部に格納している。
【0104】
なお、このクライアント識別テーブルは、アプリケーション・ゲートウェイが、図4を参照して説明した機器登録処理の際に、クライアントと共有した秘密情報(Secret)、すなわちサーバID:GUID(S)およびクライアントID:GUID(C)に基づくハッシュ値算出処理を実行して、クライアント識別子に対応付けたエントリを生成し記憶部に格納する。
【0105】
ステップS54において、アプリケーション・ゲートウェイはサーバ認証値(ServerAuth)を下記式に従って生成する。
ServerAuth=h(Secret‖Nonce1)
すなわち、Secret=GUID(C)‖GUID(S)と、クライアントから受信した乱数(Nonce1)との結合データに対するハッシュ値を求めて、これをサーバ(アプリケーション・ゲートウェイ)認証値(ServerAuth)とする。さらに、アプリケーション・ゲートウェイは、乱数(Nonce2)を生成する。
【0106】
さらに、アプリケーション・ゲートウェイは、クライアントとの接続が初期接続であり、ステップS52において、クライアントからセッションIDを受信していない場合は、コネクション識別情報としてのセッションIDを生成し、クライアント識別子と対応付けて保存する。
【0107】
アプリケーション・ゲートウェイは、コネクションが継続しているクライアントについて、図9に示すようにクライアント識別子とセッションIDを対応付けたクライアントセッションIDテーブルにエントリを設定して記憶部に格納する。
【0108】
アプリケーション・ゲートウェイが、外部ネットワークの複数のクライアントと接続している場合においても、アプリケーション・ゲートウェイは、図9に示すクライアントセッションIDテーブルに基づいて、セッションIDから個々のクライアントを判別することが可能となる。
【0109】
ステップS55において、アプリケーション・ゲートウェイは、クライアントに対してサーバ認証値[ServerAuth=h(Secret‖Nonce1)]と、生成乱数(Nonce2)を送信する。
【0110】
ステップS56において、クライアントは、アプリケーション・ゲートウェイから受信したサーバ認証値[ServerAuth=h(Secret‖Nonce1)]と、自デバイスで生成したServerAuth’=h(Secret‖Nonce1)とを比較照合する。両値が一致、すなわち、ServerAuth=ServerAuth’が成立すれば、クライアントは、通信を行っているアプリケーション・ゲートウェイが、自己の保有する秘密情報、すなわち、Secret=GUID(C)‖GUID(S)と同一の秘密情報を持つアプリケーション・ゲートウェイであり、機器登録シーケンスに基づいて秘密情報を共有した正当なアプリケーション・ゲートウェイであると判定する。
【0111】
一方、アプリケーション・ゲートウェイから受信したサーバ認証値[ServerAuth=h(Secret‖Nonce1)]と、自デバイスで生成したServerAuth’=h(Secret‖Nonce1)とが不一致の場合は、アプリケーション・ゲートウェイは、クライアントが記憶部に格納した秘密情報、すなわち、Secret=GUID(C)‖GUID(S)と同一の秘密情報を持たないデバイスであり、機器登録シーケンスに基づいて秘密情報を共有したアプリケーション・ゲートウェイではなく、不正なアプリケーション・ゲートウェイであると判定する。この場合、クライアントは、アプリケーション・ゲートウェイとの接続を切断する。
【0112】
正当なアプリケーション・ゲートウェイであると判定された場合は、次のステップ、すなわち、図7のステップS57に進む。
【0113】
図7のステップS57において、クライアントは、クライアント認証値(ClientAuth)を下記式に従って生成する。
ClientAuth=h(Secret‖Nonce2)
すなわち、Secret=GUID(C)‖GUID(S)と、アプリケーション・ゲートウェイから受信した乱数(Nonce2)との結合データに対するハッシュ値を求めて、これをクライアント認証値(ClientAuth)とする。
【0114】
ステップS58において、クライアントは、アプリケーション・ゲートウェイに対してクライアント認証値[ClientAuth=h(Secret‖Nonce2)]を送信する。
【0115】
ステップS59において、アプリケーション・ゲートウェイは、クライアントから受信したクライアント認証値[ClientAuth=h(Secret‖Nonce2)]と、自デバイスで生成したClientAuth’=h(Secret‖Nonce2)とを比較照合する。両値が一致、すなわちClientAuth=ClientAuth’が成立すれば、アプリケーション・ゲートウェイは、通信を行っているクライアントが、自己の保有する秘密情報、すなわち、Secret=GUID(C)‖GUID(S)と同一の秘密情報を持つクライアントであり、機器登録シーケンスに基づいて秘密情報を共有した正当なクライアントであると判定する。
【0116】
一方、クライアントから受信したクライアント認証値[ClientAuth=h(Secret‖Nonce2)]と、自デバイスで生成したClientAuth’=h(Secret‖Nonce2)とが不一致の場合は、クライアントは、アプリケーション・ゲートウェイが記憶部に格納した秘密情報、すなわち、Secret=GUID(C)‖GUID(S)と同一の秘密情報を持たないデバイスであり、機器登録シーケンスに基づいて秘密情報を共有したクライアントではなく、不正なクライアントであると判定する。
【0117】
ステップS60において、アプリケーション・ゲートウェイは、クライアントの認証結果[OK]または[NG]をクライアントに送信する。[OK]であれば、セッションIDも併せて送信する。
【0118】
ステップS61において、クライアントは、認証成立なら、アプリケーションゲートウェイから受信したセッションIDを記憶部に格納し、次の処理(例えば図5のステップS34のデバイスリスト取得処理)に移行する。認証不成立の場合には、アプリケーション・ゲートウェイとの接続を切断する。
【0119】
以上の処理により、外部ネットワークに接続されたクライアントと、ホームネットワーク等の内部ネットワークに接続されたアプリケーション・ゲートウェイとの認証処理が終了し、認証成立を条件として、クライアントは、ホームネットワーク等の内部ネットワークに接続されたサーバに関する情報取得、サーバに対するアクセス、サーバからのコンテンツ取得等の処理が可能となる。
【0120】
上述したように、機器認証処理は、クライアントと、アプリケーション・ゲートウェイの各々が、共有した秘密情報(Secret)、すなわち、サーバID:GUID(S)およびクライアントID:GUID(C)を共有していることを相互に確認する処理として実行される。
【0121】
すなわち、アプリケーション・ゲートウェイは、ゲートウェイの記憶部に格納しているサーバID:GUID(S)およびクライアントID:GUID(C)と同じ値をクライアントが知っていることを確認し、この確認を条件としてクライアントを認証する。また、クライアントは、クライアントの記憶部に格納しているサーバID:GUID(S)およびクライアントID:GUID(C)と同じ値をゲートウェイが知っていることを確認し、この確認を条件としてゲートウェイを認証する。このように、相互に認証処理を実行することになり、相互の信頼性が確保されたことを条件としてその後の処理が実行可能となる。
【0122】
(3)デバイスリストの取得処理
外部ネットワークに接続されたクライアントと、アプリケーション・ゲートウェイ間でのログイン処理が済み、両デバイスの信頼性が確認されると、クライアントは、ホームネットワーク等、アプリケーション・ゲートウェイの接続された内部ネットワーク内のサーバ情報を取得する処理に移行する。
【0123】
ホームネットワーク内に接続されたクライアントであれば、このデバイス情報取得処理は、先に図3を参照して説明したように、ネットワークサービスの検出プロトコルであるSSDP(Simple Service Discovery Protocol)を適用した処理として実行できる。すなわち、ネットワークを介したサーチリクエストをUDP(User Datagram Protocol)に従って、マルチキャスト送信(HTTPMU:HTTPMulticast)し、ホームネットワークに接続されたサーバから提供可能なサービスについての情報が含まれるOKレスポンスをUDPに従って受信することでサーバ情報を取得することができた。
【0124】
しかし、外部ネットワークに接続され、アプリケーション・ゲートウェイと通信を行っているクライアントは、上述と同様のUDPパケットのマルチキャスト送信を実行してホームネットワーク内のサーバ情報を取得することはできない。
【0125】
従って、新たな定義コマンドを用いて、この新定義コマンドをクライアントからアプリケーション・ゲートウェイに送信し、アプリケーション・ゲートウェイにおいて受信コマンドに基づいて、SSDP(Simple Service Discovery Protocol)を適用した処理に従ってホームネットワーク内においてサーバ発見処理を実行し、その結果としてアプリケーション・ゲートウェイが取得したサーバ情報をクライアントに対して送信する。
【0126】
図5に示すステップS34において、クライアントは、新定義コマンドとしてのデバイスリスト取得コマンド(Get Device List)をアプリケーション・ゲートウェイに送信し、アプリケーション・ゲートウェイにおいて受信コマンドに基づいて、SSDP(Simple Service Discovery Protocol)を適用した処理に従ってホームネットワーク内においてサーバ発見処理を実行し、サーバは、ステップS35において、SSDP処理結果として取得したサーバ情報、すなわちデバイスリストをクライアントに対して送信する。デバイスリストには、サーバに対するアクセス情報、サーバの提供可能なサービス情報が含まれる。
【0127】
以下、図10を参照して外部ネットワークに接続されたクライアントによるサーバ情報取得処理として実行されるデバイスリスト取得(Get Device List)処理シーケンスの詳細について説明する。
【0128】
図10において、クライアントは外部ネットワークに接続されたクライアントであり、サーバはホームネットワーク等の内部ネットワークに属し、アプリケーション・ゲートウェイが、両ネットワークの間に存在しているものとする。クライアントとアプリケーション・ゲートウェイ間では前述したログイン処理が実行済みであり、相互認証が成立し信頼性が保証されているものとする。
【0129】
ステップS71において、クライアントは、アプリケーション・ゲートウェイに対して新定義コマンド、すなわちサーバ情報としてのデバイスリスト取得[Get Device list]要求コマンドを送信する。
【0130】
アプリケーション・ゲートウェイは、デバイスリスト取得[Get Device list]要求コマンドを受信すると、クライアント確認処理を実行した後、ステップS72において、デバイスリストの取得処理を実行する。
【0131】
アプリケーション・ゲートウェイにおける処理の詳細について、図11を参照して説明する。
【0132】
ステップS101において、アプリケーション・ゲートウェイは、クライアントからデバイスリスト取得[Get Device list]要求コマンドを受信すると、まず、クライアントがログイン処理により認証が成立したクライアントであるか否かを判定する。図9を参照して説明したクライアント識別子とセッションIDを対応付けたクライアントセッションIDテーブル登録されたクライアントであれば、ログイン処理による認証の成立したクライアントであり、未登録のクライアントであれば、ログイン処理による認証の成立していないクライアントであるので、処理の続行を中止し、ステップS106においてエラーメッセージをクライアントに送信し、ステップS107でクライアントとのコネクションを切断し、処理を終了する。
【0133】
デバイスリスト取得[Get Device list]要求コマンドの送信クライアントが、クライアントセッションIDテーブル登録されたクライアントであれば、ログイン処理による認証の成立したクライアントであると判定し、ステップS103において、デバイスリスト取得処理を実行する。
【0134】
デバイスリストの取得は、UPnPのSSDP(Simple Service Discovery Protocol)を適用した処理として実行される。すなわち、アプリケーション・ゲートウェイは、アプリケーション・ゲートウェイの接続されたホームネットワーク等の内部ネットワークにおいてサーバ発見処理を実行し、各サーバからのサーバ情報を受信する。これは、ネットワークを介したサーチリクエストをUDP(User Datagram Protocol)に従って、アプリケーション・ゲートウェイからマルチキャスト送信(HTTPMU:HTTPMulticast)し、ホームネットワークに接続されたサーバから提供可能なサービスについての情報が含まれるOKレスポンスをUDPに従って受信する処理である。
【0135】
ステップS104において、アプリケーション・ゲートウェイは、デバイスリストの取得に成功したか否かを判定し、取得処理に失敗した場合は、ステップS108において、デバイスリストの取得エラーメッセージをクライアントに送信する。
【0136】
デバイスリストの取得に成功した場合は、ステップS105に進み、取得したデバイスリストをクライアントに送信する。アプリケーション・ゲートウェイは、ホームネットワーク内でUDPパケットにより各サーバから受信したサーバの提供可能なサービス情報をTCPパケットのペイロードとして格納したTCPパケットを生成してクライアントに送信する。なお、このデバイスリストの送信データは、前述のSSLハンドシェイク処理においてクライアントと共有した秘密情報(暗号鍵)によって暗号化されて送信される。デバイスリストには、サーバに対するアクセス情報、サーバの提供可能なサービス情報が含まれる。
【0137】
図10に示すステップS73において、アプリケーション・ゲートウェイは、ホームネットワーク内のサーバ1、サーバ2、サーバ3から受信したサービス提供可能であることを示すOKレスポンスと、サーバにおいて提供可能なサービスについての情報を含むデバイスリストを暗号化してクライアントに送信する。
【0138】
上記の処理により、各サーバからのOKレスポンスをアプリケーション・ゲートウェイを介して受信したクライアントは、前述のSSLハンドシェイク処理においてアプリケーション・ゲートウェイと共有した秘密情報(暗号鍵)によって受信データを復号してサーバリストを取得し、サーバに対するアクセス情報および提供可能なサービスについての情報を確認する。その後、これらの情報に基づいて、サーバにサービスを要求するサービス要求処理を実行する。例えば、サーバに対するコンテンツ送信要求等を実行し、コンテンツを取得してクライアントのディスプレイ、スピーカを介して出力する処理が可能となる。
【0139】
なお、アプリケーション・ゲートウェイがクライアントからデバイスリスト取得[Get Device list]要求コマンドを受信する以前に、既にサーバ情報を取得済みである場合は、アプリケーション・ゲートウェイは、クライアントからのデバイスリスト取得[Get Device list]要求コマンドの受信後、新たにサーバ発見処理を実行せず、蓄積済みのサーバ情報をクライアントに送信してもよい。
【0140】
このように、外部ネットワークに接続された正規なアクセス権限を有するクライアントは、UPnPにおいて適用されるSSDP(Simple Service Discovery Protocol)に基づくサーバ情報とまったく同じ情報をアプリケーション・ゲートウェイを介して受信できるので、ホームネットワーク内のクライアントと同様の環境でサーバに対するサービス要求を実行することが可能となる。
【0141】
デバイスリストを取得したクライアントは、図5に示すステップS36において、サーバに対するコンテンツ取得要求を行う。サーバに対するコンテンツ取得処理は、例えば取得したサーバ情報に含まれるコンテンツのURLを指定したHTTP(Hyper Text Transfer Protocol)GETメソッドリクエストの送信処理として実行可能である。
【0142】
ステップS37において、アプリケーション・ゲートウェイは、サーバに対するコンテンツ要求を中継してパケットをサーバに送信する。クライアントからパケットを受信したゲートウェイは、受信パケットのHOSTヘッダ値に書かれたデバイスのIPアドレスとポート番号に新たにコネクションを張り、パケット内容を変更することなく中継する。これにより、従来使用していたプロトコルを変更することなく、外部ネットワークに接続されたクライアントと内部ネットワークに接続されたサーバ間での通信およびサーバからクライアントに対するサービス提供が可能となる。
【0143】
サーバがコンテンツ要求を受信すると、サーバは、指定コンテンツを自己の記憶手段から取得して、クライアントに送信する。コンテンツは、アプリケーション・ゲートウェイを介してクライアントに送信(ステップS38,S39)される。クライアントは、サーバからの受信コンテンツをクライアントのディスプレイ、スピーカを介して再生することが可能となる。
【0144】
[アプリケーション・ゲートウェイ、およびクライアントの機能構成]
アプリケーション・ゲートウェイ、クライアント、およびサーバのハードウェア構成については、先に図2を参照して説明した通りであり、上述した各種の処理は、アプリケーション・ゲートウェイ、クライアント、およびサーバそれぞれの記憶部に格納されたプログラムに従って制御部としてのCPUが実行する。
【0145】
CPUによって実行される処理は、例えばアプリケーション・ゲートウェイでは、クライアントからの要求を入力し、入力情報の解析、解析結果に基づく機器登録処理、機器認証処理(ログイン処理)、SSDPに従ったサーバ発見処理、パケット中継処理、パケット生成、解析処理、さらに、機器登録処理におけるパスワード等、各種メッセージ出力、ユーザ入力情報の解析処理等である。クライアント側の処理としては、アプリケーション・ゲートウェイから受信する情報解析処理、アプリケーション・ゲートウェイと送受信するパケット生成、解析処理、機器登録処理、機器認証処理、メッセージ出力、ユーザ入力情報の解析処理、コンテンツ再生処理等である
【0146】
基本的にこれらの処理は、アプリケーション・ゲートウェイ、クライアント装置にそれぞれ備えられた制御部としてのCPUの制御の下に予め格納された処理プログラムに従って実行される。制御部としてのCPUが実行する処理および記憶部の格納データ中、本発明に関連する主要構成について、図12および図13を参照して説明する。図12は、アプリケーション・ゲートウェイの主要機能構成を説明するブロック図であり、図13は、クライアントの主要機能構成を説明するブロック図である。
【0147】
まず、図12のブロック図を参照してアプリケーション・ゲートウェイの機能構成について説明する。データ送受信処理部501は、クライアントおよびサーバに対するパケット送受信処理を実行する。データ送受信処理部501は、送信パケットの生成処理、受信パケットの解析処理を行う。パケットのアドレス設定、アドレス認識、データ部に対するデータ格納、データ部からのデータ取得処理などである。
【0148】
データ入力部502は、キーボード、スイッチ等の入力手段からの入力情報を各処理部に対して入力する。データ出力部503は、各種処理部の出力信号を外部の出力部としてのディスプレイやスピーカに対して出力する処理を実行する。
【0149】
機器登録処理部504は、クライアントからの機器登録要求に基づく一連の処理シーケンスを実行する。図4を参照して説明したシーケンス中、アプリケーション・ゲートウェイ側の処理をプログラム記憶部507に格納された機器登録処理プログラム521に従って実行する。なお、機器登録処理部504は、パスワード生成判定部511を有し、パスワードの生成および照合処理を実行する。
【0150】
機器認証処理部505は、外部ネットワークに接続されたクライアントからの接続処理要求を受信した場合の機器認証処理を実行する。図5〜図7を参照して説明した機器認証処理(ログイン処理)におけるアプリケーション・ゲートウェイ側の処理を、プログラム記憶部507に格納された機器認証処理プログラム522に従って実行する。また、暗号鍵共有処理としてのSSL(Secure Socket Layer)ハンドシェイク処理も実行する。
【0151】
サーバ発見処理実行部506は、クライアントからのデバイスリスト要求に基づいて、SSDPに従ったサーバ発見処理を実行して取得したサーバリストをクライアントに送信する処理を実行する。図10、図11を参照して説明したアプリケーション・ゲートウェイ側の処理を、プログラム記憶部507に格納されたサーバ発見処理実行プログラム523に従って実行する。
【0152】
プログラム記憶部507には、上記各処理部において実行するプログラム、すなわち、機器登録処理プログラム521、機器認証処理プログラム522、およびサーバ発見処理実行プログラム523が格納される。
【0153】
データ記憶部508には、クライアントとの機器登録処理において生成した共有秘密情報(Secret)531、すなわち、Secret=GUID(C)‖GUID(S)をハードウェアユニークID(Huid(S))で暗号化したデータ、および、クライアントとの機器登録処理において生成したクライアント識別テーブル532(図8参照)、および、クライアントとの相互認証が成立しクライアントとの信頼関係が構築されたセッションを、クライアント毎に識別するためのクライアントセッションIDテーブル533(図9参照)が格納される。
【0154】
なお、図12に示すブロック図は、アプリケーション・ゲートウェイの実行する様々な処理の中から本発明に関連する処理を実行するための機能を中心として示した機能ブロック図であり、アプリケーション・ゲートウェイは、この他にも各種の処理プログラムを保持し、各処理プログラムに従った様々な処理を実行する。
【0155】
次に、図13を参照してクライアントの機能構成について説明する。データ送受信処理部601は、アプリケーション・ゲートウェイおよびサーバに対するパケット送受信処理を実行する。データ送受信処理部601は、送信パケットの生成処理、受信パケットの解析処理を行う。パケットのアドレス設定、アドレス認識、データ部に対するデータ格納、データ部からのデータ取得処理などである。
【0156】
データ入力部602は、キーボード、スイッチ等の入力手段からの入力情報を各処理部に対して入力する。データ出力部603は、各種処理部の出力信号を外部の出力部としてのディスプレイやスピーカに対して出力する処理を実行する。
【0157】
機器登録処理部604は、アプリケーション・ゲートウェイ他のデバイス間で実行する機器登録処理シーケンスを実行する。図4を参照して説明した処理中、クライアント側の処理を、プログラム記憶部607に格納された機器登録処理プログラム621に従って実行する。
【0158】
機器認証処理部605は、外部ネットワークに接続されたクライアントが、アプリケーション・ゲートウェイに対して接続した際の機器認証処理を実行する。図5〜図7を参照して説明した機器認証処理(ログイン)におけるクライアント側の処理を、プログラム記憶部607に格納された機器認証処理プログラム622に従って実行する。また、暗号鍵共有処理としてのSSL(Secure Socket Layer)ハンドシェイク処理も実行する。
【0159】
デバイスリスト要求処理実行部606は、アプリケーション・ゲートウェイに対するデバイスリスト要求の発行およびデバイスリスト取得処理を実行する。図10を参照して説明した処理中、クライアント側の処理を、プログラム記憶部607に格納されたデバイスリスト要求処理実行プログラム623に従って実行する。
【0160】
プログラム記憶部607には、上記各処理部において実行するプログラム、すなわち、機器登録処理プログラム621、機器認証処理プログラム622、およびデバイスリスト要求処理実行プログラム623が格納される。
【0161】
データ記憶部608には、例えばアプリケーション・ゲートウェイとの機器登録処理において生成した共有秘密情報(Secret)631、すなわち、Secret=GUID(C)‖GUID(S)をハードウェア識別子(Huid(C))で暗号化したデータ、および、アプリケーション・ゲートウェイとの認証が成立した場合に、アプリケーション・ゲートウェイから取得するセッションID632が格納される。
【0162】
なお、図13に示すブロック図は、クライアントの実行する様々な処理の中から本発明に関連する処理を実行するための機能を中心として示した機能ブロック図であり、クライアントは、この他にも各種の処理プログラムを保持し、各処理プログラムに従った様々な処理を実行する。
【0163】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0164】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0165】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0166】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0167】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0168】
【発明の効果】
以上、説明したように、本発明によれば、外部ネットワークおよび内部ネットワークの境界に接続されたアプリケーション・ゲートウェイとしての情報処理装置が、内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信したことを条件として、内部ネットワークを介した接続サーバのサーバ情報取得処理を実行し、取得したサーバ情報に基づいてデバイスリストを生成し、外部ネットワークを介してクライアントに送信する構成としたので、外部ネットワークに接続されたクライアントによるホームネットワーク等、内部ネットワークに接続されたサーバ情報の効率的な取得が可能となる。
【0169】
さらに、本発明の構成によれば、クライアントとアプリケーション・ゲートウェイとしての情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵を用いてデバイスリストを暗号化してクライアントに送信する構成としたので、インターネット等の盗聴のおそれのある通信路を介したデータ通信が必要な場合であっても、セキュアなデバイスリスト送信が可能となる。
【0170】
さらに、本発明の構成によれば、内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行する構成としたので、サーバ情報取得処理は、UPnPの規定に従ったSSDP(Simple Service Discovery Protocol)を適用した処理として実行可能であり、また、外部ネットワークに接続されたクライアントに対するデバイスリスト送信は、安全性、確実性が高いTCPによる通信によるリスト送信が実現される。
【0171】
さらに、本発明の構成によれば、クライアントのアクセス権限の有無を判定する機器認証処理においてクライアントのアクセス権限が認められたことを条件としてデバイスリストの取得および送付を実行する構成としたので、アクセス権限を持たない不正クライアントからのデバイスリスト取得処理が防止される。
【図面の簡単な説明】
【図1】本発明の適用可能なネットワーク構成例を示す図である。
【図2】ネットワーク接続機器の構成例について説明する図である。
【図3】ホームネットワーク等の内部ネットワークに接続されたクライアントによるサーバ発見処理シーケンスを示す図である。
【図4】外部ネットワークに接続可能なクライアントの機器登録処理手順を説明するシーケンス図である。
【図5】外部ネットワークに接続されたクライアントによる認証および、コンテンツ取得処理手順を説明するシーケンス図である。
【図6】外部ネットワークに接続されたクライアントの認証処理手順を説明するシーケンス図(その1)である。
【図7】外部ネットワークに接続されたクライアントの認証処理手順を説明するシーケンス図(その2)である。
【図8】アプリケーション・ゲートウェイの生成するクライアント識別テーブルの構成例を示す図である。
【図9】アプリケーション・ゲートウェイの生成するクライアントセッションIDテーブルの構成例を示す図である。
【図10】外部ネットワークに接続されたクライアントからのデバイスリスト取得要求の処理シーケンスを示す図である。
【図11】外部ネットワークに接続されたクライアントからのデバイスリスト取得要求の受信に基づいてアプリケーション・ゲートウェイの実行する処理を説明するフロー図である。
【図12】アプリケーション・ゲートウェイの機能構成を説明するブロック図である。
【図13】クライアントの機能構成を説明するブロック図である。
【符号の説明】
100 ホームネットワーク
101,102 PC
103 ハードディスクレコーダ
104 TV
105 PDA
120 外部ネットワーク
121 PC
122 携帯端末
123 再生プレーヤ
201 CPU
202 ROM
203 RAM
204 HDD
205 バス
206 入出力インタフェース
207 入力部
208 出力部
209 通信部
210 ドライブ
211 リムーバブル記録媒体
301 クライアント
311,312,313 サーバ
501 データ送受信処理部
502 データ入力部
503 データ出力部
504 機器登録処理部
505 機器認証処理部
506 サーバ発見処理実行部
507 プログラム記憶部
508 データ記憶部
511 パスワード生成判定部
521 機器登録処理プログラム
522 機器認証処理プログラム
523 サーバ発見処理実行プログラム
531 共有秘密情報
532 クライアント識別テーブル
533 クライアントセッションIDテーブル
601 データ送受信処理部
602 データ入力部
603 データ出力部
604 機器登録処理部
605 機器認証処理部
606 デバイスリスト要求処理実行部
607 プログラム記憶部
608 データ記憶部
621 機器登録処理プログラム
622 機器認証処理プログラム
623 デバイスリスト要求処理実行プログラム
631 共有秘密情報
632 セッションID

Claims (23)

  1. 外部ネットワークおよび内部ネットワークの境界において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行する情報処理装置であり、
    外部ネットワークおよび内部ネットワークを介したデータ送受信を実行するデータ送受信部と、
    内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受領したことを条件として、内部ネットワークを介した接続サーバのサーバ情報取得処理を実行し、該サーバ情報取得処理に基づいて取得したサーバ情報に基づいて、外部ネットワークを介して前記クライアントに送信するデバイスリスト生成処理を実行するサーバ発見処理実行部と、
    を有することを特徴とする情報処理装置。
  2. 前記サーバ発見処理実行部は、
    内部ネットワークを介した接続サーバに関するサーバ情報取得処理をSSDP(Simple Service Discovery Protocol)を適用した処理として実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記サーバ発見処理実行部は、
    内部ネットワークを介した接続サーバのサーバ情報取得処理を、前記内部ネットワークを介したサーチリクエストのマルチキャスト送信により実行し、内部ネットワークに接続されたサーバからの受信情報に基づいて前記デバイスリストを生成する構成であることを特徴とする請求項1に記載の情報処理装置。
  4. 前記サーバ発見処理実行部は、
    内部ネットワークに接続された各サーバから受信するUDP(User Datagram Protocol)パケット格納情報に基づいて、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを生成する構成であることを特徴とする請求項1に記載の情報処理装置。
  5. 前記サーバ発見処理実行部は、
    外部ネットワークに接続されたクライアントに対して送信するデバイスリストを、前記クライアントと共有する鍵で暗号化する処理を実行し、
    デバイスリストを暗号化データとしてクライアントに送信する構成であることを特徴とする請求項1に記載の情報処理装置。
  6. 前記デバイスリストの暗号化に適用する鍵は、クライアントと情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵であることを特徴とする請求項5に記載の情報処理装置。
  7. 前記情報処理装置は、
    前記内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、前記外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  8. 前記サーバ発見処理実行部は、
    前記デバイスリスト生成処理において、内部ネットワークに接続されたサーバから受信する情報に基づいて、各サーバに対するアクセス情報、および各サーバの提供可能なサービス情報を含むデバイスリストを生成する処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  9. 前記情報処理装置は、さらに、
    クライアントのアクセス権限の有無を判定する機器認証処理部を有し、
    前記サーバ発見処理実行部は、
    前記機器認証処理部においてクライアントのアクセス権限が認められたことを条件として、サーバ発見処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  10. 前記情報処理装置は、
    クライアント識別子と、クライアントとのコネクション識別情報としてのセッションIDとを対応付けたクライアントセッションIDテーブルを有し、
    クライアントから受信するセッションIDに基づく前記クライアントセッションIDテーブルの検索によりクライアントの識別処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
  11. 前記情報処理装置は、
    外部ネットワークおよび内部ネットワークの境界に位置するアプリケーション・ゲートウェイとしての機能を有することを特徴とする請求項1に記載の情報処理装置。
  12. 前記情報処理装置は、
    外部ネットワークおよび内部ネットワークの境界に位置するリバースプロキシサーバとしての機能を有することを特徴とする請求項1に記載の情報処理装置。
  13. 外部ネットワークおよび内部ネットワークの境界に接続された情報処理装置において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行する情報処理方法であり、
    内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信する情報要求受信ステップと、
    内部ネットワークを介した接続サーバのサーバ情報取得処理を実行するサーバ情報取得処理ステップと、
    前記サーバ情報取得処理ステップにおいて取得したサーバ情報に基づいて前記クライアントに送信するデバイスリストを生成するデバイスリスト生成処理ステップと、
    前記デバイスリスト生成処理ステップにおいて生成したデバイスリストを外部ネットワークを介してクライアントに送信するデバイスリスト送信ステップと、
    を有することを特徴とする情報処理方法。
  14. 前記サーバ情報取得処理ステップは、
    内部ネットワークを介した接続サーバに関するサーバ情報取得処理をSSDP(Simple Service Discovery Protocol)を適用した処理として実行することを特徴とする請求項13に記載の情報処理方法。
  15. 前記サーバ情報取得処理ステップは、
    内部ネットワークを介した接続サーバのサーバ情報取得処理を、前記内部ネットワークを介したサーチリクエストのマルチキャスト送信により実行することを特徴とする請求項13に記載の情報処理方法。
  16. 前記サーバ情報取得処理ステップは、
    内部ネットワークに接続された各サーバから受信するUDP(User Datagram Protocol)パケット格納情報を受信し、
    前記デバイスリスト生成処理ステップは、
    前記UDP(User Datagram Protocol)パケット格納情報に基づいて、外部ネットワークに接続されたクライアントに対して送信するデバイスリストを生成することを特徴とする請求項13に記載の情報処理方法。
  17. 前記デバイスリスト送信ステップは、
    外部ネットワークに接続されたクライアントに対して送信するデバイスリストを、前記クライアントと共有する鍵で暗号化する処理を実行し、
    デバイスリストを暗号化データとしてクライアントに送信することを特徴とする請求項13に記載の情報処理方法。
  18. 前記デバイスリストの暗号化に適用する鍵は、クライアントと情報処理装置との間で実行するSSL(Secure Socket Layer)ハンドシェイク処理によって取得した暗号処理鍵であることを特徴とする請求項17に記載の情報処理方法。
  19. 前記サーバ情報取得処理ステップは、
    前記内部ネットワークを介した接続サーバのサーバ情報取得処理をUDP(User Datagram Protocol)に従って実行し、
    前記デバイスリスト送信ステップは、
    前記外部ネットワークを介したクライアントに対するデバイスリスト送信をTCP(Transmission Control Protocol)に従って実行することを特徴とする請求項13に記載の情報処理方法。
  20. 前記デバイスリスト生成処理ステップは、
    内部ネットワークに接続されたサーバから受信する情報に基づいて、各サーバに対するアクセス情報、および各サーバの提供可能なサービス情報を含むデバイスリストを生成する処理を実行することを特徴とする請求項13に記載の情報処理方法。
  21. 前記情報処理方法は、さらに、
    クライアントのアクセス権限の有無を判定する機器認証処理ステップを有し、
    前記サーバ情報取得処理ステップは、
    前記機器認証処理ステップにおいてクライアントのアクセス権限が認められたことを条件として実行することを特徴とする請求項13に記載の情報処理方法。
  22. 前記情報処理方法は、さらに、
    クライアント識別子と、クライアントとのコネクション識別情報としてのセッションIDとを対応付けたクライアントセッションIDテーブルに基づいて、クライアントから受信するセッションIDに従ったテーブル検索を実行し、クライアントの識別処理を実行するステップを有することを特徴とする請求項13に記載の情報処理方法。
  23. 外部ネットワークおよび内部ネットワークの境界に接続された情報処理装置において、外部ネットワーク接続クライアントからのデータ処理要求に従った処理を実行するコンピュータ・プログラムであり、
    内部ネットワークに接続されたサーバ情報の取得要求を外部ネットワーク接続クライアントから受信する情報要求受信ステップと、
    内部ネットワークを介した接続サーバのサーバ情報取得処理を実行するサーバ情報取得処理ステップと、
    前記サーバ情報取得処理ステップにおいて取得したサーバ情報に基づいて前記クライアントに送信するデバイスリストを生成するデバイスリスト生成処理ステップと、
    前記デバイスリスト生成処理ステップにおいて生成したデバイスリストを外部ネットワークを介してクライアントに送信するデバイスリスト送信ステップと、
    を有することを特徴とするコンピュータ・プログラム。
JP2003063019A 2003-03-10 2003-03-10 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム Pending JP2004272632A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2003063019A JP2004272632A (ja) 2003-03-10 2003-03-10 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
CN2004800038450A CN1748207B (zh) 2003-03-10 2004-03-05 信息处理装置、信息处理方法
US10/546,822 US7870261B2 (en) 2003-03-10 2004-03-05 Information processing device, an information processing method, and a computer program to securely connect clients on an external network to devices within an internal network
EP04717870A EP1603047A4 (en) 2003-03-10 2004-03-05 INFORMATION PROCESSING DEVICE AND METHOD, AND COMPUTER PROGRAM
KR1020057016744A KR101038612B1 (ko) 2003-03-10 2004-03-05 정보 처리 장치, 및 정보 처리 방법
PCT/JP2004/002903 WO2004081801A1 (ja) 2003-03-10 2004-03-05 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003063019A JP2004272632A (ja) 2003-03-10 2003-03-10 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Publications (1)

Publication Number Publication Date
JP2004272632A true JP2004272632A (ja) 2004-09-30

Family

ID=32984418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003063019A Pending JP2004272632A (ja) 2003-03-10 2003-03-10 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Country Status (6)

Country Link
US (1) US7870261B2 (ja)
EP (1) EP1603047A4 (ja)
JP (1) JP2004272632A (ja)
KR (1) KR101038612B1 (ja)
CN (1) CN1748207B (ja)
WO (1) WO2004081801A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006121122A1 (ja) * 2005-05-11 2006-11-16 Sony Corporation サーバ装置、サーバ装置の機器間接続方法、プログラム、および記録媒体
US7640248B2 (en) 2005-02-16 2009-12-29 Sony Corporation Content-information management system, content-information management apparatus, content-information management method, and computer program

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002039A1 (en) 1998-06-12 2002-01-03 Safi Qureshey Network-enabled audio device
US20050240758A1 (en) * 2004-03-31 2005-10-27 Lord Christopher J Controlling devices on an internal network from an external network
US9826046B2 (en) * 2004-05-05 2017-11-21 Black Hills Media, Llc Device discovery for digital entertainment network
US8028038B2 (en) 2004-05-05 2011-09-27 Dryden Enterprises, Llc Obtaining a playlist based on user profile matching
US8028323B2 (en) * 2004-05-05 2011-09-27 Dryden Enterprises, Llc Method and system for employing a first device to direct a networked audio device to obtain a media item
US7830826B2 (en) * 2004-07-01 2010-11-09 Nokia Corporation Multicast relay for mobile devices
US20060041596A1 (en) * 2004-08-19 2006-02-23 Vlad Stirbu Caching directory server data for controlling the disposition of multimedia data on a network
US7995978B2 (en) * 2004-10-27 2011-08-09 Nokia Corporation Controlling operation of a memory device
KR101075676B1 (ko) * 2004-11-20 2011-10-21 삼성전자주식회사 이동통신 단말기에 소프트웨어를 설치하는 장치 및 방법
FR2879385A1 (fr) * 2004-12-09 2006-06-16 Thomson Licensing Sa Methode d'agregation de decouverte de service dans un reseau local et appareil implementant la methode
US20060168126A1 (en) * 2004-12-21 2006-07-27 Jose Costa-Requena Aggregated content listing for ad-hoc peer to peer networks
US7881289B1 (en) * 2004-12-22 2011-02-01 At&T Intellectual Property Ii, L.P. Method and apparatus for porting telephone numbers of endpoint devices
US9438683B2 (en) * 2005-04-04 2016-09-06 Aol Inc. Router-host logging
US8316416B2 (en) * 2005-04-04 2012-11-20 Research In Motion Limited Securely using a display to exchange information
CN101167302B (zh) 2005-04-18 2013-03-06 捷讯研究有限公司 无线设备和应用网关之间的安全消息传送的系统及方法
JP2007060066A (ja) * 2005-08-23 2007-03-08 Toshiba Corp コンテンツデータ配信方法、並びにコンテンツデータ配信システム及びこれに用いられる携帯端末。
US7698061B2 (en) 2005-09-23 2010-04-13 Scenera Technologies, Llc System and method for selecting and presenting a route to a user
KR100694155B1 (ko) * 2005-10-12 2007-03-12 삼성전자주식회사 웹서비스를 통해 홈 네트워크 기기의 서비스를 홈 네트워크외부에 제공하는 방법 및 장치
EP1955489A2 (en) * 2005-12-02 2008-08-13 Nokia Corporation System and method for using web syndication protocols as an out-of-band upnp service discovery system
US7783771B2 (en) * 2005-12-20 2010-08-24 Sony Ericsson Mobile Communications Ab Network communication device for universal plug and play and internet multimedia subsystems networks
KR100739781B1 (ko) * 2005-12-27 2007-07-13 삼성전자주식회사 무선 디바이스 그룹 별로 메시지를 전송하는 방법 및 장치
US7330882B2 (en) * 2005-12-28 2008-02-12 Matsushita Electric Works, Ltd. Systems and methods for discovering and interacting with services
US20070254634A1 (en) * 2006-04-27 2007-11-01 Jose Costa-Requena Configuring a local network device using a wireless provider network
US8005223B2 (en) 2006-05-12 2011-08-23 Research In Motion Limited System and method for exchanging encryption keys between a mobile device and a peripheral device
US8670566B2 (en) * 2006-05-12 2014-03-11 Blackberry Limited System and method for exchanging encryption keys between a mobile device and a peripheral output device
US20090129301A1 (en) * 2007-11-15 2009-05-21 Nokia Corporation And Recordation Configuring a user device to remotely access a private network
US8270937B2 (en) * 2007-12-17 2012-09-18 Kota Enterprises, Llc Low-threat response service for mobile device users
US8010601B2 (en) * 2007-12-21 2011-08-30 Waldeck Technology, Llc Contiguous location-based user networks
US8024431B2 (en) 2007-12-21 2011-09-20 Domingo Enterprises, Llc System and method for identifying transient friends
US8725740B2 (en) 2008-03-24 2014-05-13 Napo Enterprises, Llc Active playlist having dynamic media item groups
US8977710B2 (en) 2008-06-18 2015-03-10 Qualcomm, Incorporated Remote selection and authorization of collected media transmission
KR101013104B1 (ko) * 2008-06-18 2011-02-14 은재형 애플리케이션의 수정 및 변경 없는 오픈망 및 폐쇄망용 스토리지 기반 실시간 중계 인터페이스 시스템
US7948887B2 (en) 2008-06-24 2011-05-24 Microsoft Corporation Network bandwidth measurement
US8307093B2 (en) * 2008-06-25 2012-11-06 Microsoft Corporation Remote access between UPnP devices
US20100017261A1 (en) * 2008-07-17 2010-01-21 Kota Enterprises, Llc Expert system and service for location-based content influence for narrowcast
US8504073B2 (en) 2008-08-12 2013-08-06 Teaneck Enterprises, Llc Customized content delivery through the use of arbitrary geographic shapes
US7996496B2 (en) * 2008-08-29 2011-08-09 Sony Ericsson Mobile Communications Ab Remote user interface in multiphone environment
CN101729496B (zh) * 2008-10-10 2012-10-24 纬创资通股份有限公司 通用即插即用控制系统及其应用
US7921223B2 (en) 2008-12-08 2011-04-05 Lemi Technology, Llc Protected distribution and location based aggregation service
US20120047087A1 (en) 2009-03-25 2012-02-23 Waldeck Technology Llc Smart encounters
US9203831B2 (en) * 2009-11-25 2015-12-01 Red Hat, Inc. SSL client authentication
JP5528124B2 (ja) * 2010-01-06 2014-06-25 キヤノン株式会社 デバイス検索装置、デバイス検索方法並びにプログラム
US8925042B2 (en) 2010-04-30 2014-12-30 T-Mobile Usa, Inc. Connecting devices to an existing secure wireless network
US8340637B2 (en) * 2010-04-30 2012-12-25 T-Mobile Usa, Inc. Securely establishing presence on telecommunication devices
US8527417B2 (en) * 2010-07-12 2013-09-03 Mastercard International Incorporated Methods and systems for authenticating an identity of a payer in a financial transaction
CN101923616A (zh) * 2010-08-03 2010-12-22 鸿富锦精密工业(深圳)有限公司 版权保护中的服务提供装置、用户终端及版权保护方法
CN102724050A (zh) * 2011-03-30 2012-10-10 华为终端有限公司 设备管理系统中对网关进行初始化的方法及装置
CN103051593B (zh) * 2011-10-12 2016-09-14 国民技术股份有限公司 一种数据安全摆渡的方法及系统
CN104813604B (zh) * 2012-11-28 2017-10-31 索尼公司 使用冗余数据接收广播系统中的数据的接收器
WO2014082997A1 (en) * 2012-11-28 2014-06-05 Sony Corporation Receiver for receiving data in a broadcast system
WO2014082933A1 (en) 2012-11-28 2014-06-05 Sony Corporation Control device and method for use in a broadcast system
KR101906449B1 (ko) * 2012-12-10 2018-10-10 삼성전자주식회사 홈 네트워크 시스템에서 홈 디바이스 및 외부 서버간의 접속 제어 방법 및 장치
US9729514B2 (en) * 2013-03-22 2017-08-08 Robert K Lemaster Method and system of a secure access gateway
NL2010823C2 (en) * 2013-05-17 2014-11-24 Insite Innovations And Properties B V System and method for processing web-browsing information.
US20150281376A1 (en) * 2014-04-01 2015-10-01 Palo Alto Research Center Incorporated System and method for device registration and discovery in content-centric networks
US9628850B2 (en) 2014-05-30 2017-04-18 Lg Electronics Inc. Server, home device access server, terminal, and home device remote control system including the same
US10069814B2 (en) * 2014-10-28 2018-09-04 Ca, Inc. Single sign on across multiple devices using a unique machine identification
JP6223380B2 (ja) * 2015-04-03 2017-11-01 三菱電機ビルテクノサービス株式会社 中継装置及びプログラム
JP6249995B2 (ja) * 2015-06-30 2017-12-20 キヤノン株式会社 情報処理装置、情報処理システム、情報処理装置の制御方法、及び、プログラム
KR102442428B1 (ko) 2015-09-24 2022-09-14 삼성전자주식회사 다바이스의 액세스 토큰 발급 방법 및 이를 지원하는 장치
US10523635B2 (en) * 2016-06-17 2019-12-31 Assured Information Security, Inc. Filtering outbound network traffic
JP6813773B2 (ja) * 2016-10-17 2021-01-13 富士通株式会社 データ収集プログラム、データ収集システム及びデータ収集方法
US11012528B2 (en) * 2018-06-29 2021-05-18 Sling Media Pvt Ltd Locating network servers using media access control (MAC) addresses
US11863673B1 (en) * 2019-12-17 2024-01-02 APPDIRECT, Inc. White-labeled data connections for multi-tenant cloud platforms
US11671419B2 (en) 2020-09-30 2023-06-06 APPDIRECT, Inc. Multi-cloud data connections for white-labeled platforms

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1058422A1 (en) * 1999-06-02 2000-12-06 THOMSON multimedia Methods for bridging a HAVi sub-network and a UPnP sub-network and device for implementing said methods
US7047408B1 (en) * 2000-03-17 2006-05-16 Lucent Technologies Inc. Secure mutual network authentication and key exchange protocol
US7149803B2 (en) * 2000-06-08 2006-12-12 At&T Corp. Method for content distribution in a network supporting a security protocol
AU2000256423A1 (en) * 2000-06-28 2002-01-08 Microsoft Corporation Remoting general purpose operating system services via a peer networking device control protocol
JP2002044765A (ja) 2000-07-28 2002-02-08 Matsushita Electric Ind Co Ltd 遠隔制御システムとゲートウェイ装置
US7080147B2 (en) * 2000-09-04 2006-07-18 International Business Machines Corporation Computer network system, computer system, method for communication between computer systems, method for measuring computer system performance, and storage medium
JP2002094531A (ja) * 2000-09-20 2002-03-29 Casio Comput Co Ltd ネットワーク上のデバイス情報取得方法、ネットワーク上のデバイス情報取得装置及び記録媒体
US6924727B2 (en) * 2000-09-27 2005-08-02 Ntt Docomo, Inc. Method for remote control of home-located electronic devices and a management facility
JP2002149516A (ja) * 2000-11-10 2002-05-24 Sharp Corp 情報処理システムおよび方法、サービス情報収集機器ならびに情報処理方法のプログラムを記録したコンピュータ読取可能な記録媒体
JP2002186069A (ja) 2000-12-12 2002-06-28 Matsushita Electric Ind Co Ltd 機器制御システムおよび機器制御契約方法
JP2002229878A (ja) * 2001-01-31 2002-08-16 Canon Inc リモートコピーシステム及びマルチファンクションシステム
JP2002247668A (ja) 2001-02-16 2002-08-30 Tomoo Sumi 制御装置および制御プログラム受信方法
JP2002252882A (ja) * 2001-02-23 2002-09-06 Sanyo Electric Co Ltd リモート操作システム
US7065587B2 (en) 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7350076B1 (en) * 2001-05-16 2008-03-25 3Com Corporation Scheme for device and user authentication with key distribution in a wireless network
JP3661936B2 (ja) * 2001-05-24 2005-06-22 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP2003030072A (ja) * 2001-07-18 2003-01-31 Matsushita Electric Ind Co Ltd 遠隔制御代理方法および遠隔制御代理装置
US7831655B2 (en) * 2001-10-18 2010-11-09 Bea Systems, Inc. System and method for implementing a service adapter
US20030093680A1 (en) * 2001-11-13 2003-05-15 International Business Machines Corporation Methods, apparatus and computer programs performing a mutual challenge-response authentication protocol using operating system capabilities
US20030135507A1 (en) * 2002-01-17 2003-07-17 International Business Machines Corporation System and method for managing and securing meta data using central repository
JP4487490B2 (ja) * 2003-03-10 2010-06-23 ソニー株式会社 情報処理装置、およびアクセス制御処理方法、情報処理方法、並びにコンピュータ・プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7640248B2 (en) 2005-02-16 2009-12-29 Sony Corporation Content-information management system, content-information management apparatus, content-information management method, and computer program
WO2006121122A1 (ja) * 2005-05-11 2006-11-16 Sony Corporation サーバ装置、サーバ装置の機器間接続方法、プログラム、および記録媒体
US7856504B2 (en) 2005-05-11 2010-12-21 Sony Corporation Server device, inter-server device connection method, program, and recording medium

Also Published As

Publication number Publication date
US20060168264A1 (en) 2006-07-27
EP1603047A1 (en) 2005-12-07
CN1748207B (zh) 2010-05-26
US7870261B2 (en) 2011-01-11
CN1748207A (zh) 2006-03-15
KR20050117543A (ko) 2005-12-14
KR101038612B1 (ko) 2011-06-03
WO2004081801A1 (ja) 2004-09-23
EP1603047A4 (en) 2011-06-15

Similar Documents

Publication Publication Date Title
JP4487490B2 (ja) 情報処理装置、およびアクセス制御処理方法、情報処理方法、並びにコンピュータ・プログラム
KR101038612B1 (ko) 정보 처리 장치, 및 정보 처리 방법
JP3826100B2 (ja) 通信中継装置、通信システム及び通信制御プログラム
US7882356B2 (en) UPnP authentication and authorization
CA2774648C (en) Modular device authentication framework
KR100593768B1 (ko) 콘텐츠 송신 장치, 콘텐츠 수신 장치 및 콘텐츠 전송 방법
JP3800198B2 (ja) 情報処理装置、およびアクセス制御処理方法、並びにコンピュータ・プログラム
JP4081724B1 (ja) クライアント端末、中継サーバ、通信システム、及び通信方法
JP2004152249A (ja) 機器認証装置、機器認証方法、および情報処理装置、情報処理方法、並びにコンピュータ・プログラム
US20060265735A1 (en) Content transmission apparatus, content reception apparatus, content transmission method and content reception method
JP2004173148A (ja) 情報処理装置、サーバクライアントシステム、および方法、並びにコンピュータ・プログラム
US10218681B2 (en) Home network controlling apparatus and method to obtain encrypted control information
JP2005303449A (ja) 無線通信システム、アクセスポイント、端末および無線通信方法
JP6056970B2 (ja) 情報処理装置、端末機、情報処理システム及び情報処理方法
Kangas Authentication and authorization in universal plug and play home networks
Pehkonen et al. Secure universal plug and play network
JP4336874B2 (ja) 構成情報提供システム、構成情報管理サーバ、アクセス認証サーバ、クライアント及びプログラム
KR100412356B1 (ko) 지니 네트워크에서 사용자 인증을 할 수 있는 디스커버리프로토콜, 그 실행 장치, 그 데이터 구조 및 관리자 인증방법
Lucenius et al. Security technologies in home and wireless networking environments
Primc Naslavljanje overovljenih identitet
JP2003309548A (ja) 通信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081010

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081111