KR101305282B1 - 디지털 저작권 관리에서의 장치 간 DRM Time 동기화방법 및 장치 - Google Patents
디지털 저작권 관리에서의 장치 간 DRM Time 동기화방법 및 장치 Download PDFInfo
- Publication number
- KR101305282B1 KR101305282B1 KR1020060077767A KR20060077767A KR101305282B1 KR 101305282 B1 KR101305282 B1 KR 101305282B1 KR 1020060077767 A KR1020060077767 A KR 1020060077767A KR 20060077767 A KR20060077767 A KR 20060077767A KR 101305282 B1 KR101305282 B1 KR 101305282B1
- Authority
- KR
- South Korea
- Prior art keywords
- time
- drm
- devices
- virtual
- time information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명은 디지털 저작권 관리(Digital Rights Management : 이하 DRM이라 한다)에 관한 것으로, 특히 소정 DRM 콘텐츠(DRM contents)의 사용권리(Rights Object : RO)를 유효하게 사용하기 위하여 장치 간에 DRM Time을 동기화 하는 방법 및 장치에 관한 것으로서, 본 발명은 OCSP Responder로부터 시각을 제공받지 못하는 장치(즉, unconnected device)라도 RO를 전달하는 타 장치의 시간 정보를 타겟 장치에게 제공하여 장치 간 DRM Time을 동기화한다.
DRM, 동기화, DRM Time, 장치, 디지털 저작권 관리, 사용권리
Description
도 1은 디지털 저작권 관리 시스템을 도시한 구성도이다.
도 2는 장치 간 디지털 콘텐츠의 RO를 전달하는 전형적인 방법을 도시한 블록도이다.
도 3은 본 발명의 일 실시 예로서, 본 발명에 따른 장치 간의 동기화 방법을 도시한 개략적인 DRM 시스템 블록도이다.
도 4는 본 발명의 제1 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다.
도 5는 본 발명의 제2 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다.
도 6은 본 발명의 제3 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다.
도 7은 본 발명의 제4 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다.
도 8은 본 발명의 제5 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다.
도 9는 본 발명의 제6 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다.
본 발명은 디지털 저작권 관리(Digital Rights Management : 이하 DRM이라 한다)에 관한 것으로, 특히 소정 DRM 콘텐츠(DRM contents)의 사용권리(Rights Object : RO)를 유효하게 사용하기 위하여 장치 간에 DRM Time을 동기화 하는 방법 및 장치에 관한 것이다.
DRM은 디지털 콘텐츠에 대한 권리를 안전하게 보호하고 체계적으로 관리하기 위한 시스템 기술로서, 콘텐츠의 불법복제 방지 및 콘텐츠 사용권리의 획득, 콘텐츠의 생성 및 유통, 사용 과정에 대한 일련의 보호 및 관리 체계를 제공한다.
도 1은 디지털 저작권 관리 시스템을 도시한 구성도로서, 상기 디지털 저작권 관리 시스템은 콘텐츠 제공자가 사용자에게 전달한 콘텐츠를 사용자에게 부여한 사용권리만큼만 사용하도록 통제한다. 이때, 상기 콘텐츠 제공자는 콘텐츠 발급자(Content Issuer : CI) 및/또는 사용권리 발급자(Rights Issuer : RI)에 해당하는 엔티티(Entity)이다.
상기 콘텐츠 발급자(CI)는 접근 권한을 갖지 않은 사용자로부터 콘텐츠를 보 호할 수 있도록 특정 암호화 키를 사용해 보호된 콘텐츠(즉, DRM 콘텐츠)를 발급하고, 상기 사용권리 발급자(RI)는 상기 보호된 콘텐츠를 사용하는데 필요한 사용권리(Rights Object : RO)를 발급한다.
DRM 에이전트는, 단말에 탑재되어 상기 보호된 콘텐츠와 사용권리를 수신하고, 상기 사용권리에 포함된 허가(License)를 해석하여 상기 보호된 콘텐츠를 해당 단말에서 사용 가능한 형태로 변환함으로써 콘텐츠의 사용을 통제한다. 여기서, 상기 허가(License)는 일반적으로 특정 콘텐츠에 대한 설명 및 참조정보, 콘텐츠에 대한 복호화 키, 그리고 콘텐츠에 대한 하나 이상의 허가동작(permission)과 함께 각 허가동작에 따라 소정 조건(constraint)들로 구성된다. 예를 들어, 허가동작의 종류로서, Play, Display, Execute, Print, Export 등이 있으며, 사용조건의 예로서, count, timed-count, datetime, interval, accumulated, individual, system 등이 있다. 특히, 상기 사용조건의 예 중에 timed-count, datetime, accumulated는 시간에 관련된 조건이며, 이와 같은 시간 관련 각 사용조건은 DRM 에이전트에 의해 그 유효성이 판단된다. 이때, 상기 시간 관련 각 사용조건의 유효성은 DRM 에이전트가 관리하는 시계(DRM Time)을 참조하여 DRM 에이전트에 의해 이루어진다.
DRM 에이전트는 ROAP(Rights Object Acquisition Protocol)를 통하여 RI에 등록하고, RI로부터 RO를 획득하고, 또한 RI가 관리하는 장치들의 그룹인 Domain에 가입 및 해지한다. 상기 ROAP은 크게 세가지 프로토콜, 즉 Registration 프로토콜과, RO Acquisition 프로토콜과, Domain Management 프로토콜로 구성된다. 첫째, Registration 프로토콜을 통하여 장치와 RI 간 상호인증, Certificate 교환, 알고 리즘 협상 등이 수행된다. 둘째, RO Acquisition 프로토콜을 통하여 RO의 요청과 그 응답으로서 RO가 수신된다. 셋째, Domain Management 프로토콜을 통하여, Domain에 가입(Join) 및 Domain으로부터 해지(Leave)가 수행된다.
도 2는 장치 간 디지털 콘텐츠의 RO를 전달하는 전형적인 방법을 도시한 블록도이다.
도 2에 도시된 바와 같이, 장치 A가 RI로부터 발급받은 RO를 소유하고 있다가, 장치 B에게 소정 조건(예를 들어, timed-count 또는/그리고 datetime와 같은 시간 관련 사용조건)을 설정한 RO를 전달할 수 있다. 또한, 장치 B는 장치 C(미도시)에게 소정 조건을 설정한 RO를 전달할 수 있다.
한편, 장치 A는 RI로부터 전달받은 RO(즉, 시간 관련 사용조건이 포함된 RO)를 사용하기 위해서는 장치 A와 RI 간에 DRM Time(예를 들면, 일종의 시계 또는 카운터)이 동기화 되어 있어야 한다.
이하, 장치 A가 DRM Time을 동기화 시키는 방법을 설명하면 다음과 같다.
장치 A가 ROAP-RO Request(즉, RO 요청 메시지)나 ROAP-JoinDomain Request(즉, 도메인 가입 요청 메시지)를 수행할 때, RI가 메시지 내에 표시된 장치 A의 DRM Time이 부정확하다고 판단하면, RI는 DeviceTimeError라는 에러(error)를 리턴(return)한다. 이러한 에러를 받은 장치 A는 등록 프로토콜(Registration Protocol)을 시작하여 RI에 재등록해야 한다.
장치 A가 ROAP-RegistrationRequest를 수행할 때, RI가 메시지(즉, ROAP-RegistrationRequest 메시지) 내에 표시된 장치 A의 DRM Time이 부정확하다고 판단 하면, RI는 OCSP request 메시지를 OCSP Responder에게 보내되, 이때, RI는 장치 A로부터 전달된 Nonce을 상기 OCSP request 메시지에 포함시켜 보낸다. 그리고 RI는 장치 A에게 RegistrationResponse 메시지 보내되, 그 메시지 안에 Nonce기반의 OCSP Response를 포함시켜 보낸다.
ROAP-RegistrationResponse에서 보냈던 Nonce와 일치하는 Nonce를 포함한 Nonce기반의 OCSP Response 메시지를 받은 장치 A는, OCSP Response안에 포함된 시각정보를 사용하여 DRM Time을 조정한다.
상술한 바와 같이, 장치 A는 RI와 직접 연결 가능한 장치(즉, Connected Device)이기 때문에, 장치 A는 OCSP Responder로 현재 시각을 제공받을 수 있다. 그러나, 장치 B와 장치 C가 RI와 직접 연결할 수 없는 장치(즉, Unconnected Device)라면, 장치 B와 장치 C는 OCSP Responder로 현재 시각을 제공받을 수 없다.
이상과 같이, 장치 A는 RI로부터 RO를 전달받을 때 OCSP Response를 통해 장치 A의 DRM Time을 동기화하기 때문에 장치 간의 동기화 문제가 없다. 그러나, 장치 B 또는 장치 C와 같이 RO를 전달받는 장치들은 DRM Time을 동기화할 소스가 없기때문에, 시간관련 사용조건이 포함된 RO를 제어(또는 관리)할 수 없는 문제점이 있다. 또한, RO를 전달받은 장치들을 제어할 수 없기 때문에, 결국 DRM 콘텐츠를 제공하는 콘텐츠 제공자(CP: Content Provider)의 권리가 침해되는 문제점이 있다.
따라서, 본 발명의 목적은 특정 장치로부터 전달받은 RO를 유효하게 사용하 기 위하여 장치 간에 시간(즉, DRM Time)을 동기화 시키는 방법 및 장치를 제공하는 것이다.
또한, 본 발명의 다른 목적은 장치 간에 시간을 동기화 시켜서 특정 장치로부터 전달받은 RO를 관리함으로써, 콘텐츠 제공자(CP: Content Provider)의 권리를 불법적 침해로부터 보호하는 것이다.
상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 DRM 에서의 장치 간 동기화 방법은,
적어도 하나 이상의 타 장치가 타겟 장치에게 상기 각 타 장치의 시간 정보를 전달하는 단계와; 상기 시간 정보를 이용하여 상기 타켓 장치가 적어도 하나 이상의 가상시계를 생성하는 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 타겟 장치가 상기 타 장치마다 가상시계를 생성하고 또한 상기 타겟 장치가 상기 타 장치로부터 전달받은 RO를 사용하는 경우에 있어서,
상기 타겟 장치가 상기 RO에 기록된 상기 타 장치의 ID를 확인하는 단계와;
상기 타겟 장치가 상기 RO를 전달한 상기 타 장치 용 가상시계가 있는지 확인하는 단계와;
상기 타 장치 용 가상시계가 있다면, 상기 타 장치 용 가상시계를 이용하여 현재시각을 산출하는 단계와;
상기 산출한 현재 시각에 기초하여 상기 RO의 유효성을 판단하는 단계를 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 시간 정보를 이용하여 상기 타겟 장치가 적어도 하나 이상의 가상시계를 생성하는 단계에서, 상기 타겟 장치가 상기 타 장치로부터 전달받은 RO를 사용하는 경우에,
상기 타겟 장치가 상기 RO 용 가상시계가 있는지 확인하는 단계와;
상기 RO 용 가상시계가 있다면, 상기 RO 용 가상시계를 이용하여 현재시각을 산출하는 단계와;
상기 산출한 현재 시각에 기초하여 상기 RO의 유효성을 판단하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 DRM 에서의 장치 간 동기화 방법은,
RI와, OCSP Responder를 포함하는 DRM 시스템에서 제1 장치와 제2 장치 간의 시간을 동기화 하는 방법으로서,
상기 제2 장치로부터 RO와 함께 상기 제2 장치의 시간 정보를 전달받는 단계와;
상기 시간 정보를 이용하여 상기 제2 장치의 시계(DRM Time)가 가리키는 현재시각을 산출하는 단계와;
상기 산출한 제2 장치의 현재 시각과 상기 제1 장치의 시계가 가리키는 현재 시각을 비교하는 단계와;
상기 제1 장치 및 제2 장치 간의 현재 시각의 비교 결과, 상기 제1 장치의 현재 시각과 상기 제2 장치의 현재시각 간의 오차가 소정 범위 이상이면,
상기 제1 장치가 RI에 등록하여 상기 제1 장치의 시계를 동기화시키는 단계를 포함하는 것을 특징으로 한다.
또한, 상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 장치는,
DRM에서 장치 간에 시간 동기화를 위하여,
적어도 하나 이상의 타 장치로부터 시간 정보를 전달 받고;
상기 시간 정보를 이용하여 적어도 하나 이상의 가상 시계를 생성하는 것을 특징으로 한다.
또한, 상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 DRM 에서의 장치 간 동기화 방법은, 제1 장치가 시간정보를 제2 장치에게 전달하는 단계와;
또한, 상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 DRM 에서의 장치 간 동기화 방법은, 제1 장치가 시간정보를 제2 장치에게 전달하는 단계와;
삭제
상기 제2 장치가 상기 시간정보를 이용하여, 상기 제1 장치와 상기 제2 장치 간에 동기가 일치하는지 비교하는 단계와;
상기 제1 장치와 상기 제2 장치 간에 동기가 일치하지 않는 경우, 상기 제1 장치 및 상기 제2 장치가 각각 자신의 DRM Time을 동기화 시키는 단계를 포함하는 것을 특징으로 한다.
또한, 상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 DRM 에서의 장치 간 동기화 방법은,
제1 장치가 RO와 함께 시간정보를 제2 장치에게 전달하는 단계와;
상기 제2 장치가 상기 시간정보로부터 상기 제1 장치의 DRM Time을 획득하는 단계와;
상기 제2 장치가 자신의 DRM Time과 상기 제1 장치의 DRM Time 간의 차이를 산출하는 단계와;
상기 산출한 DRM Time의 차이가 미리 설정한 허용범위에 있는지 판단하는 단 계를 포함하는 것을 특징으로 한다.
이하, 본 발명의 실시 예들의 구성 및 동작을 첨부한 도면을 참조하여 설명한다.
도 3은 본 발명의 일 실시 예로서, 본 발명에 따른 장치 간의 동기화 방법을 도시한 개략적인 DRM 시스템 블록도이다.
도 3에 도시된 바와 같이, 본 발명에 따른 DRM 시스템은 RI(10)와, 기준 시간을 제공하는 OCSP Responder(20)와, RI(10)로부터 RO를 발급받는 장치 A(30)와, 장치 B(40) 및 장치 C(50)을 포함한다. 여기서, 장치 A(30) RI(10)로부터 직접 RO를 전달받으며 Registration Response안에 실려 온 OCSP Response를 통해 DRM Time을 동기화할 수 있는 장치이다. 그리고, 장치 B(40)는 장치 A(30)로부터 RO를 전달받는 장치이고, 장치 C(50)는 장치 B(40)로부터 RO를 전달받는 장치이다. 한편, 장치 B(40)와 장치 C(50)는 RI(10)와 직접 연결할 수 없는 장치(즉, Unconnected Device)일 수도 있고, 또는 RI(10)과 직접 연결할 수 있는 장치(즉, Connected Device)일 수도 있다.
장치 A(30)는 특정 장치, 즉 장치 B(40)에게 RO를 전달한다. 이때, 장치 A(30)는 RO와 함께 DRM Time 동기화를 위한 소정 정보(즉, Timestamp) 및 장치 ID(즉, 장치 A의 ID)를 장치 B(40)에게 전달한다. 또한, 장치 B(40)가 RO(즉, 장치 A로부터 전달받은 RO 이다)를 장치 C(50)에게 전달하고 싶은 경우에도 마찬가지로, 장치 B(40)는 RO와 함께 DRM Time 동기화를 위한 소정 정보(즉, Timestamp) 및 장치 ID(예를 들어, 장치 B의 ID 일 수도 있고, 또는 장치 A의 ID 및 장치 B의 ID일 수도 있다)를 장치 C(50)에게 전달할 수 있다. 여기서, 상기 DRM Time 동기화 관련 소정 정보(즉, Timestamp)는 하기에서 상세히 설명하기로 한다.
한편, 장치 A(30)로부터 RO를 전달받은 장치 B(40)는 그 RO를 이용하여 해당 디지털 콘텐츠(즉, DRM 콘텐츠)를 사용하기 위하여 그 DRM 콘텐츠에 대한 상기 RO가 유효한지 확인한다. 이때, 만일 상기 RO에 대한 사용조건 중 시간과 관련된 조건(예를 들면, timed-count 또는/그리고 datetime와 같은 시간 관련 사용조건)이 있으면, 장치 B(40)는 RI(10)와 동기화된 DRM Time을 사용한다. 동기화된 DRM Time이 가리키는 시간과 현재 실제 시간을 대비하여 볼 때, 만일 상기 시간 관련 조건이 유효하고, 또한 그 외의 나머지 조건들도 유효하다면, 장치 B(40)는 콘텐츠의 사용허가동작이 수행 가능한 것으로 판단한다.
이하, 보다 구체적으로 장치 간에 DRM Time을 동기화 하는 방법을 설명한다. 한편, 본 발명의 실시 예들은 장치가 Unconnected 장치일 경우와 Connected 장치일 경우로 구분된다.
도 4는 본 발명의 제1 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다. 본 발명의 제1 실시 예는 RO를 전달 받는 장치(즉, 도 4에서 장치 Z)가 RO를 전달 하는 타 장치들(즉, 도 4에서 장치 X 및 장치 Y)의 가상 시계를 생성함으로써, 장치 간에 DRM Time을 동기화하는 방법이다.
도 4에서 장치 X 및 장치 Y는 각각 서로 다른 DRM 콘텐츠의 RO(또는, 동일한 DRM 콘텐츠이나 사용조건이 서로 다른 RO일 수도 있다)를 전달하는 장치이고, 장치 Z는 콘텐츠 공급자(CP: Content Provider) 측에 네트워크로 직접 연결이 불가능한 장치(즉, Unconnected 장치)이다. 여기서, 장치 X 및 장치 Y는 DRM 에이전트에 의해 유지되는 DRM Time(예를 들어, 일종의 시계 또는 카운터 등등)을 보유한 장치로서, 반드시 RI로부터 RO를 직접 전달받은 장치일 필요는 없다. 따라서, 장치 X 및 장치 Y는 RI와 직접 시간이 동기화 되지 않은 장치들일 수도 있다.
장치 Z는 자신에게 각 RO를 전달하는 장치 X 및 장치 Y 마다 가상 시계(virtual clock)를 설정하고 관리한다. 또한, 상기 가상 시계는 장치(예를 들면, 장치 Z)에서 관리되는 것이며, 여러 가지 방법으로 구현될 수 있다. 일 예를 들어, 가상 시계는 장치 Z가 자체적으로 관리하는 DRM Time의 시각과 타 장치(즉, 장치 X 및 장치 Y)의 각 시각(예를 들어, 이와 같은 타 장치의 시각에 대한 정보는 Timestamp를 통하여 전달된다)과의 차이를 단순히 저장함으로써 구현할 수도 있다. 즉, 장치 Z의 DRM Time에 의한 현재 시각이 오전 10시 31분이고, 타 장치(예를 들어, 장치 X)가 장치 Z에게 RO를 전달하면서 알려주는 시간(즉, Timestamp 를 통하여 알려주는 시간 정보)이 오전 10시 20분이라 가정하면, 장치 X의 DRM Time이 장치 Z의 DRM Time보다 11분 느린 것이된다. 따라서, 장치 X 용 가상 시계는 - 11 분에 해당하는 값을 저장한다. 그리고 장치 Z가 장치 X의 가상 시계에 의한 현재 시각을 계산할 경우, 장치 Z는 장치 Z의 DRM Time이 가리키는 현재 시간에 - 11분을 더하면 된다.
이하, 도 4의 제1 실시 예의 구성 및 동작을 더욱 상세히 설명한다.
본 발명의 제1 실시 예는 두개의 절차, 즉 가상 시계를 생성하는 절차와 RO 의 유효성을 판단하는 절차로 구분된다.
먼저, 가상 시계를 생성하는 절차를 설명하면 다음과 같다.
장치 X(또는 장치 Y)가 RO를 장치 Z에게 전달할 때, 장치 X(또는 장치 Y)는 장치 X의 ID(또는, 장치 Y인 경우, 장치 Y의 ID )와 장치 X의 DRM Time에 대한 시간 정보, 즉 Timestamp를 함께 장치 Z에게 보낸다. 여기서, Timestamp는 시간 정보를 포함하는 파라미터(또는 엘리먼트)로서, 장치 X가 장치 Z에게 RO를 전달할 때 사용하는 소정 메시지에 포함되며, 장치 X의 DRM Time의 현재 시각에 해당하는 값을 포함한다.
장치 Z는 장치 Z 내에 장치 X의 ID 용 가상 시계가 있는지 확인한다. 그리고, 상기 확인 결과 장치 X의 ID 용 가상 시계가 없으면, 장치 X 용 가상 시계를 생성한다. 이때, 장치 X 용 가상 시계의 생성방법은 가상 시계의 운영 방법에 따라서, 상술한 바와 같이 장치 Z의 DRM Time과 장치 X의 DRM Time 간의 차이 값을 저장하는 방법으로 생성할 수도 있다. 한편, 장치 Y 용 가상 시계의 생성방법도 장치 X 용 가상 시계의 생성방법과 동일하다.
또한, 장치 Z는 장치 X(또는 장치 Y)로부터 전달받은 RO를 저장할 때, RO가 장치 X(또는 장치 Y)로부터 전달된 것임을 기록한다. 예를 들어, 장치 Z는 상기 전달받은 RO 내에 또는 RO와 함께 별도의 정보로서 장치 X의 ID(또는 장치 Y의 ID)를 포함하여 장치 Z의 소정 메모리에 저장할 수 있다.
다음으로, RO의 유효성을 판단하는 절차는 다음과 같다.
장치 Z가 특정 DRM 콘텐츠(예를 들면, 장치 X로부터 전달받은 상기 RO를 통 하여 접근할 수 있는 DRM 콘텐츠)를 사용하기 위하여 해당 RO(예를 들면, 장치 X로부터 전달받은 상기 RO)의 유효성을 판단하다. 여기서, 상기 RO에 대한 유효성 판단이 상기 RO 내의 사용조건 중 시간 관련 조건을 판별하여야 하는 것으로 가정한다. 장치 Z는 상기 RO가 어느 장치에서 전달된 것인지를 확인하다. 즉, 도 4에 도시된 바와 같이, 장치 Z는 상기 RO가 장치 X 또는 장치 Y로부터 전달된 것인지를 확인한다. 따라서, 상기 RO가 장치 X로부터 전달된 것이기 때문에, 장치 Z는 상기 RO에 기록된 정보(예를 들어, 상기 기록된 장치 X의 ID 또는 장치 Y의 ID)를 확인하여 장치 X로부터 상기 RO가 전달된 것으로 판단한다.
그리고 장치 Z는 상기 RO(예를 들면, 장치 X로부터 전달받은 RO라 가정한다)를 전달한 장치 X 용 가상 시계(또는, 장치 Y인 경우, 장치 Y 용 가상 시계)가 있는지를 확인하고, 만약 장치 X 용 가상 시계(또는, 장치 Y인 경우, 장치 Y 용 가상 시계)가 있다면 장치 X 용 가상 시계를 이용하여 현재 시각을 계산한다. 그러나, 만약 장치 X 용 가상 시계(또는, 장치 Y인 경우, 장치 Y 용 가상 시계)가 없다면, 장치 Z는 소정 에러(예를 들어, 알람음, 또는 진동, 알림 문자, 또는 LED의 깜박임 등과 같은 소정 오류 알림 신호)를 발생시켜 장치 Z의 사용자에게 알린다.
장치 Z는 장치 X 용 가상 시계(또는, 장치 Y인 경우, 장치 Y 용 가상 시계)에 의한 현재 시각을 통하여 상기 장치 X(또는, 장치 Y)로부터 전달받은 상기 RO가 유효한지를 판단한다. 예를 들어, 상기 장치 X 용 가상 시계에 의하여 계산된 현재 시각이 2006년 6월 10일 13시라고 가정하면, 장치 Z가 확인한 RO(예를 들어, 장치 X로부터 전달받은 RO) 내 시간 관련 사용조건이 2006년 6월 11일 13시 까지 설정되어 있다면, 장치 Z는 상기 RO(즉, 장치 X로부터 전달받은 RO)를 유효한 것으로 판단할 것이다. 따라서, 장치 Z의 사용자는 상기 RO를 이용하여 특정 DRM 콘텐츠에 접근할 수 있다.
도 5는 본 발명의 제2 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다. 본 발명의 제2 실시 예는 타겟 장치(즉, 도 5에서 장치 Z)가 타 장치들(즉, 도 5에서 장치 X 및 장치 Y)로부터 전달된 각 RO들에 대한 가상 시계를 생성함으로써, 장치 간에 시간을 동기화하는 방법이다.
본 발명의 제2 실시 예에서 장치 X 및 장치 Y는 각각 서로 다른 DRM 콘텐츠의 RO를 전달하는 장치이고, 장치 Z는 콘텐츠 공급자(CP: Content Provider) 측에 네트워크로 직접 연결이 불가능한 장치(즉, Unconnected 장치)이다. 여기서, 장치 X 및 장치 Y는 DRM 에이전트에 의해 유지되는 DRM Time을 보유한 장치로서, 반드시 RI로부터 RO를 직접 전달받은 장치일 필요는 없다. 따라서, 장치 X 및 장치 Y는 RI와 직접 시간이 동기화 되지 않은 장치들일 수도 있다.
본 발명의 제2 실시 예와 도 4의 제1 실시 예와 대비하여 볼 때, 양 실시 예의 차이점은 다음과 같다. 즉, 본 발명의 제2 실시 예에서, 타 장치들(즉, 장치 X 및 장치 Y)는 타겟 장치(즉, 장치 Z)에게 적어도 하나 이상의 서로 다른 RO를 전달할 때, RO 와 함께 Timestamp 만을 타겟 장치(즉, 장치 Z)에게 전달할 뿐, 장치 ID 는 보내지 않는다. 또한, 타겟 장치(즉, 장치 Z)는 장치 용 가상 시계를 생성하지 않고, 각 RO 별로 RO 용 가상 시계를 생성한다.
이하, 도 5의 제2 실시 예의 구성 및 동작을 더욱 상세히 설명한다.
본 발명의 제2 실시 예는, 도 4의 제1 실시 예와 같이, 두개의 절차, 즉 가상 시계를 생성하는 절차와 RO의 유효성을 판단하는 절차로 구분된다.
먼저, 가상 시계를 생성하는 절차를 설명하면 다음과 같다.
장치 X가 RO(예를 들어, 도 5에서 RO1 및/또는 RO2)를 장치 Z에게 전달할 때, 장치 X의 DRM Time에 대한 시간 정보, 즉 Timestamp를 함께 장치 Z에게 보낸다. 여기서, 상술한 바와 같이, Timestamp는 상기 시간 정보를 포함하는 파라미터(또는 엘리먼트)로서, 장치 X가 장치 Z에게 RO를 전달할 때 사용하는 소정 메시지에 포함되며, 장치 X의 DRM Time(즉, 시계)의 현재 시각에 해당하는 값을 포함한다. 한편, 장치 Y의 경우도 위와 같다. 즉, 장치 Y가 RO(예를 들어, 도 5에서 RO3 및/또는 RO4)를 장치 Z에게 전달할 때, 장치 Y의 DRM Time에 대한 시간 정보, 즉 Timestamp를 함께 장치 Z에게 보낸다.
장치 Z는 장치 Z 내에 각 RO(즉, RO1, 또는 RO2, 또는 RO3, 또는 RO4)에 대한 가상 시계가 있는지 확인한다. 그리고, 상기 확인 결과 각 RO 용 가상 시계(예를 들어, RO1 용 가상 시계)가 없으면, 해당 RO 용 가상 시계(즉, RO1 용 가상 시계)를 생성한다. 이때, RO1 용 가상 시계 및 RO2 용 가상 시계의 생성방법은 가상 시계의 운영 방법에 따라서, 장치 Z 의 DRM Time과 장치 X 의 DRM Time 간의 차이 값을 RO1 용 가상 시계 및 RO2 용 가상 시계에 각각 저장하는 방법으로 생성할 수도 있다. 이와 마찬가지로, RO3 용 가상 시계 및 RO4 용 가상 시계의 생성 방법은 장치 Y 의 DRM Time과 차이 값을 각각 RO3 용 가상 시계 및 RO4 용 가상 시계에 각각 저장하는 방법으로 생성할 수도 있다. 즉, 장치 Z 의 DRM Time과 장치 X 의 DRM Time 간의 차이 값을 이용하여 생성할 수도 있다. 이와 마찬가지로, RO3 용 가상 시계 및 RO4 용 가상 시계의 생성 방법은 장치 Y 의 DRM Time과 차이 값을 이용하여 생성할 수도 있다.
다음으로, 본 발명의 제2 실시 예에서 RO의 유효성을 판단하는 절차는 상술한 도 4의 제1 실시 예에서 RO의 유효성을 판단하는 절차와 같다. 따라서, 본 발명 설명의 간결성을 위하여 본 발명의 제2 실시 예에서 RO의 유효성을 판단하는 절차의 상세한 설명은 생략하고, 도 4의 제1 실시 예의 RO의 유효성을 판단하는 절차의 설명을 원용한다.
도 6은 본 발명의 제3 실시 예로서, 장치 간에 동기화 방법을 도시한 개략적인 블록도이다.
본 발명의 제3 실시 예는, 타겟 장치(즉, 도 6에서 장치 Z)가 타 장치(즉, 도 6에서 장치 X)로부터 RO를 전달받은 후, 타겟 장치의 DRM Time이 오차가 발생한 때 RI에 접근(또는 접속)하여 DRM Time을 동기화하는 방법이다.
본 발명의 제3 실시 예에서, 장치 X는 RI로부터 특정 DRM 콘텐츠의 RO를 전달받고 또한 RO를 장치 Z에게 전달하는 장치이다. 그리고, 장치 Z는 장치 X로부터 RO를 전달받으며, 또한 콘텐츠 공급자(CP: Content Provider) 측에 네트워크로 직접 연결이 가능한 장치(즉, Connected 장치)이다.
이하, 도 6의 제3 실시 예의 구성 및 동작을 더욱 상세히 설명한다.
장치 X는 RO를 장치 Z에게 전달할 때, 시간 정보 즉, Timestamp를 함께 장치 Z에게 보낸다. 이때, 상술한 바와 같이, 상기 Timestamp는 장치 X의 DRM Time, 즉 시간(예를 들어, DRM Time에 의한 현재 시각)에 대한 정보 포함하는 파라미터이다.
장치 Z는 상기 장치 X의 Timestamp로부터 획득한 장치 X의 현재시각과, 자신이 관리하는 DRM Time의 현재 시각을 비교한다. 그리고, 장치 X의 현재시각과 장치 Z의 현재시각 간 차이가 장치 Z가 미리 설정한 허용오차 범위(예를 들어, 1시간 이내 범위)를 벗어나는지 확인한다. 이때, 만약 장치 X의 현재시각과 장치 Z의 현재시각을 비교한 결과, 양 장치의 현재시각 차이가 허용오차 범위를 벗어난 경우(즉, 시간 차이가 1 시간 이상인 경우), 장치 Z는 RI에 접속하여 자신의 DRM Time을 동기화 시킨다. 즉, 장치 Z는 RI에 접속하여 재등록한다. 이와 같은 재등록 절차는 이미 상술한 바와 같다.
즉, 장치 Z가 장치 Z의 DRM 에이전트가 관리하는 DRM Time을 동기화 시키기 위하여 RI에게 등록 요청 메시지(즉, RegistrationRequest)를 보낸다. 그리고 RI는 그 메시지에 포함된 장치 Z의 DRM Time을 분석한다. RI는 OCSP Responder와 소정 메시지(즉, OCSP Request 메시지 및 OCSP Response)를 주고 받은 후, OCSP Responder 가 제공한 현재 시각을 등록 응답 메시지(즉, RegistrationResponse (OCSP Response))를 통하여 장치 Z에게 보낸다. 장치 Z는 자신의 DRM Time을 OCSP Responder 가 제공한 현재 시각과 동기화 시킨다.
이상과 같이, 장치 Z가 자신의 DRM Time을 동기화 시킨 후, 장치 Z가 특정 DRM 콘텐츠(예를 들면, 장치 X로부터 전달받은 상기 RO를 통하여 접근할 수 있는 DRM 콘텐츠)를 사용하기 위하여 해당 RO(예를 들면, 장치 X로부터 전달받은 상기 RO)의 유효성을 판단하다. 이때, 장치 Z에 의한 RO의 유효성 판단 절차는 도 4의 제1 실시 예에서 설명한 것과 동일하다. 따라서, 본 발명 설명의 간결성을 위하여 상세한 설명을 생략한다.
이하, 도 7 내지 도9는 본 발명에 따른 제4 내지 6 실시 예들로서, 장치 간 에 동기화 방법을 도시한 신호 흐름도이다. 다만, 제1 DRM 에이전트(10)는 장치 1에, 그리고 제2 DRM 에이전트(20)는 장치 2에 각각 탑재된 엔티티이다. 그리고, 도 7 내지 도 9에 도시된 도면부호 동일한 구성요소 또는 신호(또는 메시지)는 그 구성 및 동작이 동일하다.
도 7은 본 발명의 제4 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다. 다만, 도 7의 실시 예에서 장치 1 및 장치 2 모두 connected 장치에 해당한다.
도 7의 제4 실시 예는 장치 간에 동기가 일치(즉, DRM Time이 일치)하지 않은 경우(즉, 도 7에서 S10)와, 장치 간에 동기가 일치하는 경우(즉, 도 7에서 S20)로 구별된다. 따라서, 상기 단계들(즉, S10 및 S20)은 서로 상관 관계가 없는 독립적인 절차에 해당한다. 특히, 도 7의 제4 실시 예의 소정 단계(S10)는 도 6의 제3 실시 예에서 설명한 기술적 특징과 유사하다.
이하, 도 7을 참조하여 상기 단계(S10)를 설명한다.
제1 DRM 에이전트(10)가 제2 DRM 에이전트(20)에게 RO와, Timestamp 그리고 에이전트 프로파일(Agnet Profile)을 전달하면(S11), 제2 DRM 에이전트(20)가 제1 DRM 에이전트(10)의 DRM Time과 자신의 DRM Time을 비교한다(S12). 이때, 제1 DRM 에이전트(10)의 DRM Time은, 위에서 상술한 바와 같이, 상기 단계(S11)에서 전달받은 Timestamp를 이용하여 제1 에이전트(10)의 DRM Time 획득한다. 그리고, 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)의 DRM Time과 자신의 DRM Time 간의 차이를 산출한 후, 그 산출한 DRM Time 차이가 미리 설정한 허용범위 내에 있는지를 판단함으로써, 장치(즉, 제1 DRM 에이전트와 제2 DRM 에이전트) 간의 동기 일치여부를 비교한다. 다만, 상기 단계(S11)는 제2 DRM 에이전트(20)의 트리거(Trigger) 메시지에 의해 수행될 수도 있다.
상기 단계(S12)에서 제1 DRM 에이전트(10)의 DRM Time과 제2 DRM 에이전트(10)의 DRM Time의 차이가 미리 설정한 오차 범위(예를 들면, 1시간 이내)를 넘는다면(예를 들어, DRM Time 차이가 1시간 이상), 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)에게 실패(failure) 메시지를 보낸다(S13). 그리고 제1 DRM 에이전트(10)와 제2 DRM 에이전트(20)는 RI(30)에 등록 절차(즉, ROAP REGISTRATION)를 각각 수행하여 자신의 DRM Time을 OCSP Responder(40)가 제공한 현재 시각과 각각 동기화 시킨다(S14).
상기 단계(S14)는 도 6에서 해당 절차를 설명한 것과 같으며, 이를 상세히 설명하면 다음과 같다. 먼저, 제2 DRM 에이전트(20)의 DRM Time 동기화 절차로서, RI(30)는 OCSP Responder(40)와 OCSP Request 및 OCSP Response 메시지를 주고 받는다(다만, 도 7에서 OCSP로만 표시됨). 그리고 RI(30)는 OCSP Responder(40)가 제공한 현재 시각을 ROAP-RegistrationResponse 메시지를 통하여 제2 DRM 에이전트(20)에게 보낸다. 제2 DRM 에이전트(20)는 자신의 DRM Time을 OCSP Responder(40)가 제공한 현재 시각과 동기화 시킨다. 다음으로 제1 DRM 에이전트(10)의 DRM Time 동기화 절차의 경우도 상술한 제2 DRM 에이전트(20)의 DRM Time 동기화 절차와 같다.
다시 말해서, 상기 단계(S10)에서, 제1 DRM 에이전트(10) 및 제2 DRM 에이전 트(20) 각각은, 자신의 DRM Time을 OCSP Responder(40)가 제공한 현재 시각과 각각 동기화 시킨다
이하, 도 7을 참조하여 상기 단계(S20)를 설명한다.
상기 단계(S20)의 하위 단계들(S11 및 S12)은 상기 단계(S10)의 하위 단계들(S11 및 S12)과 같다. 따라서, 본 발명 설명의 간결성을 위하여 중복 설명을 회피하고, 상기 단계들(S10 및 S20)의 차이점 만을 설명하면 다음과 같다.
즉, 상기 단계(S12)에서 제1 DRM 에이전트(10)의 DRM Time과 제2 DRM 에이전트(20)의 DRM Time의 차이가 미리 설정한 오차 범위(예를 들면, 상기 DRM Time의 차이에 대한 허용오차 범위가 1시간으로 설정되었다면, 1시간 이내) 이내에 있다면(즉, 예를 들어, DRM Time 차가 1시간 이내), 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)에게 성공(ok) 메시지를 보낸다(S13).
도 8은 본 발명의 제5 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다. 다만, 도 8의 실시 예에서 장치 1은 connected 장치이고, 장치 2는 unconnected 장치에 해당한다.
도 8의 제5 실시 예를 도 7의 제4 실시 예와 비교하여 볼 때, 도 8에서 제2 DRM 에이전트(20)를 포함하는 장치 2가 unconnected 장치이다. 즉, 제1 DRM 에이전트(10)는 RI(30)과 직접 접속(또는 연결)하여 DRM Time의 동기화를 위한 ROAP REGISTRATION 절차를 단독으로 수행할 수 있지만, 제2 DRM 에이전트(20)는 그렇게 할 수 없다. 따라서, 제2 DRM 에이전트(20)가 RI(30)에 접속할 때, 제1 DRM 에이전트(10)를 경유하여 접속한다. 다시 말해서, 제1 DRM 에이전트(10)가 제2 DRM 에이 전트(20)를 위해 프록시(proxy)로 동작한다.
도 8의 제5 실시 예는, 도 7의 제4 실시 예와 마찬가지로, 장치 간에 동기가 일치(즉, DRM Time이 일치)하지 않은 경우(즉, 도 8에서 S10')와, 장치 간에 동기가 일치하는 경우(즉, 도 8에서 S20)로 구별된다. 다만, 도 8에서 소정 단계(S20)는 도 7의 상기 단계(S20)와 그 동작이 서로 동일하다. 따라서, 도 7의 상기 단계(S10)과 대비되는 도 8의 소정 단계(S10') 만을 설명한다.
도 8을 참조하면, 상기 단계들(S11 내지 S13) 후, 제1 DRM 에이전트(10)는, 상술한 도 7의 상기 단계(S14)와 같이, ROAP-Registration 절차 와 OCSP 절차를 수행하여 자신의 DRM Time을 OCSP Responder(40)가 제공한 현재 시각과 동기화 시킨다. 그러나, 상기 단계들(S11 내지 S13) 후, 제2 DRM 에이전트(20)는 RI(30)와 직접 접속할 수 없다. 따라서, 제2 DRM 에이전트(20)는 장치 1(즉, connected 장치)의 제1 DRM 에이전트(10)를 프록시로하여 RI(30)에 접속하여 ROAP-Registration 절차를 수행하고 OCSP Responder(40)와는 OCSP 절차를 수행한다(S14'). 즉, 도 7의 상기 단계(S14)와 같이, 제1 DRM 에이전트(10) 및 제2 DRM 에이전트(20) 각각은, 자신의 DRM Time을 OCSP Responder(40)가 제공한 현재 시각과 각각 동기화 시킨다.
한편, 도 7의 제4 실시 예 및 도 8의 제5 실시 예에서, 제1 DRM 에이전트(10)는 RO를 제2 DRM 에이전트(20)에게 전달하기 직전(즉, S11 단계이전)에, DRM Time의 정확성을 확보하기 위하여, RI(30)와 DRM Time을 동기화할 수도 있다. 다시 말해서, 제1 DRM 에이전트(10)는 ROAP-Registration 프로토콜을 사용하여 RI(30)와 접속한 후, OCSP Response를 획득한다. 그리고 제1 DRM 에이전트(10)는 상기 획득 한 OCSP Response 내의 timestamp 값을 이용하여 DRM Time을 동기화 한다. 그러나, 만약 제1 DRM 에이전트(10)의 장치 1이 unconnected 장치라면, 제1 DRM 에이전트(10)는 제2 DRM 에이전트(20)를 프록시로 삼아 ROAP-Registration을 수행한다. 또한, 만약 제1 DRM 에이전트(10)가 RI(30)와 동기화 한 시각이 미리 정해진 기간(예를 들면, 일정 시간 간격) 내이면, RO를 제2 DRM 에이전트(20)에게 전달하기 직전(즉, S11 단계이전)에 제1 DRM 에이전트(10)와 RI(30) 간의 DRM Time의 동기화는 생략할 수 있다.
도 9은 본 발명의 제6 실시 예로서, 장치 간에 동기화 방법을 도시한 신호 흐름도이다. 다만, 도 9의 실시 예에서 장치 1 및 장치 2는 모두 unconnected 장치이다.
도 9의 제6 실시 예는 제1 DRM 에이전트(10)와 제2 DRM 에이전트(20) 간에 서로 DRM Time의 차이가 미리 설정한 허용오차 범위(예를 들면, 상기 DRM Time의 차이에 대한 허용오차 범위가 1시간으로 설정되었다면, 1시간 이내) 이내인 경우(S10'')와, 제1 DRM 에이전트(10)와 제2 DRM 에이전트(20) 간에 서로 DRM Time의 차이가 미리 설정한 허용오차 범위(예를 들면, 상기 DRM Time의 차이에 대한 허용오차 범위가 1시간으로 설정되었다면, 1시간 이상)를 넘는 경우(S20')로 구분된다.
이하, 상기 절차(S10'')를 설명한다.
제1 DRM 에이전트(10)가 제2 DRM 에이전트(20)에게 RO와, Timestamp 그리고 에이전트 프로파일(Agnet Profile)을 전달하면(S11), 제2 DRM 에이전트(20)가 제1 DRM 에이전트(10)의 DRM Time과 자신의 DRM Time을 비교한다(S12). 이때, 제1 DRM 에이전트(10)의 DRM Time은, 위에서 상술한 바와 같이, 상기 단계(S11)에서 전달받은 Timestamp를 이용하여 제1 에이전트(10)의 DRM Time 획득한다. 다만, 상기 단계(S11)는 제2 DRM 에이전트(20)의 트리거(Trigger) 메시지에 의해 수행될 수도 있다.
상기 단계(S12)에서 제1 DRM 에이전트(10)의 DRM Time과 제2 DRM 에이전트(20)의 DRM Time의 차이가 미리 설정한 오차 범위를 넘지 않는다면, 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)로부터 전달받은 상기 RO를 소정 메모리에 저장한다(S12'). 그리고, 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)에게 성공(ok) 메시지를 보낸다(S13).
이하, 상기 절차(S20')를 설명한다.
도 9의 상기 절차(S20')는 상기 절차(S10'')와 유사하다. 다만, 상기 단계(S12)에서 제1 DRM 에이전트(10)의 DRM Time과 제2 DRM 에이전트(10)의 DRM Time의 시간 차이(time difference)가 미리 설정한 오차 범위를 넘는다면, 제2 DRM 에이전트(20)는 제1 DRM 에이전트(10)로부터 전달받은 상기 RO와 함께 가상시간(virtual time)를 소정 메모리에 저장한다(S12'). 여기서, 상기 가상시간이란 제1 DRM 에이전트(10)의 DRM Time과 제2 DRM 에이전트(20)의 DRM Time의 시간 차이(time difference)를 말한다. 예를 들어, 제2 DRM 에이전트(20)는 자신의 DRM Time을 기준으로 제1 DRM 에이전트(10)의 DRM Time과 시간 차이(time difference)가 나는 DRM Time 값을 계산(산출)하여 상기 가상시간으로 저장할 수 있다. 향후에, 제2 DRM 에이전트(20)가 DRM Time을 동기화할 때, 상 기 가상시간을 이용하여 제2 DRM 에이전트(20)가 자신의 DRM Time을 동기화 시킬 수 있을 것이다.
상기 실시예는 바람직한 모델로서 Unconnected Device간의 DRM Time 동기화를 설명하였으나, 반드시 양 Device가 Unconnected Device가 아니라도 무관하다. 다시 말해 상기 실시예는 양 Device가 Unconnected Device인 경우와 Connected Device인 경우, 모두 적용 가능하다.
이상, 본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이, 본 발명은 OCSP Responder로부터 시각을 제공받지 못하는 장치(즉, unconnected device)라도 RO를 전달하는 타 장치의 시간 정보를 타겟 장치에게 제공하기 때문에, 장치 간 동기화를 할 수 있는 효과가 있다.
본 발명은 OCSP Responder로부터 시각을 제공받지 못하는 장치(즉, unconnected device)라도 가상 시계를 생성하여 장치 간 시간 동기화를 할 수 있는 효과가 있다.
또한, 본 발명은 타 장치로부터 전달받은 시간정보가 가리키는 현재시각과 타겟 장치의 시계(DRM Time)가 가리키는 현재시각 간에 허용범위 이상의 시간오차가 발생하는 경우, 타 장치 및 타겟 장치의 시계를 동기화 시키는 효과가 있다.
또한, 본 발명은, 장치들이 unconnected 장치 또는 connected 장치이든 상관 없이, 장치들 간에 RO을 전달하는 경우에 있어서, 장치들의 DRM Time 서로 허용오차 범위 이상으로 차이가 나면, 장치들이 RI에 접속하여 DRM Time을 동기화시키는 효과가 있다.
따라서, 본 발명은 상기와 같이 장치 간에 시간 동기화를 구현하기 때문에, 결과적으로 RO를 사용권한이 있는 장치만이 사용할 수 있도록 하여 콘텐츠 공급자의 권리를 불법적 침해로부터 보호할 수 있는 효과를 제공한다.
Claims (40)
- 적어도 하나 이상의 타 장치가 타겟 장치에게 상기 각 타 장치의 시간 정보를 전달하는 단계와;상기 시간 정보를 이용하여 상기 타겟 장치는 상기 타 장치마다 해당 가상시계를 생성하는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서, 상기 시간 정보는Timestamp 파라미터에 포함되어 전달되는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서, 상기 타 장치는상기 시간 정보와 함께 상기 타 장치의 ID와 RO를 상기 타겟 장치에게 전달하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제3 항에 있어서, 상기 타겟 장치는상기 RO를 전달한 상기 타 장치의 ID를 상기 RO에 기록하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서, 상기 타 장치는상기 시간 정보와 함께 RO를 상기 타겟 장치에게 전달하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 삭제
- 제1 항에 있어서, 상기 타 장치마다 해당 가상시계를 생성하는 단계에서,상기 타겟 장치는 상기 타 장치가 적어도 하나의 서로 다른 RO를 포함하고 있는 것에 근거하여 상기 타 장치가 전달하는 RO 마다 해당 가상시계를 생성하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서, 상기 가상 시계는상기 타겟 장치의 DRM Time이 가리키는 제1 시각과상기 타장치의 시간 정보가 가리키는 제2 시각 간의 시간 차이를 이용하여 구현할 수 있는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서,상기 시간 정보를 이용하여 상기 타겟 장치가 적어도 하나 이상의 가상시계를 생성하는 단계에서, 상기 타겟 장치가 상기 타 장치로부터 전달받은 RO를 사용하는 경우에상기 타겟 장치가 상기 RO에 기록된 상기 타 장치의 ID를 확인하는 단계와;상기 타겟 장치가 상기 RO를 전달한 상기 타 장치 용 가상시계가 있는지 확인하는 단계와;상기 타 장치 용 가상시계가 있다면, 상기 타 장치 용 가상시계를 이용하여 현재시각을 산출하는 단계와;상기 산출한 현재 시각에 기초하여 상기 RO의 유효성을 판단하는 단계를 더 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제9 항에 있어서, 상기 타겟 장치가 상기 RO를 전달한 상기 타 장치 용 가상시계가 있는지 확인하는 단계에서,상기 타 장치 용 가상시계가 없다면, 상기 타겟 장치가 소정 에러를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제 7항에 있어서,상기 시간 정보를 이용하여 상기 타겟 장치가 적어도 하나 이상의 가상시계를 생성하는 단계에서, 상기 타겟 장치가 상기 타 장치로부터 전달받은 RO를 사용하는 경우에상기 타겟 장치가 상기 RO 용 가상시계가 있는지 확인하는 단계와;상기 RO 용 가상시계가 있다면, 상기 RO 용 가상시계를 이용하여 현재시각을 산출하는 단계와;상기 산출한 현재 시각에 기초하여 상기 RO의 유효성을 판단하는 단계를 더 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제11 항에 있어서, 상기 타겟 장치가 상기 RO를 전달한 상기 타 장치 용 가상시계가 있는지 확인하는 단계에서,상기 타 장치 용 가상시계가 없다면, 상기 타겟 장치가 소정 에러를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 항에 있어서, 상기 타겟 장치는unconnected 장치인 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- RI와, OCSP Responder를 포함하는 DRM 시스템에서 제1 장치와 제2 장치 간의 시간을 동기화 하는 방법으로서,상기 제2 장치로부터 RO와 함께 상기 제2 장치의 시간 정보를 전달받는 단계와;상기 시간 정보를 이용하여 상기 제2 장치의 DRM Time이 가리키는 현재시각을 산출하는 단계와;상기 산출한 제2 장치의 현재 시각과 상기 제1 장치의 DRM Time이 가리키는 현재 시각을 비교하는 단계와;상기 제1 장치 및 제2 장치 간의 현재 시각의 비교 결과, 상기 제1 장치의 현재 시각과 상기 제2 장치의 현재시각 간의 오차가 소정 범위 이상이면,상기 제1 장치가 RI에 등록하여 상기 제1 장치의 시계를 동기화시키는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제14 항에 있어서, 상기 소정 범위의 오차는상기 제1 장치의 사용자에 의하여 미리 설정할 수 있는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제14 항에 있어서, 상기 제1 장치가 RI에 등록하여 상기 제1 장치의 DRM Time을 동기화시키는 단계에서,상기 제1 장치는 상기 RI를 통하여 상기 OCSP Responder가 제공하는 시각과 동기화하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제14 항에 있어서, 상기 제1 장치는connected 장치인 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- DRM에서 복수의 시간 정보를 갖는 장치 간에 시간 동기화를 위하여,적어도 하나 이상의 타 장치로부터 복수의 시간 정보를 전달 받고;상기 시간 정보를 이용하여 상기 타 장치마다 가상 시계를 생성하는 것을 특징으로 하는 장치.
- 삭제
- 제18 항에 있어서,상기 타 장치로부터 상기 시간 정보 이외에 상기 타 장치의 ID와 RO를 더 전달 받는 것을 특징으로 하는 장치.
- 제20 항에 있어서,상기 타 장치로부터 적어도 하나의 서로 다른 RO를 전달받는 것에 근거하여 상기 타 장치로부터 전달 받은 RO 마다 가상 시계를 생성하는 것을 특징으로 하는 장치
- 제18 항에 있어서,DRM 에이전트가 관리하는 DRM Time을 포함하는 것을 특징으로 하는 장치.
- 제22 항에 있어서,상기 시계가 가리키는 현재 시각과 상기 생성한 가상 시계가 가리키는 현재시각 간의 시간 차이가 미리 설정된 허용범위 이상일 때,RI 에 등록하여 상기 시계를 동기화시키는 것을 특징으로 하는 장치.
- 제23 항에 있어서,상기 RI에 등록한 후, 상기 RI를 통하여 OCSP Responder가 제공하는 시각에 상기 시계를 동기화시키는 것을 특징으로 하는 장치.
- 제20 항에 있어서, 상기 RO를 사용할 때상기 생성한 가상 시계가 있는지 확인하고,상기 가상 시계가 있다면 상기 가상 시계가 가리키는 현재 시각을 이용하여 상기 RO의 유효성은 판단하는 것을 특징으로 하는 장치.
- (a) 제1 장치가 시간정보를 제2 장치에게 전달하는 단계와;(b) 상기 제2 장치가 상기 시간정보를 이용하여, 상기 제1 장치와 상기 제2 장치 간에 동기가 일치하는지 비교하는 단계와;(c) 상기 제1 장치와 상기 제2 장치 간에 동기가 일치하지 않는 경우, 상기 제1 장치 및 상기 제2 장치가 각각 자신의 DRM Time을 동기화 시키는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 제1 장치는상기 시간정보와 함께 RO와 에이전트 프로파일을 제2 장치에게 전달하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제27 항에 있어서, 상기 시간정보는Timestamp 파라미터에 포함되는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 (b) 단계는상기 제2 장치가 상기 시간정보로부터 상기 제1 장치의 DRM Time을 획득하는 단계와;상기 제2 장치가 자신의 DRM Time과 상기 획득한 제1 장치의 DRM Time의 차이를 산출하는 단계와;상기 산출한 DRM Time의 차이가 미리 설정한 오차범위 이내에 있는지 비교하는 단계와;상기 산출한 DRM Time의 차이가 미리 설정한 오차범위를 넘으면, 상기 제2 장치가 상기 제1 장치와 상기 제2 장치 간에 동기가 일치하지 않는 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 (c)단계에서상기 제1 장치와 상기 제2 장치 간에 동기가 일치하지 않는 경우, 상기 제2 장치가 상기 제1 장치에게 실패 메시지를 보내는 단계를 더 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 (c)단계에서상기 제1 장치와 상기 제2 장치가 모두 connected 장치인 경우,상기 제1 장치 및 상기 제2 장치는 RI에 등록 절차를 각각 수행하는 단계와;상기 제1 장치 및 상기 제2 장치는 상기 RI로부터 현재 시각을 각각 제공받아, 자신의 DRM Time을 동기화 하는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제31 항에 있어서, 상기 RI가 제공하는 현재 시각은상기 RI가 OCSP Responder로부터 제공받는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 (c)단계에서상기 제1 장치는 connected 장치와 상기 제2 장치는 unconnected 장치인 경우,상기 제1 장치는 RI에 직접 접속하여 상기 RI와 등록 절차를 수행하고, 상기 제2 장치는 상기 제1 장치를 경유하여 상기 RI와 등록 절차를 수행하는 단계와;상기 제1 장치는 상기 RI로부터 현재 시각을 직접 제공받고, 상기 제2 장치는 상기 제1 장치를 경유하여 상기 RI로부터 현재 시각을 직접 제공받는 단계와;상기 제1 장치 및 상기 제2 장치가 상기 상기 RI로부터 현재 시각을 이용하여, 자신의 DRM Time을 동기화 하는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제33 항에 있어서, 상기 제1 장치는상기 제2 장치의 프록시로 동작하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제26 항에 있어서, 상기 (a)단계는상기 제2 장치가 상기 제1 장치에게 RO 및 시간정보의 전달을 요청하는 트리거 메시지에 의해 수행되는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제1 장치가 RO와 함께 시간정보를 제2 장치에게 전달하는 단계와;상기 제2 장치가 상기 시간정보로부터 상기 제1 장치의 DRM Time을 획득하는 단계와;상기 제2 장치가 자신의 DRM Time과 상기 제1 장치의 DRM Time 간의 차이를 산출하는 단계와;상기 산출한 DRM Time의 차이가 미리 설정한 허용범위에 있는지 판단하는 단계를 포함하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제36 항에 있어서, 상기 제1 장치와 상기 제2 장치는모두 unconnected 장치인 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제36 항에 있어서, 상기 산출한 DRM Time의 차이가 미리 설정한 허용범위에 있다면,상기 제2 장치는 상기 RO를 저장하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제36 항에 있어서, 상기 산출한 DRM Time의 차이가 미리 설정한 허용범위를 넘으면,상기 제2 장치는 상기 RO와 함께 가상시간을 저장하는 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
- 제39 항에 있어서, 상기 가상시간은상기 제1 장치와 상기 제2 장치의 DRM Time의 차이를 이용한 가상시간인 것을 특징으로 하는 DRM 에서의 장치 간 동기화 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2006/004461 WO2007064086A1 (en) | 2005-11-30 | 2006-10-30 | Method and device for drm time synchronization between devices in digital rights management |
CN2006800435473A CN101313297B (zh) | 2005-11-30 | 2006-10-30 | 数字版权管理中用于设备间drm时间同步的方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74067205P | 2005-11-30 | 2005-11-30 | |
US60/740,672 | 2005-11-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070056926A KR20070056926A (ko) | 2007-06-04 |
KR101305282B1 true KR101305282B1 (ko) | 2013-09-17 |
Family
ID=38354595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060077767A KR101305282B1 (ko) | 2005-11-30 | 2006-08-17 | 디지털 저작권 관리에서의 장치 간 DRM Time 동기화방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101305282B1 (ko) |
CN (1) | CN101313297B (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101025162B1 (ko) * | 2008-06-30 | 2011-03-31 | 삼성전자주식회사 | 휴대단말의 디지털 저작권 관리 타임 확보 방법 및 장치 |
CN102326126B (zh) * | 2009-02-18 | 2013-05-01 | 杜比实验室特许公司 | 用于将多个安全时钟同步的方法和系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356966A (ja) | 2000-06-14 | 2001-12-26 | Nippon Telegr & Teleph Corp <Ntt> | コンテンツ利用時間制御方法及び装置及びコンテンツ利用時間制御プログラムを格納した記憶媒体 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001230821A (ja) * | 2000-02-16 | 2001-08-24 | Sony Corp | データ中継装置および方法、並びに提供媒体 |
US7694330B2 (en) * | 2003-05-23 | 2010-04-06 | Industrial Technology Research Institute | Personal authentication device and system and method thereof |
-
2006
- 2006-08-17 KR KR1020060077767A patent/KR101305282B1/ko active IP Right Grant
- 2006-10-30 CN CN2006800435473A patent/CN101313297B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356966A (ja) | 2000-06-14 | 2001-12-26 | Nippon Telegr & Teleph Corp <Ntt> | コンテンツ利用時間制御方法及び装置及びコンテンツ利用時間制御プログラムを格納した記憶媒体 |
Also Published As
Publication number | Publication date |
---|---|
CN101313297B (zh) | 2010-09-29 |
CN101313297A (zh) | 2008-11-26 |
KR20070056926A (ko) | 2007-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100962860B1 (ko) | 소프트웨어 라이센스 관리 시스템, 소프트웨어 제어기, 라이센스 관리 서버, 소프트웨어 제품 사용의 제어 방법 및 라이센스 관리 서버의 작동 방법 | |
US8938625B2 (en) | Systems and methods for securing cryptographic data using timestamps | |
US9069936B2 (en) | Licensing verification for application use | |
US8886964B1 (en) | Protecting remote asset against data exploits utilizing an embedded key generator | |
US20060287959A1 (en) | Software license manager employing license proofs for remote execution of software functions | |
EP3585023B1 (en) | Data protection method and system | |
CN110535880B (zh) | 物联网的访问控制方法以及系统 | |
KR100895462B1 (ko) | 디지털 저작권 관리 시스템에서의 콘텐츠 유통 관리 방법 | |
US20030088516A1 (en) | Software anti-piracy licensing | |
US20110296175A1 (en) | Systems and methods for software license distribution using asymmetric key cryptography | |
US20130004142A1 (en) | Systems and methods for device authentication including timestamp validation | |
US20110197077A1 (en) | Software feature authorization through delegated agents | |
JP2007531127A (ja) | デジタルライセンス共有システム及び共有方法 | |
CN110008659B (zh) | 软件许可的离线管理方法、装置、计算机设备及存储介质 | |
US20190384892A1 (en) | Method for Electronically Documenting License Information | |
CN110650139B (zh) | 云平台的资源访问控制方法以及系统 | |
JP2005063079A (ja) | メモリカード装置、権利管理システムおよび時間管理方法 | |
JP2007257626A (ja) | 臨時ライセンスを用いてコンテンツを臨時に使用する方法及び装置 | |
US20150067892A1 (en) | System and method for authorization and authentication, server, transit terminal | |
KR101305282B1 (ko) | 디지털 저작권 관리에서의 장치 간 DRM Time 동기화방법 및 장치 | |
JP2014022920A (ja) | 電子署名システム、電子署名方法および電子署名プログラム | |
US9602546B2 (en) | Accurate license counting in synchronized servers | |
KR100831726B1 (ko) | Drm 시스템에서의 보안 방법 및 시스템 | |
WO2007064086A1 (en) | Method and device for drm time synchronization between devices in digital rights management | |
CN110010215A (zh) | 一种健康档案管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160824 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170814 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180814 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190814 Year of fee payment: 7 |