KR20050117543A - 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램 - Google Patents

정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20050117543A
KR20050117543A KR1020057016744A KR20057016744A KR20050117543A KR 20050117543 A KR20050117543 A KR 20050117543A KR 1020057016744 A KR1020057016744 A KR 1020057016744A KR 20057016744 A KR20057016744 A KR 20057016744A KR 20050117543 A KR20050117543 A KR 20050117543A
Authority
KR
South Korea
Prior art keywords
client
server
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.)
Granted
Application number
KR1020057016744A
Other languages
English (en)
Other versions
KR101038612B1 (ko
Inventor
겐스께 바바
야스유끼 기노시따
요이찌 고보리
게이고 이하라
Original Assignee
소니 가부시끼 가이샤
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 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20050117543A publication Critical patent/KR20050117543A/ko
Application granted granted Critical
Publication of KR101038612B1 publication Critical patent/KR101038612B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00—Digital computers in general; Data processing equipment in general
    • G06F15/16—Combinations 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
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00—Data switching networks
    • H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803—Home automation networks
    • H04L12/2807—Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809—Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

외부 네트워크에 접속된 클라이언트에 의한 내부 네트워크 접속 서버의 효율적인 정보 취득을 가능하게 한 장치 및 방법을 제공한다. 외부 네트워크 및 내부 네트워크의 경계에 접속된 어플리케이션 게이트웨이로서의 정보 처리 장치가, 내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신한 것을 조건으로 하여, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하고, 취득한 서버 정보에 기초하여 디바이스 리스트를 생성하여, 외부 네트워크를 통하여 클라이언트에 송신하는 구성으로 하였다. 본 구성에 의해, 외부 네트워크에 접속된 클라이언트에 의한 내부 네트워크 접속 서버의 정보 취득을 효율적으로 실행할 수 있다.

Description

정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램{INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND COMPUTER PROGRAM}
본 발명은, 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램에 관한 것이다. 좀 더 상세히는, 홈 네트워크 등의 내부 네트워크에 접속된 서버 등의 정보 처리 장치에 관한 정보의 취득을 외부 네트워크에 접속된 클라이언트로부터 게이트웨이를 중개로 하여 실행하는 것을 가능하게 한 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램에 관한 것이다.
최근의 데이터 통신 네트워크의 보급에 수반하여, 가정 내에서도 가전 기기나 컴퓨터, 그 밖의 주변 기기를 네트워크에 접속하여, 각 기기 사이에서의 통신을 가능하게 한, 소위 홈 네트워크가 침투되고 있다. 홈 네트워크는, 네트워크 접속 기기 사이에서 통신을 행함으로써 각 기기의 데이터 처리 기능을 공유하거나, 기기 사이에서 콘텐츠의 송수신을 행하는 등, 유저에게 편리성·쾌적성을 제공하는 것으로, 앞으로, 점점 더 보급될 것으로 예측된다.
이러한 홈 네트워크의 구성에 적합한 프로토콜로서 유니버설 플러그 앤드 플레이(UPnP : Universal Plug and Play)가 알려져 있다. 유니버설 플러그 앤드 플레이(UPnP)는, 복잡한 조작을 수반하지 않고 용이하게 네트워크를 구축하는 것이 가능하고, 곤란한 조작이나 설정을 수반하지 않고 네트워크에 접속된 기기에서 각 접속 기기의 제공 서비스를 수령 가능하게 하는 것이다. 또한, UPnP는 디바이스 상의 OS(오퍼레이팅 시스템)에도 의존하지 않고, 용이하게 기기를 추가할 수 있다고 하는 이점을 갖는다.
UPnP는, 접속 기기 사이에서, XML(eXtensible Markup Language)에 준거한 정의 파일을 교환하여, 기기 사이에서 상호 인식을 행한다. UPnP의 처리의 개요는, 이하와 같다.
(1) IP 어드레스 등의 자기 디바이스 ID를 취득하는 어드레싱 처리.
(2) 네트워크 상의 각 디바이스의 검색을 행하여, 각 디바이스로부터 응답을 수신하여, 응답에 포함되는 디바이스 종별, 기능 등의 정보를 취득하는 디스커버리 처리.
(3) 디스커버리 처리에서 취득한 정보에 기초하여, 각 디바이스에 서비스를 요구하는 서비스 요구 처리.
상기 처리 수순을 행함으로써, 네트워크에 접속된 기기를 적용한 서비스의 제공 및 수령이 가능하게 된다. 네트워크에 새롭게 접속되는 기기는, 상기한 어드레싱 처리에 의해 디바이스 ID를 취득하고, 디스커버리 처리에 의해 네트워크에 접속된 다른 디바이스의 정보를 취득하고, 취득 정보에 기초하여 다른 기기에 서비스의 요구가 가능하게 된다.
그러나, 한편, 이러한 종류의 네트워크에서는, 부정 액세스에 대한 대책을 고려하는 것도 필요하게 된다. 홈 네트워크 내의 기기, 예를 들면 서버 등에는 사적인 콘텐츠나 유료 콘텐츠 등의 저작권 관리가 요구되는 콘텐츠가 저장되는 경우도 많다.
이러한 홈 네트워크 내의 서버에 저장된 콘텐츠는, 네트워크에 접속된 다른 기기로부터 액세스 가능하게 된다. 예를 들면, 전술한 간이한 기기 접속 구성인 UPnP 접속을 실행한 기기에 의해 콘텐츠를 취득하는 것이 가능하게 된다. 콘텐츠가 영화 데이터나 음악 데이터인 경우, 네트워크 접속 기기로서 TV, 혹은 플레이어 등을 접속하면, 영화를 시청하거나, 음악을 듣거나 하는 것이 가능하게 된다.
콘텐츠의 이용권을 갖는 유저가 접속한 기기에 의한 액세스는 허용되어도 되지만, 전술한 바와 같은 네트워크 구성에서는, 콘텐츠 등의 이용권을 갖지 않는 유저가 네트워크에 들어가는 것도 용이하다. 예를 들면 무선 LAN으로 구성된 네트워크인 경우에는 집 안에 있는 서버에 대하여, 옥외, 혹은 이웃 집 등으로부터 통신 기기를 이용하여 부정하게 네트워크에 참가하여, 콘텐츠의 착취를 행하는 사태도 발생할 수 있다. 이러한 부정한 액세스를 허용하는 구성은, 비밀 누설을 발생시키는 것으로도 되고, 또한 콘텐츠 저작권 관리의 관점으로부터도 중요한 문제로 된다.
전술한 바와 같은 부정 액세스를 배제하기 위해, 예를 들면 서버에 액세스를 허용하는 클라이언트의 리스트를 유지시켜, 클라이언트로부터 서버에 대한 액세스 요구 시에, 서버로 리스트와의 대조 처리를 실행하여 부정 액세스를 배제하는 구성이 제안되고 있다.
예를 들면, 네트워크 접속 기기에 고유한 물리 어드레스인 MAC(Media Access Control) 어드레스를, 액세스 허용 기기 리스트로서 설정하는 MAC 어드레스 필터링이 알려져 있다. MAC 어드레스 필터링이란, 홈 네트워크 등의 내부 네트워크(서브넷)와 외부 네트워크를 격리하는 라우터 혹은 게이트웨이에, 미리 액세스를 허용하는 MAC 어드레스를 등록해 놓고, 수신한 패킷의 MAC 어드레스와 등록된 MAC 어드레스를 대조하여, 등록되어 있지 않은 MAC 어드레스를 갖는 기기로부터의 액세스를 거부하는 것이다. 또한, 이러한 종류의 기술에 대해서는, 예를 들면 특허 문헌1(특허 공개평10-271154호 공보)에 개시되어 있다.
그러나, 액세스 제한을 하기 위한 MAC 어드레스의 등록 처리를 행하기 위해서는, 네트워크에 접속되는 기기의 모든 MAC 어드레스를 조사하는 것이 필요하고, 취득한 모든 기기의 MAC 어드레스(48bit)를 오퍼레이터가 입력하여 리스트를 작성한다고 하는 처리가 필요하게 된다. 이러한 처리는, 예를 들면 특정한 회사, 단체 등, 시큐어한 환경을 구축하는 것이 요구되는 경우에는, 소정의 관리자 아래에서 행하는 것도 가능하지만, 예를 들면 일반 가정에 설정되는 홈 네트워크 환경에서, 일반 유저에게 MAC 리스트의 생성, 저장을 요구하는 것은 현실적이지 않다.
홈 네트워크에서는, 새로운 기기의 추가 처리가 행하여지는 것은 빈번하게 발생하는 것으로, 이러한 기기 추가 처리 시에, 유저가 순차적으로 기기의 MAC 어드레스를 조사하여 등록 처리를 해야한다면, 네트워크 구축의 용이성을 저해하게 된다.
한편, 일반 가정에서도, PC뿐만 아니라, 가전 기기도 포함한 네트워크 구성이 구축되어, 어떠한 기기로부터라도 네트워크에 액세스 가능한 소위 유비쿼터스 환경이 구축되고, 또한 무선 LAN 등의 보급에 의해, 통신 가능한 기기가 외부로부터 무선 LAN에 침입되는 것도 용이해지고 있다. 이러한 네트워크 환경에서, 네트워크 접속 기기에 대한 부정 액세스도 보다 발생하기 쉽게 되어 있어, 부정한 액세스에 의한 비밀 정보의 착취, 콘텐츠의 부정 판독 등이 실행될 가능성은 점점 더 높아지고 있다. 이러한 상황에서, 일반 유저에게 부담을 강요하지 않고, 적절한 액세스 제어 구성을 용이하게 실현하는 것이 요구되고 있다.
또한, 액세스 권한을 정확하게 판정했다고 해도, 외부 네트워크에 접속된 클라이언트가, 홈 네트워크에 접속된 내부 네트워크의 각 서버의 정보를 취득하기 위해서는, 예를 들면 각 서버에 개별로 순차적으로 액세스하여 정보를 취득하는 것이 필요하게 된다.
내부 네트워크에 접속된 클라이언트이면, 전술한 UPnP에 따른 서치 처리, 즉 UDP(User Datagram Protocol)에 따라, 서치 리퀘스트을 멀티캐스트 송신(HTTPMU : HTTP Multicast)함으로써 일괄하여 복수 서버로부터의 정보 취득이 가능해져, 용이하게 서버 정보를 취득할 수 있다.
그러나, 외부 네트워크에 접속된 클라이언트가, 상기한 바와 마찬가지의 UDP 패킷의 멀티캐스트 송신에 의해, 특정한 내부 네트워크에 접속된 서버의 정보를 취득하는 것은 곤란하다. 또한, 인터넷 등의 외부 네트워크에 서버 정보를 그대로 송신하는 것은 도청 등의 위험을 수반하게 된다.
<발명의 개시>
본 발명은, 전술한 문제점을 감안하여 이루어진 것으로, 홈 네트워크 등의 내부 네트워크에 접속된 서버 등의 장치의 정보 취득을, 외부 네트워크에 접속된 클라이언트로부터 용이하고 또한 시큐어하게 실행하는 것을 가능하게 한 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
본 발명의 제1 측면은,
외부 네트워크 및 내부 네트워크의 경계에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 정보 처리 장치로서,
외부 네트워크 및 내부 네트워크를 통한 데이터 송수신을 실행하는 데이터 송수신부와,
내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수령한 것을 조건으로 하여, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하고, 상기 서버 정보 취득 처리에 기초하여 취득한 서버 정보에 기초하여, 외부 네트워크를 통하여 상기 클라이언트에 송신하는 디바이스 리스트 생성 처리를 실행하는 서버 발견 처리 실행부
를 갖는 것을 특징으로 하는 정보 처리 장치에 있다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 서버 발견 처리 실행부는, 내부 네트워크를 통한 접속 서버에 관한 서버 정보 취득 처리를 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 서버 발견 처리 실행부는, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를, 상기 내부 네트워크를 통한 서치 리퀘스트의 멀티캐스트 송신에 의해 실행하고, 내부 네트워크에 접속된 서버로부터의 수신 정보에 기초하여 상기 디바이스 리스트를 생성하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 서버 발견 처리 실행부는, 내부 네트워크에 접속된 각 서버로부터 수신하는 UDP(User Datagram Protocol) 패킷 저장 정보에 기초하여, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를 생성하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 서버 발견 처리 실행부는, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를, 상기 클라이언트와 공유하는 키로 암호화하는 처리를 실행하고, 디바이스 리스트를 암호화 데이터로서 클라이언트에 송신하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 디바이스 리스트의 암호화에 적용하는 키는, 클라이언트와 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 상기 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고, 상기 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 서버 발견 처리 실행부는, 상기 디바이스 리스트 생성 처리에서, 내부 네트워크에 접속된 서버로부터 수신하는 정보에 기초하여, 각 서버에 대한 액세스 정보, 및 각 서버가 제공 가능한 서비스 정보를 포함하는 디바이스 리스트를 생성하는 처리를 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리부를 더 갖고, 상기 서버 발견 처리 실행부는, 상기 기기 인증 처리부에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여, 서버 발견 처리를 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 클라이언트 식별자와, 클라이언트와의 커넥션 식별 정보로서의 세션 ID를 대응시킨 클라이언트 세션 ID 테이블을 갖고, 클라이언트로부터 수신하는 세션 ID에 기초하는 상기 클라이언트 세션 ID 테이블의 검색에 의해 클라이언트의 식별 처리를 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 외부 네트워크 및 내부 네트워크의 경계에 위치하는 어플리케이션 게이트웨이로서의 기능을 갖는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 외부 네트워크 및 내부 네트워크의 경계에 위치하는 리버스 프록시 서버로서의 기능을 갖는 것을 특징으로 한다.
또한, 본 발명의 제2 측면은,
외부 네트워크 및 내부 네트워크의 경계에 접속된 정보 처리 장치에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 정보 처리 방법으로서,
내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신하는 정보 요구 수신 단계와,
내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하는 서버 정보 취득 처리 단계와,
상기 서버 정보 취득 처리 단계에서 취득한 서버 정보에 기초하여 상기 클라이언트에 송신하는 디바이스 리스트를 생성하는 디바이스 리스트 생성 처리 단계와,
상기 디바이스 리스트 생성 처리 단계에서 생성한 디바이스 리스트를 외부 네트워크를 통하여 클라이언트에 송신하는 디바이스 리스트 송신 단계
를 갖는 것을 특징으로 하는 정보 처리 방법에 있다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 서버 정보 취득 처리 단계는, 내부 네트워크를 통한 접속 서버에 관한 서버 정보 취득 처리를 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 서버 정보 취득 처리 단계는, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를, 상기 내부 네트워크를 통한 서치 리퀘스트의 멀티캐스트 송신에 의해 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 서버 정보 취득 처리 단계는, 내부 네트워크에 접속된 각 서버로부터 수신하는 UDP(User Datagram Protocol) 패킷 저장 정보를 수신하고, 상기 디바이스 리스트 생성 처리 단계는, 상기 UDP(User Datagram Protocol) 패킷 저장 정보에 기초하여, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를 생성하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 디바이스 리스트 송신 단계는, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를, 상기 클라이언트와 공유하는 키로 암호화하는 처리를 실행하여, 디바이스 리스트를 암호화 데이터로서 클라이언트에 송신하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 디바이스 리스트의 암호화에 적용하는 키는, 클라이언트와 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 서버 정보 취득 처리 단계는, 상기 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고, 상기 디바이스 리스트 송신 단계는, 상기 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 디바이스 리스트 생성 처리 단계는, 내부 네트워크에 접속된 서버로부터 수신하는 정보에 기초하여, 각 서버에 대한 액세스 정보, 및 각 서버가 제공 가능한 서비스 정보를 포함하는 디바이스 리스트를 생성하는 처리를 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리 단계를 더 갖고, 상기 서버 정보 취득 처리 단계는, 상기 기기 인증 처리 단계에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 클라이언트 식별자와, 클라이언트와의 커넥션 식별 정보로서의 세션 ID를 대응시킨 클라이언트 세션 ID 테이블에 기초하여, 클라이언트로부터 수신하는 세션 ID에 따른 테이블 검색을 실행하여, 클라이언트의 식별 처리를 실행하는 단계를 더 갖는 것을 특징으로 한다.
또한, 본 발명의 제3 측면은,
외부 네트워크 및 내부 네트워크의 경계에 접속된 정보 처리 장치에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 컴퓨터 프로그램으로서,
내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신하는 정보 요구 수신 단계와,
내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하는 서버 정보 취득 처리 단계와,
상기 서버 정보 취득 처리 단계에서 취득한 서버 정보에 기초하여 상기 클라이언트에 송신하는 디바이스 리스트를 생성하는 디바이스 리스트 생성 처리 단계와,
상기 디바이스 리스트 생성 처리 단계에서 생성한 디바이스 리스트를 외부 네트워크를 통하여 클라이언트에 송신하는 디바이스 리스트 송신 단계
를 갖는 것을 특징으로 하는 컴퓨터 프로그램에 있다.
본 발명의 구성에 따르면, 외부 네트워크 및 내부 네트워크의 경계에 접속된 어플리케이션 게이트웨이로서의 정보 처리 장치가, 내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신한 것을 조건으로 하여, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하고, 취득한 서버 정보에 기초하여 디바이스 리스트를 생성하여, 외부 네트워크를 통하여 클라이언트에 송신하는 구성으로 했으므로, 외부 네트워크에 접속된 클라이언트에 의한 홈 네트워크 등, 내부 네트워크에 접속된 서버 정보의 효율적인 취득이 가능하게 된다.
또한, 본 발명의 구성에 따르면, 클라이언트와 어플리케이션 게이트웨이로서의 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키를 이용하여 디바이스 리스트를 암호화하여 클라이언트에 송신하는 구성으로 했으므로, 인터넷 등의 도청의 우려가 있는 통신로를 통한 데이터 통신이 필요한 경우에도, 시큐어한 디바이스 리스트 송신이 가능하게 된다.
또한, 본 발명의 구성에 따르면, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고, 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 구성으로 했으므로, 서버 정보 취득 처리는, UPnP의 규정에 따른 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행 가능하고, 또한 외부 네트워크에 접속된 클라이언트에 대한 디바이스 리스트 송신은, 안전성, 확실성이 높은 TCP에 의한 통신에 의한 리스트 송신이 실현된다.
또한, 본 발명의 구성에 따르면, 클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여 디바이스 리스트의 취득 및 송부를 실행하는 구성으로 했으므로, 액세스 권한을 갖지 않는 부정 클라이언트로부터의 디바이스 리스트 취득 처리가 방지된다.
또한, 본 발명의 컴퓨터 프로그램은, 예를 들면, 여러가지 프로그램 코드를 실행하는 것이 가능한 범용 컴퓨터 시스템에 대하여, 컴퓨터 판독 가능한 형식으로 제공하는 기억 매체, 통신 매체, 예를 들면, CD나 FD, MO 등의 기억 매체, 혹은 네트워크 등의 통신 매체에 의해 제공 가능한 컴퓨터 프로그램이다. 이러한 프로그램을 컴퓨터 판독 가능한 형식으로 제공함으로써, 컴퓨터 시스템 상에서 프로그램에 따른 처리가 실현된다.
본 발명의 또 다른 목적, 특징이나 이점은, 후술하는 본 발명의 실시예나 첨부하는 도면에 기초하는, 보다 상세한 설명에 의해 분명하게 될 것이다. 또한, 본 명세서에서 시스템이란, 복수 장치의 논리적 집합 구성으로서, 각 구성의 장치가 동일 케이스 내에 있는 것으로는 한정하지 않는다.
도 1은 본 발명의 적용 가능한 네트워크 구성예를 도시하는 도면.
도 2는 네트워크 접속 기기의 구성예에 대하여 설명하는 도면.
도 3은 홈 네트워크 등의 내부 네트워크에 접속된 클라이언트에 의한 서버 발견 처리 시퀀스를 도시하는 도면.
도 4는 외부 네트워크에 접속 가능한 클라이언트의 기기 등록 처리 수순을 설명하는 시퀀스도.
도 5는 외부 네트워크에 접속된 클라이언트에 의한 인증 및, 콘텐츠 취득 처리 수순을 설명하는 시퀀스도.
도 6은 외부 네트워크에 접속된 클라이언트의 인증 처리 수순을 설명하는 제1 시퀀스도.
도 7은 외부 네트워크에 접속된 클라이언트의 인증 처리 수순을 설명하는 제2 시퀀스도.
도 8은 어플리케이션 게이트웨이가 생성하는 클라이언트 식별 테이블의 구성예를 도시하는 도면.
도 9는 어플리케이션 게이트웨이가 생성하는 클라이언트 세션 ID 테이블의 구성예를 도시하는 도면.
도 10은 외부 네트워크에 접속된 클라이언트로부터의 디바이스 리스트 취득요구의 처리 시퀀스를 도시하는 도면.
도 11은 외부 네트워크에 접속된 클라이언트로부터의 디바이스 리스트 취득요구의 수신에 기초하여 어플리케이션 게이트웨이가 실행하는 처리를 설명하는 플로우도.
도 12는 어플리케이션 게이트웨이의 기능 구성을 설명하는 블록도.
도 13은 클라이언트의 기능 구성을 설명하는 블록도.
<발명을 실시하기 위한 최량의 형태>
이하, 도면을 참조하면서, 본 발명의 정보 처리 장치, 및 정보 처리 방법, 및 컴퓨터 프로그램의 상세 정보에 대하여 설명한다.
[시스템 개요]
우선, 도 1을 참조하여, 본 발명의 적용 가능한 네트워크 구성예에 대하여 설명한다. 도 1은, 예를 들면 특정 유저의 집 등에 구축된 홈 네트워크(100) 등의 근거리 통신망(LAN), 즉 내부 네트워크로서, 퍼스널 컴퓨터(PC)(101, 102), 하드디스크 레코더(103), TV(104), PDA(105) 등의 여러가지 정보 처리 장치가 홈 네트워크(100)를 통하여 데이터 송수신을 행한다.
예를 들면, PC(101, 102), 혹은 하드디스크 레코더(103)를 콘텐츠 제공 서버로 하고, TV(104), PDA(105)를 클라이언트로 하여, 클라이언트가 서버의 저장 콘텐츠를 네트워크를 통하여 취득하고, 클라이언트의 디스플레이, 스피커를 이용하여 콘텐츠 출력을 행한다.
홈 네트워크(100)는, 유선, 무선 등 어느 하나의 네트워크로서, 각 접속 기기는, 예를 들면 이더넷(등록상표) 프레임 등의 통신 패킷을 네트워크를 통하여 송수신한다. 즉, 클라이언트는, 이더넷 프레임의 데이터부에 처리 요구 정보를 저장한 프레임을 서버에 송신함으로써, 서버에 대한 데이터 처리 요구를 실행한다. 서버는, 처리 요구 프레임의 수신에 따라, 데이터 처리를 실행하여, 필요에 따라 데이터 처리 결과로서의 결과 데이터를 통신 패킷의 데이터부에 저장하여, 각 클라이언트에 송신한다.
네트워크 접속 기기는, 예를 들면 유니버설 플러그 앤드 플레이(UPnP : Universal Plug and Play) 대응 기기로 구성된다. 따라서, 네트워크에 대한 접속 기기의 추가, 삭제가 용이한 구성이다. 네트워크에 새롭게 접속하는 기기는,
(1) IP 어드레스 등의 자기 디바이스 ID를 취득하는 어드레싱 처리.
(2) 네트워크 상의 각 디바이스의 검색을 행하여, 각 디바이스로부터 응답을 수신하여, 응답에 포함되는 디바이스 종별, 기능 등의 정보를 취득하는 디스커버리 처리.
(3) 디스커버리 처리에서 취득한 정보에 기초하여, 각 디바이스에 서비스를 요구하는 서비스 요구 처리.
상기 처리 수순을 행함으로써, 네트워크에 접속된 기기를 적용한 서비스를 수령하는 것이 가능하게 된다.
도 1에서, 홈 네트워크(100)는, 인터넷 등의 외부 네트워크(120)에 접속되어 있다. 외부 네트워크(120)에도 PC(121), 휴대 전화(122), 포터블 재생 플레이어(123) 등의 각종 정보 처리 장치가 접속된다. 홈 네트워크(100) 내의 정보 처리 장치와 외부 네트워크(120)의 정보 처리 장치는, 외부 네트워크(120) 및 홈 네트워크(100)를 통하여 통신이 가능하게 된다.
외부 네트워크(120) 및 홈 네트워크(100)로 구성되는 내부 네트워크 사이에는, 외부 네트워크(120)의 접속 장치로부터의 액세스를 제한하기 위한 파이어월 기능을 갖는 어플리케이션 게이트웨이(110)가 설치된다. 어플리케이션 게이트웨이는, 외부 네트워크로부터의 액세스 요구에 대하여, 어플리케이션층에서 통신 패킷의 체크를 실행하여, 필터링을 행한다.
또한, 어플리케이션 게이트웨이(110)는, 홈 네트워크(100)에 접속된 정보 처리 장치의 대리 응답 서버로서의 기능도 갖는다. 즉, 어플리케이션 게이트웨이(110)는, 리버스 프록시 서버 기능도 겸비한 구성을 갖는다.
이와 같이, 어플리케이션 게이트웨이(110)는, 홈 네트워크 등의 로컬 영역 내의 내부 네트워크와, 로컬 영역 밖의 외부 네트워크의 사이에 위치하는 어플리케이션 게이트웨이로서, 또한 리버스 프록시 서버로서의 기능을 갖는다.
외부 네트워크(120)에 접속된 PC(121), 휴대 전화(122), 포터블 재생 플레이어(123) 등의 각종 정보 처리 장치는, 어플리케이션 게이트웨이(110)를 통하여 홈 네트워크(100) 내의 서버, 예를 들면 PC(101, 102), 하드디스크 레코더(103) 등에 액세스하여, 이들 장치에 저장된 콘텐츠를 취득하여 PC(121), 휴대 단말기(122), 재생 플레이어(123) 등에서 콘텐츠 출력을 행하는 것이 가능하게 된다.
단, 이들 콘텐츠 취득을 불특정의 클라이언트에 허용하는 것은, 콘텐츠의 저작권, 비밀 누설 등의 문제 때문에 바람직한 것은 아니다. 따라서, 외부 네트워크(120)와 홈 네트워크(100) 사이에 배치된 어플리케이션 게이트웨이(110)에서, 외부로부터의 액세스에 대한 액세스 권한 판정 처리를 실행하여, 권한이 있다고 판정한 경우에만, 외부로부터의 액세스를 허용하는 구성을 갖는다. 이 상세 처리 구성에 대해서는 후술한다.
도 1에 도시하는 각 정보 처리 장치, 즉 서버, 클라이언트, 및 어플리케이션 게이트웨이를 구성하는 정보 처리 장치의 하드웨어 구성예에 대하여 도 2를 참조하여 설명한다.
CPU(Central Processing Unit)(201)는, ROM(Read Only Memory)(202), 또는 HDD(Hard Disk Drive)(204) 등에 기억되어 있는 프로그램에 따라, 각종 처리를 실행하여, 데이터 처리 수단, 혹은 통신 제어 처리 수단으로서 기능한다. RAM(Random Access Memory)(203)에는, CPU(201)가 실행하는 프로그램이나 데이터가 적절하게 기억된다. CPU(201), ROM(202), 및 RAM(203), HDD(204)는, 버스(205)를 통하여 서로 접속되어 있다.
버스(205)에는, 입출력 인터페이스(206)가 접속되어 있고, 이 입출력 인터페이스(206)에는, 예를 들면 유저에 의해 조작되는 키보드, 스위치, 버튼, 혹은 마우스 등으로 구성되는 입력부(207), 유저에게 각종 정보를 제시하는 LCD, CRT, 스피커 등으로 구성되는 출력부(208)가 접속된다. 또한, 데이터 송수신 수단으로서 기능하는 통신부(209), 또한 자기 디스크, 광 디스크, 광 자기 디스크, 또는 반도체 메모리 등의 리무버블 기록 매체(211)를 장착하는 것이 가능하고, 이들 리무버블 기록 매체(211)로부터의 데이터 판독 혹은 기입 처리를 실행하는 드라이브(210)가 접속된다.
도 2에 도시하는 구성은, 도 1에 도시하는 네트워크 접속 기기의 일례로서의 일반적인 PC의 구성을 도시하는 것이지만, 네트워크 접속 기기는 PC에 한하지 않고, 도 1에 도시한 바와 같이 휴대 전화, PDA 등의 휴대 통신 단말기, 그 밖의 여러가지 전자 기기, 정보 처리 장치로 구성하는 것이 가능하다. 따라서, 각각의 기기 고유의 하드웨어 구성을 갖는 것이 가능하고, 그 하드웨어에 따른 처리를 실행한다.
[홈 네트워크 내의 클라이언트에 의한 콘텐츠 취득 처리]
도 1에 도시하는 홈 네트워크(100)에 접속된 PC(101, 102), 하드디스크 레코더(103), TV(104), PDA(105) 등의 여러가지 정보 처리 장치 사이에서는, 전술한 유니버설 플러그 앤드 플레이(UPnP : Universal Plug and Play) 프로토콜에 따른 통신을 실행하여, 클라이언트는 서버로부터 콘텐츠를 취득하는 것이 가능하게 된다.
홈 네트워크(100)에 접속된 클라이언트, 즉 서버로부터 콘텐츠를 취득하려고 하는 정보 처리 장치는, 네트워크 상의 서버의 검색으로서의 서버 발견 처리, 예를 들면 UPnP가 규정하는 디스커버리 처리에 의해 서버로부터 서버가 제공 가능한 서비스 정보를 취득할 수 있다. 홈 네트워크(100)에 접속된 클라이언트에 의한 서버의 디스커버리 처리 시퀀스를 도 3에 도시한다.
클라이언트(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 : HTTP Unicast)한다. 또한, OK 레스펀스에는, 각 서버에 대한 액세스 정보, 제공 가능한 서비스에 대한 정보 등이 포함된다.
상기한 디스커버리 처리에 의해, 각 서버로부터의 OK 레스펀스를 수신한 클라이언트는, 서버가 제공 가능한 서비스에 대한 정보를 확인하고, 그 후 이들 정보에 기초하여, 각 디바이스에 서비스를 요구하는 서비스 요구 처리를 실행한다. 예를 들면, 서버에 대한 콘텐츠 송신 요구 등을 실행하여, 서버로부터 콘텐츠를 취득하여 클라이언트의 디스플레이, 스피커를 통하여 출력하는 처리가 가능하게 된다.
[홈 네트워크 밖의 클라이언트에 의한 콘텐츠 취득 처리]
전술한 일반적인 UPnP에 따른 서버 발견 처리를 외부 네트워크에 접속된 정보 처리 단말기와 홈 네트워크 내의 서버 사이에서 실행하면, 부정한 클라이언트, 즉 콘텐츠의 이용이 허락되어 있지 않은 클라이언트로부터 홈 네트워크에 접속된 서버의 저장 콘텐츠가 부정하게 취득되어, 이용될 가능성이 있다.
본 발명의 구성에서는, 외부 네트워크에 접속된 클라이언트로부터 홈 네트워크 등의 내부 네트워크에 접속된 서버에 대한 액세스 요구를 도 1에 도시한 어플리케이션 게이트웨이(110)에서 검증하여, 액세스 권한의 판정 처리를 실행한 후, 외부 네트워크에 접속된 클라이언트가 정당한 액세스 권한을 갖는다는 판정이 있었던 경우에만 서버에 대한 액세스를 허용한다.
(1) 기기 등록 처리
홈 네트워크 밖의 인터넷 등의 외부 네트워크에 접속하여, 홈 네트워크 내의 서버에 대한 액세스를 행하고자 하는 정보 처리 장치(모바일 기기)는, 사전에 기기 등록 처리를 행하는 것이 필요하게 된다.
즉, 모바일 기기는, 홈 네트워크 내의 어플리케이션 게이트웨이를 포함하는 정보 처리 장치 사이에서, 소정의 시퀀스에 따른 기기 등록 처리를 실행한다. 또한, 기기 등록 처리는 유저가 등록 처리 시퀀스를 실행하는 2개의 기기의 조작, 혹은 패스워드 등의 표시 정보의 확인을 하는 것이 필요하고, 예를 들면 홈 네트워크에 양 기기(모바일 기기와 어플리케이션 게이트웨이)를 접속하여 실행한다.
도 4를 참조하여 모바일 기기의 기기 등록 처리의 수순에 대하여 설명한다. 도 4에는, 좌측에 모바일 기기로서의 클라이언트, 우측에 홈 네트워크 내의 어플리케이션 게이트웨이를 포함하는 정보 처리 장치를 의미하는 서버의 처리를 나타내고 있다.
우선, 단계 S11에서, 유저가 클라이언트측에 설치된 기기 등록 버튼을 누른다. 그러면, 클라이언트는, 단계 S12에서, 등록 요구를 브로드캐스트한다. 이것은, UDP(User Datagram Protocol)에 따른 멀티캐스트 송신으로서 실행된다.
등록 요구를 수신한 서버는, 단계 S13에서 확인 요구를 클라이언트에 대하여 유니캐스트 송신한다. 이 이후의 데이터 송수신 처리는, TCP(Transmission Control Protocol)에 따라 실행된다. 서버로부터 클라이언트에 송신하는 확인 요구에는, 서버명이 포함된다. 확인 요구를 수신한 클라이언트는, 단계 S14에서 확인 요구 응답을 서버에 대하여 송신한다. 확인 요구 응답에는, 클라이언트명이 포함된다.
확인 요구 응답을 수신한 서버는, 단계 S15에서 유저에 대하여 「클라이언트“YYYY”를 위한 원 타임 패스워드는 “○○○○” 입니다. 」의 메시지를 표시한다. 즉, 원 타임 패스워드를 서버의 디스플레이에 표시한다. 이 패스워드는, 서버가 예를 들면 난수 발생 처리에 의해 생성하는 것이다.
유저는, 원 타임 패스워드를 확인하여, 서버측으로부터 클라이언트측으로 이동한다. 클라이언트측으로 이동하여 온 유저는, 단계 S16에서 서버측에 제시된 원 타임 패스워드를 클라이언트의 입력 수단으로부터 입력한다. 단계 S17에서, 클라이언트는, 입력 패스워드를 서버에 송신한다.
서버는, 원 타임 패스워드 제시 후의 소정 시간 대기 중에 클라이언트로부터의 패스워드를 수신하면, 단계 S18에서, 앞의 단계 S15에서 서버가 생성하여 유저에게 제시한 원 타임 패스워드와 수신 패스워드와의 대조 처리를 실행한다. 서버는, 단계 S19에서, 클라이언트에 대하여 패스워드 대조 OK/NG의 통지를 행한다. 패스워드 대조가 NG인 경우에는, 처리를 중지한다. 패스워드 대조가 OK인 경우에는, 단계 S20에서, 암호화 통신 처리를 가능하게 하기 위한 SSL(Secure Socket Layer) 핸드 쉐이크 처리로 이행한다.
SSL 핸드 쉐이크에 의해, 서버 및 클라이언트는, 암호 통신을 위한 키로서 적용 가능한 비밀 정보의 공유를 행하고, 그 후의 통신에서는, 공유한 비밀 정보를 이용한 암호화 데이터의 송수신이 가능하게 된다.
단계 S21에서, 서버는, 예를 들면 난수 발생 처리에 의해 ID를 생성한다. ID는, 글로벌 유니크성을 갖는 것이 바람직하며, 예를 들면 128bit 이상의 비트 열로서 생성된다. 서버가 생성하는 ID를 서버 ID : GUID(S)로 한다. GUID는, Globally Unique Identifier를 의미한다.
단계 S22에서, 서버는, 생성한 서버 ID : GUID(S)를 SSL 핸드 쉐이크에 의해 서버 클라이언트 사이에서 공유한 키로 암호화하여 클라이언트에 송신한다. 클라이언트는, 수신 데이터를 복호하여 서버 ID : GUID(S)를 취득한다.
한편, 클라이언트는, 단계 S23에서, 예를 들면 난수 발생 처리에 의해 ID를 생성한다. ID는, 글로벌 유니크성을 갖는 것이 바람직하며, 예를 들면 128bit 이상의 비트 열로서 생성된다. 클라이언트가 생성하는 ID를 클라이언트 ID : GUID(C)로 한다.
단계 S24에서, 클라이언트는, 생성한 클라이언트 ID : GUID(C)를 SSL 핸드 쉐이크에 의해 서버 클라이언트 사이에서 공유한 키로 암호화하여 서버에 송신한다. 서버는, 수신 데이터를 복호하여 클라이언트 ID : GUID(C)를 취득한다.
단계 S25에서, 클라이언트는, 서버로부터 수신한 서버 ID : GUID(S)와 자(自) 디바이스에서 생성한 클라이언트 ID : GUID(C)를 기억 수단에 암호화하여 저장한다. 암호화 키로서는, 예를 들면 자 디바이스의 하드웨어에 고유한 식별 정보, 즉 하드웨어 유니크 ID(Huid(C))를 적용한다. 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)는 암호화 데이터로서 기억부에 저장된다.
이와 같이, 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)는, 하드웨어 유니크 ID(Huid(C))에 의한 암호화가 이루어져, 부정 카피, 개찬 곤란성을 높인 암호화 데이터로서, 즉 탬퍼 레지스턴트성을 확보한 데이터로서 저장된다.
단계 S26에서, 서버는, 클라이언트로부터 수신한 클라이언트 ID : GUID(C)와 자 디바이스에서 생성한 서버 ID : GUID(S)를 기억 수단에 암호화하여 저장한다. 암호화 키로서는, 클라이언트와 마찬가지로, 자 디바이스의 하드웨어에 고유한 식별 정보, 즉 하드웨어 유니크 ID(Huid(S))를 적용한다. 서버에서도, 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)는 암호화 데이터로서 기억부에 저장되어, 부정 카피, 개찬이 곤란한 탬퍼 레지스턴트성이 확보된다.
전술한 처리에 의해, 외부 네트워크에 접속 가능한 모바일 기기와, 홈 네트워크 내의 어플리케이션 게이트웨이를 포함하는 서버 각각은, 각각 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 공유하는 비밀 정보(Secret)로서 보유하게 된다.
(2) 기기 인증 처리
전술한 기기 등록 처리에 의해, 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 어플리케이션 게이트웨이와의 공유 비밀 정보(Secret)로서 보유한 모바일 기기는, 인터넷 등의 외부 네트워크에 접속하고, 도 1에 도시하는 어플리케이션 게이트웨이(110)에 접속하여, 소정의 액세스 권한 판정 처리 시퀀스를 실행함으로써, 홈 네트워크 등의 내부 네트워크에 접속된 서버에 대한 액세스가 가능해지고, 서버로부터의 콘텐츠 취득 등이 허용된다.
즉, 모바일 기기는, 어플리케이션 게이트웨이(110)에 의해 공유 비밀 정보(Secret)인 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 적용한 액세스 권한 판정 처리가 실행되어, 액세스 권한이 있다고 하는 판정을 조건으로 하여, 홈 네트워크 내의 서버에 대한 액세스가 가능하게 된다.
도 5에, 외부 네트워크에 접속한 모바일 기기와, 어플리케이션 게이트웨이와의 통신 처리 시퀀스를 도시한다.
도 5에서, 클라이언트는 외부 네트워크에 접속된 클라이언트이고, 서버는 홈 네트워크 등의 내부 네트워크에 속하며, 어플리케이션 게이트웨이가, 양 네트워크의 사이에 존재하고 있다.
클라이언트는, 단계 S31에서, 어플리케이션 게이트웨이에 접속한다. 또한, 클라이언트는, 어플리케이션 게이트웨이에 접속하기 때문에 어플리케이션 게이트웨이의 IP 어드레스, 포트 번호를 취득하는 것이 필요하다. 예를 들면 어플리케이션 게이트웨이에 설정된 호스트 네임 등에 기초하여, 네트워크 상의 DNS(Domain Name System) 서버, 기타, ISP(Internet Service Provider)가 제공하는 서비스 서버에 의해, 어플리케이션 게이트웨이의 IP 어드레스, 포트 번호를 취득하여 접속을 행한다.
또한, 클라이언트는, 명시적으로 어플리케이션 게이트웨이에 접속하는 처리를 실행하지 않고, 예를 들면 어플리케이션 게이트웨이가 접속된 홈 네트워크 등, 내부 네트워크의 접속 서버의 호스트 네임을 이용하여 서버에 대한 다이렉트 접속을 시도한 경우에도, 각 서버에 설정된 게이트웨이의 설정 정보에 기초하여, 클라이언트는, 외부 네트워크와 내부 네트워크의 사이에 설치된 어플리케이션 게이트웨이에 접속되어, 이하에 설명하는 기기 인증 시퀀스가 실행된다.
또한, 클라이언트와 어플리케이션 게이트웨이와의 접속은, 접속 기간에서 복수의 HTTP 패킷의 송수신이 가능한 HTTP 킵 얼라이브(HTTP Keep Alive)가 설정된 TCP 접속으로 하고, 일 접속 시퀀스에서, 이하에 설명하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리, 및 로그인 처리를 계속하여 실행하는 것이 바람직하다.
단계 S32에서, 클라이언트와, 어플리케이션 게이트웨이 사이에서, SSL(Secure Socket Layer) 핸드 쉐이크 처리를 실행한다. SSL 핸드 쉐이크에 의해, 클라이언트와, 어플리케이션 게이트웨이는, 암호 통신을 위한 키로서 적용 가능한 비밀 정보(세션 키)의 공유를 행하고, 그 후의 통신에서는, 공유한 비밀 정보(세션 키)를 이용한 암호화 데이터의 송수신이 가능하게 된다.
단계 S33에서, 클라이언트와, 어플리케이션 게이트웨이 사이에서, 기기 인증 처리로서의 로그인(Login) 처리를 실행한다. 로그인(Login) 처리의 상세 정보에 대하여, 도 6, 도 7을 참조하여 설명한다.
정규의 액세스 권한을 갖는 클라이언트는, 전술한 기기 등록 처리를 실행하고 있으며, 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 어플리케이션 게이트웨이와 함께 공유하는 비밀 정보(Secret)로서 보유한다. 또한, 서버 ID : GUID(S)는, 도 4를 참조하여 설명한 기기 등록 시퀀스에서, 어플리케이션 게이트웨이가 생성한 서버 ID이다.
기기 인증은, 클라이언트와, 어플리케이션 게이트웨이 각각이, 비밀 정보(Secret), 즉 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 공유하고 있는 것을 서로 확인하는 처리로서 실행된다. 어플리케이션 게이트웨이는, 게이트웨이의 기억부에 저장하고 있는 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)와 동일한 값을 클라이언트가 알고 있는 것을 확인하고, 이 확인을 조건으로 하여 클라이언트를 인증한다. 또한, 클라이언트는, 클라이언트의 기억부에 저장하고 있는 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)와 동일한 값을 게이트웨이가 알고 있는 것을 확인하여, 이 확인을 조건으로 하여 게이트웨이를 인증한다.
도 6, 도 7에서, Secret=GUID(C)∥GUID(S)이다. 또한, A∥B는 A와 B의 연결을 나타낸다.
우선, 클라이언트는, 도 6에 도시하는 단계 S51에서, Secret=GUID(C)∥GUID(S)에 일방향성 함수로서의 해시 함수(h)를 적용하여 다이제스트값을 하기식에 따라 계산한다.
Digest=h(Secret)
또한, 클라이언트는, 난수(Nonce1)를 생성한다. 또한, 해시 함수로서는 예를 들면 MD5 등의 함수가 적용 가능하다.
단계 S52에서, 클라이언트는, 생성한 다이제스트(Digest) 및 난수(Nonce1)를 어플리케이션 게이트웨이에 송신한다.
또한, 클라이언트와 어플리케이션 게이트웨이 사이에서 이미 커넥션이 설정되어 세션이 계속되고 있는 동안에 재차, 인증을 실행하는 경우, 클라이언트가, 어플리케이션 게이트웨이로부터 수령이 완료된 세션 ID를 보유하고 있으므로, 클라이언트는, 세션 ID에 대해서도 어플리케이션 게이트웨이에 송신한다. 초기 접속의 경우에는, 클라이언트는, 세션 ID를 유지하지 않으므로 생성한 다이제스트(Digest) 및 난수(Nonce1)만을 어플리케이션 게이트웨이에 송신한다.
또한, 도 6, 도 7에 도시하는 로그인 처리 시퀀스에서 클라이언트와 어플리케이션 게이트웨이 사이에서 송수신하는 데이터는, 도 5에 도시하는 단계 S32의 SSL 핸드 쉐이크 처리에 있어서 쌍방에서 공유하고 있는 키를 이용하여 암호화된다. 클라이언트와 어플리케이션 게이트웨이 사이의 통신은, 인터넷 등의 외부 네트워크를 통한 통신으로서 실행되지만, 암호화 통신에 의한 시큐러티가 확보된다.
단계 S53에서, 어플리케이션 게이트웨이는, 클라이언트로부터의 수신 데이터에 포함되는 Digest=h(Secret)를 바탕으로 클라이언트의 특정을 행한다. 어플리케이션 게이트웨이는, 도 8에 도시한 바와 같은 클라이언트 식별자와 Digest=h(Secret)의 대응 테이블(클라이언트 식별 테이블)을 기억부에 저장하고 있다.
또한, 이 클라이언트 식별 테이블은, 어플리케이션 게이트웨이가, 도 4를 참조하여 설명한 기기 등록 처리 시에, 클라이언트와 공유한 비밀 정보(Secret), 즉 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)에 기초하는 해시값 산출 처리를 실행하여, 클라이언트 식별자에 대응한 엔트리를 생성하여 기억부에 저장한다.
단계 S54에서, 어플리케이션 게이트웨이는 서버 인증값(ServerAuth)를 하기식에 따라 생성한다.
ServerAuth=h(Secret∥Nonce1)
즉, Secret=GUID(C)∥GUID(S)와, 클라이언트로부터 수신한 난수(Nonce1)와의 결합 데이터에 대한 해시값을 구하여, 이것을 서버(어플리케이션 게이트웨이) 인증값(ServerAuth)으로 한다. 또한, 어플리케이션 게이트웨이는, 난수(Nonce2)를 생성한다.
또한, 어플리케이션 게이트웨이는, 클라이언트와의 접속이 초기 접속이며, 단계 S52에서, 클라이언트로부터 세션 ID를 수신하지 않는 경우에는, 커넥션 식별 정보로서의 세션 ID를 생성하여, 클라이언트 식별자와 대응시켜 보존한다.
어플리케이션 게이트웨이는, 커넥션이 계속하고 있는 클라이언트에 대하여, 도 9에 도시한 바와 같이 클라이언트 식별자와 세션 ID를 대응시킨 클라이언트 세션 ID 테이블에 엔트리를 설정하여 기억부에 저장한다.
어플리케이션 게이트웨이가, 외부 네트워크의 복수의 클라이언트와 접속하고 있는 경우에도, 어플리케이션 게이트웨이는, 도 9에 도시하는 클라이언트 세션 ID 테이블에 기초하여, 세션 ID로부터 개개의 클라이언트를 판별하는 것이 가능하게 된다.
단계 S55에서, 어플리케이션 게이트웨이는, 클라이언트에 대하여 서버 인증값[ServerAuth=h(Secret∥Nonce1)]과, 생성 난수(Nonce2)를 송신한다.
단계 S56에서, 클라이언트는, 어플리케이션 게이트웨이로부터 수신한 서버 인증값[ServerAuth=h(Secret∥Nonce1)]과, 자 디바이스에서 생성한 ServerAuth’=h(Secret∥Nonce1)를 비교 대조한다. 양 값이 일치, 즉 ServerAuth=ServerAuth’가 성립되면, 클라이언트는, 통신을 행하고 있는 어플리케이션 게이트웨이가, 자기가 보유하는 비밀 정보, 즉, Secret=GUID(C)∥GUID(S)과 동일한 비밀 정보를 갖는 어플리케이션 게이트웨이로서, 기기 등록 시퀀스에 기초하여 비밀 정보를 공유한 정당한 어플리케이션 게이트웨이라고 판정한다.
한편, 어플리케이션 게이트웨이로부터 수신한 서버 인증값[ServerAuth=h(Secret∥Nonce1)]과, 자 디바이스에서 생성한 ServerAuth’=h(Secret∥Nonce1)가 불일치한 경우에는, 어플리케이션 게이트웨이는, 클라이언트의 기억부에 저장된 비밀 정보, 즉 Secret=GUID(C)∥GUID(S)과 동일한 비밀 정보를 갖지 않는 디바이스이며, 기기 등록 시퀀스에 기초하여 비밀 정보를 공유한 어플리케이션 게이트웨이가 아니라, 부정한 어플리케이션 게이트웨이라고 판정한다. 이 경우, 클라이언트는, 어플리케이션 게이트웨이와의 접속을 절단한다.
정당한 어플리케이션 게이트웨이라고 판정된 경우에는, 다음 단계, 즉 도 7의 단계 S57로 진행한다.
도 7의 단계 S57에서, 클라이언트는, 클라이언트 인증값(ClientAuth)을 하기식에 따라 생성한다.
ClientAuth=h(Secret∥Nonce2)
즉, Secret=GUID(C)∥GUID(S)와, 어플리케이션 게이트웨이로부터 수신한 난수(Nonce2)와의 결합 데이터에 대한 해시값을 구하고, 이것을 클라이언트 인증값(ClientAuth)으로 한다.
단계 S58에서, 클라이언트는, 어플리케이션 게이트웨이에 대하여 클라이언트 인증값[ClientAuth=h(Secret∥Nonce2)]을 송신한다.
단계 S59에서, 어플리케이션 게이트웨이는, 클라이언트로부터 수신한 클라이언트 인증값[ClientAuth=h(Secret∥Nonce2)]과, 자 디바이스에서 생성한 ClientAuth’=h(Secret∥Nonce2)을 비교 대조한다. 양 값이 일치, 즉 ClientAuth=ClientAuth’가 성립되면, 어플리케이션 게이트웨이는, 통신을 행하고 있는 클라이언트가, 자기가 보유하는 비밀 정보, 즉 Secret=GUID(C)∥GUID(S)와 동일한 비밀 정보를 갖는 클라이언트이며, 기기 등록 시퀀스에 기초하여 비밀 정보를 공유한 정당한 클라이언트라고 판정한다.
한편, 클라이언트로부터 수신한 클라이언트 인증값[ClientAuth=h(Secret∥Nonce2)]과, 자 디바이스에서 생성한 ClientAuth’=h(Secret∥Nonce2)가 불일치한 경우에는, 클라이언트는, 어플리케이션 게이트웨이의 기억부에 저장된 비밀 정보, 즉 Secret=GUID(C)∥GUID(S)과 동일한 비밀 정보를 갖지 않는 디바이스이며, 기기 등록 시퀀스에 기초하여 비밀 정보를 공유한 클라이언트가 아니라, 부정한 클라이언트라고 판정한다.
단계 S60에서, 어플리케이션 게이트웨이는, 클라이언트의 인증 결과[OK] 또는 [NG]를 클라이언트에 송신한다. [OK]이면, 세션 ID도 함께 송신한다.
단계 S61에서, 클라이언트는, 인증 성립이면, 어플리케이션 게이트웨이로부터 수신한 세션 ID를 기억부에 저장하고, 다음 처리(예를 들면 도 5의 단계 S34의 디바이스 리스트 취득 처리)로 이행한다. 인증 불성립의 경우에는, 어플리케이션 게이트웨이와의 접속을 절단한다.
이상의 처리에 의해, 외부 네트워크에 접속된 클라이언트와, 홈 네트워크 등의 내부 네트워크에 접속된 어플리케이션 게이트웨이와의 인증 처리가 종료되어, 인증 성립을 조건으로 하여, 클라이언트는, 홈 네트워크 등의 내부 네트워크에 접속된 서버에 관한 정보 취득, 서버에 대한 액세스, 서버로부터의 콘텐츠 취득 등의 처리가 가능하게 된다.
전술한 바와 같이, 기기 인증 처리는, 클라이언트와, 어플리케이션 게이트웨이 각각이, 공유한 비밀 정보(Secret), 즉 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)를 공유하고 있는 것을 서로 확인하는 처리로서 실행된다.
즉, 어플리케이션 게이트웨이는, 게이트웨이의 기억부에 저장하고 있는 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)와 동일한 값을 클라이언트가 알고 있는 것을 확인하고, 이 확인을 조건으로 하여 클라이언트를 인증한다. 또한, 클라이언트는, 클라이언트의 기억부에 저장하고 있는 서버 ID : GUID(S) 및 클라이언트 ID : GUID(C)와 동일한 값을 게이트웨이가 알고 있는 것을 확인하고, 이 확인을 조건으로 하여 게이트웨이를 인증한다. 이와 같이, 서로 인증 처리를 실행하게 되어, 상호의 신뢰성이 확보된 것을 조건으로 하여 그 후의 처리가 실행 가능하게 된다.
(3) 디바이스 리스트의 취득 처리
외부 네트워크에 접속된 클라이언트와, 어플리케이션 게이트웨이 사이에서의 로그인 처리가 완료되어, 양 디바이스의 신뢰성이 확인되면, 클라이언트는, 홈 네트워크 등, 어플리케이션 게이트웨이가 접속된 내부 네트워크 내의 서버 정보를 취득하는 처리로 이행한다.
홈 네트워크 내에 접속된 클라이언트이면, 이 디바이스 정보 취득 처리는, 앞서 도 3을 참조하여 설명한 바와 같이, 네트워크 서비스의 검출 프로토콜인 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행할 수 있다. 즉, 네트워크를 통한 서치 리퀘스트을 UDP(User Datagram Protocol)에 따라, 멀티캐스트 송신(HTTPMU:HTTP Multicast)하여, 홈 네트워크에 접속된 서버로부터 제공 가능한 서비스에 대한 정보가 포함되는 OK 레스펀스를 UDP에 따라 수신함으로써 서버 정보를 취득할 수 있었다.
그러나, 외부 네트워크에 접속되어, 어플리케이션 게이트웨이와 통신을 행하고 있는 클라이언트는, 전술한 바와 마찬가지의 UDP 패킷의 멀티캐스트 송신을 실행하여 홈 네트워크 내의 서버 정보를 취득할 수는 없다.
따라서, 새로운 정의 커맨드를 이용하여, 이 새로운 정의 커맨드를 클라이언트로부터 어플리케이션 게이트웨이에 송신하고, 어플리케이션 게이트웨이에서 수신 커맨드에 기초하여, SSDP(Simple Service Discovery Protocol)를 적용한 처리에 따라 홈 네트워크 내에서 서버 발견 처리를 실행하고, 그 결과로서 어플리케이션 게이트웨이가 취득한 서버 정보를 클라이언트에 대하여 송신한다.
도 5에 도시하는 단계 S34에서, 클라이언트는, 새로운 정의 커맨드로서의 디바이스 리스트 취득 커맨드(Get Device List)를 어플리케이션 게이트웨이에 송신하고, 어플리케이션 게이트웨이에서 수신 커맨드에 기초하여, SSDP(Simple Service Discovery Protocol)를 적용한 처리에 따라 홈 네트워크 내에서 서버 발견 처리를 실행하고, 서버는, 단계 S35에서, SSDP 처리 결과로서 취득한 서버 정보, 즉 디바이스 리스트를 클라이언트에 대하여 송신한다. 디바이스 리스트에는, 서버에 대한 액세스 정보, 서버가 제공 가능한 서비스 정보가 포함된다.
이하, 도 10을 참조하여 외부 네트워크에 접속된 클라이언트에 의한 서버 정보 취득 처리로서 실행되는 디바이스 리스트 취득(Get Device List) 처리 시퀀스의 상세 내용에 대하여 설명한다.
도 10에서, 클라이언트는 외부 네트워크에 접속된 클라이언트이고, 서버는 홈 네트워크 등의 내부 네트워크에 속하며, 어플리케이션 게이트웨이가, 양 네트워크의 사이에 존재하고 있는 것으로 한다. 클라이언트와 어플리케이션 게이트웨이 사이에서는 전술한 로그인 처리가 실행이 완료되고, 상호 인증이 성립되어 신뢰성이 보증되고 있는 것으로 한다.
단계 S71에서, 클라이언트는, 어플리케이션 게이트웨이에 대하여 신정의 커맨드, 즉 서버 정보로서의 디바이스 리스트 취득[Get Device list] 요구 커맨드를 송신한다.
어플리케이션 게이트웨이는, 디바이스 리스트 취득[Get Device list] 요구 커맨드를 수신하면, 클라이언트 확인 처리를 실행한 후, 단계 S72에서, 디바이스 리스트의 취득 처리를 실행한다.
어플리케이션 게이트웨이에서의 처리의 상세 내용에 대하여, 도 11을 참조하여 설명한다.
단계 S101에서, 어플리케이션 게이트웨이는, 클라이언트로부터 디바이스 리스트 취득[Get Device list] 요구 커맨드를 수신하면, 우선 클라이언트가 로그인 처리에 의해 인증이 성립된 클라이언트인지의 여부를 판정한다. 도 9를 참조하여 설명한 클라이언트 식별자와 세션 ID를 대응시킨 클라이언트 세션 ID 테이블이 등록된 클라이언트이면, 로그인 처리에 의한 인증이 성립된 클라이언트이고, 미등록의 클라이언트이면, 로그인 처리에 의한 인증이 성립되지 않은 클라이언트이므로, 처리의 속행을 중지하여, 단계 S106에서 에러 메시지를 클라이언트에 송신하고, 단계 S107에서 클라이언트와의 커넥션을 절단하여, 처리를 종료한다.
디바이스 리스트 취득[Get Device list] 요구 커맨드의 송신 클라이언트가, 클라이언트 세션 ID 테이블 등록된 클라이언트이면, 로그인 처리에 의한 인증이 성립된 클라이언트라고 판정하여, 단계 S103에서, 디바이스 리스트 취득 처리를 실행한다.
디바이스 리스트의 취득은, UPnP의 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행된다. 즉, 어플리케이션 게이트웨이는, 어플리케이션 게이트웨이가 접속된 홈 네트워크 등의 내부 네트워크에서 서버 발견 처리를 실행하여, 각 서버로부터의 서버 정보를 수신한다. 이것은, 네트워크를 통한 서치 리퀘스트을 UDP(User Datagram Protocol)에 따라, 어플리케이션 게이트웨이로부터 멀티캐스트 송신(HTTPMU:HTTPMulticast)하고, 홈 네트워크에 접속된 서버로부터 제공 가능한 서비스에 대한 정보가 포함되는 OK 레스펀스를 UDP에 따라 수신하는 처리이다.
단계 S104에서, 어플리케이션 게이트웨이는, 디바이스 리스트의 취득에 성공하였는지의 여부를 판정하여, 취득 처리에 실패한 경우에는, 단계 S108에서, 디바이스 리스트의 취득 에러 메시지를 클라이언트에 송신한다.
디바이스 리스트의 취득에 성공한 경우에는, 단계 S105로 진행하여, 취득한 디바이스 리스트를 클라이언트에 송신한다. 어플리케이션 게이트웨이는, 홈 네트워크 내에서 UDP 패킷에 의해 각 서버로부터 수신한 서버가 제공 가능한 서비스 정보를 TCP 패킷의 페이로드로서 저장한 TCP 패킷을 생성하여 클라이언트에 송신한다. 또한, 이 디바이스 리스트의 송신 데이터는, 전술한 SSL 핸드 쉐이크 처리에서 클라이언트와 공유한 비밀 정보(암호 키)에 의해 암호화되어 송신된다. 디바이스 리스트에는, 서버에 대한 액세스 정보, 서버가 제공 가능한 서비스 정보가 포함된다.
도 10에 도시하는 단계 S73에서, 어플리케이션 게이트웨이는, 홈 네트워크 내의 서버1, 서버2, 서버3으로부터 수신한 서비스 제공이 가능한 것을 나타내는 OK 레스펀스와, 서버에서 제공 가능한 서비스에 대한 정보를 포함하는 디바이스 리스트를 암호화하여 클라이언트에 송신한다.
상기한 처리에 의해, 각 서버로부터의 OK 레스펀스를 어플리케이션 게이트웨이를 통하여 수신한 클라이언트는, 전술한 SSL 핸드 쉐이크 처리에서 어플리케이션 게이트웨이와 공유한 비밀 정보(암호 키)에 의해 수신 데이터를 복호하여 서버 리스트를 취득하여, 서버에 대한 액세스 정보 및 제공 가능한 서비스에 대한 정보를 확인한다. 그 후, 이들 정보에 기초하여, 서버에 서비스를 요구하는 서비스 요구 처리를 실행한다. 예를 들면, 서버에 대한 콘텐츠 송신 요구 등을 실행하고, 콘텐츠를 취득하여 클라이언트의 디스플레이, 스피커를 통하여 출력하는 처리가 가능하게 된다.
또한, 어플리케이션 게이트웨이가 클라이언트로부터 디바이스 리스트 취득[Get Device list] 요구 커맨드를 수신하기 이전에, 이미 서버 정보를 취득이 완료한 경우에는, 어플리케이션 게이트웨이는, 클라이언트로부터의 디바이스 리스트 취득[Get Device list] 요구 커맨드의 수신 후, 새롭게 서버 발견 처리를 실행하지 않고, 축적 완료된 서버 정보를 클라이언트에 송신하여도 된다.
이와 같이, 외부 네트워크에 접속된 정규의 액세스 권한을 갖는 클라이언트는, UPnP에서 적용되는 SSDP(Simple Service Discovery Protocol)에 기초하는 서버 정보와 완전히 동일한 정보를 어플리케이션 게이트웨이를 통하여 수신할 수 있으므로, 홈 네트워크 내의 클라이언트와 마찬가지의 환경에서 서버에 대한 서비스 요구를 실행하는 것이 가능하게 된다.
디바이스 리스트를 취득한 클라이언트는, 도 5에 도시하는 단계 S36에서, 서버에 대한 콘텐츠 취득 요구를 행한다. 서버에 대한 콘텐츠 취득 처리는, 예를 들면 취득한 서버 정보에 포함되는 콘텐츠의 URL을 지정한 HTTP(Hyper Text Transfer Protocol) GET 메소드 리퀘스트의 송신 처리로서 실행 가능하다.
단계 S37에서, 어플리케이션 게이트웨이는, 서버에 대한 콘텐츠 요구를 중계하여 패킷을 서버에 송신한다. 클라이언트로부터 패킷을 수신한 게이트웨이는, 수신 패킷의 HOST 헤더값으로 쓰여진 디바이스의 IP 어드레스와 포트 번호에 새롭게 커넥션을 설정하고, 패킷 내용을 변경하지 않고 중계한다. 이에 의해, 종래 사용하고 있었던 프로토콜을 변경하지 않고, 외부 네트워크에 접속된 클라이언트와 내부 네트워크에 접속된 서버 사이에서의 통신 및 서버로부터 클라이언트에 대한 서비스 제공이 가능하게 된다.
서버가 콘텐츠 요구를 수신하면, 서버는, 지정 콘텐츠를 자기의 기억 수단으로부터 취득하여, 클라이언트에 송신한다. 콘텐츠는, 어플리케이션 게이트웨이를 통하여 클라이언트에 송신(단계 S38, S39)된다. 클라이언트는, 서버로부터의 수신 콘텐츠를 클라이언트의 디스플레이, 스피커를 통하여 재생하는 것이 가능하게 된다.
[어플리케이션 게이트웨이, 및 클라이언트의 기능 구성]
어플리케이션 게이트웨이, 클라이언트, 및 서버의 하드웨어 구성에 대해서는, 먼저 도 2를 참조하여 설명한 바와 같고, 전술한 각종 처리는, 어플리케이션 게이트웨이, 클라이언트, 및 서버 각각의 기억부에 저장된 프로그램에 따라 제어부로서의 CPU가 실행한다.
CPU에 의해 실행되는 처리는, 예를 들면 어플리케이션 게이트웨이에서는, 클라이언트로부터의 요구를 입력하여, 입력 정보의 해석, 해석 결과에 기초하는 기기 등록 처리, 기기 인증 처리(로그인 처리), SSDP에 따른 서버 발견 처리, 패킷 중계 처리, 패킷 생성, 해석 처리, 또한 기기 등록 처리에서의 패스워드 등, 각종 메시지 출력, 유저 입력 정보의 해석 처리 등이다. 클라이언트측의 처리로서는, 어플리케이션 게이트웨이로부터 수신하는 정보 해석 처리, 어플리케이션 게이트웨이와 송수신하는 패킷 생성, 해석 처리, 기기 등록 처리, 기기 인증 처리, 메시지 출력, 유저 입력 정보의 해석 처리, 콘텐츠 재생 처리 등이다
기본적으로 이들 처리는, 어플리케이션 게이트웨이, 클라이언트 장치에 각각 구비된 제어부로서의 CPU의 제어 하에 미리 저장된 처리 프로그램에 따라 실행된다. 제어부로서의 CPU가 실행하는 처리 및 기억부의 저장 데이터 중, 본 발명에 관련된 주요 구성에 대하여, 도 12 및 도 13을 참조하여 설명한다. 도 12는, 어플리케이션 게이트웨이의 주요 기능 구성을 설명하는 블록도이고, 도 13은, 클라이언트의 주요 기능 구성을 설명하는 블록도이다.
우선, 도 12의 블록도를 참조하여 어플리케이션 게이트웨이의 기능 구성에 대하여 설명한다. 데이터 송수신 처리부(501)는, 클라이언트 및 서버에 대한 패킷 송수신 처리를 실행한다. 데이터 송수신 처리부(501)는, 송신 패킷의 생성 처리, 수신 패킷의 해석 처리를 행한다. 패킷의 어드레스 설정, 어드레스 인식, 데이터부에 대한 데이터 저장, 데이터부로부터의 데이터 취득 처리 등이다.
데이터 입력부(502)는, 키보드, 스위치 등의 입력 수단으로부터의 입력 정보를 각 처리부에 대하여 입력한다. 데이터 출력부(503)는, 각종 처리부의 출력 신호를 외부의 출력부로서의 디스플레이나 스피커에 대하여 출력하는 처리를 실행한다.
기기 등록 처리부(504)는, 클라이언트로부터의 기기 등록 요구에 기초하는 일련의 처리 시퀀스를 실행한다. 도 4를 참조하여 설명한 시퀀스 중, 어플리케이션 게이트웨이측의 처리를 프로그램 기억부(507)에 저장된 기기 등록 처리 프로그램(521)에 따라 실행한다. 또한, 기기 등록 처리부(504)는, 패스워드 생성 판정부(511)를 갖고, 패스워드의 생성 및 대조 처리를 실행한다.
기기 인증 처리부(505)는, 외부 네트워크에 접속된 클라이언트로부터의 접속 처리 요구를 수신한 경우의 기기 인증 처리를 실행한다. 도 5∼도 7을 참조하여 설명한 기기 인증 처리(로그인 처리)에서의 어플리케이션 게이트웨이측의 처리를, 프로그램 기억부(507)에 저장된 기기 인증 처리 프로그램(522)에 따라 실행한다. 또한, 암호 키 공유 처리로서의 SSL(Secure Socket Layer) 핸드 쉐이크 처리도 실행한다.
서버 발견 처리 실행부(506)는, 클라이언트로부터의 디바이스 리스트 요구에 기초하여, SSDP에 따른 서버 발견 처리를 실행하여 취득한 서버 리스트를 클라이언트에 송신하는 처리를 실행한다. 도 10, 도 11을 참조하여 설명한 어플리케이션 게이트웨이측의 처리를, 프로그램 기억부(507)에 저장된 서버 발견 처리 실행 프로그램(523)에 따라 실행한다.
프로그램 기억부(507)에는, 상기 각 처리부에서 실행하는 프로그램, 즉 기기 등록 처리 프로그램(521), 기기 인증 처리 프로그램(522), 및 서버 발견 처리 실행 프로그램(523)이 저장된다.
데이터 기억부(508)에는, 클라이언트와의 기기 등록 처리에서 생성한 공유 비밀 정보(Secret)(531), 즉 Secret=GUID(C)∥GUID(S)를 하드웨어 유니크 ID(Huid(S))로 암호화한 데이터, 및 클라이언트와의 기기 등록 처리에서 생성한 클라이언트 식별 테이블(532)(도 8 참조), 및 클라이언트와의 상호 인증이 성립되어 클라이언트와의 신뢰 관계가 구축된 세션을, 클라이언트마다 식별하기 위한 클라이언트 세션 ID 테이블(533)(도 9 참조)이 저장된다.
또한, 도 12에 도시하는 블록도는, 어플리케이션 게이트웨이가 실행하는 여러가지 처리 중에서 본 발명에 관련된 처리를 실행하기 위한 기능을 중심으로 하여 도시한 기능 블록도로서, 어플리케이션 게이트웨이는, 이 밖에도 각종 처리 프로그램을 유지하며, 각 처리 프로그램에 따른 여러가지 처리를 실행한다.
이어서, 도 13을 참조하여 클라이언트의 기능 구성에 대하여 설명한다. 데이터 송수신 처리부(601)는, 어플리케이션 게이트웨이 및 서버에 대한 패킷 송수신 처리를 실행한다. 데이터 송수신 처리부(601)는, 송신 패킷의 생성 처리, 수신 패킷의 해석 처리를 행한다. 패킷의 어드레스 설정, 어드레스 인식, 데이터부에 대한 데이터 저장, 데이터부로부터의 데이터 취득 처리 등이다.
데이터 입력부(602)는, 키보드, 스위치 등의 입력 수단으로부터의 입력 정보를 각 처리부에 대하여 입력한다. 데이터 출력부(603)는, 각종 처리부의 출력 신호를 외부의 출력부로서의 디스플레이나 스피커에 대하여 출력하는 처리를 실행한다.
기기 등록 처리부(604)는, 어플리케이션 게이트웨이 외의 디바이스 사이에서 실행하는 기기 등록 처리 시퀀스를 실행한다. 도 4를 참조하여 설명한 처리 중, 클라이언트측의 처리를, 프로그램 기억부(607)에 저장된 기기 등록 처리 프로그램(621)에 따라 실행한다.
기기 인증 처리부(605)는, 외부 네트워크에 접속된 클라이언트가, 어플리케이션 게이트웨이에 대하여 접속했을 때의 기기 인증 처리를 실행한다. 도 5∼도 7을 참조하여 설명한 기기 인증 처리(로그인)에서의 클라이언트측의 처리를, 프로그램 기억부(607)에 저장된 기기 인증 처리 프로그램(622)에 따라 실행한다. 또한, 암호 키 공유 처리로서의 SSL(Secure Socket Layer) 핸드 쉐이크 처리도 실행한다.
디바이스 리스트 요구 처리 실행부(606)는, 어플리케이션 게이트웨이에 대한 디바이스 리스트 요구의 발행 및 디바이스 리스트 취득 처리를 실행한다. 도 10을 참조하여 설명한 처리 중, 클라이언트측의 처리를, 프로그램 기억부(607)에 저장된 디바이스 리스트 요구 처리 실행 프로그램(623)에 따라 실행한다.
프로그램 기억부(607)에는, 상기 각 처리부에서 실행하는 프로그램, 즉 기기 등록 처리 프로그램(621), 기기 인증 처리 프로그램(622), 및 디바이스 리스트 요구 처리 실행 프로그램(623)이 저장된다.
데이터 기억부(608)에는, 예를 들면 어플리케이션 게이트웨이와의 기기 등록 처리에서 생성한 공유 비밀 정보(Secret)(631), 즉 Secret=GUID(C)∥GUID(S)를 하드웨어 식별자(Huid(C))로 암호화한 데이터, 및 어플리케이션 게이트웨이와의 인증이 성립된 경우에, 어플리케이션 게이트웨이로부터 취득하는 세션 ID632이 저장된다.
또한, 도 13에 도시하는 블록도는, 클라이언트가 실행하는 여러가지 처리 중에서 본 발명에 관련된 처리를 실행하기 위한 기능을 중심으로 하여 도시한 기능 블록도로서, 클라이언트는, 이 밖에도 각종 처리 프로그램을 유지하며, 각 처리 프로그램에 따른 여러가지 처리를 실행한다.
이상, 특정한 실시예를 참조하면서, 본 발명에 대하여 상세히 설명하였다. 그러나, 본 발명의 요지를 일탈하지 않는 범위에서 당업자가 해당 실시예의 수정이나 대용을 할 수 있는 것은 자명하다. 즉, 예시라는 형태로 본 발명을 개시하여 온 것으로, 한정적으로 해석되어서는 안된다. 본 발명의 요지를 판단하기 위해서는, 특허 청구의 범위의 란을 참작하여야 한다.
또한, 명세서 중에서 설명한 일련의 처리는 하드웨어, 또는 소프트웨어, 혹은 양자의 복합 구성에 의해 실행하는 것이 가능하다. 소프트웨어에 의한 처리를 실행하는 경우에는, 처리 시퀀스를 기록한 프로그램을, 전용 하드웨어에 내장된 컴퓨터 내의 메모리에 인스톨하여 실행시키거나, 혹은 각종 처리가 실행 가능한 범용 컴퓨터에 프로그램을 인스톨하여 실행시키는 것이 가능하다.
예를 들면, 프로그램은 기록 매체로서의 하드디스크나 ROM(Read Only Memory)에 미리 기록해 둘 수 있다. 혹은, 프로그램은 플렉시블 디스크, CD-ROM(Compact Disc Read Only Memory), MO(Magneto optical) 디스크, DVD(Digital Versatile Disc), 자기 디스크, 반도체 메모리 등의 리무버블 기록 매체에, 일시적 혹은 영속적으로 저장(기록)해 둘 수 있다. 이러한 리무버블 기록 매체는, 소위 패키지 소프트웨어로서 제공할 수 있다.
또한, 프로그램은 전술한 바와 같은 리무버블 기록 매체로부터 컴퓨터에 인스톨하는 것 외에, 다운로드 사이트로부터, 컴퓨터에 무선 전송하거나, LAN(Local Area Network), 인터넷이라고 하는 네트워크를 통하여, 컴퓨터에 유선으로 전송하고, 컴퓨터에서는, 그와 같이 하여 전송되어 오는 프로그램을 수신하고, 내장된 하드디스크 등의 기록 매체에 인스톨할 수 있다.
또한, 명세서에 기재된 각종 처리는, 기재에 따라서 시계열로 실행될 뿐만 아니라, 처리를 실행하는 장치의 처리 능력 혹은 필요에 따라 병렬적으로 혹은 개별로 실행되어도 된다. 또한, 본 명세서에서 시스템은, 복수 장치의 논리적 집합 구성으로서, 각 구성의 장치가 동일 케이스 내에 있는 것으로는 한정하지 않는다.
이상, 설명한 바와 같이, 본 발명에 따르면, 외부 네트워크 및 내부 네트워크의 경계에 접속된 어플리케이션 게이트웨이로서의 정보 처리 장치가, 내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신한 것을 조건으로 하여, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하고, 취득한 서버 정보에 기초하여 디바이스 리스트를 생성하여, 외부 네트워크를 통하여 클라이언트에 송신하는 구성으로 했으므로, 외부 네트워크에 접속된 클라이언트에 의한 홈 네트워크 등, 내부 네트워크에 접속된 서버 정보의 효율적인 취득이 가능하게 된다.
또한, 본 발명의 구성에 따르면, 클라이언트와 어플리케이션 게이트웨이로서의 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키를 이용하여 디바이스 리스트를 암호화하여 클라이언트에 송신하는 구성으로 했으므로, 인터넷 등의 도청의 우려가 있는 통신로를 통한 데이터 통신이 필요한 경우에도, 시큐어한 디바이스 리스트 송신이 가능하게 된다.
또한, 본 발명의 구성에 따르면, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고, 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 구성으로 했으므로, 서버 정보 취득 처리는 UPnP의 규정에 따른 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행 가능하고, 또한 외부 네트워크에 접속된 클라이언트에 대한 디바이스 리스트 송신은, 안전성, 확실성이 높은 TCP에 의한 통신에 의한 리스트 송신이 실현된다.
또한, 본 발명의 구성에 따르면, 클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여 디바이스 리스트의 취득 및 송부를 실행하는 구성으로 했으므로, 액세스 권한을 갖지 않는 부정 클라이언트로부터의 디바이스 리스트 취득 처리가 방지된다.

