KR20140068231A - 피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증 - Google Patents

피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증 Download PDF

Info

Publication number
KR20140068231A
KR20140068231A KR1020147011110A KR20147011110A KR20140068231A KR 20140068231 A KR20140068231 A KR 20140068231A KR 1020147011110 A KR1020147011110 A KR 1020147011110A KR 20147011110 A KR20147011110 A KR 20147011110A KR 20140068231 A KR20140068231 A KR 20140068231A
Authority
KR
South Korea
Prior art keywords
content item
content
peer
node
advertised
Prior art date
Application number
KR1020147011110A
Other languages
English (en)
Other versions
KR101549803B1 (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 KR20140068231A publication Critical patent/KR20140068231A/ko
Application granted granted Critical
Publication of KR101549803B1 publication Critical patent/KR101549803B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

예를 들어 송신 피어 노드로부터 수신 피어 노드로 공급된 콘텐츠가 수신 노드에 의해 수신되었던 콘텐츠에 대응하는 것을 검증하기 위해, 피어-투-피어 콘텐츠 배포 시스템 내의 피어-공급 콘텐츠의 완전성을 검증하기 위한 구조 및 방법이 개시된다. 광고된 콘텐츠의 요청에 응답하여 송신 노드로부터 콘텐츠 아이템을 수신하고 있는 수신 노드는 트랙커 노드로부터 검증 토큰을 요청한다. 트랙커 노드는 검증 토큰 자체를 생성하고(예를 들어, 광고된 콘텐츠 아이템의 랜덤 부분을 선택하고 랜덤 부분의 해시를 수행함으로써 광고된 콘텐츠 아이템을 얻거나 액세스를 가지면) 또는 대안적으로 트랙커 노드는 광고된 콘텐츠 아이템을 소유하는 콘텐츠 저장 노드에 의해 생성된 검증 토큰을 얻는다. 선택적으로, 검증 토큰은 랜덤 시드값을 생성함으로써 그리고 랜덤 부분 및 랜덤 시드값의 해시를 수행함으로써 컴퓨팅될 수 있다. 트랙커 노드는 검증 토큰을 수신 노드에 송신하고, 이 수신 노드는 이어서 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, 제 2 토큰이 검증 토큰에 일치하면 수신된 콘텐츠 아이템이 광고된 콘텐츠 아이템에 일치하는 것으로 검증할 수 있다.

Description

피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증 {VERIFICATION OF INTEGRITY OF PEER-RECEIVED CONTENT IN A PEER-TO-PEER CONTENT DISTRIBUTION SYSTEM}
관련 출원의 상호 참조
본 출원은, 개시 내용이 그대로 본 명세서에 참조로서 통합되어 있으며, 2011년 10월 25일 출원되고, 발명의 명칭이 "IMS-기반 콘텐츠 배포 서비스용 보안 특징(Security Features for IMS-Based Content Distribution Services)"인 미국 가특허 출원 제 61/551,056호의 우선권을 주장한다.
본 출원은 본 출원과 동일자로 출원되어 본 발명의 양수인에게 양도된 발명의 명칭이 "피어-투-피어 콘텐츠 배포 시스템 내의 어나운싱 피어에 의한 콘텐츠 소유의 검증(Verification of Content Possession by an Announcing Peer in a Peer-to-Peer Content Distribution System)"인 미국 특허 출원 제 13/344,826호에 관련된다.
발명의 분야
본 발명은 일반적으로 멀티미디어 데이터 보안에 관한 것으로서, 더 구체적으로는 멀티미디어 데이터 네트워크(예를 들어, IMS-기반 네트워크를 포함함) 내의 피어-투-피어(peer-to-peer) 콘텐츠 배포 서비스를 향상시키기 위한 기술에 관한 것이다.
멀티미디어 콘텐츠 배포 서비스(예를 들어, 라이브 스트리밍 및 주문형 콘텐츠(content-on-demand))에 대한 수요는 고정 및 모바일 광대역 기술 및 더욱 더 강력한 모바일 핸드셋의 개발의 견지에서 최근에 엄청나게 증가하고 있다. 이 폭발적인 수요를 만족시키기 위해 그리고 중앙 집중형(centralized) 미디어 서버의 사용과 연계된 대역폭 및 품질 제한을 극복하기 위해, 최종 사용자에 근접하여 더욱 더 많은 에지 서버를 전개하는 요구가 존재한다. 이러한 요구를 처리하는 일 방식은 피어-투-피어(P2P) 기술을 사용하는 것이다.
일반적으로, 피어-투-피어 기술은 서로 상호 작용하고 리소스를 공유하여 중앙 집중형 리소스에 대한 수요를 감소시키기 위해 몇몇 작업 또는 목적을 수행하기 위한 분산된 종단 노드(end-node)(피어라 칭함)의 세트에 의존한다. 예를 들어, 멀티미디어 콘텐츠 배포의 경우에, 피어-투-피어 기술은 중앙 집중형 서버로부터 에지 서버로, 그리고 최종 사용자 장비 능력이 허용하는 정도로, 사용자 장비(user equipment: UE)로 저장 및 대역폭 수요를 오프로드하는데 이용될 수 있다. 일 예에서, 에지 서버는 로컬하게 서빙된 UE로부터의 미디어 콘텐츠 요청 뿐만 아니라 이웃하는 에지 서버로부터의 요청을 취급할 수 있다. 유사하게, UE의 능력이 허용하면, UE는 예비 상향링크 대역폭, 저장 공간 및 다른 리소스를 다른 피어 UE에 제공할 수 있다. 게다가, 콘텐츠는 분할 방식으로 전송될 수 있고, 대부분의 트래픽은 네트워크의 에지를 가로질러 확산될 수 있다. 이들 모두는 중앙 집중형 서버에 대한 감소된 저장 및 대역폭 수요, 뿐만 아니라 증가하는 수의 에지 서버 및 UE로 양호하게 스케일링하는 향상된 시스템 능력에 기여한다.
그러나, P2P는 멀티미디어 콘텐츠 배포 서비스를 위한 유망한 모델이지만, 여전히 처리될 필요가 있는 보안 과제들이 존재한다. 일 양태에서, 최종 사용자에 의한 콘텐츠 소유를 검증해야 하는(즉, 예상 콘텐츠-공급자 피어에 의해 광고된 콘텐츠가 실제로 광고 피어에 의해 소유되는지를 검증함) 요구가 존재한다. 이 위협(threat)은 관련 미국 특허 출원 제 XXXX호에 의해 처리된다. 다른 양태에서, 어나운싱 피어(announcing peer)가 광고된 또는 요청된 콘텐츠와는 소정 방식으로 상이한 수신 피어와 콘텐츠를 악의적으로(또는 가능하게는 잘못) 공유할 수 있는 콘텐츠의 성공적인 광고 후의 위협이 존재한다. 이에 따라, 예를 들어 송신 피어로부터 수신 피어로 공급된 콘텐츠가 수신 피어에 의해 요청되었던 콘텐츠에 대응하는지를 검증하기 위해, 피어-공급 콘텐츠의 완전성을 검증하는 요구가 존재한다.
송신 노드 및 수신 노드를 포함하는 복수의 피어 노드에 논리적으로 접속된 트랙커 노드를 구비하는 피어-투-피어 콘텐츠 배포 시스템에 의해 상기 문제점이 처리되고 당 기술 분야의 기술적 진보가 성취된다.
일 실시예에서, 수신 노드에서 수신된 피어-수신된 콘텐츠의 완전성을 검증하기 위해 트랙커 노드에 의해 수행되는 방법이 제공되고, 수신된 콘텐츠는 광고된 콘텐츠 아이템의 요청에 응답하여 송신 노드로부터 수신 노드에 의해 수신되어 있다. 방법은 수신 노드로부터, 수신된 콘텐츠 아이템과 연계된 검증 토큰의 요청을 수신하는 단계를 포함하고, 검증 토큰의 요청은 광고된 콘텐츠 아이템의 표식(indicia)을 포함한다. 트랙커 노드는 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 얻는다. 트랙커 노드는, 예를 들어 광고된 콘텐츠 아이템을 얻고, 광고된 콘텐츠 아이템의 랜덤 부분을 선택하고 랜덤 부분의 해시를 수행하여 검증 토큰을 생성함으로써, 자체로 검증 토큰을 생성하고, 또는 대안적으로 트랙커 노드는 광고된 콘텐츠 아이템을 소유하는 콘텐츠 저장 노드에 의해 생성된 검증 토큰을 요청할 수 있다. 검증 토큰을 얻으면, 트랙커 노드는 토큰을 수신 노드에 송신하고, 이 수신 노드는 그 후에 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, 송신 노드가 모르는 사이에, 제 2 토큰이 검증 토큰에 일치하면 수신된 콘텐츠 아이템이 광고된 콘텐츠 아이템이 일치하는 것으로 검증하도록 동작 가능하다.
또 다른 실시예에서, 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드를 포함하는 피어-투-피어 콘텐츠 배포 시스템에 따라 수신 노드에서 수신된 콘텐츠의 완전성을 검증하기 위한 장치가 제공된다. 장치는 트랙커 노드에, 피어 노드 인터페이스와, 콘텐츠 저장 노드 인터페이스와, 메모리와, 피어 노드 인터페이스, 콘텐츠 저장 노드 인터페이스 및 메모리에 작동가능하게 결합된 적어도 하나의 프로세서를 포함한다. 프로세서는 (a) 수신 노드로부터, 수신된 콘텐츠 아이템과 연계된 검증 토큰의 요청을 수신하고 - 수신된 콘텐츠 아이템은 광고된 콘텐츠 아이템의 요청에 응답하여 송신 노드로부터 수신되어 있고, 검증 토큰의 요청은 광고된 콘텐츠 아이템의 표식을 포함함 -, (b) 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 얻고, (c) 수신 노드에, 검증 토큰, 광고된 콘텐츠 아이템의 표식 및 토큰이 생성되는 광고된 콘텐츠 아이템의 랜덤 부분의 표식을 포함하는 응답을 송신하도록 - 수신 노드는 그 후에 (1) 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, (2) 제 2 토큰이 검증 토큰에 일치하면 수신된 콘텐츠 아이템이 광고된 콘텐츠 아이템에 일치하는 것으로 검증하도록 동작 가능함 - 구성된다. 프로세서는 (b)에서, 예를 들어 광고된 콘텐츠 아이템을 얻고, 광고된 콘텐츠 아이템의 랜덤 부분을 선택하고, 랜덤 부분의 해시를 수행하여, 검증 토큰을 생성함으로써, 자체로 검증 토큰을 생성할 수 있고, 또는 대안적으로 트랙커 노드는 광고된 콘텐츠 아이템을 소유하는 콘텐츠 저장 노드에 의해 생성된 검증 토큰을 얻을 수 있다.
또 다른 실시예에서, 수신 노드에서 수신된 피어-수신 콘텐츠의 완전성을 검증하기 위해 수신 노드에 의해 수행되는 방법이 제공된다. 방법은 송신 노드로부터, 광고된 콘텐츠 아이템의 요청에 응답하여 수신된 콘텐츠 아이템을 수신하는 단계와, 트랙커 노드에, 수신된 콘텐츠 아이템과 연계된 검증 토큰의 요청을 송신하는 단계와, 요청에 응답하여, 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 수신하는 단계와, 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하는 단계와, 송신 노드가 모르는 사이에, 제 2 토큰이 검증 토큰에 일치하면 수신된 콘텐츠 아이템이 광고된 콘텐츠 아이템에 일치하는 것으로 검증하는 단계를 포함한다.
또 다른 실시예에서, 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드를 포함하는 피어-투-피어 콘텐츠 배포 시스템에 따라 수신 노드에서 수신된 피어-수신 콘텐츠의 완전성을 검증하기 위한 장치가 제공된다. 장치는 수신 노드에, 메모리와, 메모리에 작동가능하게 결합된 적어도 하나의 프로세서를 포함한다. 프로세서는 (a) 송신 노드로부터, 광고된 콘텐츠 아이템의 요청에 응답하여 수신된 콘텐츠 아이템을 수신하고, (b) 트랙커 노드에, 수신된 콘텐츠 아이템과 연계된 검증 토큰의 요청을 송신하고 - 검증 토큰의 요청은 광고된 콘텐츠 아이템의 표식을 포함함 -, (c) 요청에 응답하여, 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 수신하고, (d) 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, (e) 제 2 토큰이 검증 토큰에 일치하면 수신된 콘텐츠 아이템이 광고된 콘텐츠 아이템에 일치하는 것으로 검증하도록 구성된다.
본 발명의 상기 및 다른 장점은 이하의 상세한 설명의 숙독시에 그리고 도면의 참조시에 명백해질 것이다.
도 1은 본 발명의 실시예가 구현될 수 있는 예시적인 IMS-기반 통신 네트워크를 도시하고,
도 2는 다수의 온라인 사용자들에게 콘텐츠의 라이브 스트리밍을 제공하기 위한 IMS-기반 P2P 콘텐츠 배포 시스템의 예시적인 사용을 도시하고,
도 3은 다수의 온라인 사용자를 위한 주문형-콘텐츠 서비스를 제공하기 위한 IMS-기반 P2P 콘텐츠 배포 시스템의 예시적인 사용을 도시하고,
도 4는 본 발명의 실시예에 따른 피어-공급 콘텐츠의 완전성의 검증을 위한 메시지 시퀀스를 도시하고,
도 5는 본 발명의 다른 실시예에 따른 피어-공급 콘텐츠의 완전성의 검증을 위한 메시지 시퀀스를 도시한다.
용이한 참조를 위해, 상세한 설명은 이하와 같이 분할된다. 섹션 I은 IMS-기반 피어-투-피어 콘텐츠 배포 시스템의 개요를 제공한다. 섹션 II는 본 발명의 원리가 적용될 수 있는 IMS-기반 피어-투-피어 콘텐츠 배포 시스템의 예시적인 사용 경우를 설명한다. 섹션 III은 IMS-기반 P2P 콘텐츠 배포 시스템 내의 피어-공급 콘텐츠의 완전성의 검증을 위한 해결책을 설명한다.
I. IMS-기반 P2P 콘텐츠 배포 시스템의 개요
3세대 파트너쉽 프로젝트(3rd Generation Partnership Project: 3GPP 또는 3GPP2)에 의해 표준화된 인터넷 멀티미디어 서브시스템(Internet Multimedia Subsystem: IMS)은 일반적으로 수렴형 네트워크(converged network)(즉, 모바일 사용자 뿐만 아니라 고정-액세스 사용자를 갖는)에 멀티미디어 서비스를 제공하기 위한 차세대 아키텍처를 규정하고 있다. IMS는 IP(Internet Protocol: 인터넷 프로토콜)를 사용하여, 더 구체적으로는 세션 개시 프로토콜(Session Initiation Protocol: SIP)을 통신 프로토콜로서 사용한다. 최근에 3GPP는 IMS-기반 피어-투-피어(Peer-to-Peer: P2P) 콘텐츠 배포 서비스를 제공하기 위해 어떻게 IMS 인프라구조를 사용해야 하는지를 연구하기 시작하고 있다.
도 1은 P2P 콘텐츠 배포 서비스를 제공하기 위한 예시적인 IMS-기반 통신 네트워크(100)를 도시한다. 통신 네트워크(100)는 IP 데이터 네트워크(110)의 하나 이상의 콘텐츠 서버에 액세스 네트워크(104, 106)에 의해 상호 접속된 하나 이상의 사용자 플랫폼(102)을 포함한다. 예시적인 통신 네트워크(100)에서, 콘텐츠 서버(108)는 중앙 집중형 콘텐츠 소스 서버(112)에 대한 수요를 감소시키면서 최종 사용자에 멀티미디어 콘텐츠를 제공하기 위해, 중앙 집중형 콘텐츠 소스 서버(112)에 대조적으로, IP 네트워크의 에지에(즉, 사용자 플랫폼(102)에 근접하여) 콘텐츠 캐시 서버를 포함한다.
사용자 플랫폼(102)("IMS UE")은 예를 들어 콘텐츠 서버(108)로부터 멀티미디어 콘텐츠를 요청하기 위해, 그리고 UE 능력이 허용하면, 멀티미디어 콘텐츠를 저장하고 그리고/또는 멀티미디어 콘텐츠를 다른 사용자 플랫폼에 제공하기 위해, 사용자에 의한 조작을 받게 되는 랩탑 컴퓨터, 데스크탑 컴퓨터 또는 모바일 컴퓨팅 디바이스를 포함할 수 있다.
액세스 네트워크(104, 106)는 일반적으로, 무선 또는 고정 액세스 네트워크를 포함하는 임의의 유형의 액세스 네트워크를 포함한다. 예시적인 통신 네트워크(100)에서, 액세스 네트워크(104, 106)는 패킷 교환/무선 액세스 네트워크(PS 코어/RAN)(104) 및 고정 광대역/WLAN 액세스 네트워크(106)를 포함한다.
중앙 집중형 콘텐츠 소스 서버(112)는 일반적으로, 1차 콘텐츠 공급자에 의해 명목적으로 조작되고 1차 콘텐츠 아이템을 생성하고, 저장하고, 배포하도록 적용된 사용자 플랫폼(102)에 대한 중앙 집중 위치에 위치된 임의의 서버, 플랫폼, 시스템, 애플리케이션 또는 기능을 포함할 수 있다. 콘텐츠 공급자의 예는 예를 들어 영화 또는 텔레비전 제작 또는 배포 회사를 포함하고, 1차 콘텐츠 아이템은 영화, 라이브 스트리밍 이벤트 등을 비한정적으로 포함할 수 있다. 통상적으로, 1차 콘텐츠 아이템이 더 작은 세그먼트로 분할될 수 있는 정도로, 중앙 집중형 소스 서버는 1차 콘텐츠의 전체(즉, 모든 세그먼트)로의 액세스를 유지하거나 갖는다.
콘텐츠 캐시 서버(108)는 일반적으로 다른 콘텐츠 캐시 서버 또는 사용자 플랫폼으로의 배포를 위해 중앙 집중형 콘텐츠 소스 서버(112)로부터 발생하는 멀티미디어 콘텐츠를 수신하도록 적용된 네트워크의 에지에(즉, 사용자 플랫폼(102)에 근접하여) 명목적으로 위치된 임의의 서버, 플랫폼, 시스템, 애플리케이션 또는 기능을 포함한다. 콘텐츠 아이템이 부분으로 분할될 수 있는 정도로, 개별 콘텐츠 캐시 서버(108)는 중앙 집중형 콘텐츠 서버에 유지된 1차 콘텐츠 아이템의 전체 미만을 수신하여 배포할 수 있다.
IP 데이터 네트워크(110)는 콘텐츠 캐시 서버(108)와 중앙 집중형 콘텐츠 소스 서버(112)와 사용자 플랫폼(102) 사이의 콘텐츠 배포를 지원하도록 적용된 임의의 패킷-기반 네트워크를 포함한다. 예시적인 통신 네트워크(100)에서, IP 데이터 네트워크(110)는 IMS-기반 네트워크이고, 네트워크의 부분은 IMS 코어(114)라 칭한다. 일반적으로, IMS-기반 통신 네트워크(100) 내의 메시지 트래픽은 2개의 기능 평면, 즉 트래픽을 시그널링하기 위한 제어 평면 및 멀티미디어 콘텐츠와 같은 베어러 트래픽을 위한 베어러 평면 중 어느 하나에서 특징화될 수 있다. 개념적으로, IMS 코어(114)는 제어 트래픽을 제어하기 위한 네트워크의 부분이고, IP 데이터 네트워크(110)는 베어러 트래픽을 통신하기 위한 네트워크(100)의 부분이다.
사용자 플랫폼(102)은 비한정적으로, SIP 레지스트레이션, SIP 세션 요청, 사용자 인증을 성취하기 위해, 그리고 적용 가능한 경우 콘텐츠 배포 서비스를 개시하기 위해 IMS 코어(114)와 통신한다. UE 능력이 허용하는 정도로, 개별 사용자 플랫폼(102)은 다른 사용자 플랫폼으로부터 콘텐츠를 수신하고 그리고/또는 다른 사용자 플랫폼에 콘텐츠를 배포하기 위해 피어-투-피어 모델에 참여할 수 있다. 이 문맥에서, 콘텐츠를 수신하고 그리고/또는 배포하기 위해 참여하는 사용자 플랫폼은 "피어"라 칭한다.
일 실시예에서, IMS 코어(114)는 비한정적으로, 클라이언트 등록(client enrollment), 콘텐츠 인덱싱, 브라우징 및 탐색 기능을 성취하기 위해 콘텐츠 배포 서비스와 연계된 기능 요소를 포함한다. 일 양태에서, IMS 코어는 각각의 플랫폼에 의해 소유된 콘텐츠 아이템 또는 세그먼트의 리스트 등을 유지함으로써, 다양한 사용자 플랫폼(102)에 의해 소유된 콘텐츠 아이템을 "트랙킹"하는 트랙커 노드(116)를 포함한다. 트랙커 노드는 또한 캐시 서버(108)에 의해 소유된 콘텐츠 아이템을 트랙킹할 수도 있다.
트랙커 노드(116)는 일반적으로 사용자 플랫폼(102), 캐시 서버(108) 및 사용자 플랫폼(102)에 의해 소유된 콘텐츠 아이템을 트랙킹하도록 그리고 본 발명의 실시예에 따르면 사용자 플랫폼(108)에 의해 소유되도록 요구되는 콘텐츠를 검증하도록 동작 가능한 콘텐츠 소스 서버(112)에 논리적으로 접속된 임의의 하드웨어 디바이스, 서버, 애플리케이션 또는 기능으로서 정의된다. 트랙커 노드(116)는 단일의 디바이스 또는 플랫폼 내에 상주할 수 있고 또는 다수의 디바이스 또는 플랫폼 사이에 분포될 수 있다. 트랙커 노드의 논리적 하드웨어 구성(도시 생략)은 프로세서 및 메모리와, 논리적으로 접속된 노드들과 통신을 실행하기 위한 그리고 트랙킹 및 검증 기능을 수행하기 위한 피어 노드 인터페이스 및 콘텐츠 저장 노드 인터페이스를 포함한다. 트랙킹 및 검증 기능은 예를 들어 비한정적으로, 메모리 내에 저장된 프로그램 코드(예를 들어, 이들에 한정되는 것은 아니지만, 운영 체제 펌웨어/소프트웨어 및 응용 소프트웨어를 포함함)를 실행하는 프로세서에 의해 수행될 수 있다.
II. IMS-기반 P2P 콘텐츠 배포 시스템의 예시적인 사용 경우
A. 사용 경우 1: 다수의 온라인 사용자를 위한 라이브 스트리밍 서비스
도 2는 다수의 온라인 사용자의 라이브 스트리밍을 위한 IMS-기반 P2P 콘텐츠 배포 시스템(200)의 사용의 도면이다. 편의상, 도 1에 도 2의 유사한 요소는 유사한 도면 부호로 식별될 것이다.
복수의 사용자 아이콘(102)은 논리적 도메인(202)("도메인 1") 내에서 동작하는 다수의 온라인 사용자(및 UE)를 표현한다. 사용자 아이콘(102)은 4개의 IMS 가입자, 제시카(Jessica), 밥(Bob), 제이슨(Jason) 및 앨리스(Alice)를 식별한다. 도메인(202)은 예를 들어 IMS 서비스 공급자의 지리학적 도메인을 포함할 수 있다. 사용자(102)는 IP 데이터 네트워크(110) 및 IMS 코어(114)와 통신함으로써 멀티미디어 서비스 및 콘텐츠에 액세스한다. 일반적으로 도 1에 관련하여 설명된 바와 같이, IP 데이터 네트워크는 멀티미디어 콘텐츠를 배포하기 위한 콘텐츠 캐시 서버(108) 및 콘텐츠 소스 서버(112)를 포함하고, IMS 코어(114)는 클라이언트 등록, 콘텐츠 인덱싱, 브라우징 및 탐색 기능과 같은 기능을 수행하기 위한 트랙커(116)를 비한정적으로 포함하는 다양한 기능 요소를 포함한다. 베어러 트래픽(204)은 실선에 의해 나타내고, 제어 트래픽(206)은 점선에 의해 나타낸다.
예시적인 사용 경우에, 제시카는 8 pm에 시작하는 농구 경기를 시청하기를 원하고, 그녀는 "IMS 라이브 채널"이 경기를 브로드캐스팅할 수 있다는 것을 푸시된 광고 또는 그녀의 IMS 스트리밍 클라이언트(UE)로부터 통지한다. 그녀는 IMS 라이브 채널로부터 경기를 시청하도록 결정한다.
(1) 8 pm 무렵에, 제시카는 그녀의 IMS 스트리밍 클라이언트를 시동하고, IMS 레지스트레이션 프로세스를 시작한다. 제시카가 그녀의 레지스트레이션을 완료한 후에, IMS 스트리밍 서비스는 IMS 라이브 브로드캐스트 채널의 정보를 클라이언트에 전달한다. 제시카는 그녀가 IMS 라이브 브로드캐스트 채널의 리스트로부터 시청을 원하는 농구 경기와 연계된 IMS 라이브 브로드캐스트 채널을 탐색하여 선택하고, 이에 의해 그녀가 농구 경기 시청을 시작하기를 원하는 것을 IMS 스트리밍 클라이언트에 지시한다.
(2) 제시카의 요청을 수신한 후에, IMS 스트리밍 서비스는 몇몇 이유로(예를 들어, 능력 병목현상 또는 액세스 라우터가 IP 멀티캐스트 기능성을 지원하지 않음) IP 멀티캐스트 서비스에 액세스를 제공하지 않을 수 있고, 따라서 적은 지연을 갖는 농구 경기를 제공하기 위해 피어-투-피어 모델에 기초하여 애플리케이션 레벨 멀티캐스트로 전환한다. 멀티캐스트 피어-투-피어 서비스는 농구 경기의 채널 리소스의 위치를 질의하고, 제시카에게 리소스 위치의 리스트를 송신한다. 예시의 목적으로, 시작시에, 단지 콘텐츠 캐시 서버(108)는 농구 경기를 캐시하고, 따라서 IMS 스트리밍 서비스는 제시카에게 그녀가 콘텐츠 캐시 서버(108)로부터 농구 경기를 스트리밍할 수 있다는 것을 알려준다. 스트리밍 농구 경기 콘텐츠는 고정 길이 부분들로 연속적으로 분할된다는 것을 주목하라.
(3) 제시카의 UE는 콘텐츠 캐시 서버(108)로부터 농구 경기의 전체 또는 부분들(즉, 세그먼트들)을 다운로드하고 제시카는 농구 경기를 시청하기 시작한다.
(4) 제시카의 UE는 농구 경기의 어느 부분들이 그 캐시된 메모리 내에 현재 유지되는지를 트랙커(116)에 주기적으로 어나운싱한다. 콘텐츠의 UE 어나운싱 소유의 양태는 이하 콘텐츠의 "광고"라 칭한다. 적용 가능한 경우, 콘텐츠 캐시 서버 및/또는 다른 UE는 또한 트랙커(116)에 콘텐츠의 소유를 광고하여, 트랙커가 리소스들이 콘텐츠의 어느 세그먼트들을 유지하고 있는지를 계속적으로(또는 거의 계속적으로) "트랙킹"하게 된다. 제시카의 콘텐츠의 광고에 일치하여, 제시카의 UE는 농구 경기의 몇몇 부분들을 수신하고 있는 콘텐츠 캐시 서버 및/또는 다른 피어 UE의 업데이트된 리스트를 수신한다.
(5) 시간 경과에 따라, 도메인 1 내의 더욱 더 많은 사용자들은 농구 경기의 시청 대기열에 참여하고, 콘텐츠 캐시 서버(108)는 오버로드되기 시작한다. 예시의 목적으로, 최종 트랙커 업데이트에 대해(단계 4), 제시카의 UE는 제이슨, 앨리스 및 밥의 UE가 농구 경기의 몇몇 캐시된 부분들을 갖는다는 것을 인지한다고 가정한다. 이에 따라, 제시카의 UE는 더 효율적인 콘텐츠 배포를 위해 그리고 콘텐츠 캐시 서버(108)의 작업부하를 감소시키기 위해 제이슨, 앨리스 및/또는 밥의 UE로부터 농구 경기의 몇몇 부분들을 다운로드하려고 시도할 수 있다.
B. 사용 경우 2: 다수의 온라인 사용자를 위한 주문형 콘텐츠 서비스
도 3은 다수의 온라인 사용자들을 위한 주문형 콘텐츠 서비스를 제공하기 위한 IMS-기반 P2P 콘텐츠 배포 시스템(300)의 사용의 도면이다. 편의를 위해, 도 1 및 도 2에 대한 도 3의 유사한 요소는 유사한 도면 부호로 식별될 것이다.
복수의 사용자 아이콘(102)은 복수의 논리적 도메인(202)(도시된 바와 같이, "도메인 1" 및 "도메인 2") 내에서 동작하는 다수의 온라인 사용자들(및 UE)을 표현한다. 사용자 아이콘(102)은 각각의 도메인(202) 내에 4개의 IMS 가입자를 식별한다(도메인 1 내의 무명, 도메인 2 내의 제시카, 밥, 제이슨 및 앨리스). 도메인(202)은 예를 들어 2개의 상이한 IMS 서비스 공급자의 개별 논리적 도메인 또는 단일의 서비스 공급자의 개별 지리학적 도메인을 포함할 수 있다. 사용자(102)는 IP 데이터 네트워크(110) 및 IMS 코어(114)와 통신함으로써 멀티미디어 서비스 및 콘텐츠에 액세스한다. 도 3에 도시된 바와 같이, IP 데이터 네트워크는 2개의 콘텐츠 캐시 서버(108)("콘텐츠 캐시 서버 1" 및 "콘텐츠 캐시 서버 2") 및 멀티미디어 콘텐츠를 배포하기 위한 콘텐츠 소스 서버(112)를 포함하고, IMS 코어(114)는 클라이언트 등록, 콘텐츠 인덱싱, 브라우징 및 탐색 기능과 같은 기능을 수행하기 위한 트랙커(116)를 비한정적으로 포함하는 다양한 기능 요소를 포함한다. 베어러 트래픽(304)은 실선에 의해 나타내고, 제어 트래픽(306)은 점선에 의해 나타낸다.
예시적인 사용 경우에, 제시카가 도메인 2 내의 IMS 가입자이고, 그녀의 UE(102) 상에 주문형 영화를 시청하기를 원하는 것(예를 들어, "IMS 온라인 영화 극장"으로부터)으로 가정한다.
(1) 제시카는 그녀의 IMS P2P 애플리케이션 클라이언트를 시동하고, IMS 레지스트레이션 프로세스를 시작한다. 제시카가 그녀의 레지스트레이션을 완료한 후에, IMS P2P 애플리케이션은 프로그램 정보(예를 들어, 주문형 프로그램의 리스트/메뉴)를 클라이언트에 전달한다. 제시카는 프로그램 리스트로부터 영화를 탐색하고 선택하여 그녀가 영화 시청을 시작하기를 원한다는 것을 P2P 애플리케이션에 지시한다.
(2) 제시카의 요청을 수신한 후에, P2P 애플리케이션은 선택된 영화의 필름 저장 리소스의 위치를 질의하고, 리소스 위치들의 리스트를 제시카에 재차 송신한다. 예로서, 선택된 영화가 10개의 부분(예를 들어, 부분 1, 부분 2 등)으로 분할되는 것으로 가정하면, 콘텐츠 소스 서버(112)는 모든 10개의 부분들을 갖고 콘텐츠 캐시 서버(108)는 단지 10개의 부분들의 초기 부분(예를 들어, 부분 1 및 부분 2)만을 갖는다. 제시카의 요청에 응답하는 것으로 가정하면, P2P 애플리케이션은 제시카에게 콘텐츠 캐시 서버 2로부터 영화를 다운로드할 수 있다고 알려준다.
(3) 제시카의 UE는 영화의 어느 부분들이 콘텐츠 캐시 서버 2로부터 다운로드하도록 이용 가능한지를 결정하기 위해 콘텐츠 캐시 서버 2에 질의한다. 콘텐츠 캐시 서버 2는 부분 1 및 2가 다운로드를 위해 이용 가능한 것을 제시카의 UE에 통지한다.
(4) 제시카의 UE는 콘텐츠 캐시 서버 2로부터(예를 들어, UE의 캐시 메모리 내로) 파트 1 및 2를 다운로드하고, 제시카는 영화를 시청하기 시작한다.
(5) 제시카의 UE는 영화의 어느 부분들이 그 캐시된 메모리 내에 현재 유지되는지를 트랙커(116)에 주기적으로 어나운싱하고(또는 "광고함"), 영화의 다른 부분들이 어디에 분포되어 있는지(예를 들어, 콘텐츠 캐시 서버들 또는 피어 UE)를 식별하는 업데이트된 정보를 트랙커(116)로부터 수신한다. 제시카가 부분 1 및 2의 시청을 완료할 때(즉, 콘텐츠 캐시 서버 2로부터 검색됨), 제시카의 UE는 콘텐츠 소스 서버(112)로부터 부분들의 나머지 또는 어디서 트랙커(116)에 의해 지시되는지를 검색할 수 있다.
(6) 시간 경과에 따라, 제시카 주위에(즉, 도메인 2 내에) 더욱 더 많은 사용자가 영화의 시청 대기열에 참여하고, 콘텐츠 캐시 서버 2로부터 부분 1 및 부분 2를 그리고 콘텐츠 소스 서버(112)로부터 다른 부분들을 수신하고, 적어도 초기에 콘텐츠 소스 서버가 혼잡하게 한다. 다행히, 단계 (5)로부터, 사용자들은 트랙커(116)에 의해 지시된 바와 같이 영화의 대안적인 저장 리소스를 주기적으로 인식하게 될 수 있고, 콘텐츠 소스 서버(112)의 작업부하를 경감하기 위해 이들의 리소스에 액세스할 수 있다. 예를 위해, 최종 트랙커 업데이트로서, 제시카의 도메인 내의 사용자들은 영화의 다른 부분들이 이제 콘텐츠 캐시 서버 1로부터 얻어질 수 있다는 것을 인지하고, 이들 사용자는 콘텐츠 캐시 서버 1로부터 영화의 부분들을 다운로드하기 시작한다.
(7) 더 많은 시간이 경과함에 따라, 도메인 1 및 2 내의 더 더욱 많은 사용자가 영화의 시청 대기열에 참여하고, 이제 콘텐츠 캐시 서버 1 및 2가 오버로드되어 있다. 이제, 최종 트랙커 업데이트에서, 제시카의 UE가 영화의 미래의 부분이 그녀의 3개의 이웃하는 UE 제이슨, 밥 및 앨리스로부터 얻어질 수 있다는 것을 인지하고, 따라서 제시카의 UE는 이웃하는 UE들 중 하나 이상으로부터 영화의 부분을 다운로드하려고 시도하는 것으로 가정한다.
III. 문제 기술 및 해결책
상기 사용 경우의 설명으로부터, P2P 콘텐츠 배포 서비스의 중요한 양태는 적용 가능한 경우에, UE 및/또는 콘텐츠 캐시 서버로부터 트랙커로의 콘텐츠 소유의 광고이고, 이 트랙커는 임의의 소정의 시간에 콘텐츠를 소유하는 UE 및/또는 콘텐츠 캐시 서버의 리스트를 유지한다. 일 주요 보안 위협이 콘텐츠의 가능한 거짓 광고 내에 존재하고(예를 들어, 광고된 콘텐츠를 소유하지 않는 악의적 피어에 의해), 이는 트랙커에 의해 유지된 거짓 정보 및 클라이언트 피어측에서의 리소스 및 시간의 낭비를 유도할 수 있다. 이 위협은 P2P 콘텐츠 배포 시스템 내의 어나운싱 피어에 의한 콘텐츠 소유의 검증(즉, 광고된 콘텐츠 소유의 참 또는 거짓을 판정함)에 관한 관련 미국 특허 출원 제 XXXX호에 의해 처리된다.
더욱이, 어나운싱 피어가 광고된 또는 요청된 콘텐츠와는 소정 방식으로 상이한 수신 피어와 콘텐츠를 악의적으로(또는 가능하게는 잘못) 공유할 수 있는 콘텐츠의 성공적인 광고 후의 위협이 존재한다(여기서, 어나운싱 피어는 광고된 콘텐츠 아이템을 소유하는 것으로 검증되어 있음). 예를 들어, 광고 피어는 소정 방식으로 탬퍼링된(tampered-with) 또는 소프트웨어의 악의적인 단편을 포함하는 콘텐츠, 또는 다른 방식으로 적법하지만 수신 피어에 의해 요구되어 있지 않은 콘텐츠를 공유할 수도 있다. 이 경우에, 수신 피어는 정확한 피어-리스트를 트랙커로부터 얻을 것이지만, 수신 피어는 요청된 콘텐츠를 얻지 않을 것이다. 재차, 이는 피어 UE로의 잠재적인 손상은 말할 필요도 없이, 클라이언트 피어측에서 리소스 및 시간의 낭비를 유도할 수 있다. 이 위협을 처리하기 위해, 본 발명의 실시예는 P2P 콘텐츠 배포 시스템 내의 피어-공급 콘텐츠의 완전성의 검증에 관련된다.
이제 도 4를 참조하면, 본 발명의 실시예에 따른 피어-공급 콘텐츠의 완전성의 검증을 위한 메시지 시퀀스가 도시된다. 도 4의 단계들은 적용 가능한 경우에, 도 1, 도 2 또는 도 3에 도시된 것과 같은 P2P 콘텐츠 배포 시스템의 송신 피어(102), 수신 피어(102), 트랙커(116) 및 콘텐츠 소스 서버(112)에 의해 수행된다.
블록 402에서, 송신 피어(예를 들어, "제이슨")는 성공적인 콘텐츠 어나운스먼트를 행하는 것으로, 즉 임의의 콘텐츠를 송신하기에 앞서, 제이슨의 UE가 콘텐츠 아이템의 소유를 광고하고 광고된 콘텐츠 아이템을 소유하기 위해 트랙커에 의해 검증되어 있는 것으로 가정한다. 예를 들어, 도 3과 관련하여 설명된 사용 경우를 참조하여, 트랙커는 제이슨이 제시카의 선택된 영화의 부분 3을 소유하는 것을 제이슨의 UE로부터의 광고 후에 확인할 수도 있다. 성공적인 어나운스먼트에 일치하여, 트랙커(116)는 어나운싱 피어가 광고된 콘텐츠를 소유하는 것으로 확인된다는 것을 지시하기 위해 그 피어 리스트를 업데이트한다. 블록 404에서, 수신 피어(예를 들어, "제시카")는 어느 콘텐츠 아이템이 송신 피어에 의해 소유되어 있는지를 인식하기 위해 피어 리스트를 얻는다.
단계 406에서, 수신 피어는 송신 피어에 의해 소유된 콘텐츠의 아이템(또는 아이템들)을 요청한다. 요청은 "콘텐츠 ID" 또는 콘텐츠의 다른 표식을 포함한다. 요청에 응답하여, 단계 408에서, 송신 피어는 수신 피어에 콘텐츠 아이템(또는 아이템들)을 송신하고, 콘텐츠 아이템(들)은 수신 피어에 의해 수신된다. 주지되어 있는 바와 같이, 피어-공급 콘텐츠는 광고된 또는 요청된 콘텐츠와는 적어도 부분적으로 상이할 수 있다. 단계 410에서, 피어-공급 콘텐츠의 완전성을 검증하기 위해, 수신 피어는 트랙커로부터 검증 토큰을 요청한다. 요청은 "콘텐츠 ID" 또는 요청된 콘텐츠의 다른 표식을 포함한다. 예를 들어, 도 3과 관련하여 설명된 사용 경우를 참조하면, 제시카가 제이슨의 UE로부터 선택된 영화의 부분 3을 요청하는 것으로 가정하면, 또한 제시카의 UE는 부분 3의 탬퍼링된 버전 또는 상이한 콘텐츠 세그먼트를 함께 수신한다. 제시카의 UE는 수신된 콘텐츠가 요청된 광고된 콘텐츠와는 상이한지 여부를 확인하는 것을 돕기 위해 트랙커(예를 들어, "트랜스포머(Transformer)"의 부분 3과 연계됨)로부터 검증 토큰을 요청할 수 있다.
일 실시예에서, 트랙커 자체는 토큰을 생성하고, 이와 같이 하기 위해 광고된 콘텐츠 자체를 소유해야 하고 또는 콘텐츠 소스 서버(112)로부터 콘텐츠를 얻을 수 있다. 이에 따라, 도 4의 메시지 시퀀스에서, 트랙커는 자체로 광고된 콘텐츠를 소유하지 않고, 단계 412, 414에서, 트랙커는 콘텐츠 소스 서버(112)로부터 광고된 콘텐츠를 요청하여 얻는다.
일단 광고된 콘텐츠가 얻어지면, 트랙커는 피어-공급 콘텐츠의 완전성을 검증하기 위해 수신 피어에 의해 사용될 수 있는 토큰을 생성할 것이다. 토큰은 예를 들어 광고된 콘텐츠(예를 들어, 전체 콘텐츠)의 해시, 또는 바람직한 실시예에서, 광고된 콘텐츠의 랜덤 부분의 해시일 수 있다. 잘 알려진 바와 같이, 해시는 데이터의 임의의 블록을 입력으로서 취하고 해시값을 출력으로서 생성하는 암호화 함수이고, 2개의 입력은 2개의 입력이 동일하지 않으면 동일한 해시값을 생성하지 않을 것이다.
콘텐츠의 랜덤 부분에 기초하는 토큰은 단지 콘텐츠의 명목 소유자가 인증 콘텐츠를 갖는 경우에만 정확하게 대답할 수 있는 콘텐츠 자체에 대한 랜덤 질문을 생성하는 것에 동일시될 수 있다. 예를 들어, 책 유추(book analogy)를 사용하여, 챌린저는 책의 72 페이지 상의 21번째 단어의 7번째 문자에 대해 특정 책의 명목 소유자에게 질문할 수 있다. 책을 실제로 갖지 않으면 또는 가능하게는 상이한 버전의 책을 갖고 있으면, 명목 소유자는 질문에 대답하는 것이 가능하지 않을 것이다. 디지털 멀티미디어 콘텐츠의 경우에, 챌린저는 인증 콘텐츠의 특정 책의 소유를 확인하기 위해 명목 소유자에게 질문할 수 있고, 여기서 블록의 시작 및 블록의 길이는 랜덤하게 선택된다. 대답의 양호한 표현이 이 책의 해시일 것이고, 질문의 랜덤성의 견지에서, 해시는 보안될 필요가 없다.
단계 416에서, 바람직한 실시예에 따르면, 트랙커는 광고된 콘텐츠의 블록(예를 들어 지정된 비트에서 시작하고 지정된 길이를 갖는 블록)을 랜덤하게 선택하고, 인증 광고된 콘텐츠의 선택된 블록에 기초하여 토큰을 생성한다. 일 실시예에서, 토큰은 랜덤하게 선택된 블록의 해시를 수행함으로써 유도된다. 주지된 바와 같이, 블록의 랜덤성의 견지에서, 해시는 보안될 필요가 없다. 예를 들어, 제시카가 선택된 영화의 부분 3에 대응하는 검증 토큰을 요청하고 있는 경우에, 트랙커(부분 3의 인증 카피를 얻음)는 지정된 비트에서 시작하여 지정된 길이를 갖는 랜덤 블록을 부분 3으로부터 선택하고, 선택된 블록의 해시를 포함하는 토큰을 생성한다. 단계 418에서, 트랙커는 토큰을 포함하는 수신 피어에 응답을 송신한다. 일 실시예에서, 응답은 "콘텐츠 ID" 또는 요청된 콘텐츠의 다른 표식 및 랜덤 블록의 표식(예를 들어, 시작 비트 번호 및 블록의 길이를 지시함으로써) 및 토큰이 유도되는 해시 함수를 포함한다.
대안적으로, 단계 416에서, 부가의 보안 계층을 성취하고 리플레이 공격을 방지하기 위해, 트랙커는 랜덤 시드값을 생성하고 랜덤하게 선택된 블록과 랜덤 토큰의 조합에 기초하여 토큰을 생성할 수 있다. 예를 들어, 비한정적으로, 트랙커는 랜덤 시드값과 조합된 랜덤하게 선택된 블록의 해시를 수행함으로써 토큰을 생성할 수 있다. 적용 가능한 경우에, 단계 418에서, 트랙커는 수신 피어에 응답하여 랜덤 시드값을 포함한다.
단계 420에서, 수신 피어는 예를 들어 트랙커로부터 수신된(즉, 인증 카피로부터 얻어진 랜덤 샘플에 기초하여) 토큰을 대응 방식으로 자체로 생성된(즉, 피어-수신 콘텐츠로부터 얻어진 대응 랜덤 샘플 및 적용 가능하면 랜덤 시드값에 기초하여) 토큰에 비교함으로써, 송신 피어로부터 수신된 콘텐츠의 완전성을 검증한다. 토큰들이 동일하면, 수신 피어는 피어-수신 콘텐츠의 완전성이 보장되고, 단계 422에서 수신 피어는 성공적인 검증을 송신 피어에 통지한다. 그러나, 토큰들이 동일하지 않으면, 검증은 실패하고 수신 피어는 콘텐츠를 폐기한다. 선택적으로, 수신 피어는 송신 피어 뿐만 아니라 트랙커 노드에 실패된 검증에 대해 통지할 수 있다.
도 5는 본 발명의 대안 실시예에 따른 피어-공급 콘텐츠의 완전성의 검증을 위한 메시지 시퀀스를 도시한다. 도 5의 단계들은 적용 가능한 경우에, 도 1, 도 2 또는 도 3에 도시된 것과 같은 P2P 콘텐츠 배포 시스템의 송신 피어(102), 수신 피어(102), 트랙커(116) 및 콘텐츠 소스 서버(112)에 의해 수행된다.
블록 502에서, 송신 피어(예를 들어, "제이슨")는 성공적인 콘텐츠 어나운스먼트를 행하는 것으로, 즉 임의의 콘텐츠를 송신하기에 앞서, 제이슨의 UE가 콘텐츠 아이템의 소유를 광고하고 광고된 콘텐츠 아이템을 소유하기 위해 트랙커에 의해 검증되어 있는 것으로 가정한다. 성공적인 어나운스먼트에 일치하여, 트랙커(116)는 어나운싱 피어가 광고된 콘텐츠를 소유하는 것으로 확인된다는 것을 지시하기 위해 그 피어 리스트를 업데이트한다. 블록 504에서, 수신 피어(예를 들어, "제시카")는 어느 콘텐츠 아이템이 송신 피어에 의해 소유되어 있는지를 인식하기 위해 피어 리스트를 얻는다.
단계 506에서, 수신 피어는 송신 피어에 의해 소유된 콘텐츠의 아이템(또는 아이템들)을 요청한다. 요청은 "콘텐츠 ID" 또는 콘텐츠의 다른 표식을 포함한다. 요청에 응답하여, 단계 508에서, 송신 피어는 수신 피어에 콘텐츠 아이템(또는 아이템들)을 송신하고, 콘텐츠 아이템(들)은 수신 피어에 의해 수신된다. 주지되어 있는 바와 같이, 피어-공급 콘텐츠는 광고된 또는 요청된 콘텐츠와는 적어도 부분적으로 상이할 수 있다. 단계 510에서, 피어-공급 콘텐츠의 완전성을 검증하기 위해, 수신 피어는 트랙커로부터 검증 토큰을 요청한다. 요청은 "콘텐츠 ID" 또는 요청된 콘텐츠의 다른 표식을 포함한다. 예를 들어, 도 3과 관련하여 설명된 사용 경우를 참조하면, 제시카가 제이슨의 UE로부터 선택된 영화의 부분 3을 요청하는 것으로 가정하면, 또한 제시카의 UE는 부분 3의 탬퍼링된 버전 또는 상이한 콘텐츠 세그먼트를 함께 수신한다. 제시카의 UE는 수신된 콘텐츠가 요청된 광고된 콘텐츠와는 상이한지 여부를 확인하는 것을 돕기 위해 트랙커(예를 들어, 부분 3의 인증 카피와 연계됨)로부터 검증 토큰을 요청할 수 있다.
도 5의 실시예에서, 트랙커는 광고된 콘텐츠를 소유하거나 얻지 않고, 또한 토큰을 생성하지도 않는다. 오히려, 단계 512에서 트랙커는 인증 광고된 콘텐츠를 소유하는 것으로 인지하고 있는 콘텐츠 소스 서버(112)에 검증 토큰을 위한 요청을 포워딩한다. 토큰은 예를 들어 광고된 콘텐츠(예를 들어, 전체 콘텐츠)의 해시일 수 있고 또는 바람직한 실시예에서, 광고된 콘텐츠의 랜덤 부분의 해시일 수 있다.
단계 514에서, 바람직한 실시예에 따르면, 콘텐츠 소스 서버는 광고된 콘텐츠의 블록(예를 들어 지정된 비트에서 시작하고 지정된 길이를 갖는 블록)을 랜덤하게 선택하고, 인증 광고된 콘텐츠의 선택된 블록에 기초하여 토큰을 생성한다. 일 실시예에서, 토큰은 랜덤하게 선택된 블록의 해시를 수행함으로써 유도된다. 예를 들어, 제시카가 선택된 영화의 부분 3에 대응하는 검증 토큰을 요청하고 있는 경우에, 이 요청은 트랙커로부터 콘텐츠 소스 서버로 포워딩되고, 콘텐츠 소스 서버(부분 3의 인증 카피를 소유함)는 지정된 비트에서 시작하여 지정된 길이를 갖는 랜덤 블록을 부분 3으로부터 선택하고, 선택된 블록의 해시를 포함하는 토큰을 생성한다. 단계 516에서, 콘텐츠 소스 서버는 토큰을 포함하는 트랙커에 응답을 송신하고, 단계 518에서, 트랙커는 수신 피어에 응답을 포워딩한다. 일 실시예에서, 응답은 "콘텐츠 ID" 또는 광고된 콘텐츠의 다른 표식 및 토큰이 유도되는 해시 함수 및 콘텐츠의 랜덤 블록의 표식을 포함한다.
대안적으로, 단계 514에서, 부가의 보안 계층을 성취하고 리플레이 공격을 방지하기 위해, 콘텐츠 소스 서버는 랜덤 시드값을 생성하고 랜덤하게 선택된 블록과 랜덤 토큰의 조합에 기초하여 토큰을 생성할 수 있다. 예를 들어, 비한정적으로, 콘텐츠 소스 서버는 랜덤 시드값과 조합된 랜덤하게 선택된 블록의 해시를 수행함으로써 토큰을 생성할 수 있다. 적용 가능한 경우에, 단계 516에서, 콘텐츠 소스 서버는 트랙커에 응답하여 랜덤 시드값을 포함하고, 이 랜덤 시드값은 단계 518에서 토큰과 함께 수신 피어에 포워딩된다.
단계 520에서, 수신 피어는 예를 들어 콘텐츠 소스 서버에 의해 생성되어 트랙커로부터 포워딩된(즉, 인증 카피로부터 얻어진 랜덤 샘플에 기초하여) 토큰을 대응 방식으로 자체로 생성된(즉, 피어-수신 콘텐츠로부터 얻어진 대응 랜덤 샘플에 기초하여) 토큰에 비교함으로써, 송신 피어로부터 수신된 콘텐츠의 완전성을 검증한다. 토큰들이 동일하면, 수신 피어는 피어-수신 콘텐츠의 완전성이 보장되고, 단계 522에서 수신 피어는 성공적인 검증을 송신 피어에 통지한다. 그러나, 토큰들이 동일하지 않으면, 검증은 실패하고 수신 피어는 콘텐츠를 폐기한다. 선택적으로, 수신 피어는 송신 피어 뿐만 아니라 트랙커에 실패된 검증에 대해 통지할 수 있다.
도 1 내지 도 5 및 상기 설명은 어떻게 본 발명을 구성하여 사용해야 하는지를 당 기술 분야의 숙련자들에게 교시하기 위해 본 발명의 특정 예시적인 실시예를 설명하고 있다. 설명된 실시예들은 모든 관점에서 한정적이 아니라 예시적인 것으로서 고려되어야 한다. 본 발명은 첨부된 청구범위에 의해 지시되어 있는 발명의 범주로부터 벗어나지 않고 다른 특정 형태로 구체화될 수 있다. 청구범위의 등가의 의미 및 범위 내에 있는 모든 변경은 이들 범주 내에 포함되어야 한다.
예를 들어, 실시예는 IMS-기반 네트워크 토폴로지를 참조하여 본 명세서에 설명된다. 그러나, 본 발명의 원리는, IMS-기반 네트워크에 적용 가능하지만, 이와 같이 한정되도록 의도된 것은 아니라는 것이 이해되어야 한다. 오히려, 본 발명의 실시예는 일반적으로 멀티미디어 콘텐츠 배포를 용이하게 하기 위해 P2P 기술에 의존하는 임의의 유형의 통신 네트워크 또는 하이브리드 네트워크에 적용 가능하다.
100: IMS-기반 통신 네트워크 102: 사용자 플랫폼
104: PS 코어/RAN 106: 고정 광대역/WLAN 액세스
108: 콘텐츠 캐시 서버 110: IP 네트워크
112: 콘텐츠 소스 서버 114: IMS 코어
200: IMS-기반 P2P 콘텐츠 배포 시스템 202: 도메인

Claims (8)

  1. 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드들을 포함하고, 상기 피어 노드들은 송신 노드 및 수신 노드를 포함하는 피어-투-피어(peer-to-peer) 콘텐츠 배포 시스템에서 상기 트랙커 노드에 의해 수행되는 방법에 있어서,
    상기 수신 노드로부터, 수신된 콘텐츠 아이템과 연계된 검증 토큰에 대한 요청을 수신하는 단계 - 상기 수신된 콘텐츠 아이템은 광고된 콘텐츠 아이템의 요청에 응답하여 상기 송신 노드로부터 수신되어 있고, 상기 검증 토큰에 대한 요청은 상기 광고된 콘텐츠 아이템의 표식(indicia)을 포함함 - 와,
    상기 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 획득하는 단계와,
    상기 검증 토큰, 상기 광고된 콘텐츠 아이템의 표식 및 토큰이 생성되는 광고된 콘텐츠 아이템의 랜덤 부분의 표식을 포함하는 응답을 상기 수신 노드로 송신하는 단계 - 상기 수신 노드는 그 후에 (a) 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, (b) 상기 제 2 토큰이 상기 검증 토큰에 일치하면, 상기 수신된 콘텐츠 아이템이 상기 광고된 콘텐츠 아이템에 일치하는 것으로 검증하도록 동작 가능함 - 를 포함하는
    방법.

  2. 제 1 항에 있어서,
    상기 검증 토큰을 획득하는 단계는
    상기 광고된 콘텐츠 아이템을 획득하는 단계와,
    상기 광고된 콘텐츠 아이템의 랜덤 부분을 선택하는 단계와,
    상기 랜덤 부분의 해시를 수행하여, 상기 검증 토큰을 생성하는 단계를 포함하는
    방법.
  3. 제 1 항에 있어서,
    상기 검증 토큰을 획득하는 단계는
    상기 광고된 콘텐츠 아이템을 획득하는 단계와,
    상기 광고된 콘텐츠 아이템의 랜덤 부분을 선택하는 단계와,
    랜덤 시드값(random seed value)을 생성하는 단계와,
    상기 랜덤 부분 및 상기 랜덤 시드값의 해시를 수행하여, 상기 검증 토큰을 생성하는 단계를 포함하는
    방법.

  4. 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드들을 포함하는 피어-투-피어 콘텐츠 배포 시스템에 따라 수신 노드에서 수신된 콘텐츠의 완전성을 검증하기 위한 장치에 있어서,
    피어 노드 인터페이스와,
    콘텐츠 저장 노드 인터페이스와,
    메모리와,
    상기 피어 노드 인터페이스, 상기 콘텐츠 저장 노드 인터페이스 및 상기 메모리에 작동가능하게 연결된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는
    (a) 상기 수신 노드로부터, 수신된 콘텐츠 아이템과 연계된 검증 토큰에 대한 요청을 수신하고 - 상기 수신된 콘텐츠 아이템은 광고된 콘텐츠 아이템의 요청에 응답하여 송신 노드로부터 수신되어 있고, 상기 검증 토큰에 대한 요청은 상기 광고된 콘텐츠 아이템의 표식을 포함함 -,
    (b) 상기 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 획득하고,
    (c) 상기 검증 토큰, 상기 광고된 콘텐츠 아이템의 표식 및 토큰이 생성되는 광고된 콘텐츠 아이템의 랜덤 부분의 표식을 포함하는 응답을 상기 수신 노드로 송신하도록 - 상기 수신 노드는 그 후에 (1) 상기 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고, (2) 상기 제 2 토큰이 상기 검증 토큰에 일치하면 상기 수신된 콘텐츠 아이템이 상기 광고된 콘텐츠 아이템에 일치하는 것으로 검증하도록 동작 가능함 - 구성되는
    장치.
  5. 제 4 항에 있어서,
    상기 프로세서는, 상기 (b)에서, 상기 광고된 콘텐츠 아이템을 획득하고,
    상기 광고된 콘텐츠 아이템의 랜덤 부분을 선택하고,
    상기 랜덤 부분의 해시를 수행하여, 상기 검증 토큰을 생성하도록 구성되는
    장치.
  6. 제 4 항에 있어서,
    상기 프로세서는, 상기 (b)에서, 상기 광고된 콘텐츠 아이템을 획득하고,
    상기 광고된 콘텐츠 아이템의 랜덤 부분을 선택하고,
    랜덤 시드값을 생성하고,
    상기 랜덤 부분 및 상기 랜덤 시드값의 해시를 수행하여, 상기 검증 토큰을 생성하도록 구성되는
    장치.
  7. 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드들을 포함하고, 상기 피어 노드들은 송신 노드 및 수신 노드를 포함하는 피어-투-피어 콘텐츠 배포 시스템에서 상기 수신 노드에 의해 수행되는 방법에 있어서,
    상기 송신 노드로부터, 광고된 콘텐츠 아이템의 요청에 응답하여 수신된 콘텐츠 아이템을 수신하는 단계와,
    상기 트랙커 노드에, 수신된 콘텐츠 아이템과 연계된 검증 토큰에 대한 요청을 송신하는 단계 - 상기 검증 토큰에 대한 요청은 상기 광고된 콘텐츠 아이템의 표식을 포함함 - 와,
    상기 요청에 응답하여, 상기 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 상기 검증 토큰을 수신하는 단계와,
    상기 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하는 단계와,
    상기 제 2 토큰이 상기 검증 토큰에 일치하면 상기 수신된 콘텐츠 아이템이 상기 광고된 콘텐츠 아이템에 일치하는 것으로 검증하는 단계를 포함하는
    방법.
  8. 트랙커 노드에 작동가능하게 링크된 복수의 피어 노드들을 포함하는 피어-투-피어 콘텐츠 배포 시스템에 따라 수신 노드에서 수신된 콘텐츠의 완전성을 검증하기 위한 장치에 있어서,
    메모리와,
    상기 메모리에 작동가능하게 연결된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는
    (a) 송신 노드로부터, 광고된 콘텐츠 아이템의 요청에 응답하여 수신된 콘텐츠 아이템을 수신하고,
    (b) 상기 트랙커 노드에, 수신된 콘텐츠 아이템과 연계된 검증 토큰에 대한 요청을 송신하고 - 상기 검증 토큰에 대한 요청은 상기 광고된 콘텐츠 아이템의 표식을 포함함 -,
    (c) 상기 요청에 응답하여, 상기 광고된 콘텐츠 아이템의 랜덤 부분에 기초하여 검증 토큰을 수신하고,
    (d) 상기 수신된 콘텐츠 아이템의 대응 랜덤 부분에 기초하여 제 2 토큰을 생성하고,
    (e) 상기 제 2 토큰이 상기 검증 토큰에 일치하면 상기 수신된 콘텐츠 아이템이 상기 광고된 콘텐츠 아이템에 일치하는 것으로 검증하도록 구성되는
    장치.
KR1020147011110A 2011-10-25 2012-10-22 피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증 KR101549803B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161551056P 2011-10-25 2011-10-25
US61/551,056 2011-10-25
US13/344,985 US9148478B2 (en) 2011-10-25 2012-01-06 Verification of integrity of peer-received content in a peer-to-peer content distribution system
US13/344,985 2012-01-06
PCT/US2012/061360 WO2013062918A2 (en) 2011-10-25 2012-10-22 Verification of integrity of peer-received content in a peer-to-peer content distribution system

Publications (2)

Publication Number Publication Date
KR20140068231A true KR20140068231A (ko) 2014-06-05
KR101549803B1 KR101549803B1 (ko) 2015-09-02

Family

ID=48137100

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020147011110A KR101549803B1 (ko) 2011-10-25 2012-10-22 피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증
KR1020147010986A KR101563485B1 (ko) 2011-10-25 2012-10-22 피어-투-피어 콘텐츠 배포 시스템에서 어나운싱 피어에 의한 콘텐츠 소유의 검증

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020147010986A KR101563485B1 (ko) 2011-10-25 2012-10-22 피어-투-피어 콘텐츠 배포 시스템에서 어나운싱 피어에 의한 콘텐츠 소유의 검증

Country Status (6)

Country Link
US (2) US9148478B2 (ko)
EP (2) EP2772037B1 (ko)
JP (2) JP5819538B2 (ko)
KR (2) KR101549803B1 (ko)
CN (2) CN103931160B (ko)
WO (2) WO2013062916A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130157736A1 (en) * 2011-12-20 2013-06-20 Sports Challenge Network, LLC Systems and Methods for Playing and Managing Virtual Activities Via User Devices
US9026784B2 (en) * 2012-01-26 2015-05-05 Mcafee, Inc. System and method for innovative management of transport layer security session tickets in a network environment
US9727720B2 (en) * 2012-11-30 2017-08-08 Certicom Corp. Challenge-response authentication using a masked response value
US20140282696A1 (en) * 2013-03-15 2014-09-18 Qualcomm Incorporated Advertising download verification
US9578077B2 (en) * 2013-10-25 2017-02-21 Hive Streaming Ab Aggressive prefetching
CN105718458A (zh) * 2014-12-02 2016-06-29 阿里巴巴集团控股有限公司 一种确定数据文件存在的方法、装置及系统
JP6406671B2 (ja) * 2015-02-26 2018-10-17 Kddi株式会社 コンテンツキャッシュ方法および装置
CN106027583A (zh) * 2015-09-16 2016-10-12 展视网(北京)科技有限公司 一种p2p相关的数据分发方法及系统
US10091264B2 (en) * 2015-12-26 2018-10-02 Intel Corporation Technologies for streaming device role reversal
GB2548599B (en) * 2016-03-23 2020-02-12 Jaguar Land Rover Ltd Apparatus and method for device authentication
CN107517194B (zh) * 2016-06-17 2020-09-01 阿里巴巴集团控股有限公司 一种内容分发网络的回源认证方法和装置
US10789275B2 (en) * 2016-11-28 2020-09-29 Facebook, Inc. Systems and methods for providing content
CN108964845B (zh) * 2018-07-03 2021-04-16 网宿科技股份有限公司 一种获取bt资源信息的方法和设备
US11750393B2 (en) * 2021-03-30 2023-09-05 Ford Global Technologies, Llc Secure broadcast delivery and verification
US20230080210A1 (en) * 2021-09-13 2023-03-16 Apple Inc. User interface-based restriction on content access

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330670B1 (en) 1998-10-26 2001-12-11 Microsoft Corporation Digital rights management operating system
JP4151274B2 (ja) 2001-02-09 2008-09-17 ソニー株式会社 情報処理装置および方法、ライセンスサーバ、並びにプログラム
US7136840B2 (en) * 2001-04-20 2006-11-14 Intertrust Technologies Corp. Systems and methods for conducting transactions and communications using a trusted third party
US20030233455A1 (en) 2002-06-14 2003-12-18 Mike Leber Distributed file sharing system
US7266569B2 (en) * 2004-04-23 2007-09-04 Microsoft Corporation Metering accessing of content and the like in a content protection system or the like
US7809943B2 (en) * 2005-09-27 2010-10-05 Rovi Solutions Corporation Method and system for establishing trust in a peer-to-peer network
US7680937B2 (en) * 2005-12-22 2010-03-16 Microsoft Corporation Content publication
EP1978462A4 (en) * 2006-01-25 2011-11-30 Panasonic Corp END DEVICE, SERVER DEVICE AND DISTRIBUTION SYSTEM FOR DIGITAL CONTENTS
US8364965B2 (en) * 2006-03-15 2013-01-29 Apple Inc. Optimized integrity verification procedures
CN101098229B (zh) * 2006-06-26 2010-07-07 华为技术有限公司 验证待传消息完整性的方法
JP4210701B2 (ja) 2007-04-27 2009-01-21 シャープ株式会社 コンテンツ管理装置
US9275401B2 (en) * 2007-09-06 2016-03-01 Adobe Systems Incorporated Tamper resistant video rendering
US20090327346A1 (en) 2008-06-30 2009-12-31 Nokia Corporation Specifying media content placement criteria
JP5045594B2 (ja) 2008-07-25 2012-10-10 富士通株式会社 管理装置、管理方法、およびプログラム
JP4850218B2 (ja) 2008-07-30 2012-01-11 株式会社ソニー・コンピュータエンタテインメント データ配信システム
JP2010134630A (ja) * 2008-12-03 2010-06-17 Sony Corp 情報処理装置、分割管理サーバ、情報処理方法、分割管理方法、プログラムおよび情報処理システム
EP2302536A1 (en) 2009-09-21 2011-03-30 Thomson Licensing System and method for automatically verifying storage of redundant contents into communication equipments, by data comparison
CN101697540B (zh) * 2009-10-15 2012-08-15 浙江大学 一种p2p服务请求用户身份认证方法
CN102065136B (zh) * 2010-12-10 2014-11-05 中国科学院软件研究所 一种p2p网络安全数据传输方法及其系统

Also Published As

Publication number Publication date
JP5819538B2 (ja) 2015-11-24
WO2013062918A2 (en) 2013-05-02
EP2772037B1 (en) 2018-08-15
US20130104247A1 (en) 2013-04-25
KR101549803B1 (ko) 2015-09-02
EP2772038B1 (en) 2018-08-15
WO2013062918A3 (en) 2013-06-27
EP2772038A2 (en) 2014-09-03
KR101563485B1 (ko) 2015-10-27
JP5902820B2 (ja) 2016-04-13
US8621650B2 (en) 2013-12-31
JP2015501488A (ja) 2015-01-15
CN103931160A (zh) 2014-07-16
EP2772037A1 (en) 2014-09-03
CN103931160B (zh) 2017-04-05
JP2015501487A (ja) 2015-01-15
KR20140082733A (ko) 2014-07-02
WO2013062916A1 (en) 2013-05-02
US9148478B2 (en) 2015-09-29
CN103959742A (zh) 2014-07-30
US20130104249A1 (en) 2013-04-25

Similar Documents

Publication Publication Date Title
KR101549803B1 (ko) 피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증
US9118691B2 (en) Content distribution with mutual anonymity
Zhang et al. Unreeling Xunlei Kankan: Understanding hybrid CDN-P2P video-on-demand streaming
EP2497267B1 (en) Streaming with optional broadcast delivery of data segments
EP2432187B1 (en) Method, system and proxy node for peer-to-peer (p2p) streaming media data distribution
KR20090020465A (ko) 복수의 서비스 제공자의 서비스를 제공/수신하기 위한 방법및 장치
US20080137663A1 (en) Identifier verification method in peer-to-peer networks
CN108924595A (zh) 实现ts切片防盗链的方法及系统
JP5504967B2 (ja) コンテンツ配信システム、コンテンツ配信サーバ及びユーザ端末
Wang et al. CDNPatch: a cost‐effective failover mechanism for hybrid CDN‐P2P live streaming systems
Thaalbi et al. An enhanced chord-based P2P lookup protocol for mobile Ad hoc networks
KR101040312B1 (ko) 하이브리드 ip―tv 서비스 제공 시스템 및 방법
KR101496554B1 (ko) 콘텐츠 중심 네트워크에서 콘텐츠의 수신 방법
KR20220090671A (ko) 하이브리드 ip―tv 서비스 제공 시스템 및 방법
CN112929328A (zh) 基于路由器一对多的屏幕共享实现方法及系统
Lin et al. Peer-to-peer overlay for the IP multimedia subsystem
Fischer Construction of Attack-Resilient and Efficient Overlay-Topologies for Large-Scale P2P-based IPTV Infrastructures
Milanesio Layering Multi-Purpose Applications over Structured and Dependable P2P Systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190729

Year of fee payment: 5