KR101525292B1 - 자산 리스 관리용 시스템 및 방법 - Google Patents

자산 리스 관리용 시스템 및 방법 Download PDF

Info

Publication number
KR101525292B1
KR101525292B1 KR1020120145748A KR20120145748A KR101525292B1 KR 101525292 B1 KR101525292 B1 KR 101525292B1 KR 1020120145748 A KR1020120145748 A KR 1020120145748A KR 20120145748 A KR20120145748 A KR 20120145748A KR 101525292 B1 KR101525292 B1 KR 101525292B1
Authority
KR
South Korea
Prior art keywords
lease
duration
client device
key
server
Prior art date
Application number
KR1020120145748A
Other languages
English (en)
Other versions
KR20130085931A (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 KR20130085931A publication Critical patent/KR20130085931A/ko
Application granted granted Critical
Publication of KR101525292B1 publication Critical patent/KR101525292B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key

Abstract

자산 리스 관리를 위한 시스템들, 방법들 및 비일시적 컴퓨터 판독 가능 저장 매체들이 개시된다. 시스템은 사용자 프로파일과 관련된 클라이언트 장치로부터 사용자 프로파일이 허가된 자산에 대한 리스 개시 요청을 수신한다. 시스템은 콘텐츠를 점진적으로 다운로드하기 위한 이용 가능 슬롯들의 수를 식별한다. 이용 가능 슬롯들의 수가 0보다 큰 경우, 시스템은 이용 가능 슬롯들의 수 중 하나의 이용 가능 슬롯을 클라이언트 장치에 할당하여, 할당된 슬롯을 생성한다. 시스템은 리스 개시 요청에 응답하여 할당된 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 클라이언트 장치로 전송하며, 보안 정보 및 리스 키는 클라이언트 장치가 리스 지속 기간 동안 자산의 점진적 다운로드를 개시할 수 있게 한다. 리스의 종료시, 시스템은 리스를 종료하고, 할당된 슬롯을 해제한다.

Description

자산 리스 관리용 시스템 및 방법{SYSTEM AND METHOD FOR ASSET LEASE MANAGEMENT}
본 발명은 콘텐츠 배포에 관한 것으로서, 구체적으로는 콘텐츠 배포를 위한 자산 리스 관리에 관한 것이다.
미디어 콘텐츠 제공자들은 미디어 콘텐츠를 위한 새로운 배포 방법들을 찾고 있다. 인터넷 및 휴대용 미디어 장치 재생은 방송 및 케이블 텔레비전의 랭크들을 텔레비전 쇼, 사용자 생성 콘텐츠, 영화, 라디오 방송, 음악 등에 대한 주요 배포 아울렛들로서 결합하였다. 실제로, 많은 사용자는 미디어 콘텐츠의 물리 사본을 구매 또는 임차하는 것보다는 네트워크를 통해 미디어 콘텐츠를 임차 및 액세스하는 것을 선호한다. 그러나, 네트워크 기반 배포 방법들은 고유한 보안 문제들을 유발하였다. 미디어 콘텐츠는 네트워크를 통해 전송될 때 절도 및 공격에 굉장히 취약하다. 따라서, 네트워크를 통해 전송되는 미디어 콘텐츠의 보호는 미디어 콘텐츠 제공자들에 대한 커다란 도전이다.
현재, 미디어 콘텐츠 제공자들은 네트워크 기반 미디어 배포 방법들의 보안 위험을 제거하기 위하여 다양한 보안 전략들을 구현한다. 종종, 미디어 콘텐츠 제공자들은 미디어 콘텐츠를 보호하기 위해 디지털 권리 관리(DRM) 기술들을 구현한다. DRM 기술들은 미디어 콘텐츠에 대한 허가받지 않은 액세스를 방지 또는 제한하고 데이터를 복사하거나 다른 포맷으로 변환하려는 시도를 방해함으로써 미디어 콘텐츠의 사용을 제어하려고 시도한다. 통상적으로, DRM 프로세스는 콘텐츠에 대한 권리를 부여받은 사람들로 사용을 제한하고 허가받지 않은 액세스를 방지하기 위해 콘텐츠를 암호화하는 단계를 필요로 한다. 불행하게도, 충분한 시간 및 자원을 가진 악의 있는 또는 유해한 사람들은 종종 DRM 제한을 우회하는 방법들을 발견한다.
일반적으로, 다른 미디어 콘텐츠 보호 스킴들은 모호함을 통한 보안, 디자인에 의한 보안, 암호화 및 기타 방법들에 의해 작동한다. 그러나, 종종 이러한 접근법들의 혼합조차도 작정한 "해커" 또는 "크랙커"를 막기에는 불충분하다. 결과적으로, 허가받지 않은 사용자들이 미디어 콘텐츠에 액세스하고 사용할 수 있으며, 이에 따라 허가된 사용자가 미디어 콘텐츠에 액세스하는 것이 종종 제한된다. 따라서, 이 분야에서는 미디어 콘텐츠를 보호하고 그에 대한 네트워크 액세스를 관리하기 위한 개량된 방법이 필요하다.
본 발명의 추가적인 특징들 및 장점들은 아래의 설명에서 밝혀질 것이며, 부분적으로는 설명으로부터 명백하거나, 본 명세서에서 개시되는 원리들의 실시에 의해 학습될 수 있다. 본 발명의 특징들 및 장점들은 첨부된 청구항들에서 구체적으로 지시되는 수단들 및 조합들에 의해 실현되고 얻어질 수 있다. 본 발명의 이들 및 다른 특징들은 아래의 설명 및 첨부된 청구항들로부터 더 충분히 명백해지거나, 본 명세서에서 설명되는 원리들의 실시에 의해 학습될 수 있다.
본 명세서에서 설명되는 접근법들은 자산 리스 관리를 안전하고 효율적으로 수행하는 데 이용될 수 있다. 자산 리스 관리를 위한 시스템들, 방법들 및 비일시적 컴퓨터 판독 가능 저장 매체들이 개시된다. 방법은 방법을 실시하도록 구성된 시스템과 관련하여 설명된다. 시스템은 사용자 프로파일과 관련된 클라이언트 장치로부터 사용자 프로파일이 허가되는 미디어 콘텐츠에 대한 리스 개시 요청을 수신한다. 시스템은 사용자 프로파일을 이용하여, 리스 개시 요청을 인증하고 그리고/또는 요청을 제출하는 클라이언트 장치 및/또는 사용자를 식별할 수 있다. 클라이언트 장치는 사용자 프로파일에 기초하여 요청을 제출하는 사용자를 식별할 수 있다.
이어서, 시스템은 콘텐츠를 점진적으로 다운로드하기 위한 이용 가능 슬롯들의 수를 식별한다. 이용 가능 슬롯들의 수가 0인 경우, 시스템은 리스 개시 요청에 응답하여 거절 통지를 클라이언트 장치로 전송한다. 한편, 이용 가능 슬롯들의 수가 0보다 큰 경우, 시스템은 이용 가능 슬롯들의 수로부터 이용 가능 슬롯을 클라이언트 장치에 할당하여, 할당된 슬롯을 생성한다. 이어서, 시스템은 리스 개시 요청에 응답하여 할당된 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 클라이언트 장치로 전송하며, 보안 정보 및 리스 키는 클라이언트 장치로 하여금 리스 지속 기간 동안 미디어 콘텐츠의 점진적 다운로드를 개시하는 것을 가능하게 한다. 리스 지속 기간의 종료시, 시스템은 리스를 종료하고, 할당된 슬롯을 해제한다. 또한, 시스템은 클라이언트 장치로부터의 리스 중지 요청에 응답하여 리스 지속 기간의 종료 전에 리스를 종료하고 할당된 슬롯을 해제할 수 있다.
일 실시예에서, 자산의 재생 지속 기간을 통해 적어도 한 번 리스를 갱신하도록 클라이언트 장치에 요구하기 위해 리스 지속 기간은 미디어 콘텐츠의 재생 지속 기간보다 짧다. 클라이언트 장치는 리스의 종료 전에 리스 갱신 요청을 시스템으로 전송함으로써 리스 지속 기간을 연장할 수 있다. 필요한 경우, 클라이언트 장치는 재생 지속 기간의 종료시까지 리스를 계속 연장하기 위해 여러 번의 리스 갱신 요청을 전송할 수 있다. 리스 갱신 요구는 공격 및 위조 시도들을 좌절시킬 수 있으므로 제2의 보호 층으로 쓰일 수 있다. 또한, 리스 갱신 요구는 실효되거나 사용되지 않는 리스가 불필요하게 자원들을 구속하는 것을 방지할 수 있으며, 시스템으로 하여금 새로운/활성 리스들을 서비스하기 위해 그러한 자원들을 재할당하게 할 수 있다.
클라이언트 장치는 보안 정보, 리스 키 및 리스 지속 기간을 수신하고, 정보를 저장한다. 커널 공간에 대한 액세스는 통상적으로 제한되므로, 클라이언트 장치는 커널 공간에 보안 정보를 저장하여, 보안 정보를 탬퍼링(tampering)으로부터 보호할 수 있다. 대안으로서, 클라이언트 장치는 커널 공간에 리스 키를 저장하여, 리스 키를 탬퍼링으로부터 보호할 수 있다. 클라이언트 장치는 보안 정보, 리스 키 및/또는 리스 지속 기간을 커널 공간에 저장하여, 탬퍼링으로부터 정보를 보호할 수 있다. 클라이언트 장치는 보안 정보, 리스 키 및 리스 지속 기간 중 적어도 하나를 액세스 제어 리스트, 암호화 키, 정책, 파일 시스템 허가, 공유 허가 등 중 적어도 하나에 의해 보호되는 메모리 영역에 저장할 수 있다.
또한, 클라이언트 장치는 정보를 이용하여 리스 지속 기간을 시행할 수 있다. 일 실시예에서, 클라이언트 장치는 커널 공간에서 타임아웃을 시행하여 타임아웃 기간의 위조 및 사용자 조작을 방지한다. 타임아웃은 효과적으로 모든 보안 정보의 손상으로 변환되는데, 이는 타임아웃 후에는 자산이 해독될 수 없다는 것을 의미한다. 더욱이, 클라이언트 장치는 암호화 및/또는 해싱 기능들을 이용하여, 그가 시스템으로 전송하는 임의의 메시지들을 보호할 수 있다. 일 실시예에서, 클라이언트 장치는 해시 기반 메시지 인증 코드(HMAC) 키를 이용하여, 그가 시스템으로 전송하려고 계획한 메시지의 다이제스트를 계산한다. HMAC 키는 글로벌 고유 식별자, 랜덤 식별자, 클라이언트 장치 타입 및/또는 현재 시간에 기초한다. 이어서, 클라이언트 장치는 재생 방지 키를 이용하여 다이제스트 및 메시지를 암호화하고, 번들(bundle)을 시스템으로 전송한다.
사용자가 "서명하여 들어가고" 사용자가 서명하고 나가지 않는 한은 서명하여 들어간 상태로 유지되는 시스템들과 달리, 리싱 배열(leasing arrangement)은 사용자 및/또는 사용자의 장치가 리스 지속 기간이 만료되기 전에 미디어 재생 동안 계속해서 또는 주기적으로 서명하여 들어갈 것을 요구할 수 있다. 이것은 리스가 만료되면 디스크 상에 보안 정보를 유지하지 않는 추가된 보안 이익을 가지며, 리스가 요청될 때마다 보안 정보에 신선함을 더한다. 게다가, 해커들이 재생을 계속하는 동안 슬롯을 해제하기를 희망하는 중지 요청을 위조하는 경우, 해커들은 타임아웃 메커니즘에 의해 좌절된다.
일부 미디어 스트리밍 구현들에서는, 사용자가 단일 계정을 이용하여 최대 수까지의 상이한 기계들을 허가할 수 있다. 이어서, 사용자가 상이한 기계들 중 하나를 판매하고, 그 기계를 허가 해제하는 것을 잊을 때, 허가들 중 하나가 '점유된다'. 그러면, 더 이상 사용자의 소유가 아닌 기계를 허가 해제하는 유일한 방법은 모든 기계들을 허가 해제하는 "연 1회(once-a-year)" 특징을 이용하는 것이다. 본 명세서에서 설명되는 리싱 접근법들은 서버측에서의 슬롯 만료가 재사용을 위해 슬롯을 자동으로 해제하므로 이러한 단점들을 갖지 않는다.
본 발명의 상기 및 다른 이점들 및 특징들을 획득할 수 있는 방법을 설명하기 위하여, 위에서 간단히 설명된 원리들의 더 구체적인 설명이 첨부 도면들에 도시된 그들의 특정 실시예들을 참조하여 이루어질 것이다. 이러한 도면들이 단지 본 발명의 예시적인 실시예들을 도시하고, 따라서 본 발명의 범위를 한정하는 것으로 간주되지 않아야 한다는 것을 이해하면서, 본 발명의 원리들은 첨부 도면들을 이용하여 더 구체적으로 그리고 상세히 기술되고 설명된다.
도 1은 예시적인 시스템 실시예를 나타낸다.
도 2는 자산 리스 관리를 위한 예시적인 네트워크 기반구조를 나타낸다.
도 3은 자산 리스를 개시하기 위한 예시적인 흐름도를 나타낸다.
도 4는 자산 리스를 갱신하기 위한 예시적인 흐름도를 나타낸다.
도 5는 자산 리스를 중지하기 위한 예시적인 흐름도를 나타낸다.
도 6은 샘플 자산 리스 관리 프로세스에서의 클라이언트와 서버 간의 통신 교환을 나타낸다.
도 7은 자산 리스를 개시하기 위한 제1의 예시적인 방법 실시예를 나타낸다.
도 8은 자산 리스를 개시하기 위한 제2의 예시적인 방법 실시예를 나타낸다.
도 9는 자산 리스를 갱신하기 위한 제1의 예시적인 방법 실시예를 나타낸다.
도 10은 자산 리스를 갱신하기 위한 제2의 예시적인 방법 실시예를 나타낸다.
도 11은 자산 리스를 중지하기 위한 예시적인 방법 실시예를 나타낸다.
이하, 본 발명의 다양한 실시예들을 상세히 설명한다. 특정 구현들이 설명되지만, 이것은 단지 예시의 목적으로 행해진다는 것을 이해해야 한다. 관련 분야의 기술자는 본 발명의 사상 및 범위를 벗어나지 않고 다른 컴포넌트들 및 구성들이 이용될 수 있다는 것을 인식할 것이다.
본 발명은 자산 리스 관리를 수행하기 위한 개량된 방법에 대한 당해 분야의 필요를 해결한다. 자산 리스 관리를 안전하고 효율적으로 수행하는 시스템, 방법 및 비일시적 컴퓨터 판독 가능 매체들이 개시된다. 개념들을 실시하는 데 사용될 수 있는 도 1의 기본 범용 시스템 또는 컴퓨팅 장치의 간단한 소개 설명이 본 명세서에서 개시된다. 이어서, 자산 리스 관리 및 관련 접근법들의 더 상세한 설명이 이어질 것이다. 다양한 실시예들이 설명됨에 따라 다수의 변형예들이 본 명세서에서 설명될 것이다. 이제, 본 설명은 도 1을 참조한다.
도 1을 참조하면, 예시적인 시스템(100)은 처리 유닛(CPU 또는 프로세서)(120), 및 판독 전용 메모리(ROM)(140) 및 랜덤 액세스 메모리(RAM)(150)와 같은 시스템 메모리(130)를 포함하는 다양한 시스템 컴포넌트들을 프로세서(120)에 결합하는 시스템 버스(110)를 포함하는 범용 컴퓨팅 장치(100)를 포함한다. 시스템(100)은 프로세서(120)와 직접 접속되거나, 그에 근접하거나, 그의 일부로서 통합되는 고속 메모리의 캐시(122)를 포함할 수 있다. 시스템(100)은 프로세서(120)에 의한 빠른 액세스를 위해 데이터를 메모리(130) 및/또는 저장 장치(160)로부터 캐시(122)로 복사한다. 이러한 방식으로, 캐시는 프로세서(120)가 데이터를 기다리는 동안 지연되는 것을 방지하는 성능 향상을 제공한다. 이들 및 다른 모듈들은 다양한 액션들을 수행하도록 프로세서(120)를 제어할 수 있거나, 제어하도록 구성될 수 있다. 다른 시스템 메모리(130)도 이용될 수 있다. 메모리(130)는 상이한 성능 특성들을 갖는 다수의 상이한 타입의 메모리를 포함할 수 있다. 본 발명은 둘 이상의 프로세서(120)를 갖는 컴퓨팅 장치(100) 상에서 또는 더 큰 처리 능력을 제공하도록 함께 네트워킹된 컴퓨팅 장치들의 그룹 또는 클러스터 상에서 동작할 수 있다는 것을 알 수 있다. 프로세서(120)는 임의의 범용 프로세서, 및 프로세서(120)는 물론, 소프트웨어 명령어들이 실제 프로세서 설계 내에 통합된 특수 목적 프로세서도 제어하도록 구성되는, 저장 장치(160)에 저장된 모듈 1(162), 모듈 2(164) 및 모듈 3(166)과 같은 소프트웨어 모듈 또는 하드웨어 모듈을 포함할 수 있다. 프로세서(120)는 본질적으로 다수의 코어 또는 프로세서, 버스, 메모리 제어기, 캐시 등을 포함하는 완전 독립식 컴퓨팅 시스템일 수 있다. 다중 코어 프로세서는 대칭 또는 비대칭일 수 있다.
시스템 버스(110)는 임의의 다양한 버스 아키텍처를 이용하는 메모리 버스 또는 메모리 제어기, 주변 장치 버스 및 로컬 버스를 포함하는 임의의 다양한 타입의 버스 구조일 수 있다. ROM(140) 등에 저장된 기본 입출력 시스템(BIOS)은 예를 들어 시동 중에 컴퓨팅 장치(100) 내의 요소들 간의 정보 전송을 돕는 기본 루틴을 제공할 수 있다. 컴퓨팅 장치(100)는 하드 디스크 드라이브, 자기 디스크 드라이브, 광 디스크 드라이브, 테이프 드라이브 등과 같은 저장 장치들(160)을 더 포함한다. 저장 장치(160)는 프로세서(120)를 제어하기 위한 소프트웨어 모듈들(162, 164, 166)을 포함할 수 있다. 다른 하드웨어 또는 소프트웨어 모듈들이 고려된다. 저장 장치(160)는 드라이브 인터페이스에 의해 시스템 버스(110)에 접속된다. 드라이브들 및 관련 컴퓨터 판독 가능 저장 매체들은 컴퓨팅 장치(100)를 위한 컴퓨터 판독 가능 명령어들, 데이터 구조들, 프로그램 모듈들 및 기타 데이터의 비휘발성 저장을 제공한다. 일 양태에서, 특정 기능을 수행하는 하드웨어 모듈은 기능을 수행하기 위해 프로세서(120), 버스(110), 디스플레이(170) 등과 같은 필요한 하드웨어 모듈들과 관련하여 비일시적 컴퓨터 판독 가능 매체에 저장된 소프트웨어 컴포넌트를 포함한다. 기본 컴포넌트들은 이 분야의 기술자들에게 공지되어 있으며, 장치(100)가 소형 핸드헬드 컴퓨팅 장치, 데스크탑 컴퓨터 또는 컴퓨터 서버인지와 같은 장치의 타입에 따라 적절한 변형들이 고려된다.
본 명세서에서 설명되는 예시적인 실시예가 하드 디스크(160)를 사용하지만, 자기 카세트, 플래시 메모리 카드, 디지털 다기능 디스크, 카트리지, 랜덤 액세스 메모리(RAM)(150), 판독 전용 메모리(ROM)(140), 비트 스트림을 포함하는 케이블 또는 무선 신호 등과 같이 컴퓨터에 의해 액세스될 수 있는 데이터를 저장할 수 있는 다른 타입의 컴퓨터 판독 가능 매체들도 예시적인 동작 환경에서 사용될 수 있다는 것을 이 분야의 기술자들은 알아야 한다. 비일시적 컴퓨터 판독 가능 저장 매체들은 에너지, 캐리어 신호, 전자기파 및 신호 자체와 같은 매체들을 명확히 배제한다.
컴퓨팅 장치(100)와의 사용자 상호작용을 가능하게 하기 위하여, 입력 장치(190)는 음성을 위한 마이크, 제스처 또는 그래픽 입력을 위한 터치 감지 스크린, 키보드, 마우스, 모션 입력, 음성 및/또는 기타 센서(들)(192)와 같은 임의 수의 입력 메커니즘을 나타낸다. 또한, 출력 장치(170)는 이 분야의 기술자들에게 공지된 다수의 출력 메커니즘 중 하나 이상일 수 있다. 일부 예들에서, 다중 모드 시스템들은 사용자로 하여금 컴퓨팅 장치(100)와 통신하기 위한 다양한 타입의 입력을 제공할 수 있게 한다. 통신 인터페이스(180)는 일반적으로 사용자 입력 및 시스템 출력을 운용 및 관리한다. 임의의 특정 하드웨어 배열 상에서의 동작에 관한 제한은 없으며, 따라서 개량된 하드웨어 또는 펌웨어 배열들이 개발됨에 따라 이들에 의해 기본 특징들이 쉽게 대체될 수 있다.
설명의 명료화를 위해, 예시적인 시스템 실시예는 "프로세서" 또는 프로세서(120)로서 라벨링된 기능 블록들을 포함하는 개별 기능 블록들을 포함하는 것으로서 제공된다. 이러한 블록들이 나타내는 기능들은 소프트웨어를 실행할 수 있는 하드웨어 및 범용 프로세서 상에서 실행되는 소프트웨어에 대한 등가물로서 동작하도록 특정 목적을 위해 구축된 프로세서(120)와 같은 하드웨어를 포함하지만 이에 한정되지 않는 공유 또는 전용 하드웨어의 사용을 통해 제공될 수 있다. 예를 들어, 도 1에 제공된 하나 이상의 프로세서의 기능들은 단일 공유 프로세서 또는 다수의 프로세서에 의해 제공될 수 있다. ("프로세서"라는 용어의 사용은 소프트웨어를 실행할 수 있는 하드웨어만을 지칭하는 것으로 해석되지 않아야 한다.) 예시적인 실시예들은 마이크로프로세서 및/또는 디지털 신호 프로세서(DSP) 하드웨어, 후술하는 동작들을 수행하는 소프트웨어를 저장하기 위한 판독 전용 메모리(ROM)(140), 및 결과들을 저장하기 위한 랜덤 액세스 메모리(RAM)(150)를 포함할 수 있다. 대규모 집적(VLSI) 하드웨어 실시예들은 물론, 범용 DSP 회로와 연계하는 맞춤형 VLSI 회로도 제공될 수 있다.
다양한 실시예들의 논리 동작들은 (1) 범용 컴퓨터 내의 프로그래밍 가능 회로 상에서 실행되는 컴퓨터 구현 단계들, 동작들 또는 절차들의 시퀀스, (2) 특수용 프로그래밍 가능 회로 상에서 실행되는 컴퓨터 구현 단계들, 동작들 또는 절차들의 시퀀스, 및/또는 (3) 프로그래밍 가능 회로들 내의 상호접속된 기계 모듈들 또는 프로그램 엔진들로서 구현된다. 도 1에 도시된 시스템(100)은 설명되는 방법들의 전부 또는 일부를 실시할 수 있고, 설명되는 시스템들의 일부일 수 있고, 그리고/또는 설명되는 비일시적 컴퓨터 판독 가능 저장 매체들 내의 명령어들에 따라 동작할 수 있다. 그러한 논리 동작들은 모듈의 프로그래밍에 따라 특정 기능들을 수행하도록 프로세서(120)를 제어하도록 구성되는 모듈들로서 구현될 수 있다. 예를 들어, 도 1은 프로세서(120)를 제어하도록 구성된 모듈들인 3개의 모듈 Mod 1(162), Mod 2(164) 및 Mod 3(166)을 도시한다. 이러한 모듈들은 저장 장치(160)에 저장되고, 실행 시간에 RAM(150) 또는 메모리(130) 내에 로딩될 수 있거나, 이 분야에 공지된 바와 같이 다른 컴퓨터 판독 가능 메모리 위치들에 저장될 수 있다.
컴퓨팅 시스템의 일부 컴포넌트들을 개시하였으며, 이제 설명은 자산 리스 관리를 위한 예시적인 네트워크 기반구조(200)를 도시하는 도 2를 참조한다. 여기서, 클라이언트 장치들(202, 204, 206)은 미디어 콘텐츠에 대한 리스를 획득하고 재생을 위해 미디어 콘텐츠를 점진적으로 다운로드하기 위해 점진적 재생 서버(210) 및 리스 서버(214)와 통신한다. 클라이언트 장치들(202, 204, 206)은 이동 전화, 컴퓨터, 미디어 서버 및/또는 수신기, 텔레비전, 네트워크 미디어 플레이어, 비디오 게임 콘솔 등과 같은 네트워킹 능력을 갖춘 임의의 장치일 수 있다. 도 2에서, 클라이언트 장치들(202, 204, 206)은 랩탑 컴퓨터(202), 이동 전화(204) 및 디지털 미디어 수신기(206)를 포함한다.
일 실시예에서, 클라이언트 장치들(202, 204, 206)은 네트워크(208)를 통해 점진적 재생 서버(210) 및 리스 서버(214)와 통신한다. 네트워크(208)는 인터넷과 같은 공개 네트워크일 수 있지만, 근거리 네트워크, 내부 법인 네트워크, 가상 비공개 네트워크(VPN) 등과 같은 비공개 또는 유사 비공개 네트워크도 포함할 수 있다. 클라이언트 장치들(202, 204, 206)은 유선 또는 무선 접속을 통해 네트워크(208)에 접속할 수 있다. 예컨대, 클라이언트 장치들(202, 204, 206)은 안테나, 모뎀 또는 네트워크 인터페이스 카드를 이용하여 무선 또는 유선 네트워크 접속을 통해 네트워크(208)에 접속하도록 구성될 수 있다. 도 2에서, 랩탑 컴퓨터(202)는 네트워크 인터페이스 카드를 이용하여 유선 네트워크 접속을 통해 네트워크(208)에 접속하고, 이동 전화(204)는 안테나를 이용하여 무선 접속을 통해 네트워크(208)에 접속하며, 디지털 미디어 수신기(206)는 무선 네트워크 인터페이스 카드를 이용하여 무선 접속을 통해 네트워크(208)에 접속한다.
리스 서버(214)는 자산 리스 관리를 제공한다. 리스 서버(214)는 하나 이상의 서버 상에서 호스트되는 애플리케이션일 수 있다. 일 실시예에서, 리스 서버(214)는 사용자 프로파일 정보를 저장하고 검색하는 사용자 프로파일 데이터베이스(216)와 통신한다. 여기서, 리스 서버(214)는 세션 정보, 자원 정보, 보안 정보, 리스 정보, 콘텐츠 정보, 사용자 정보, 스케줄링 정보, 서비스 가용성 등을 포함할 수 있는 리스 및 슬롯 정보를 저장하고 검색하기 위한 리스/슬롯 데이터베이스(218)에도 접속한다. 사용자 프로파일 데이터베이스(216) 및 리스/슬롯 데이터베이스(218)는 리스 서버(214) 및/또는 하나 이상의 별개의 서버 상에서 호스트될 수 있다. 더욱이, 도 2의 사용자 프로파일 데이터베이스(216) 및 리스/슬롯 데이터베이스(218)가 2개의 개별 데이터베이스로서 도시되지만, 이 분야의 기술자는 단일 데이터베이스에 정보가 저장될 수 있다는 것을 쉽게 인식할 것이다.
리스 서버(214)는 운영 체제, 데이터 케이블, 프로세서 및/또는 네트워크 접속을 통해 점진적 재생 서버(210)와 통신한다. 점진적 재생 서버(210)는 리스 서버(214) 상에서 호스트되는 애플리케이션, 하나 이상의 개별 서버 상에서 호스트되는 애플리케이션, 콘텐츠 데이터베이스, 콘텐츠 저장 장치 등일 수 있다. 점진적 재생 서버(210)는 리스 서버(214) 상의 리스 정보에 따라 미디어 콘텐츠를 클라이언트 장치들(202, 204, 206)에 제공한다. 일 실시예에서, 점진적 재생 서버(210)는 콘텐츠 저장 유닛(212)과 통신하여, 콘텐츠 저장 유닛(212)에 저장된 미디어 콘텐츠를 액세스, 스케줄링, 공유, 전송 및/또는 관리한다. 점진적 재생 서버(210)는 데이터 케이블, 프로세서, 데이터 커넥터 및/또는 네트워크 접속을 통해 콘텐츠 저장 유닛(212)에 접속할 수 있다.
콘텐츠 저장 유닛(212)은 점진적 재생 서버(210)와 동일한 서버, 또는 하나 이상의 별개의 서버/장치 상에 상주할 수 있다. 더욱이, 콘텐츠 저장 유닛(212)은 하드 디스크 드라이브, 자기 디스크 드라이브, 고체 상태 드라이브, 광 디스크 드라이브, 테이프 드라이브, RAID(redundant array of inexpensive disks) 등과 같은 저장 장치를 포함할 수 있다.
이제, 본 설명은 예시적인 프로세스 동작들을 도시하는 도 3, 4 및 5를 참조한다. 도 3은 자산 리스를 개시하기 위한 예시적인 흐름도를 나타낸다. 이 예에서, 리스 서버는 먼저 리스 개시 요청을 수신한다(302). 리스 개시 요청은 예를 들어 이동 전화, 랩탑 컴퓨터, 미디어 플레이어 등과 같은 클라이언트 장치로부터 생성된다. 여기서, 클라이언트 장치는 사용자 프로파일과 관련되며, 리스 서버는 이 사용자 프로파일을 이용하여, 리스 개시 요청을 인증하고, 클라이언트 장치를 식별하고, 그리고/또는 요청을 제출한 사용자를 식별한다.
일 실시예에서, 사용자 프로파일은 클라이언트 장치에 링크되며, 따라서 클라이언트 장치는 특정 사용자 프로파일에 대해 리스 서버로부터 콘텐츠에 액세스하는 것이 허가된다. 예를 들어, 사용자 프로파일은 클라이언트 장치를 그 사용자 프로파일에 대한 허가된 장치로서 정의하는 선호 설정을 포함할 수 있다. 이어서, 리스 서버는 사용자 프로파일을 이용하여, 클라이언트 장치로부터의 리스 개시 요청을 검증할 수 있다. 다른 실시예에서, 클라이언트 장치는 리스 개시 요청과 사용자 프로파일을 연관시키기 위해 리스 개시 요청 내에 사용자 프로파일 정보를 포함시킨다. 예를 들어, 리스 개시 요청을 리스 서버로 전송하기 전에, 클라이언트 장치는 사용자에게 그의 계정 증명서를 입력함으로써 리스 개시 요청을 허가/인증하도록 재촉할 수 있다. 이어서, 클라이언트 장치는 리스 개시 요청 내에 계정 증명서 및/또는 대응하는 사용자 프로파일 정보를 포함시킬 수 있다.
사용자 프로파일은 사용자 이름, 사용자 식별자, 사용자 그룹, 사용자 주소, 글로벌 사용자 식별자 등을 포함할 수 있다. 또한, 사용자 프로파일은 하나 이상의 클라이언트 장치와 연관될 수 있으며, 클라이언트 장치는 하나 이상의 사용자 프로파일과 연관될 수 있다. 사용자 프로파일은 예를 들어 3개의 상이한 클라이언트 장치와 또는 2개의 상이한 클라이언트 장치와 연관될 수 있다. 그러나, 일부 예들에서, 시스템은 사용자 프로파일과 연관될 수 있는 장치들의 수에 대한 상한을 부과한다. 다른 예들에서, 시스템은 슬롯이 이용될 수 있는 한은 임의의 장치에 자산을 리스할 슬롯을 허가할 수 있다.
이어서, 리스 서버는 콘텐츠를 점진적으로 다운로드하기 위해 슬롯이 이용될 수 있는지를 결정한다(304). 슬롯은 세션, 리스, 자원, 노드, 스케줄, 스레드, 객체, 모듈, 송신 매체 등일 수 있다. 일 실시예에서, 리스 서버는 리스 개시 요청을 서비스하기 위해 리스 서버 상에서 세션이 이용 가능한지를 검사한다. 리스 서버는 리스 개시 요청을 서비스하기 위해 네트워크 노드가 이용 가능한지를 결정하기 위해 하나 이상의 네트워크 노드의 상태를 검사할 수 있다. 리스 서버는 미디어 자산의 상태를 검사하고, 서버 부하에 기초하여 서버가 리스 개시 요청을 서비스할 수 있는지를 결정할 수 있다. 또 다른 실시예에서, 리스 서버는 콘텐츠를 점진적으로 다운로드하기 위해 사용자 프로파일에 대해 리스가 이용 가능한지를 검사한다.
리스 서버가 콘텐츠를 점진적으로 다운로드하기 위해 슬롯이 이용 가능하지 않은 것으로 결정하는 경우, 시스템(100)은 거절 통지를 클라이언트 장치로 전송하며(306), 이는 리스 개시 요청을 종료한다. 한편, 리스 서버가 콘텐츠를 점진적으로 다운로드하기 위해 슬롯이 이용 가능한 것으로 결정하는 경우, 리스 서버는 이용 가능한 슬롯을 클라이언트 장치에 할당한다(308). 이용 가능한 슬롯을 클라이언트 장치에 할당한 후, 리스 서버는 보안 정보, 리스 키 및 리스 지속 기간을 클라이언트 장치로 전송한다(310). 정보를 전송하기 위해, 리스 서버는 TCP, UDP, RTP, RTSP, RTCP, SSH, TLS/SSL, SIP, SDP, FTP, HTTP 등과 같은 하나 이상의 프로토콜을 이용할 수 있다. 언젠가 개발될 다른 통신 및/또는 송신 프로토콜들도 이용될 수 있다. 일 실시예에 따르면, 클라이언트 장치는 보안 정보, 리스 키 및 리스 지속 기간을 수신하고, 정보를 커널 공간에 저장한다. 여기서, 클라이언트 장치는 탬퍼링에 대해 보호되는 저장된 정보를 이용하여, 그에 따라 리스 지속 기간을 시행한다.
보안 정보는 특히 동작 식별자, 요청 식별자, 사용자 계정 식별자, 리스 식별자, 상태, 세션 식별자, 미디어 콘텐츠 식별자, 자원 식별자, 글로벌 고유 식별자 등을 포함할 수 있다. 일 실시예에서, 보안 정보는 리스 키의 일부를 포함한다. 리스 키는 리스 정보를 보호하는 보안 키이며, 데이터 무결성 및 신빙성을 검증하는 데 사용될 수 있다. 리스 키는 예를 들어 해시 함수를 이용하여 리스 서버에 의해 생성될 수 있다. 리스 지속 기간은 정책, 스케줄, 미디어 자산, 서버 부하, 요청 타입, 요청의 시간/날짜 등에 기초할 수 있다. 리스 지속 기간은 10분 또는 소정의 다른 일정한 지속 기간으로 설정될 수 있다. 리스 지속 기간은 리스 지속 기간이 요청된 미디어 콘텐츠의 재생 지속 기간보다 짧을 것을 요구하는 정책에 따라 설정될 수 있다. 리스 지속 기간은 요청된 미디어 콘텐츠의 재생 지속 기간의 특정 백분율일 수 있다. 보안 정보는 알고리즘에 따라 모두 생성된 재생 방지 키 및 다이제스트로 보호될 수 있다.
또한, 리스 서버는 그가 클라이언트 장치로 전송하는 보안 정보, 리스 키 및/또는 리스 지속 기간의 전부 또는 일부를 암호화할 수 있다. 리스 서버는 데이터의 일부의 메시지 다이제스트를 계산함으로써 생성된 키로 데이터를 암호화할 수 있다. 그러나, 리스 서버는 랜덤 키로 데이터를 암호화할 수 있으며, 그리고/또는 비밀 키를 이용하여 데이터의 일부를 암호화한다. 비밀 키는 클라이언트 장치 상에서 혼란될 수 있다.
리스 서버로부터 보안 정보, 리스 키 및 리스 지속 기간을 수신한 후, 클라이언트 장치는 리스 지속 기간 동안 미디어 콘텐츠의 점진적 다운로드를 개시할 수 있다(312). 보안 정보 및 리스 키는 클라이언트 장치로 하여금 지정된 리스 지속 기간 동안 미디어 콘텐츠의 점진적 다운로드/재생을 개시할 수 있게 한다. 일 실시예에서, 리스 서버는 실제 및/또는 예상 부하에 기초하여 리스 지속 기간을 동적으로 조정한다. 동적 리스 지속 기간은 더 짧은 리스 지속 기간이 클라이언트가 서버와 더 자주 갱신(즉, 그 자신을 인증)한다는 것을 의미한다는 점에서 부하 경감과 보안 간의 균형(tradeoff)을 조정한다. 미디어 콘텐츠를 점진적으로 다운로드/재생하기 위하여, 클라이언트 장치는 TCP, UDP, RTP, RTSP, RTCP, SSH, TLS/SSL, SIP, SDP, FTP, HTTP 등과 같은 하나 이상의 프로토콜을 이용할 수 있다. 언젠가 개발될 다른 통신 및/또는 송신 프로토콜들도 이용될 수 있다. 미디어 콘텐츠는 비디오, 오디오, 게임, 전자책, 애플리케이션, 이미지 등을 포함할 수 있다. 미디어 콘텐츠는 영화, 음악, 게임, 오디오(음악 파일 등) 및/또는 미디어 파일 재생 리스트일 수 있다.
리스 지속 기간의 만료시, 리스 서버는 리스를 종료하고, 할당된 슬롯을 해제한다. 그러나, 리스 지속 기간의 만료 전에, 클라이언트 장치는 리스 갱신 요청을 제출함으로써 리스 지속 기간을 연장할 수 있다. 클라이언트 장치는 리스 중지 요청을 제출함으로써 리스 지속 기간의 만료 전에 리스를 종료할 수도 있다. 리스 서버가 리스 중지 요청을 수신할 때, 리스 서버는 리스를 종료하고, 할당된 슬롯을 해제한다.
도 4는 자산 리스를 갱신하기 위한 예시적인 흐름도를 나타낸다. 일 실시예에 따르면, 클라이언트 장치는 자산 재생 동안 리스 지속 기간을 시행한다. 클라이언트 장치는 커널 공간에서 리스 지속 기간을 시행할 수 있다. 양 예에서, 클라이언트 장치는 리스 지속 기간이 만료되면 자산 재생을 종료한다. 그러나, 클라이언트 장치는 리스 갱신 요청을 서버로 전송함으로써 리스 지속 기간을 연장할 수 있다. 성공적인 리스 갱신의 결과는 이중적인데, 즉 클라이언트 장치에서는 특정 자산에 대해 리스 지속 기간이 연장되며, 서버에서는 클라이언트 장치에 대해 리스 만료 시간(슬롯)이 연장된다. 클라이언트 장치는 커널 공간에 리스 정보를 저장하여 리스의 무결성을 보호할 수 있다. 일 변형예에서, 클라이언트가 영화의 프레임과 같은 미디어의 일부를 해독 또는 디코딩할 때마다, 클라이언트는 리스 지속 기간이 만료되었는지를 검사한다. 리스 지속 기간이 만료된 경우, 모든 보안 정보가 손상되고, 이는 미래의 해독 또는 디코딩을 방지하며, 만료되지 않은 경우, 클라이언트는 미디어를 계속 해독 또는 디코딩한다.
도 4에 도시된 바와 같이, 클라이언트 장치는 먼저 리스 갱신 요청을 서버로 전송한다(402). 리스 갱신 요청을 서버로 전송할 때, 클라이언트 장치는 재생 방지 보호를 이용하여, 메시지를 보호하고, 메시지가 권한 없는 자에 의해 재생될 수 없다는 것을 보증할 수 있다. 일 실시예에 따르면, 재생 방지 보호는 여러 단계를 포함한다. 먼저, 클라이언트 장치는 글로벌 고유 식별자, 랜덤 식별자, 클라이언트 장치 타입 및/또는 현재 시간에 기초하여 HMAC 키를 생성한다. 이어서, 클라이언트 장치는 HMAC 키를 이용하여 메시지의 다이제스트를 계산한다. 이어서, 클라이언트 장치는 요청 타입 및/또는 현재 시간은 물론, 위에서 생성된 다이제스트, 글로벌 고유 식별자 등과 같은 임의의 다른 정보에 기초하여 제2 키를 생성한다. 마지막으로, 클라이언트 장치는 제2 키를 이용하여, HMAC 키로 생성된 메시지 다이제스트를 포함하는 전체 메시지를 암호화한다.
이어서, 서버는 리스 갱신 요청을 수신하고, 기존 리스 지속 기간 동안 클라이언트 장치에 대해 슬롯이 현재 할당 또는 배정되어 있는지를 결정한다(404). 클라이언트 장치에 대해 슬롯이 현재 할당/배정되어 있지 않은 경우, 서버는 클라이언트 장치에 대한 슬롯을 획득하고(406), 클라이언트 장치에 대한 슬롯 타이머를 초기화한다(408). 대안으로서, 클라이언트 장치에 대해 슬롯이 이미 할당 또는 배정되어 있는 경우, 서버는 클라이언트 장치에 대한 슬롯 타이머를 연장한다(410). 슬롯 타이머는 스케줄, 설정, 정책, 사용자 프로파일, 자원, 규칙, 자산 등에 기초할 수 있다.
이어서, 서버는 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 클라이언트 장치로 전송한다(412). 클라이언트 장치는 커널 공간 내의 저장을 위해 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 수신할 수 있다. 여기서, 클라이언트 장치는 탬퍼링에 대해 보호되는 저장된 정보를 이용하고, 그에 따라 리스 지속 기간을 시행한다. 클라이언트 장치가 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 수신하면, 클라이언트 장치는 새로운 리스 지속 기간 동안 미디어 콘텐츠의 다운로드/재생을 계속할 수 있다(414).
일 변형예에서, 갱신 응답은 리스 키를 포함하지 않는다. 리스 키는 최초 리스 요청 후에 동일하게 유지되며, 따라서 클라이언트 장치는 리스 갱신 응답 내에서 새로운 지속 기간만을 전송할 수 있다. 물론, 클라이언트 장치는 대안으로서 새로운 리스 키를 매번 생성할 수 있다. 따라서, 갱신 요청들은 이전에 사용된 리스 키에 의존할 수 있거나, 새로운 리스 키를 사용할 수 있다.
도 5는 자산 리스를 중지하기 위한 예시적인 흐름도를 나타낸다. 서버는 먼저 리스 중지 요청을 수신한다(502). 일 실시예에서, 리스 중지 요청은 이벤트에 응답하여 생성되는 신호이다. 예컨대, 리스 중지 요청은 미디어 콘텐츠 다운로드/재생의 중단을 지시하는 에러일 수 있다. 대안으로서, 리스 중지 요청은 사용자에 의한 액션, 서버 이벤트, 네트워크 이벤트, 애플리케이션 이벤트 등과 같은 이벤트에 응답하여 클라이언트 장치에 의해 생성되는 메시지(예로서, FIN 패킷)일 수 있다. 클라이언트 장치는 사용자가 미디어 콘텐츠의 다운로드/재생을 종료할 때 리스 중지 요청 메시지를 생성할 수 있다. 클라이언트 장치는 유휴 세션 타임아웃 후에 리스 중지 요청 메시지를 생성할 수 있다. 클라이언트 장치는 하드웨어, 소프트웨어 및/또는 네트워크 장애를 검출할 때 리스 중지 요청 메시지를 생성할 수 있다.
이어서, 서버는 기존 리스 지속 기간 동안 클라이언트 장치에 대해 슬롯이 현재 할당되어 있는지를 결정한다(504). 클라이언트 장치에 대해 슬롯이 할당되어 있지 않은 경우, 서버는 해제할 슬롯이 없다는 통지를 전송한다(506). 반면, 클라이언트 장치에 대해 슬롯이 할당되어 있는 경우, 서버는 클라이언트 장치에 할당된 슬롯을 해제한다(508). 서버가 클라이언트 장치에 할당된 슬롯을 해제하면, 클라이언트 장치는 통상적으로 리스 개시 요청을 통해 새로운 리스를 획득하지 않고는 미디어 콘텐츠의 다운로드/재생을 계속할 수 없다. 그러나, 교묘한 해커는 슬롯을 해제하기 위해 중지 요청을 위조할 수 있다. 그러나, 이것은 해커가 슬롯을 소비하지 않고는 리스를 갱신할 수 없으므로 해커의 재생이 타임아웃될 것이라는 것을 의미한다.
도 6은 샘플 자산 리스 관리 프로세스(600)에서의 클라이언트(602)와 서버(604) 간의 통신 교환을 나타낸다. 이 예에서, 클라이언트(602) 및 서버(604)는 사용자로 하여금 서버(604) 상의 미디어 자산을 리스하고 클라이언트(602)로부터 미디어 자산에 액세스하는 것을 가능하게 하는 일련의 통신 교환을 수행한다. 예를 들어, 메시 학생은 그의 방을 청소하는 동안 인터넷 상에서 음악 재생 리스트를 듣기를 원할 수 있다. 여기서, 메시 학생은 그의 미디어 플레이어로부터 음악 재생 리스트를 리스하고, 리스의 지속 기간 동안 음악 재생 리스트를 들을 수 있다. 리스는 메시 학생으로 하여금 그의 방을 청소하는 동안 음악 재생 리스트를 점진적으로 다운로드하고 재생할 수 있게 한다. 리스 기간의 종료에 접근함에 따라, 미디어 플레이어는 리스 갱신 요청을 리스 서버로 전송함으로써 리스를 투명하게(예를 들어, 사용자 상호작용 없이) 연장하여, 메시 학생으로 하여금 최초 리스 기간을 넘어 음악 재생 리스트를 계속 듣게 할 수 있다. 게다가, 메시 학생은 그의 사용자 계정을 이용하여 리스를 허가하거나 달리 리스와 메시 학생을 연관시키도록 미디어 플레이어를 구성할 수 있다. 동일한 원리들이 단일 비디오 콘텐츠의 시청에도 적용된다. 리스 만료 전의 소정 시점에서, 재생 장치는 리스의 갱신 또는 연장을 요청하려고 시도하는 동시에, 사용자를 위해 중단 없는 재생을 계속한다.
클라이언트(602)는 커널 공간에 리스를 안전하게 저장하여, 탬퍼링으로부터 리스를 보호할 수 있다. 일 실시예에서, 클라이언트(602)는 리스에 따라 타임아웃 기간을 시행한다. 클라이언트(602)는 커널 공간에서 리스를 시행하여, 탬퍼링으로부터 리스를 보호할 수 있다. 더욱이, 클라이언트(602)는 해시 함수, 암호화 알고리즘 및/또는 보안 키를 이용하여, 서버(604)와의 통신 교환을 보호할 수 있다.
도 6에서, 클라이언트(602)와 서버(604)는 TCP, UDP, RTP, RTSP, RTCP, SSH, TLS/SSL, SIP, SDP, FTP, HTTP 등과 같은 하나 이상의 프로토콜을 통해 네트워크 상에서 통신한다. 언젠가 개발될 다른 통신 및/또는 송신 프로토콜들도 이용될 수 있다. 클라이언트(602)는 예를 들어 이동 전화, 랩탑 컴퓨터, 미디어 플레이어 등과 같은 네트워킹 능력을 갖춘 임의의 컴퓨팅 장치일 수 있다. 서버(604)는 자산 리스 관리를 수행하도록 구성된 하나 이상의 서버를 포함할 수 있다. 자산은 비디오, 오디오, 게임, 애플리케이션, 이미지 등과 같은 미디어 콘텐츠를 포함할 수 있다.
클라이언트(602)는 먼저 리스 개시 요청(606)을 서버(604)로 전송한다. 여기서, 클라이언트(602)는 서버(604)로 하여금 리스 개시 요청(606), 클라이언트(602) 및/또는 요청을 제출한 사용자를 인증/식별할 수 있게 해주는 사용자 프로파일과 연관된다. 클라이언트(602)는 클라이언트(602)와 사용자 프로파일을 연관시키는 설정을 포함할 수 있다. 사용자 프로파일은 클라이언트(602)를 허가된 장치로서 열거하는 설정을 포함할 수 있다. 예를 들어, 메시 학생은 클라이언트(602)를 허가된 장치로서 지정하도록 그의 사용자 프로파일을 구성할 수 있다. 클라이언트(602)는 사용자 계정 증명서를 저장하고, 증명서를 이용하여 서버(604)에 대해 인증될 수 있다.
클라이언트(602)는 액션 및/또는 이벤트에 응답하여 리스 개시 요청(606)을 전송할 수 있다. 클라이언트(602)는 사용자 액션에 응답하여 리스 개시 요청(606)을 전송할 수 있다. 예를 들어, 클라이언트(602)는 서버(604) 상에 저장된 노래를 리스/재생하기 위한 메시 학생의 시도에 응답하여 리스 개시 요청(606)을 전송할 수 있다. 클라이언트(602)는 스케줄에 따라 리스 개시 요청(606)을 전송할 수 있다. 클라이언트(602)는 리스가 종료되려고 한다는 결정에 기초하여 리스 갱신 요청(606)을 또는 동일 미디어를 계속 보기 위해 리스 갱신 요청을 전송할 수 있다.
이어서, 서버(604)는 클라이언트(602)에 응답(608)을 전송한다. 응답(608)은 보안 정보, 리스 키 및 리스 지속 기간을 포함한다. 일 실시예에 따르면, 클라이언트(602)는 보안 정보, 리스 키 및 리스 지속 기간을 수신하고, 정보를 커널 공간에 저장한다. 여기서, 클라이언트(602)는 탬퍼링에 대해 보호되는 저장된 정보를 이용하여, 리스 지속 기간을 시행할 수 있다. 더욱이, 서버(604)는 클라이언트(602)로 전송되는 응답(608)의 전부 또는 일부를 해싱 및/또는 암호화할 수 있다. 예를 들어, 서버(604)는 비공개 키를 이용하여 응답(608)을 암호화할 수 있다. 이어서, 클라이언트(602)는 비공개 키를 이용하여 응답(608)을 해독할 수 있다.
응답(608)을 수신한 후에, 클라이언트(602)는 리스 지속 기간 동안 자산의 점진적 다운로드를 개시할 수 있다. 응답(608) 내의 보안 정보 및 리스 키는 클라이언트(602)로 하여금 리스 지속 기간에 의해 지정된 기간 동안 자산의 점진적 다운로드를 개시할 수 있게 한다. 예를 들어, 메시 학생은 그가 그의 미디어 플레이어로 스트리밍하기를 원하는 음악 재생 리스트를 선택할 수 있다. 이에 응답하여, 미디어 플레이어는 음악 재생 리스트를 호스트하고 그리고/또는 음악 재생 리스트의 리싱을 관리하는 서버에 리스 개시 요청을 전송할 수 있다. 서버가 리스 개시 요청을 수신할 때, 서버는 보안 정보, 리스 키 및 리스 지속 기간을 포함하는 응답을 생성한다. 이어서, 서버는 응답을 미디어 플레이어로 전송한다. 미디어 플레이어가 응답을 수신하면, 미디어 플레이어는 음악 재생 리스트의 점진적 다운로드를 시작한다. 이어서, 메시 학생은 리스 지속 기간에서 지정된 시간 동안 음악 재생 리스트를 들을 수 있다.
리스 지속 기간의 종료 전에, 클라이언트(602)는 리스 갱신 요청(610)을 서버(604)로 전송하여, 자산 다운로드/재생이 리스 지속 기간을 넘어 계속되게 할 수 있다. 일 실시예에서는, 클라이언트(602)에게 자산의 재생 지속 기간을 통해 적어도 한 번 리스를 갱신하도록 요구하기 위해 리스 지속 기간이 자산의 재생 지속 기간보다 짧게 설정된다. 위의 예에서, 미디어 플레이어는 리스 갱신 요청을 투명하게 서버로 전송하여, 리스 지속 기간을 연장하고, 메시 학생으로 하여금 음악 재생 리스트를 계속 듣게 할 수 있다. 더욱이, 미디어 플레이어는 재생 지속 기간의 종료까지 두 번 이상 리스를 갱신할 수 있다. 클라이언트(602)가 리스 지속 기간의 종료 전에 리스를 갱신하지 않는 경우, 서버(604)는 리스를 종료하고, 클라이언트(602)에 할당된 슬롯을 해제한다. 더욱이, 리스 지속 기간의 만료는 클라이언트(602)로 하여금 자산의 디코딩 또는 재생과 관련된 모든 보안 정보를 파괴하거나 손상시키게 할 수 있다. 이것은 공격 및 위조 시도를 좌절시키는데, 이는 리스 갱신 요구가 제2 보호 층으로 쓰일 수 있기 때문이다. 이것은 또한 실효되거나 사용되지 않는 리스가 슬롯, 리스, 세션, 서비스 등과 같은 자원들을 구속하는 것을 방지하며, 서버(604)로 하여금 새로운/활성 요청들을 서비스하기 위해 그러한 자원들을 재할당할 수 있게 한다.
예를 들어, 메시 학생은 서버 상의 음악 재생 리스트에 대해 그의 미디어 플레이어로부터 리스를 개시한다. 이어서, 메시 학생의 미디어 플레이어는 네트워크 접속을 잃어서, 음악 재생 리스트에 대한 메시 학생의 액세스가 중단된다. 대신, 메시 학생은 그의 랩탑을 이용하여 영화를 보려고 시도하며, 따라서 서버로부터의 리스를 암시적으로 요청한다. 메시 학생의 이전 리스가 즉시 해제되지 않는 경우, 서버는 메시 학생으로 하여금 그의 랩탑으로부터 영화를 리스할 수 있게 하기 위한 다른 리스/자원을 즉시 갖지 못할 수도 있다. 이것은 예를 들어 메시 학생이 서버에 의해 허가되는 최대 수의 리스에 도달하거나 이전 리스가 서버 상의 최종 슬롯을 점유하는 경우에 그러할 것이다. 그러나, 이전 리스가 재생 지속 기간을 통해 갱신될 것을 요구함으로써, 서버는 비활성 리스들/장치들이 리스 지속 기간의 길이를 넘어 리스, 세션, 슬롯 등과 같은 서버 자원들을 불필요하게 점유하지 않는 것을 보증할 수 있다. 여기서, 서버는 리스 지속 기간의 종료시에 이전 리스를 종료하여, 이전 리스 및 이전 리스에 의해 사용되는 자원들을 해제할 것이다. 이어서, 서버는 슬롯 및/또는 이전 리스를 재할당하여, 메시 학생으로 하여금 그의 랩탑으로부터 영화를 리스하게 할 수 있다.
리스 갱신 요청(610)을 서버(604)로 전송할 때, 클라이언트(602)는 재생 방지 보호를 이용하여, 메시지를 보호하고, 메시지가 의도되지 않은 자에 의해 재생되지 않는 것을 보증할 수 있다. 일 실시예에서, 재생 방지 보호는 여러 단계를 포함한다. 먼저, 클라이언트(602)는 글로벌 고유 식별자, 랜덤 식별자, 클라이언트 장치 타입, 다이제스트, 글로벌 고유 식별자 및/또는 현재 시간에 기초하여 HMAC 키를 생성한다. 혼란된 비밀 키를 갖는 다른 암호화 계층도 HMAC 키에 적용될 수 있다. 이어서, 클라이언트(602)는 HMAC 키를 이용하여 메시지의 다이제스트를 계산한다. 이어서, 클라이언트(602)는 요청 타입 및/또는 현재 시간에 기초하여 재생 방지 키를 생성한다. 마지막으로, 클라이언트(602)는 재생 방지 키를 이용하여, HMAC 키로 생성된 메시지 다이제스트를 포함하는 전체 메시지를 암호화한다. 서버(604)도 클라이언트(602)로부터의 메시지들을 검사 및 해독하기 위한 동일 키들을 도출한다.
이어서, 서버(604)는 리스 갱신 요청(610)을 수신하고, 응답(612)을 클라이언트(602)로 전송한다. 응답(612)은 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 포함한다. 클라이언트(602)는 응답(612)을 수신하고, 점진적 다운로드/재생을 계속한다. 클라이언트(602)는 자산 재생 지속 기간의 종료까지 이러한 프로세스를 반복할 수 있다. 일 실시예에서, 리스 갱신 요청(610) 및 응답(612)은 사용자의 입력 없이 투명하게 생성된다. 예컨대, 클라이언트(602)는 자산이 리스의 종료 전에 지정된 시간에 다운로드 또는 재생되고 있는 경우에 리스 갱신 요청(610)을 자동으로 생성할 수 있다.
이어서, 서버(604)는 리스 갱신 요청(610)을 수신하고, 응답(612)을 생성하며, 응답(612)을 클라이언트(602)로 전송한다. 클라이언트(602)는 응답(612)을 수신하고, 중단 없이 재생을 계속한다. 이전 예에서는, 메시 학생이 음악 재생 리스트를 듣는 동안, 미디어 플레이어는 리스 갱신 요청(610)을 자동으로 생성하여 이를 서버(604)로 전송함으로써 리스 지속 기간의 종료시에 중단을 피할 수 있다. 클라이언트(602)는 서버(604)로부터 응답(612)을 수신하고, 음악 재생 리스트를 계속 듣고 있는 메시 학생이 모르게 리스 지속 기간을 연장한다. 이어서, 메시 학생은 최초의 리스 지속 기간을 넘어 음악 재생 리스트를 계속 들을 수 있다. 미디어 플레이어는 이러한 단계들을 계속할 수 있다. 예를 들어, 미디어 플레이어는 리스 갱신 요청들을 계속 전송하고, 음악 재생 리스트의 재생이 완료될 때까지 리스 지속 기간을 연장할 수 있다.
마지막으로, 클라이언트(602)는 옵션으로서 리스 중지 요청(614)을 서버(604)로 전송하여, 리스 지속 기간의 종료 전에 리스를 종료할 수 있다. 서버(604)가 리스 중지 요청(614)을 수신할 때, 서버는 리스를 종료하고 슬롯을 해제한다. 리스가 종료되면, 특정 자산에 대한 점진적 재생이 중지된다.
일부 기본 시스템 컴포넌트들 및 개념들이 설명되었으며, 이제 도 7, 8, 9, 10 및 11에 도시된 예시적인 방법 실시예들이 설명된다. 명료화를 위해, 각각의 방법은 방법을 실시하도록 구성된 도 1에 도시된 바와 같은 예시적인 시스템(100)과 관련하여 설명된다. 여기서 설명되는 단계들은 예시적이며, 소정 단계들을 배제, 추가 또는 변경하는 조합들을 포함하는 그들의 임의 조합으로 구현될 수 있다.
도 7은 자산 리스를 개시하기 방법 실시예의 제1 예를 나타낸다. 시스템(100)은 먼저 사용자 프로파일과 관련된 클라이언트 장치로부터 사용자 프로파일이 허가된 미디어 콘텐츠에 대한 리스 개시 요청을 수신한다(702). 사용자 프로파일은 사용자 이름, 사용자 식별자, 사용자 그룹, 글로벌 사용자 식별자, 장치 식별자 등을 포함할 수 있다. 시스템(100)은 사용자 프로파일을 이용하여, 리스 개시 요청을 인증하고, 클라이언트 장치를 식별하고, 그리고/또는 요청을 제출한 사용자를 식별할 수 있다. 사용자 프로파일은 사용자 및/또는 클라이언트 장치에 의해 리스 개시 요청을 허가하는 데에도 사용될 수 있다.
사용자는 그의 사용자 프로파일을 위해 구성된 계정 증명서들을 검증함으로써 리스 개시 요청을 허가할 수 있다. 예를 들어, 리스 개시 요청을 시스템(100)으로 전송하기 전에, 클라이언트 장치는 사용자에게 그의 계정 증명서들을 입력함으로써 리스 개시 요청을 허가/인증하도록 재촉할 수 있다. 이어서, 클라이언트 장치는 인증 정보를 시스템(100)에 제공할 수 있다. 사용자 프로파일은 클라이언트 장치에 링크될 수 있으며, 따라서 클라이언트 장치는 특정 사용자 프로파일에 대해 시스템(100)으로부터 자산 리스를 획득하는 것이 허가된다. 예를 들어, 사용자 프로파일은 클라이언트 장치를 그 사용자 프로파일에 대한 허가된 장치로서 정의하는 선호 설정을 포함할 수 있다. 이어서, 시스템(100)은 사용자 프로파일을 이용하여, 클라이언트 장치와 선호 설정을 비교함으로써 클라이언트 장치로부터의 리스 개시 요청을 검증할 수 있다. 또 다른 실시예에서, 클라이언트 장치는 리스 개시 요청과 사용자 프로파일을 연관시키는 사용자 프로파일 정보를 리스 개시 요청 헤더 내에 포함시킨다.
이어서, 시스템(100)은 콘텐츠를 점진적으로 다운로드하기 위한 이용 가능 슬롯들의 수를 식별한다(704). 슬롯은 리스, 세션, 자원, 노드, 스케줄, 스레드, 객체, 모듈, 전송 매체 등일 수 있다. 시스템(100)은 리스 개시 요청을 서비스하기 위해 세션이 이용 가능한지를 검사할 수 있다. 시스템(100)은 하나 이상의 네트워크 노드의 상태를 검사하여, 네트워크 노드가 리스 개시 요청을 서비스하는 데 이용될 수 있는지를 결정할 수 있다. 시스템(100)은 미디어 자산의 상태를 검사하고, 시스템 부하에 기초하여, 시스템(100)이 리스 개시 요청을 서비스할 수 있는지를 결정한다. 시스템(100)은 리스가 클라이언트 장치에 제공될 수 있는지를 결정하기 위해 리스 서버 상에서 리스가 이용 가능한지를 검사할 수 있다.
이어서, 시스템(100)은 이용 가능한 슬롯들의 수가 0보다 큰지를 결정한다(706). 슬롯들의 수가 0보다 크지 않은 경우, 시스템(100)은 거절 통지를 클라이언트 장치로 전송하고(708), 방법은 종료된다. 한편, 슬롯들의 수가 0보다 큰 경우, 시스템(100)은 이용 가능 슬롯들의 수 중 하나의 이용 가능 슬롯을 클라이언트 장치에 할당하여, 할당된 슬롯을 생성한다(710). 이어서, 시스템(100)은 할당된 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 클라이언트 장치로 전송하며, 보안 정보 및 리스 키는 클라이언트 장치가 리스 지속 기간 동안 미디어 콘텐츠의 점진적 다운로드를 개시할 수 있게 한다(712).
도 8은 자산 리스를 개시하기 위한 방법 실시예의 제2 예를 나타낸다. 시스템(100)은 미디어 자산에 대한 리스 개시 요청을 리스 서버로 전송하며, 리스 개시 요청은 사용자 프로파일과 관련된다(802). 시스템(100)은 액션 및/또는 이벤트에 응답하여 리스 개시 요청을 생성 및/또는 전송할 수 있다. 일 실시예에서, 시스템(100)은 사용자에 의한 액션에 응답하여 리스 개시 요청을 생성한다. 예를 들어, 시스템(100)은 리스 서버 상에 저장된 노래를 재생하기 위한 사용자에 의한 시도에 응답하여 리스 개시 요청을 생성 및 전송할 수 있다. 대안으로서, 시스템(100)은 다른 장치로부터의 요청에 응답하여 리스 개시 요청을 생성한다. 시스템(100)은 스케줄에 따라 리스 개시 요청을 생성할 수도 있다.
이어서, 시스템(100)은 할당된 점진적 미디어 다운로딩 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 리스 서버로부터 수신한다(804). 보안 정보는 동작 식별자, 요청 식별자, 기능, 리스 식별자, 키의 일부, 증명서, 자원 식별자, 글로벌 고유 식별자, 계정 식별자, 주소 등을 포함할 수 있다. 보안 정보는 리스 키의 일부 및/또는 메시지 다이제스트를 포함할 수 있다.
리스 키는 리스 정보를 보호하는 보안 키이다. 리스 키는 영화와 같은 암호화된 콘텐츠를 간접적으로 해독한다. 다이제스트 및 재생 방지 키와 같은 다른 컴포넌트들은 서버에 의해 다듬어진 후에 클라이언트로 전송되는 메시지를 각각 검증 및 보호한다. 또한, 리스 키는 리스 정보의 무결성 및 신빙성을 검증하는 데 사용될 수 있다. 일 실시예에서, 리스 지속 기간은 미디어 자산의 재생 지속 기간보다 짧다. 결과적으로, 시스템(100)은 전체 재생 지속 기간 동안 미디어 자산을 재생하기 위해 적어도 한 번 리스를 갱신해야 한다. 이러한 방식으로, 리스 서버는 미디어 자산의 재생 지속 기간의 종료 전에 실효/미사용 리스를 종료하고, 실효/미사용 리스에 할당된 슬롯을 해제할 수 있다. 리스 지속 기간은 정책, 스케줄, 미디어 자산, 서버 부하, 요청 타입, 현재 시간 등에 기초할 수 있다.
보안 정보, 리스 키 및/또는 리스 지속 기간은 탬퍼링 및/또는 위조를 방지하도록 해싱 및/또는 암호화될 수 있다. 또한, 보안 정보, 리스 키 및/또는 리스 지속 기간은 시스템(100) 상의 보호 공간에 저장될 수 있다. 일 실시예에 따르면, 시스템(100)은 보안 정보, 리스 키 및 리스 지속 기간을 수신하고, 커널 공간에 정보를 저장한다. 시스템(100)은 탬퍼링에 대해 보호되는 저장된 정보를 이용하여 리스 지속 기간을 시행할 수 있다.
마지막으로, 시스템(100)은 보안 정보 및 리스 키에 따라 리스 지속 기간 내에 점진적 재생을 위해 미디어 자산의 일부를 다운로드한다(806). 시스템(100)은 리스 서버 또는 리스 정보 및/또는 리스 서버에 의해 지정된 다른 서버로부터 미디어 자산의 일부를 다운로드할 수 있다. 하나의 시나리오에서는, 미디어 자산의 모든 부분들이 암호화되고, 리스 키 및/또는 다른 대응하는 보안 정보에 의해서만 해독될 수 있다.
도 9는 자산 리스를 갱신하기 위한 방법 실시예의 제1 예를 나타낸다. 리스 서버는 사용자 프로파일과 관련된 클라이언트 장치로부터 사용자 프로파일이 허가된 미디어 콘텐츠에 대한 리스 갱신 요청을 수신하며, 리스 갱신 요청은 기존의 리스 키, 기존의 리스 지속 기간 및 기존의 보안 정보와 연관된다(902). 리스 갱신 요청은 해싱되고 암호화되고 그리고/또는 암호화 해제된 정보의 부분들을 포함할 수 있다. 리스 갱신 요청은 비공개 키로 암호화될 수 있다. 리스 갱신 요청의 다이제스트를 계산하기 위하여 HMAC 키가 사용된다. 이어서, 다이제스트 및 리스 갱신 요청은 재생 방지 키로 암호화된다. 여기서, HMAC 키는 글로벌 고유 식별자, 랜덤 식별자, 클라이언트 장치 타입, 다이제스트, 글로벌 고유 식별자, 및/또는 현재 시간에 기초한다. 재생 방지 키는 요청 타입 및/또는 현재 시간에 기초한다. 하나의 일반 변형예에서, 리스 갱신 요청은 원래의 리스 요청과 동일한 방식으로 보호된다. 그러나, 갱신을 위해, 리스 키는 동일하게 유지될 수 있지만, 리스 지속 기간은 단순히 연장된다. 리스 키는 갱신되지 않을 수도 있는데, 그 이유는 다운로드된 콘텐츠가 동일 리스 키로 해독되어야 하기 때문이다.
이어서, 리스 서버는 리스 갱신 요청에 대한 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 생성하며, 새로운 리스 지속 기간은 기존의 리스 지속 기간을 넘어 연장된다(904). 마지막으로, 리스 서버는 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 클라이언트로 전송하여, 클라이언트 장치가 새로운 리스 지속 기간 동안 미디어 콘텐츠의 점진적 재생을 계속하게 한다(906). 리스 서버는 미디어 콘텐츠의 재생 지속 기간의 종료까지 필요에 따라 단계 902 내지 906을 반복할 수 있다.
도 10은 자산 리스를 갱신하기 위한 방법 실시예의 제2 예를 나타낸다. 여기서, 시스템(100)은 미디어 자산에 대한 리스와 관련된 클라이언트 장치이다. 시스템(100)은 먼저 미디어 자산에 대한 리스 갱신 요청을 리스 서버로 전송하며, 리스 갱신 요청은 기존의 리스 키, 기존의 리스 지속 기간, 기존의 보안 정보 및 현재 할당된 미디어 재생 슬롯과 연관된다(1002). 이어서, 시스템(100)은 리스 서버로부터 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 수신하며, 새로운 리스 지속 기간은 기존의 리스 지속 기간을 넘어 연장된다(1004). 마지막으로, 시스템(100)은 새로운 보안 정보 및 새로운 리스 키에 따라 새로운 리스 지속 기간 내에 점진적 재생을 위해 미디어 자산의 일부를 다운로드한다(1006).
도 11은 자산 리스를 중지하기 위한 방법 실시예의 일례를 나타낸다. 도 11에 도시된 바와 같이, 리스 서버는 먼저 사용자 프로파일과 관련된 클라이언트 장치로부터 사용자 프로파일이 허가된 미디어 콘텐츠의 점진적 재생에 대한 리스 중지 요청을 수신하며, 리스 중지 요청은 기존의 리스 키, 기존의 리스 지속 기간 및 기존의 보안 정보와 연관된다(1102). 이어서, 리스 서버는 기존의 리스 지속 기간 동안 미디어 재생 슬롯이 현재 클라이언트 장치에 할당되어 있는지를 결정한다(1104). 기존의 리스 지속 기간 동안 미디어 재생 슬롯이 현재 클라이언트 장치에 할당되어 있는 경우, 리스 서버는 미디어 재생 슬롯을 해제하여, 클라이언트 장치가 미디어 재생 슬롯을 이용하여 미디어 콘텐츠의 점진적 재생을 계속하는 것을 방지한다(1106). 슬롯 해제의 목적은 클라이언트가 슬롯을 구속하는 것을 방지하는 것이다. 플레이어는 중지 요청의 발행시에 재생을 의도적으로 중지하거나, (중지 요청이 위조된 경우) 타임아웃될 것이다. 타임아웃 메커니즘은 본질적으로 악한 사용자가 위조된 중지 요청을 전송한 후에 장기간 동안 리스 자산을 계속 재생하는 것을 방지한다.
본 발명의 범위 내의 실시예들은 컴퓨터 실행 가능 명령어들 또는 데이터 구조들을 운반 또는 저장하기 위한 유형의 및/또는 비일시적 컴퓨터 판독 가능 저장 매체들도 포함할 수 있다. 이러한 비일시적 컴퓨터 판독 가능 저장 매체들은 범용 또는 전술한 바와 같은 임의의 특수 목적 프로세서의 기능적 설계를 포함하는 특수 목적 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능 매체들일 수 있다. 제한이 아니라 예로서, 그러한 비일시적 컴퓨터 판독 가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 기타 광 디스크 저장 장치, 자기 디스크 저장 장치 또는 기타 자기 저장 장치들, 또는 컴퓨터 실행 가능 명령어들, 데이터 구조들 또는 프로세서 칩 설계 형태로 원하는 프로그램 코드 수단을 운반 또는 저장하는 데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 정보가 네트워크 또는 다른 통신 접속(유선, 무선 또는 이들의 조합)을 통해 컴퓨터로 전송 또는 제공될 때, 컴퓨터는 접속을 컴퓨터 판독 가능 매체로서 적절히 간주한다. 따라서, 임의의 그러한 접속은 컴퓨터 판독 가능 매체로서 적절히 지칭된다. 위의 것들의 조합들도 컴퓨터 판독 가능 매체의 범위 내에 포함되어야 한다.
컴퓨터 실행 가능 명령어들은 예를 들어 범용 컴퓨터, 특수 목적 컴퓨터 또는 특수 목적 처리 장치로 하여금 소정의 기능 또는 기능들의 그룹을 수행하게 하는 명령어들 및 데이터를 포함한다. 컴퓨터 실행 가능 명령어들은 독립 또는 네트워크 환경들에서 컴퓨터들에 의해 실행되는 프로그램 모듈들도 포함한다. 일반적으로, 프로그램 모듈들은 특정 작업들을 수행하거나 특정 추상 데이터 타입들을 구현하는 루틴들, 프로그램들, 컴포넌트들, 데이터 구조들, 객체들 및 특수 목적 프로세서들의 설계에 고유한 기능들 등을 포함한다. 컴퓨터 실행 가능 명령어들, 관련 데이터 구조들 및 프로그램 모듈들은 여기에 개시되는 방법들의 단계들을 실행하기 위한 프로그램 코드 수단들의 예들을 나타낸다. 그러한 실행 가능 명령어들 또는 관련 데이터 구조들의 특정 시퀀스는 그러한 단계들에서 설명되는 기능들을 구현하기 위한 대응하는 동작들의 예들을 나타낸다.
이 분야의 기술자들은 본 발명의 다른 실시예들이 개인용 컴퓨터, 핸드헬드 장치, 멀티-프로세서 시스템, 마이크로프로세서 기반 또는 프로그래밍 가능 소비자 전자 장치, 네트워크 PC, 미니 컴퓨터, 메인 프레임 컴퓨터 등을 포함하는 많은 타입의 컴퓨터 시스템 구성을 갖는 네트워크 컴퓨팅 환경들에서 실시될 수 있다는 것을 알 것이다. 실시예들은 통신 네트워크를 통해 (유선 링크들, 무선 링크들 또는 이들의 조합에 의해) 링크되는 로컬 및 원격 처리 장치들에 의해 작업들이 수행되는 분산 컴퓨팅 환경들에서도 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈들은 로컬 및 원격 메모리 저장 장치들 둘 다에 위치할 수 있다.
전술한 다양한 실시예들은 예로서 제공될 뿐이며, 본 발명의 범위를 한정하는 것으로 해석되지 않아야 한다. 예컨대, 본 발명의 원리들은 임의의 상황에서 사실상 임의의 자산 리스 관리 작업에 적용될 수 있다. 이 분야의 기술자들은 본 명세서에서 도시되고 설명된 예시적인 실시예들 및 응용들을 따르지 않고 그리고 본 발명의 사상 및 범위로부터 벗어나지 않고 본 명세서에서 설명된 원리들에 대해 이루어질 수 있는 다양한 수정 및 변경을 쉽게 인식할 것이다.

Claims (20)

  1. 프로세서; 및
    단계들을 수행하도록 상기 프로세서를 제어하기 위한 명령어들을 저장하는 메모리
    를 포함하고,
    상기 단계들은,
    사용자 프로파일과 관련된 클라이언트 장치로부터, 상기 사용자 프로파일이 허가된 미디어 콘텐츠에 대한 리스 개시 요청(lease start request)을 수신하는 단계;
    콘텐츠를 점진적으로 다운로드하기 위한 이용가능 슬롯들의 수를 식별하는 단계;
    상기 이용가능 슬롯들의 수가 0인 것으로 판정하는 것에 응답하여, 상기 리스 개시 요청에 응답하여 거절 통지를 상기 클라이언트 장치로 송신하는 단계;
    상기 이용가능 슬롯들의 수가 0보다 큰 것으로 판정하는 것에 응답하여,
    상기 이용가능 슬롯들의 수로부터 하나의 이용가능 슬롯을 상기 클라이언트 장치에 할당하여, 할당된 슬롯을 산출하는 단계; 및
    상기 리스 개시 요청에 응답하여, 상기 할당된 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 상기 클라이언트 장치로 송신하는 단계
    를 포함하고,
    상기 보안 정보 및 상기 리스 키는, 상기 클라이언트 장치가 상기 리스 지속 기간 동안 상기 미디어 콘텐츠의 점진적 다운로드를 개시할 수 있게 하고,
    상기 리스 지속 기간은 상기 미디어 콘텐츠의 재생 지속 기간에 기초하여 선택되고, 상기 리스 지속 기간은 상기 미디어 콘텐츠의 상기 재생 지속 기간보다 짧은, 시스템.
  2. 제1항에 있어서,
    상기 리스 지속 기간은 상기 클라이언트 장치에 의한 리스 갱신 요청(lease renewal request)에 응답하여 연장되는 시스템.
  3. 제2항에 있어서,
    상기 리스 갱신 요청에 응답하여 대체 리스 키 및 대체 리스 지속 기간을 제공하는 단계를 더 포함하는 시스템.
  4. 제1항에 있어서,
    상기 리스 지속 기간은 상기 미디어 콘텐츠와 관련된 지속 기간보다 짧은 시스템.
  5. 제1항에 있어서,
    실제 서버 부하 및 예상 서버 부하 중 적어도 하나에 기초하여 상기 리스 지속 기간을 동적으로 조정하는 단계를 더 포함하는 시스템.
  6. 제1항에 있어서,
    상기 할당된 슬롯은 상기 리스 지속 기간의 만료 시에 자동으로 해제되는 시스템.
  7. 제2항에 있어서,
    상기 리스 지속 기간을 연장하는 것은,
    상기 사용자 프로파일과 관련된 상기 클라이언트 장치로부터, 상기 사용자 프로파일이 허가된 미디어 콘텐츠에 대한 리스 갱신 요청을 수신하는 것 - 상기 리스 갱신 요청은 기존의 리스 키, 기존의 리스 지속 기간 및 기존의 보안 정보와 관련됨 -,
    상기 리스 갱신 요청에 대한 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 생성하는 것 - 상기 새로운 리스 지속 기간은 상기 기존의 리스 지속 기간을 넘어 연장됨 -, 및
    상기 리스 갱신 요청에 응답하여, 상기 새로운 보안 정보, 상기 새로운 리스 키 및 상기 새로운 리스 지속 기간을 상기 클라이언트 장치로 송신하여, 상기 클라이언트 장치가 상기 새로운 리스 지속 기간 동안 상기 미디어 콘텐츠의 점진적 재생을 계속할 수 있게 하는 것
    을 포함하는 시스템.
  8. 제1항에 있어서,
    상기 사용자 프로파일과 관련된 상기 클라이언트 장치로부터, 상기 사용자 프로파일이 허가된 미디어 콘텐츠의 점진적 재생에 대한 리스 중지 요청을 수신하는 단계 - 상기 리스 중지 요청은 기존의 리스 키, 기존의 리스 지속 기간 및 기존의 보안 정보와 관련됨 -;
    상기 기존의 리스 지속 기간 동안 미디어 재생 슬롯이 상기 클라이언트 장치에 대해 현재 할당되어 있는 것으로 판정하는 단계; 및
    상기 미디어 재생 슬롯을 해제하여, 상기 클라이언트 장치가 상기 미디어 재생 슬롯을 이용하여 상기 미디어 콘텐츠의 점진적 재생을 계속하는 것을 방지하는 단계
    를 더 포함하는 시스템.
  9. 제1항에 있어서,
    상기 보안 정보 및 상기 리스 키에 따라 상기 리스 지속 기간 내에서의 점진적 재생을 위해 상기 미디어 콘텐츠의 일부를 상기 클라이언트 장치로 송신하는 단계를 더 포함하는 시스템.
  10. 제1항에 있어서,
    상기 보안 정보는 상기 리스 키의 일부를 포함하는 시스템.
  11. 프로세서; 및
    단계들을 수행하도록 상기 프로세서를 제어하기 위한 명령어들을 저장하는 메모리
    를 포함하고,
    상기 단계들은,
    미디어 자산에 대해 리스 서버로 리스 개시 요청을 송신하는 단계 - 상기 리스 개시 요청은 사용자 프로파일과 관련됨 -;
    상기 리스 서버로부터, 할당된 점진적 미디어 다운로딩 슬롯과 관련된 보안 정보, 리스 키 및 리스 지속 기간을 수신하는 단계 - 상기 리스 지속 기간은 상기 미디어 자산의 재생 지속 기간에 기초하여 선택되고, 상기 리스 지속 기간은 상기 미디어 자산의 상기 재생 지속 기간보다 짧음 -; 및
    상기 보안 정보 및 상기 리스 키에 따라 상기 리스 지속 기간 내에서의 점진적 재생을 위해 상기 미디어 자산의 일부를 다운로드하는 단계
    를 포함하는 시스템.
  12. 제11항에 있어서,
    리스 갱신 요청에 응답하여, 상기 할당된 점진적 미디어 다운로딩 슬롯과 관련된 새로운 리스 지속 기간을 수신하는 단계를 더 포함하며, 상기 새로운 리스 지속 기간은 상기 미디어 자산에 기초하는 시스템.
  13. 제12항에 있어서,
    상기 새로운 리스 지속 기간을 수신하는 단계는,
    미디어 자산에 대해 상기 리스 서버로 리스 갱신 요청을 송신하는 단계 - 상기 리스 갱신 요청은 기존의 리스 키, 기존의 리스 지속 기간, 기존의 보안 정보 및 현재 할당된 미디어 재생 슬롯과 관련됨 -;
    상기 리스 서버로부터 새로운 보안 정보, 새로운 리스 키 및 새로운 리스 지속 기간을 수신하는 단계 - 상기 새로운 리스 지속 기간은 상기 기존의 리스 지속 기간을 넘어 연장됨 -; 및
    상기 새로운 보안 정보 및 상기 새로운 리스 키에 따라 상기 새로운 리스 지속 기간 내에서의 점진적 재생을 위해 상기 미디어 자산의 일부를 다운로드하는 단계
    를 포함하는 시스템.
  14. 제13항에 있어서,
    상기 리스 갱신 요청은 상기 기존의 리스 지속 기간의 종료 전에 송신되는 시스템.
  15. 제11항에 있어서,
    상기 사용자 프로파일이 허가된 미디어 자산의 점진적 재생에 대한 리스 중지 요청을 상기 리스 서버로 송신하는 단계를 포함하며, 상기 리스 중지 요청은 기존의 리스 키, 기존의 리스 지속 기간 및 기존의 보안 정보와 관련되는 시스템.
  16. 제15항에 있어서,
    상기 리스 중지 요청은 미디어 자산의 점진적 재생 종료 이벤트를 포함하는 시스템.
  17. 제11항에 있어서,
    상기 보안 정보, 상기 리스 키 또는 상기 리스 지속 기간 중 적어도 하나는 커널 공간에 저장되는 시스템.
  18. 제11항에 있어서,
    상기 리스 지속 기간을 넘어 점진적 재생을 계속하기 위해서, 클라이언트 장치가 상기 리스 지속 기간의 만료 전에 리스 갱신 요청을 송신하는 것이 요구되는 시스템.
  19. 제11항에 있어서,
    상기 보안 정보는 상기 리스 키의 일부를 포함하는 시스템.
  20. 제11항에 있어서,
    상기 미디어 자산은 비디오, 오디오, 게임, 애플리케이션, 전자책 또는 이미지 중 적어도 하나를 포함하는 시스템.
KR1020120145748A 2011-12-14 2012-12-13 자산 리스 관리용 시스템 및 방법 KR101525292B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/326,234 US8959605B2 (en) 2011-12-14 2011-12-14 System and method for asset lease management
US13/326,234 2011-12-14

Publications (2)

Publication Number Publication Date
KR20130085931A KR20130085931A (ko) 2013-07-30
KR101525292B1 true KR101525292B1 (ko) 2015-06-03

Family

ID=47469774

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120145748A KR101525292B1 (ko) 2011-12-14 2012-12-13 자산 리스 관리용 시스템 및 방법

Country Status (9)

Country Link
US (1) US8959605B2 (ko)
EP (1) EP2605168B1 (ko)
JP (1) JP5555751B2 (ko)
KR (1) KR101525292B1 (ko)
CN (1) CN103164811B (ko)
AU (1) AU2012241181B2 (ko)
BR (1) BR102012031570B1 (ko)
GB (1) GB2500452B (ko)
TW (1) TWI517694B (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140351151A1 (en) * 2013-05-23 2014-11-27 International Business Machines Corporation Providing a lease period determination
CN104657862A (zh) * 2013-11-20 2015-05-27 上海庞源机械租赁股份有限公司 一种设备租赁管理系统及管理方法
US9553855B2 (en) * 2014-02-14 2017-01-24 Red Hat, Inc. Storing a key to an encrypted file in kernel memory
US20150347996A1 (en) * 2014-05-30 2015-12-03 Apple Inc. Shared purchases
US9742692B2 (en) * 2014-06-23 2017-08-22 Microsoft Technology Licensing, Llc Acquiring resource lease using multiple lease servers
US9009113B1 (en) 2014-10-21 2015-04-14 Escapemusic Limited System and method for generating artist-specified dynamic albums
US10140365B2 (en) 2014-10-21 2018-11-27 Escapex Limited System and method for facilitating co-play and download of artist specific client applications via user-provided playlists
WO2016063129A1 (en) * 2014-10-20 2016-04-28 Escapex Limited System and method of providing individual client applications for artist-specific content
US9923719B2 (en) * 2014-12-09 2018-03-20 Cryptography Research, Inc. Location aware cryptography
US10382578B2 (en) 2015-06-05 2019-08-13 Apple Inc. Provision of a lease for streaming content
US10198561B2 (en) 2015-07-20 2019-02-05 Google Llc Systems, methods, and media for media session concurrency management with recurring license renewals
EP3326097B1 (en) * 2015-07-20 2020-07-15 Google LLC Systems, methods, and media for media session concurrency management with recurring license renewals
US10095876B2 (en) * 2016-02-09 2018-10-09 Rovi Guides, Inc. Systems and methods for allowing a user to access blocked media
US10976966B2 (en) 2018-06-29 2021-04-13 Weka.IO Ltd. Implementing coherency and page cache support in a distributed way for files
US11483141B2 (en) * 2020-06-03 2022-10-25 Capital One Services, Llc Key broker for a network monitoring device, and applications thereof
US20220231858A1 (en) * 2021-01-15 2022-07-21 Micron Technology, Inc. Control of Memory Devices over Computer Networks
US11483148B2 (en) 2021-01-15 2022-10-25 Micron Technology, Inc. Batch transfer of control of memory devices over computer networks
US11606590B2 (en) * 2021-03-03 2023-03-14 Google Llc Systems and methods to deliver content during client authentication process in a distributed computing system
CN113032029A (zh) * 2021-03-26 2021-06-25 北京字节跳动网络技术有限公司 音乐应用的续听处理方法、装置及设备
US20220385730A1 (en) * 2021-05-25 2022-12-01 WarnerMedia Direct, LLC Rules engine for controlling content access
CN115859337B (zh) * 2023-02-14 2023-05-16 杭州大晚成信息科技有限公司 基于内核的防止设备破解方法、设备、服务器及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001217840A (ja) * 2000-01-31 2001-08-10 Mitsubishi Electric Corp ネットワークによるデジタルコンテンツ配信システム
JP2004133501A (ja) * 2002-10-08 2004-04-30 Sony Corp 情報処理装置および情報処理方法、コンテンツ配信システム、記録媒体、並びに、プログラム

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832529A (en) * 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US20030040962A1 (en) * 1997-06-12 2003-02-27 Lewis William H. System and data management and on-demand rental and purchase of digital data products
JP4463998B2 (ja) 1999-04-09 2010-05-19 マイクロソフト コーポレーション 保護されたオンライン音楽配布システム
AU2001253857A1 (en) 2000-03-14 2001-09-24 Buzzpad, Inc. Method and apparatus for forming linked multi-user groups of shared software applications
US20020032905A1 (en) * 2000-04-07 2002-03-14 Sherr Scott Jeffrey Online digital video signal transfer apparatus and method
US7480939B1 (en) * 2000-04-28 2009-01-20 3Com Corporation Enhancement to authentication protocol that uses a key lease
US7689510B2 (en) 2000-09-07 2010-03-30 Sonic Solutions Methods and system for use in network management of content
ATE552562T1 (de) 2000-11-10 2012-04-15 Aol Musicnow Llc Verteilungs und -abonnementsystem für digitalen inhalt
US6993508B1 (en) * 2000-12-29 2006-01-31 Novell, Inc. Method and mechanism for vending digital content
AU2002304842A1 (en) 2001-08-20 2003-03-10 Datacentertechnologies N.V. File backup system and method
US7383332B2 (en) * 2002-04-08 2008-06-03 International Business Machines Corporation Method for problem determination in distributed enterprise applications
US8909777B2 (en) * 2002-06-26 2014-12-09 Intel Corporation Systems and methods for dynamic access to program features
JP4557718B2 (ja) 2002-09-16 2010-10-06 ヤフー! インコーポレイテッド オンラインソフトウェアレンタル
US20070174471A1 (en) * 2003-04-30 2007-07-26 Cedric Van Rossum Secure, continous, proxy-optimized, device-to-device data download reception system and method of use
JP4487508B2 (ja) * 2003-07-16 2010-06-23 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7801819B2 (en) 2003-10-03 2010-09-21 Sony Corporation Rendering rights delegation system and method
US7610616B2 (en) * 2003-10-17 2009-10-27 Fujitsu Limited Pervasive security mechanism by combinations of network and physical interfaces
US9286445B2 (en) * 2003-12-18 2016-03-15 Red Hat, Inc. Rights management system
US7458102B2 (en) * 2004-08-17 2008-11-25 Emc Corporation Information security architecture for remote access control using non-bidirectional protocols
US20060085648A1 (en) * 2004-10-16 2006-04-20 International Business Machines Corp. Autonomic removal of a user from a client and network
US8086709B2 (en) 2005-04-04 2011-12-27 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for distributing load on application servers
US7636851B2 (en) * 2005-06-30 2009-12-22 Microsoft Corporation Providing user on computer operating system with full privileges token and limited privileges token
US7917963B2 (en) * 2006-08-09 2011-03-29 Antenna Vaultus, Inc. System for providing mobile data security
US7971017B1 (en) * 2006-08-21 2011-06-28 Rockwell Automation Technologies, Inc. Memory card with embedded identifier
US8478694B2 (en) * 2006-11-03 2013-07-02 Sony Corporation Digital rights management license archiving
EP2159733A4 (en) * 2007-06-20 2012-08-08 Panasonic Corp TERMINAL, SERVER AND SYSTEM FOR READING AV CONTENT IN NETWORK
US7702799B2 (en) * 2007-06-28 2010-04-20 Oracle America, Inc. Method and system for securing a commercial grid network over non-trusted routes
JP5579073B2 (ja) 2007-11-16 2014-08-27 トムソン ライセンシング ストリーミング・メディアのセッション管理を行なうシステムおよび方法
US8677430B2 (en) * 2008-01-04 2014-03-18 Apple, Inc. Content rental system
US8402552B2 (en) * 2008-01-07 2013-03-19 Antenna Vaultus, Inc. System and method for securely accessing mobile data
US8321948B2 (en) * 2008-03-28 2012-11-27 Sap Ag Flexible appliance hosting with coordination of deployment, licensing and configuration
DE102008020832B3 (de) 2008-04-25 2009-11-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Konzept zur effizienten Verteilung einer Zugangsberechtigungsinformation
KR101062182B1 (ko) * 2008-09-09 2011-09-05 삼성전자주식회사 권한 객체 자동 갱신 방법 및 장치
GB0816551D0 (en) * 2008-09-10 2008-10-15 Omnifone Ltd Mobile helper application & mobile handset applications lifecycles
KR101062184B1 (ko) * 2008-09-26 2011-09-05 삼성전자주식회사 방송채널에 대한 라이센스 갱신 방법 및 장치
US20120216288A1 (en) * 2009-05-15 2012-08-23 Invicta Networks, Inc. Method and systems for secure distribution of content over an insecure medium
WO2011068784A1 (en) 2009-12-01 2011-06-09 Azuki Systems, Inc. Method and system for secure and reliable video streaming with rate adaptation
US8458765B2 (en) * 2009-12-07 2013-06-04 Samsung Electronics Co., Ltd. Browser security standards via access control
US8667575B2 (en) * 2009-12-23 2014-03-04 Citrix Systems, Inc. Systems and methods for AAA-traffic management information sharing across cores in a multi-core system
JP4764943B2 (ja) * 2009-12-29 2011-09-07 シャープ株式会社 動作制御装置、動作制御方法、ライセンス提供システム、動作制御プログラム、および記録媒体
US8910212B2 (en) 2010-09-29 2014-12-09 Verizon Patent And Licensing Inc. Multiple device storefront for video provisioning system
EP2633462B1 (en) * 2010-10-27 2019-08-07 Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. Protecting data integrity with storage leases

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001217840A (ja) * 2000-01-31 2001-08-10 Mitsubishi Electric Corp ネットワークによるデジタルコンテンツ配信システム
JP2004133501A (ja) * 2002-10-08 2004-04-30 Sony Corp 情報処理装置および情報処理方法、コンテンツ配信システム、記録媒体、並びに、プログラム

Also Published As

Publication number Publication date
CN103164811B (zh) 2017-02-22
AU2012241181B2 (en) 2014-12-18
BR102012031570B1 (pt) 2021-06-29
US20130160145A1 (en) 2013-06-20
EP2605168A2 (en) 2013-06-19
GB201222659D0 (en) 2013-01-30
AU2012241181A1 (en) 2013-07-04
JP2013137741A (ja) 2013-07-11
KR20130085931A (ko) 2013-07-30
TWI517694B (zh) 2016-01-11
EP2605168A3 (en) 2014-05-21
GB2500452B (en) 2016-02-17
GB2500452A (en) 2013-09-25
EP2605168B1 (en) 2019-04-24
US8959605B2 (en) 2015-02-17
CN103164811A (zh) 2013-06-19
TW201334519A (zh) 2013-08-16
BR102012031570A2 (pt) 2013-10-29
JP5555751B2 (ja) 2014-07-23

Similar Documents

Publication Publication Date Title
KR101525292B1 (ko) 자산 리스 관리용 시스템 및 방법
US11301575B2 (en) Secure data synchronization
KR101527248B1 (ko) 클라우드 기반 이동식 컴포넌트 바인딩
US9424400B1 (en) Digital rights management system transfer of content and distribution
US9342701B1 (en) Digital rights management system and methods for provisioning content to an intelligent storage
US7971261B2 (en) Domain management for digital media
Messerges et al. Digital rights management in a 3G mobile phone and beyond
US20100082989A1 (en) Storing Composite Services on Untrusted Hosts
US20140096213A1 (en) Method and system for distributed credential usage for android based and other restricted environment devices
JP2005332377A (ja) コンピューティングデバイスなどのネットワーク内における保護されたデジタルコンテンツのレンダリング
KR20100022953A (ko) 컨텐츠 라이센스의 휴대용 저장 장치에의 바인딩
KR20090002227A (ko) 컨텐츠 디바이스의 폐기 여부를 확인하여 데이터를전송하는 전송 방법과 시스템, 데이터 서버
JP2006524860A (ja) 失効リストを格納する方法
KR20230041971A (ko) 분산적 컴퓨터 네트워크 상에서 안전한 데이터 전송을 위한 방법, 장치 및 컴퓨터 판독가능 매체
JP2017525236A (ja) 増強メディア・プラットフォームによる通信の安全確保
US20230367853A1 (en) Digital rights management systems and methods using efficient messaging schemes
CN106992978B (zh) 网络安全管理方法及服务器
Bhatt et al. A personal mobile DRM manager for smartphones
US20130219510A1 (en) Drm/cas service device and method using security context
KR100765794B1 (ko) 공유 라이센스를 이용한 콘텐트 공유 방법 및 장치
Davidson et al. Content sharing schemes in DRM systems with enhanced performance and privacy preservation
CN116962845A (zh) 用于虚拟系统的多媒体播放方法及装置
Diehl et al. Protection in Unicast/Multicast

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: 20180427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 5