Claims (23)

  1. 외부 네트워크 및 내부 네트워크의 경계에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 정보 처리 장치로서,
    외부 네트워크 및 내부 네트워크를 통한 데이터 송수신을 실행하는 데이터 송수신부와,
    내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수령한 것을 조건으로 하여, 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하고, 상기 서버 정보 취득 처리에 기초하여 취득한 서버 정보에 기초하여, 외부 네트워크를 통하여 상기 클라이언트에 송신하는 디바이스 리스트 생성 처리를 실행하는 서버 발견 처리 실행부
    를 갖는 것을 특징으로 하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 서버 발견 처리 실행부는,
    내부 네트워크를 통한 접속 서버에 관한 서버 정보 취득 처리를 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행하는 구성인 것을 특징으로 하는 정보 처리 장치.
  3. 제1항에 있어서,
    상기 서버 발견 처리 실행부는,
    내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를, 상기 내부 네트워크를 통한 서치 리퀘스트의 멀티캐스트 송신에 의해 실행하고, 내부 네트워크에 접속된 서버로부터의 수신 정보에 기초하여 상기 디바이스 리스트를 생성하는 구성인 것을 특징으로 하는 정보 처리 장치.
  4. 제1항에 있어서,
    상기 서버 발견 처리 실행부는,
    내부 네트워크에 접속된 각 서버로부터 수신하는 UDP(User Datagram Protocol) 패킷 저장 정보에 기초하여, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를 생성하는 구성인 것을 특징으로 하는 정보 처리 장치.
  5. 제1항에 있어서,
    상기 서버 발견 처리 실행부는,
    외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를, 상기 클라이언트와 공유하는 키로 암호화하는 처리를 실행하고,
    디바이스 리스트를 암호화 데이터로서 클라이언트에 송신하는 구성인 것을 특징으로 하는 정보 처리 장치.
  6. 제5항에 있어서,
    상기 디바이스 리스트의 암호화에 적용하는 키는, 클라이언트와 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키인 것을 특징으로 하는 정보 처리 장치.
  7. 제1항에 있어서,
    상기 정보 처리 장치는,
    상기 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고, 상기 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 구성인 것을 특징으로 하는 정보 처리 장치.
  8. 제1항에 있어서,
    상기 서버 발견 처리 실행부는,
    상기 디바이스 리스트 생성 처리에서, 내부 네트워크에 접속된 서버로부터 수신하는 정보에 기초하여, 각 서버에 대한 액세스 정보, 및 각 서버가 제공 가능한 서비스 정보를 포함하는 디바이스 리스트를 생성하는 처리를 실행하는 구성인 것을 특징으로 하는 정보 처리 장치.
  9. 제1항에 있어서,
    상기 정보 처리 장치는,
    클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리부를 더 갖고,
    상기 서버 발견 처리 실행부는,
    상기 기기 인증 처리부에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여, 서버 발견 처리를 실행하는 구성인 것을 특징으로 하는 정보 처리 장치.
  10. 제1항에 있어서,
    상기 정보 처리 장치는,
    클라이언트 식별자와, 클라이언트와의 커넥션 식별 정보로서의 세션 ID를 대응시킨 클라이언트 세션 ID 테이블을 갖고,
    클라이언트로부터 수신하는 세션 ID에 기초하는 상기 클라이언트 세션 ID 테이블의 검색에 의해 클라이언트의 식별 처리를 실행하는 구성인 것을 특징으로 하는 정보 처리 장치.
  11. 제1항에 있어서,
    상기 정보 처리 장치는,
    외부 네트워크 및 내부 네트워크의 경계에 위치하는 어플리케이션 게이트웨이로서의 기능을 갖는 것을 특징으로 하는 정보 처리 장치.
  12. 제1항에 있어서,
    상기 정보 처리 장치는,
    외부 네트워크 및 내부 네트워크의 경계에 위치하는 리버스 프록시 서버로서의 기능을 갖는 것을 특징으로 하는 정보 처리 장치.
  13. 외부 네트워크 및 내부 네트워크의 경계에 접속된 정보 처리 장치에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 정보 처리 방법으로서,
    내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신하는 정보 요구 수신 단계와,
    내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하는 서버 정보 취득 처리 단계와,
    상기 서버 정보 취득 처리 단계에서 취득한 서버 정보에 기초하여 상기 클라이언트에 송신하는 디바이스 리스트를 생성하는 디바이스 리스트 생성 처리 단계와,
    상기 디바이스 리스트 생성 처리 단계에서 생성한 디바이스 리스트를 외부 네트워크를 통하여 클라이언트에 송신하는 디바이스 리스트 송신 단계
    을 갖는 것을 특징으로 하는 정보 처리 방법.
  14. 제13항에 있어서,
    상기 서버 정보 취득 처리 단계는,
    내부 네트워크를 통한 접속 서버에 관한 서버 정보 취득 처리를 SSDP(Simple Service Discovery Protocol)를 적용한 처리로서 실행하는 것을 특징으로 하는 정보 처리 방법.
  15. 제13항에 있어서,
    상기 서버 정보 취득 처리 단계는,
    내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를, 상기 내부 네트워크를 통한 서치 리퀘스트의 멀티캐스트 송신에 의해 실행하는 것을 특징으로 하는 정보 처리 방법.
  16. 제13항에 있어서,
    상기 서버 정보 취득 처리 단계는,
    내부 네트워크에 접속된 각 서버로부터 수신하는 UDP(User Datagram Protocol) 패킷 저장 정보를 수신하고,
    상기 디바이스 리스트 생성 처리 단계는,
    상기 UDP(User Datagram Protocol) 패킷 저장 정보에 기초하여, 외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를 생성하는 것을 특징으로 하는 정보 처리 방법.
  17. 제13항에 있어서,
    상기 디바이스 리스트 송신 단계는,
    외부 네트워크에 접속된 클라이언트에 대하여 송신하는 디바이스 리스트를, 상기 클라이언트와 공유하는 키로 암호화하는 처리를 실행하고,
    디바이스 리스트를 암호화 데이터로서 클라이언트에 송신하는 것을 특징으로 하는 정보 처리 방법.
  18. 제17항에 있어서,
    상기 디바이스 리스트의 암호화에 적용하는 키는, 클라이언트와 정보 처리 장치 사이에서 실행하는 SSL(Secure Socket Layer) 핸드 쉐이크 처리에 의해 취득한 암호 처리 키인 것을 특징으로 하는 정보 처리 방법.
  19. 제13항에 있어서,
    상기 서버 정보 취득 처리 단계는,
    상기 내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 UDP(User Datagram Protocol)에 따라 실행하고,
    상기 디바이스 리스트 송신 단계는,
    상기 외부 네트워크를 통한 클라이언트에 대한 디바이스 리스트 송신을 TCP(Transmission Control Protocol)에 따라 실행하는 것을 특징으로 하는 정보 처리 방법.
  20. 제13항에 있어서,
    상기 디바이스 리스트 생성 처리 단계는,
    내부 네트워크에 접속된 서버로부터 수신하는 정보에 기초하여, 각 서버에 대한 액세스 정보, 및 각 서버가 제공 가능한 서비스 정보를 포함하는 디바이스 리스트를 생성하는 처리를 실행하는 것을 특징으로 하는 정보 처리 방법.
  21. 제13항에 있어서,
    상기 정보 처리 방법은,
    클라이언트의 액세스 권한의 유무를 판정하는 기기 인증 처리 단계를 더 갖고,
    상기 서버 정보 취득 처리 단계는,
    상기 기기 인증 처리 단계에서 클라이언트의 액세스 권한이 인정된 것을 조건으로 하여 실행하는 것을 특징으로 하는 정보 처리 방법.
  22. 제13항에 있어서,
    상기 정보 처리 방법은,
    클라이언트 식별자와, 클라이언트와의 커넥션 식별 정보로서의 세션 ID를 대응시킨 클라이언트 세션 ID 테이블에 기초하여, 클라이언트로부터 수신하는 세션 ID에 따른 테이블 검색을 실행하고, 클라이언트의 식별 처리를 실행하는 단계를 더 갖는 것을 특징으로 하는 정보 처리 방법.
  23. 외부 네트워크 및 내부 네트워크의 경계에 접속된 정보 처리 장치에서, 외부 네트워크 접속 클라이언트로부터의 데이터 처리 요구에 따른 처리를 실행하는 컴퓨터 프로그램으로서,
    내부 네트워크에 접속된 서버 정보의 취득 요구를 외부 네트워크 접속 클라이언트로부터 수신하는 정보 요구 수신 단계와,
    내부 네트워크를 통한 접속 서버의 서버 정보 취득 처리를 실행하는 서버 정보 취득 처리 단계와,
    상기 서버 정보 취득 처리 단계에서 취득한 서버 정보에 기초하여 상기 클라이언트에 송신하는 디바이스 리스트를 생성하는 디바이스 리스트 생성 처리 단계와,
    상기 디바이스 리스트 생성 처리 단계에서 생성한 디바이스 리스트를 외부 네트워크를 통하여 클라이언트에 송신하는 디바이스 리스트 송신 단계
    를 갖는 것을 특징으로 하는 컴퓨터 프로그램.
KR1020057016744A 2003-03-10 2004-03-05 정보 처리 장치, 및 정보 처리 방법 Expired - Fee Related KR101038612B1 (ko)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
KR20050117543A true KR20050117543A (ko) 2005-12-14
KR101038612B1 KR101038612B1 (ko) 2011-06-03

Family

ID=32984418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057016744A Expired - Fee Related KR101038612B1 (ko) 2003-03-10 2004-03-05 정보 처리 장치, 및 정보 처리 방법

Country Status (6)

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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101013104B1 (ko) * 2008-06-18 2011-02-14 은재형 애플리케이션의 수정 및 변경 없는 오픈망 및 폐쇄망용 스토리지 기반 실시간 중계 인터페이스 시스템
KR20170123324A (ko) * 2015-04-03 2017-11-07 미쓰비시 덴키 빌딩 테크노 서비스 가부시키 가이샤 중계 장치 및 프로그램

Families Citing this family (66)

* 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
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
US8028038B2 (en) 2004-05-05 2011-09-27 Dryden Enterprises, Llc Obtaining a playlist based on user profile matching
US9826046B2 (en) * 2004-05-05 2017-11-21 Black Hills Media, Llc Device discovery for digital entertainment network
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
CN101048766A (zh) * 2004-10-27 2007-10-03 诺基亚公司 控制存储器设备的操作
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
JP2006227843A (ja) 2005-02-16 2006-08-31 Sony Corp コンテンツ情報管理システム、コンテンツ情報管理装置及びコンテンツ情報管理方法、並びにコンピュータ・プログラム
US8316416B2 (en) 2005-04-04 2012-11-20 Research In Motion Limited Securely using a display to exchange information
US9438683B2 (en) * 2005-04-04 2016-09-06 Aol Inc. Router-host logging
CA2603230C (en) 2005-04-18 2013-03-26 Research In Motion Limited System and method for secure messaging between wireless device and application gateway
US7856504B2 (en) 2005-05-11 2010-12-21 Sony Corporation Server device, inter-server device connection method, program, and recording medium
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 삼성전자주식회사 웹서비스를 통해 홈 네트워크 기기의 서비스를 홈 네트워크외부에 제공하는 방법 및 장치
WO2007063408A2 (en) * 2005-12-02 2007-06-07 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
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
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
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
US8024431B2 (en) * 2007-12-21 2011-09-20 Domingo Enterprises, Llc System and method for identifying transient friends
US8010601B2 (en) 2007-12-21 2011-08-30 Waldeck Technology, Llc Contiguous location-based user networks
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
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 キヤノン株式会社 デバイス検索装置、デバイス検索方法並びにプログラム
US8340637B2 (en) * 2010-04-30 2012-12-25 T-Mobile Usa, Inc. Securely establishing presence on telecommunication devices
US8925042B2 (en) 2010-04-30 2014-12-30 T-Mobile Usa, Inc. Connecting devices to an existing secure wireless network
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 国民技术股份有限公司 一种数据安全摆渡的方法及系统
US9692630B2 (en) * 2012-11-28 2017-06-27 Sony Corporation Receiver for receiving data in a broadcast system
US9755781B2 (en) 2012-11-28 2017-09-05 Sony Corporation Broadcast system and method for error correction using redundant data
CN107370568A (zh) * 2012-11-28 2017-11-21 索尼公司 接收器、混合广播宽带终端、电视机及数据接收方法
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
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
US12321951B2 (en) * 2021-04-16 2025-06-03 Somos, Inc. Systems and methods for fraudulent activity detection

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 ネットワーク上のデバイス情報取得方法、ネットワーク上のデバイス情報取得装置及び記録媒体
JP3727922B2 (ja) * 2000-09-27 2005-12-21 株式会社エヌ・ティ・ティ・ドコモ 電子機器の遠隔制御方法及び電子機器の管理設備
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 遠隔制御代理方法および遠隔制御代理装置
US7080092B2 (en) * 2001-10-18 2006-07-18 Bea Systems, Inc. Application view component for system integration
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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101013104B1 (ko) * 2008-06-18 2011-02-14 은재형 애플리케이션의 수정 및 변경 없는 오픈망 및 폐쇄망용 스토리지 기반 실시간 중계 인터페이스 시스템
KR20170123324A (ko) * 2015-04-03 2017-11-07 미쓰비시 덴키 빌딩 테크노 서비스 가부시키 가이샤 중계 장치 및 프로그램

Also Published As

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

Similar Documents

Publication Publication Date Title
KR101038612B1 (ko) 정보 처리 장치, 및 정보 처리 방법
JP4487490B2 (ja) 情報処理装置、およびアクセス制御処理方法、情報処理方法、並びにコンピュータ・プログラム
US7882356B2 (en) UPnP authentication and authorization
JP3826100B2 (ja) 通信中継装置、通信システム及び通信制御プログラム
US7340769B2 (en) System and method for localizing data and devices
US7987359B2 (en) Information communication system, information communication apparatus and method, and computer program
US7500269B2 (en) Remote access to local content using transcryption of digital rights management schemes
RU2409853C2 (ru) Администрирование управления доступом в беспроводных сетях
CN102077546B (zh) UPnP设备之间的远程访问
US20060265735A1 (en) Content transmission apparatus, content reception apparatus, content transmission method and content reception method
US10218681B2 (en) Home network controlling apparatus and method to obtain encrypted control information
JP6056970B2 (ja) 情報処理装置、端末機、情報処理システム及び情報処理方法
KR100412356B1 (ko) 지니 네트워크에서 사용자 인증을 할 수 있는 디스커버리프로토콜, 그 실행 장치, 그 데이터 구조 및 관리자 인증방법
GB2560895A (en) Secure transfer of data between internet of things devices
WO2007050801A2 (en) System and method for localizing data and devices
Lucenius et al. Security technologies in home and wireless networking environments
Primc Naslavljanje overovljenih identitet
KR20050046834A (ko) 클라이언트 시스템과 특정 도메인 서버간의 보안 시스템및 그 방법

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

A201 Request for examination
E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20140527

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20140527

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301