KR20050123105A - 데이터 보호 관리 장치 및 데이터 보호 관리 방법 - Google Patents

데이터 보호 관리 장치 및 데이터 보호 관리 방법 Download PDF

Info

Publication number
KR20050123105A
KR20050123105A KR1020057017281A KR20057017281A KR20050123105A KR 20050123105 A KR20050123105 A KR 20050123105A KR 1020057017281 A KR1020057017281 A KR 1020057017281A KR 20057017281 A KR20057017281 A KR 20057017281A KR 20050123105 A KR20050123105 A KR 20050123105A
Authority
KR
South Korea
Prior art keywords
license
data
content
certificate
key
Prior art date
Application number
KR1020057017281A
Other languages
English (en)
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 KR20050123105A publication Critical patent/KR20050123105A/ko

Links

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]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Abstract

본 데이터 보호 관리 장치는 디지털 라이선스 및 디지털 데이터를 보호함으로써, 디지털 데이터의 남용 및 부정 이용을 방지한다. 이 장치는 I/O 포트와, 세션 매니저와, 라이선스 관리 엔진과, 사용 규칙 적용부와, 암호화 엔진과, 메모리 관리부와, 메모리를 구비하고 있다. 라이선스 관리 엔진은, 세션 매니저에 의해서 설정된 세션에서 라이선스를 취득, 저장, 관리하고, 사용 규칙 적용부는, 라이선스 관리 엔진이 관리하는 라이선스의 사용에 대하여 사용 규칙을 적용함으로써, 디지털 라이선스 데이터를 보안성있게 저장하고 송신하기 위한 암호화 알고리즘 및 프로토콜을 제공한다.

Description

데이터 보호 관리 장치 및 데이터 보호 관리 방법{DATA PROTECTION MANAGEMENT APPARATUS AND DATA PROTECTION MANAGEMENT METHOD}
본 발명은, 디지털 데이터를 보호하는 장치 및 방법에 관한 것이고, 특히, 라이선스를 이용한 데이터 배신(配信)에 있어서의 배신 데이터, 라이선스 데이터, 및 전자 티켓(ticket)의 보호에 관한 것이다.
사용자가 콘텐츠 제공자로부터의 디지털 콘텐츠를 네트워크를 통하여 다운로드하여 재생할 수 있는 디지털 콘텐츠 배신 서비스가 증가되어 왔다. 이러한 서비스를 제공하는 콘텐츠 제공자는, 그들의 지적 재산이 저작권 침해를 받거나, 부정한 복제 또는 이용되는 일이 없는 것으로 판단하는 경우에, 디지털 콘텐츠의 사용을 허용한다.
디지털 콘텐츠의 보안을 제공하는 방법으로서, 사용자의 식별자(識別子)와 함께 각각의 사용자의 전용 비밀 알고리즘을 이용함으로써, 디지털 콘텐츠의 부정 사용에 대하여 보호하는 방법이 있다(예로서, 특허 문헌 1 참조). 이에 따라서, 디지털 콘텐츠 재생을, 고유한 ID(장치-의존)를 갖는 전용 기기 또는 호환성있는 PC 하드웨어 만으로 제한하는 것이 가능하게 되고, 또한 데이터를 부정한 복제로부터 보호할 수 있다.
도 18은, 종래의 데이터 배신 시스템의 개략도이다. 이 시스템은, 콘텐츠 제공자 서버(100)(이하, 서버라고 한다)와, 퍼스널 컴퓨터(PC)(104)와, 클라이언트(client)(106)를 구비하고 있다. 서버(100)와 PC(1O4)는 네트워크를 통하여 접속되고, 클라이언트(106)는 서버(100)로부터 네트워크를 통하여 배신된 콘텐츠의 재생을 포함하여, 저장하고 처리하는 장치이다. 서버(100)의 콘텐츠 기억 장치(102)로부터 콘텐츠를 취득하는 경우, 서버(100)는, 클라이언트(106)로부터 통지된 일련 번호(또는, 기기 번호)를 암호화 키(101)로서 이용하여 배신 대상인 콘텐츠를 암호화한다(103). 이 일련 번호 자체를 암호화 키로서 사용할 필요는 없고, 암호화에 필요한 키 또는 패스워드(password)를 생성하는 데에 이용할 수도 있다. 암호화된 콘텐츠는, PC(1O4)를 통하여 클라이언트(106)에 전송된다. PC(1O4)는, 암호화된 콘텐츠를 수신하면, 클라이언트(106)에 즉시 통지하는 대신에, 필요한 시간에 클라이언트(106)에 통지할 수도 있다. 또한, 콘텐츠를 PC(1O4)상에 보관할 수도 있다. 따라서, 배신되는 암호화된 콘텐츠를 PC(1O4)의 암호화 콘텐츠 기억 장치(105)에 저장할 수 있다. 이어서, 클라이언트(106)는, 수신한 암호화된 콘텐츠를, 포함된 복호화 키(109)를 이용하여 복호화 처리를 실행하고(107), 복호화된 콘텐츠를 콘텐츠 기억 장치(108)에 저장한다. 또한, 복호화된 콘텐츠를 콘텐츠 기억 장치(108)에 저장하지 않고, 쉴 사이 없이(on-the-fly) 재생할 수도 있다.
따라서, 상기와 같이, 클라이언트가 서버에 일련 번호를 전송하고, 이어서, 서버는 수신한 일련 번호에 따라서 서버가 암호화한 콘텐츠 데이터를 클라이언트에 송신함으로써, 콘텐츠를 배신할 수 있다.
또한, 도 19는 종래의 데이터 배신 시스템의 개략도이다. 이 시스템도 또한 콘텐츠 제공자 서버(201)(이하, 서버라고 한다)와, PC(205)와, 클라이언트(211)를 구비하고 있다. 서버(201)의 콘텐츠 기억 장치(202)에 저장되어 있는 콘텐츠를 배신하기 위하여, 서버(201)는, 콘텐츠, 사용자, 또는 클라이언트(211)에 관련된 키를 생성하고(203), 이 키를 이용하여 콘텐츠를 암호화한다(204). PC(205)는, 서버(201)에 콘텐츠 요구를 전송함으로써, 서버(201)로부터 암호화된 콘텐츠와 관련 키를 수신하여, 콘텐츠를 콘텐츠 기억 장치(206)에, 키를 키 기억 장치(207)에 저장한다. PC(205)는, 콘텐츠 기억 장치(206)에 저장된 콘텐츠를 클라이언트(211)에 전송하기 전에, 키 기억 장치(207)에 저장되어 있는 관련된 키를 이용하여 콘텐츠를 복호화하고(208), 클라이언트(211)로부터, 또는 클라이언트(211)에의 통지 세션(session)으로부터 취득한 키(210)를 이용하여, 콘텐츠를 재암호화한다(209). 클라이언트(211)는, 수신한 암호화된 콘텐츠를 콘텐츠 기억 장치(212)에 저장한다. 콘텐츠를 재생하거나, 또는 기타 매체 출력을 실행하기 전에, 세션 키 기억 장치(214)에 저장되어 있는 세션 키를 이용하여, 콘텐츠를 복호화한다(215). 또한, 수신한 암호화된 콘텐츠를, 우선 복호화하고, 이어서, 콘텐츠 기억 장치(212)에 저장한다.
이상과 같이, 서버가 생성한 키를 이용하여 암호화한 콘텐츠 데이터와, 그 키를 PC에 전송하고, 이어서, PC와 클라이언트 간에 상이한 키(세션 키)를 이용하여 재암호화함으로써, 콘텐츠를 배신할 수 있다.
관련 발명은 일본국 특허 출원 공고 제H7-295800호에 개시되어 있다.
도 1은 본 발명의 제1실시형태에 있어서의 보안 컨테이너의 구성의 일례를 나타내는 블록도.
도 2는 본 발명의 제2실시형태에 있어서의 보안 컨테이너의 구성의 일례를 나타내는 블록도.
도 3a는 복호화된 콘텐츠를 싱크에 인도하는 절차를 나타내는 도면.
도 3b는 본 발명의 제1실시형태에 있어서의 보안 컨테이너의 트랜스코딩 처리의 개요를 나타내는 도면.
도 4는 본 발명의 제1실시형태에 의한 보안 컨테이너의 트랜스코딩 처리의 일례를 나타내는 플로차트.
도 5는 본 발명의 제1실시형태에 의한 보안 컨테이너의 트랜스코딩 처리의 일례를 나타내는 플로차트.
도 6a는 복호화된 콘텐츠를 보안 컨테이너에 인도하는 절차를 나타내는 도면.
도 6b는 본 발명의 제1실시형태에 의한 보안 컨테이너의 재암호화 처리를 나타내는 도면.
도 7은 본 발명의 제1실시형태에 의한 보안 컨테이너의 재암호화 처리의 일례를 나타내는 플로차트.
도 8은 본 발명의 제1실시형태에 의한 보안 컨테이너의 주기적인 재암호화 처리의 일례를 나타내는 플로차트.
도 9a는 소스가 라이선스 증명을 수신하는 절차를 나타내는 도면.
도 9b는 본 발명의 제1실시형태에 의한 보안 컨테이너의, 라이선스 증명을 생성하는 처리를 나타내는 도면.
도 10은 본 발명의 제1실시형태에 의한 보안 컨테이너의, 라이선스 증명을 생성하는 처리의 일례를 나타내는 플로차트.
도 11a는 소스가 라이선스 변경의 검증을 수신하는 절차를 나타내는 도면.
도 11b는 본 발명의 제1실시형태에 의한 보안 컨테이너의, 라이선스 증명을 생성하고, 또한 라이선스를 변경하는 처리를 나타내는 도면.
도 12는 본 발명의 제1실시형태에 의한 보안 컨테이너의, 라이선스 증명을 생성하고, 또한 라이선스를 변경하는 처리의 일례를 나타내는 플로차트.
도 13a는 라이선스를 저장하는 처리를 나타내는 도면.
도 13b는 본 발명의 제2실시형태에 의한 보안 컨테이너의, 라이선스를 저장하는 처리를 나타내는 도면.
도 14는 본 발명의 제2실시형태에 있어서의 보안 컨테이너의, 라이선스를 저장하는 처리의 일례를 나타내는 플로차트.
도 15는 본 발명의 제1실시형태에 의한 데이터 배신 시스템의 개략도.
도 16은 본 발명의 제1실시형태에 의한 데이터 배신 시스템의 다른 예의 개략도.
도 17은 본 발명의 제1실시형태에 의한 데이터 배신 시스템의 네트워크 환경의 개략도.
도 18은 종래의 데이터 배신 시스템의 개략도.
도 19는 종래의 데이터 배신 시스템의 또 다른 개략도.
(발명이 해결하려고 하는 과제)
그러나, 상기 종래의 기술에서는, 부정한 복제로부터 데이터를 보호하기 위하여, 고유한 ID(장치-의존)를 갖는 전용 재생 기기 또는 호환성있는 PC 하드웨어에 다운로드된 콘텐츠만을 재생할 수 있다. 이것은, 사용자가 운영 시스템(OS) 또는 하드웨어를 갱신하면, 갱신전에 재생할 수 있었던 콘텐츠를 더 이상 재생할 수 없게 될 가능성이 있는 것을 의미한다. 또한, 콘텐츠 재생에 전용 재생 기기가 필요한 경우, 사용자는, 사용자가 희망하는 장소 및 시간에 콘텐츠 데이터를 이용할 수 없다.
또한, 전용 재생 기기만을 이용하여 콘텐츠를 재생할 수 있으므로, 상이한 재생 기기로써는 메모리 카드, IC 카드, SD 카드, CD-R 디스크 등의 착탈 가능한 기록 매체에 저장된 콘텐츠를 재생할 수 없다.
또한, 현재의 시스템에서는, PC에 네트워크를 접속하지 않은 사용자는, 콘텐츠 제공자로부터 이용 가능한 콘텐츠를 이용할 수 없다.
본 발명은 상기 종래 기술의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 디지털 콘텐츠의 부정 이용 및 남용을 방지하고, 사용자에게 재생 기기의 선택의 자유를 부여하고, 또한 디지털 콘텐츠를 이용하는 경우 디지털 콘텐츠의 보호 기능을 강화하는 것이다. 본 발명의 또 다른 목적은 콘텐츠 배신 수단으로서 네트워크에만 의존하지 않고, 다양한 배신 채널을 통하여 데이터 배신을 가능하게 하는 것이다.
(과제를 해결하기 위한 수단)
상기 과제를 해결하기 위하여, 본 발명의 데이터 보호 관리 시스템은, 송신측과 수신측간의 라이선스와 암호화된 콘텐츠의 데이터 통신을 가능하게 하고, 상기 통신 데이터를 보호하고 관리하는 데이터 보호 관리 시스템으로서, 송신측으로부터 라이선스와 암호화된 콘텐츠를 취득하는 처리를 실행하는 세션 매니저와, 상기 세션 매니저가 취득한 라이선스를 저장하고 관리하는 라이선스 관리 엔진과, 상기 라이선스를 저장하는 메모리를 구비한 데이터 보호 관리 시스템이다. 세션 매니저는, 라이선스의 증명(proof) 요구의 일부로서 제공되는 챌린지(challenge)를 수신하면, 라이선스를 검증하는 증명서(certificate)를 생성하고, 생성한 증명서를 수신측에 송신한다.
본 발명의 데이터 보호 관리 시스템은, 상기 라이선스에 관련된 사용 규칙을 결정하고, 상기 사용 규칙을 상기 라이선스와 콘텐츠의 최소한 하나의 처리에 적용하는 사용 규칙 적용부(administrator)를 추가로 포함하고 있다.
본 발명의 데이터 보호 관리 시스템에 있어서, 세션 매니저는 증명서를 암호화한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 세션 매니저는 라이선스로부터의 선택 항목을 증명서에 추가한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 선택 항목 데이터를 라이선스에 포함된 키를 이용하여 암호화한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 사용자 규칙은, 라이선스에 따라서, 증명서에 부가되는 데이터를 결정하는 정보를 포함한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 세션 매니저는, 송신측으로부터 라이선스 변경을 수신하면, 라이선스 관리 엔진으로부터 변경전의 라이선스를 판독하여, 라이선스를 변경하고, 변경된 라이선스를 라이선스 관리 엔진을 이용하여 저장한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 세션 매니저는 라이선스에 관련된 키를 이용하여 콘텐츠를 복호한다.
본 발명의 데이터 보호 관리 시스템에 있어서, 세션 매니저는 복호화된 콘텐츠를 재암호화한다.
본 발명의 데이터 보호 관리 시스템은 송신측으로부터의 정보에 따라서 재암호화에 이용되는 키를 생성하는 것을 특징으로 한다.
본 발명의 데이터 보호 관리 시스템은, 접속을 관리하고, 접속된 상대와의 상호 인증을 위한 신임장을 교환하는 처리를 실행하고, 또한 개방된 접속에 대한 라이선스와 그것에 후속하는 데이터에의 액세스 제한을 적용하는 세션 매니저와, 상기 세션 매니저에 의해서 개방된 세션에서 라이선스를 취득하여, 취득한 라이선스를 저장하고, 관리하는 라이선스 관리 엔진과, 상기 라이선스 관리 엔진이 관리하는 상기 라이선스에 관련되는 사용 규칙을 결정하고, 상기 사용 규칙을 상기 라이선스 및 상기 데이터의 처리에 적용하는 사용 규칙 적용부와, 데이터를 암호화하고, 복호화하고 또한 서명하는 데에 필요한 공개 키 또는 공통 키의 암호화 알고리즘과 해시(hash) 알고리즘을 구비하고, 또한 상기 개방된 세션에 대한 암호화 프로토콜 기능을 제공하는 암호화 엔진과, 메모리에의 액세스를 제어하고, 상기 암호화 엔진에 의한 암호화와 복호화에 필요한 영역을 제공하는 메모리 관리부와, 상기 데이터, 라이선스, 및 접속 상태를 저장하는 메모리부를 구비한 것을 특징으로 한다. 이하, 이 데이터 보호 관리 시스템을 "보안 컨테이너(secure container)"라고 부른다.
따라서, 디지털 라이선스 데이터를 안전하게 저장하고, 수신하고, 송신하기 위한 암호화 알고리즘 및 프로토콜을 제공함으로써, 라이선스 데이터의 안전한 관리를 보증할 수 있다.
또한, 본 발명의 데이터 보호 관리 시스템은, 시스템 고유의 최소한 하나의 암호화/복호화 키를 유지하는 것을 특징으로 한다. 이에 따라서, 시스템 고유의 키를 콘텐츠 암호화에 이용할 수 있어서, 데이터의 도청 및 개찬(改竄)을 더욱 안전하게 방지할 수 있다.
또한, 본 발명의 데이터 보호 관리 시스템은, 데이터 배신 처리에 따른 규칙 변경에 관한 정보를 저장하는 로그 관리 엔진, 및 이 로그 정보의 판독 및 기록을 제어하는 것을 특징으로 한다. 이에 따라서, 보안 컨테이너가 트랜잭션(transaction)을 기록하고 기타 보안 관련 조작을 실행할 수 있게 되고, 또한 시스템 제작자 또는 허가된 제3자가 보안 컨테이너 또는 거기에 저장되어 있는 디지털 라이선스 데이터가 개찬되거나 남용된 것을 인식할 수 있게 된다.
또한, 본 발명의 데이터 보호 관리 방법은, 송신측이, 배신 대상인 데이터에 관련된 키를 이용하여 암호화된 데이터를 저장하는 단계와, 송신측으로부터 데이터 처리 장치에, 상기 암호화된 데이터를 전송하는 단계와, 송신측으로부터 상기 데이터 처리 장치에, 1개 이상의 제어 명령을 포함하는 명령 세트를 전송하는 단계와, 상기 데이터 처리 장치와 수신측의 사이에서, 보안 데이터 채널을 설정하는 단계와, 수신측으로부터 상기 데이터 처리 장치에, 1개 이상의 제어 명령을 포함하는 명령 세트를 전송하는 단계와, 상기 데이터 처리 장치가, 명령 세트에 따라서, 상기 암호화된 데이터를, 상기 키를 이용하여 복호화하여, 상기 보안 데이터 채널을 통하여 수신측에 전송하는 단계를 포함하는 것을 특징으로 한다.
이 명령 세트는, 또한 사용 규칙이라고도 부른다. 또한, 송신측을 소스(source), 수신측을 싱크(sink)라고도 부른다. 또한, 이 데이터 처리 장치는, 상기한 보안 컨테이너를 나타낸다. 이에 따라서, 보안 컨테이너를 통하여 데이터를 전송함으로써, 필요한 조작 및 제어를 실행하면서 데이터를 소스로부터 싱크에 안전하게 전송할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 보안 데이터 채널에서 이용되는 암호화의 강도를 지정하는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 제어 명령으로써 암호화의 강도(즉, 보안 컨테이너와 싱크 간의 안전한 채널의 강도)를 관리하여, 데이터 채널의 종류에 따라서 안전성을 유연하게 향상시킬 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 보안 데이터 채널이 유효한 기간을 나타내는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 암호화(보안 컨테이너와 싱크 간의 보안 채널)를 관리하는 제어 명령은, 재암호화가 가능한 기간을 정의할 수 있게 되어서, 고객이, 예로서, 구매 기간 동안에 개인용으로, 또는 데이터의 계획된 용도로, 배신 데이터를 복사하여 저장할 수 있게 하는 구매 시스템을 구성할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 몇 개의 데이터 복사물을 싱크에 송신할 것인가를 나타내는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 암호화(보안 컨테이너와 싱크 간의 보안 채널)를 관리하는 제어 명령은, 복사물을 싱크에 몇 회 전송할 수 있는가를 규정함으로써, 데이터의 백업(backup) 및 공유에 이용될 수 있다. 콘텐츠는 특정 고객에 링크되어 있으므로, 감시 및 감사도 가능하다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 송신측으로부터 데이터 처리 장치에 전송된 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 소스로부터 보안 컨테이너에 전송되는 제어 명령 세트를 추가할 수 있게 되어서, 소스가 보안 조건을 규정할 수 있게 하는 이점이 있다. 그러나, 라이선스 또는 키에 부가된, 제어 세트에 정의되어 있는 디폴트(default) 조건이 약하게 되지는 않는다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 수신측으로부터 데이터 처리 장치에 전송된 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 싱크로부터 보안 컨테이너에 전송되는 제어 명령 세트를 추가할 수 있게 되어서, 싱크가 보안 조건을 규정할 수 있는 이점이 있다. 그러나, 라이선스나 키에 부가된, 제어 세트에 정의되어 있는 디폴트 조건이 약하게 되지는 않는다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 싱크에 의해서 적용되는 조건을 나타내는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 암호화(보안 컨테이너와 싱크 간의 보안 채널)를 관리하는 제어 명령은, 싱크에 대한 규칙을 정의할 수 있게 되어서, 결과적으로 소스가 싱크에 대한 규칙을 규정할 수 있게 된다. 예로서, 소스는, 싱크가 구입하는 데에 고가인 데이터에 대해서는 사용자 확인을 필요로 하는 등, 특정한 보안 기준을 따라야 하는 것을 규정할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 송신측이 배신 대상인 데이터에 관련된 키를 이용하여 데이터를 암호화하는 단계와, 상기 암호화된 데이터를 송신측으로부터 데이터 처리 장치에 전송하는 단계와, 암호화에 이용한 상기 키를 송신측으로부터 상기 데이터 처리 장치에 전송하는 단계와, 1개 이상의 제어 명령을 포함하는 명령 세트를 송신측으로부터 상기 데이터 처리 장치에 전송하는 단계와, 상기 데이터 처리 장치가 명령 세트에 따라서, 상기 암호화된 데이터를 상기 키를 이용하여 복호화하고, 수신측에 관련된 키를 이용하여 상기 데이터를 재암호화하는 단계를 포함하는 것을 특징으로 한다.
이에 따라서, 재암호화 처리에서, 싱크에 상관된 데이터가 개별화될 수 있어서, 데이터가 암호화된 후에, 대응하는 싱크에 의해서만 복호될 수 있으므로, 데이터 안전성을 더욱 높일 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 재암호화에 허용되는 계산 시간을 규정하는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 고객이, 예로서, 소정의 구매 기간 동안 개인용으로 배신 데이터를 복사하고 저장할 수 있게 하는 상용 시스템을 구성할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 몇 개의 재암호화된 데이터의 복사물을 생성할 것인가를 규정하는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 재암호화를 관리하는 제어 명령은, 복사 가능 회수를 규정할 수 있게 된다. 이것은 데이터의 백업 및 공유에 이용될 수 있고, 또한 콘텐츠는 특정 고객에 링크되어 있으므로, 감시 및 감사가 가능하다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 수신측에 의해서 적용되어야 하는 조건을 나타내는 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 재암호화를 관리하는 제어 명령은, 싱크의 특정 조건을 규정할 수 있게 되어서, 결과적으로 소스는 싱크에 의해서 적용되는 조건을 규정할 수 있다. 소스는, 예로서, 싱크가 특정의 고가의 데이터를 구입하기 위해서는 특정한 보안 기준에 따라야 하는 것을 규정할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 수신측으로부터 상기 데이터 처리 장치에 전송된 제어 명령을 포함하는 것을 특징으로 한다. 이에 따라서, 재암호화 처리를 관리하는 제어 명령이 싱크에 존재할 수 있게 되어서, 싱크가 재암호화 처리를 독립적으로 실행할 수 있는 이점이 있다. 또한, 제어 명령이 소스에 존재하고, 재암호화가 소스에서 실행되면, 데이터 제작자 또는 소유자에 대응하는 소스는, 재암호화 처리를 완전히 제어할 수 있다. 본 발명으로써, 고객에 대하여 콘텐츠를 개별화할 수 있으므로, 타인이 콘텐츠를 이용할 수 없다. 또한, 콘텐츠는 재암호화 처리에 의해서 개별화되지 않도록 암호화될 수도 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 데이터 처리 장치에 저장된 소정의 라이선스의 존재를 증명하는 방법으로서, 송신측과 상기 데이터 처리 장치에 의한 상호 인증 단계와, 송신측과 상기 데이터 처리 장치와의 사이에, 보안 데이터 채널을 설정하는 단계와, 송신측으로부터 상기 데이터 처리 장치에, 소정의 라이선스의 소유권 증명을 요구하는 챌린지를 전송하는 단계와, 상기 데이터 처리 장치가, 명령 세트에 따라서, 상기 챌린지와 상기 소정의 라이선스를 이용하여, 고유한 증명을 생성하는 단계와, 상기 데이터 처리 장치가, 상기 생성한 증명을 송신측에 전송하는 단계와, 송신측이, 수신한 상기 증명을 검증하는 단계를 포함하는 것을 특징으로 한다.
이에 따라서, 소스에 상세한 라이선스 정보를 제공하지 않고, 싱크에 소정의 라이선스가 존재하는 것을 증명할 수 있다. 환언하면, 싱크의 라이선스 풀(license pool)에 라이선스가 저장되어 있다는 증명을 취득하기 위해서, 소스는 보안 채널을 이용하여 싱크에 증명서를 발행할 것을 요구한다. 싱크(보안 컨테이너)는, 소스로부터 싱크에 전송된 요구(챌린지)를 참조하여 증명서를 생성한다. 이어서, 생성된 증명서는, 보안 채널을 통하여 소스에 전송된다. 라이선스에 대하여 고유한 증명서를 발행하는 이점은, 싱크가 상세한 라이선스 정보를 소스에 전송할 필요가 없는 것이다. 또한, 이 증명서는, 이 라이선스가 전자 티켓 대신에 이용되는 전자 티켓 시스템에서도 이용할 수 있다. 또한, 소스로부터 수신한 명령 세트를 이용함으로써, 라이선스 발행자는 증명서의 생성 방법을 제어할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 증명서를 생성할 때에, 데이터 처리 장치가 송신측의 공개 키를 이용하여 챌린지와 증명을 암호화하는 것을 특징으로 한다. 이에 따라서, 공개 키 암호화 방법을 이용하여 증명을 암호화할 수 있으므로, 소스와 보안 컨테이너 간의 접속을 보안성이 있게 할 필요가 없다. 이 경우, 보안은 공개 키 암호화 방법에 의해서 실현된다. 또한, 이 경우, 소스의 공개 키는, 라이선스에 포함될 수도 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 증명을 생성할 때에, 데이터 처리 장치가, 생성된 증명을 라이선스에 포함된 키를 이용하여 암호화하는 것을 특징으로 한다. 이에 따라서, 라이선스의 일부를 키로서 이용할 수 있고, 라이선스 발행자 또는 허가된 제3자만이 증명을 복호할 수 있다. 또한, 소스가 증명서를 복호할 수 있는 경우, 그 소스는 허가된 대상으로 간주할 수 있으므로, 소스가 보안 컨테이너에 대하여 자체를 검증할 필요가 없다.
또한, 본 발명의 데이터 보호 관리 방법은, 생성한 증명을 송신측에 전송할 때에, 라이선스에 포함되는 부가적인 데이터와 함께 증명을 송신측에 전송하는 것을 특징으로 한다. 이에 따라서, 라이선스로부터의 추가 데이터를 증명에 부가한 후에, 증명을 소스에 전송할 수 있게 된다. 따라서, 이 방법으로써 전자 티켓을 실현할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 부가적인 데이터를 라이선스에 포함되는 키를 이용하여 암호화하는 것을 특징으로 한다. 이에 따라서, 소스에 전송하기 전에, 라이선스로부터의 추가 데이터를 증명에 추가하고, 또한 증명과 추가 데이터의 어느 하나, 또는 모두를 암호화할 수 있다. 따라서, 이 방법으로써 전자 티켓을 실현할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 명령 세트에, 라이선스에 따라서, 증명서에 부가해야 하는 데이터를 결정하는 정보를 포함하는 것을 특징으로 한다. 이에 따라서, 증명 생성을 관리하는 제어 명령에, 라이선스의 어느 데이터를 증명서에 부가할 것인가를 나타내는 정보를 포함시킬 수 있게 된다. 따라서, 라이선스에 부가되는 데이터의 특정한 서브세트(subset)를 증명에 추가할 수 있다.
또한, 본 발명의 데이터 보호 관리 방법은, 데이터 처리 장치에 저장된 소정의 라이선스의 상태 정보를 변경하는 방법으로서, 송신측과 데이터 처리 장치에 의한 상호 인증 단계와, 송신측과 데이터 처리 장치와의 사이에서, 보안 데이터 채널을 설정하는 단계와, 수신측으로부터 상기 데이터 처리 장치에, 소정의 라이선스의 상태 정보의 변경 요구와 함께, 라이선스의 존재 증명을 요구하는 챌린지를 전송하는 단계와, 상기 데이터 처리 장치가, 상기 요구에 따라서, 상기 소정의 라이선스의 상태 정보를 변경하는 단계와, 상기 데이터 처리 장치가, 명령 세트에 따라서, 상기 챌린지와 상기 소정의 라이선스를 이용하여, 고유한 증명을 생성하는 단계와, 상기 데이터 처리 장치가, 상기 생성한 증명을 송신측에 전송하는 단계와, 송신측이, 수신한 상기 증명을 검증하는 단계를 포함하는 것을 특징으로 한다.
이에 따라서, 라이선스에 관한 상태 정보는, 필요한 대로, 라이선스에 할당되거나, 라이선스내에 포함된다. 즉, 라이선스 규칙을 변경하기 위해서는, 우선 소스와 보안 컨테이너 간의 상호 인증을 실행하고, 인증에 성공하면 보안 채널이 설정된다. 이어서, 라이선스 상태의 변경 요구가, 소스로부터 보안 컨테이너에 전송되고, 보안 컨테이너는 요구에 따라서 조작한다. 라이선스 상태의 변경에 성공하면, 보안 컨테이너는 증명을 소스에 전송한다. 이어서, 소스는, 수신한 증명으로부터 요구한 변경의 결과를 확인한다. 이 방법의 이점은, 라이선스 상태 정보를 변경함으로써, 쌍방향, 또는 복수의 전자 티켓을 실현할 수 있는 것과, 라이선스에 대응하는 디지털 데이터의 사용을 제한할 수 있는 것이다.
또한, 본 발명의 데이터 보호 관리 방법은, 데이터 처리 장치에 소정의 라이선스를 저장하는 방법으로서, 송신측과 데이터 처리 장치와의 사이에서의 상호 인증 단계와, 송신측과 상기 데이터 처리 장치와의 사이에 보안 데이터 채널을 설정하는 단계와, 송신측으로부터 상기 데이터 처리 장치에 소정의 라이선스를 전송하는 단계와, 상기 데이터 처리 장치가, 명령 세트에 따라서, 상기 수신한 소정의 라이선스를 저장하는 단계를 포함하는 것을 특징으로 한다.
즉, 보안 컨테이너와 소스는 상호 인증을 실행하고, 인증에 성공하면, 보안 컨테이너와 소스 간에 보안 채널이 설정된다. 수신한 라이선스 데이터는 보안 컨테이너 내의 내부 메모리에 저장된다. 이에 따라서, 라이선스를 보안 컨테이너에 저장할 때에, 라이선스 데이터는 소스로부터 장치에 보안성있게 전송되어서, 장치 내의 메모리에 안전하게 저장된다. 라이선스 데이터는 결코 평문(平文)으로 공개되는 일은 없다.
또한, 본 발명의 데이터 보호 관리 방법은, 데이터 처리 장치에 소정의 라이선스를 저장하는 방법으로서, 송신측과 데이터 처리 장치와의 사이에서의 상호 인증 단계와, 상기 데이터 처리 장치로부터 송신측에, 수신측에 관련된 공개 키를 전송하는 단계와, 송신측이, 상기 수신한 공개 키를 이용하여, 상기 소정의 라이선스를 암호화하고, 상기 암호화한 라이선스를 상기 데이터 처리 장치에 전송하는 단계와, 상기 데이터 처리 장치가, 수신측에 관련된 비밀 키를 이용하여, 상기 암호화한 라이선스를 복호화하는 단계를 포함하는 것을 특징으로 한다.
즉, 보안 컨테이너와 소스는 상호 인증을 실행하고, 인증에 성공하면, 장치에 할당된 공개 키가 소스에 전송된다. 이어서, 소스는 수신한 공개 키를 사용하여 라이선스 데이터를 암호화하고, 암호화된 데이터를 보안 컨테이너에 전송한다. 보안 컨테이너는 수신한 데이터를 내부 메모리에 저장한다. 이에 따라서, 라이선스를 보안 컨테이너에 저장할 때에, 상기 라이선스 데이터는 소스로부터 장치에 보안성있게 전송되어서, 장치의 메모리에 안전하게 저장된다. 라이선스 데이터는 결코 평문으로 공개되는 일은 없다.
이하에, 본 발명의 바람직한 실시형태를 첨부 도면을 이용하여 설명한다.
(제1실시형태)
콘텐츠 제공자가 운영하는 서버 등에 저장된 콘텐츠 데이터를 네트워크를 통하여 취득하는 데이터 배신 시스템에 있어서, 콘텐츠 데이터의 부정한 이용을 제한하고, 또한 데이터를 보호하는 기능이 요구되고 있다. 본 발명의 제1실시형태에 의한 데이터 보호 관리 장치는, IC 카드 또는 기타의 개찬(改竄) 방지 하드웨어 등의 보안 컨테이너 내에 포함된 DRM(Digital Rights Management; 디지털 권리 관리) 시스템으로서, 통상의 디지털 라이선스 관리, 및 디지털 라이선스와 기타 라이선스에 관련된 디지털 데이터 저장 제어를 실행한다. 이것들은, 하드웨어 또는 소프트웨어로 구성할 수도 있다.
라이선스는 관련된 사용 규칙을 포함할 수도 있다. 사용 규칙은, 라이선스와, 상기 라이선스에 관련된 디지털 데이터의 이용에 관한 규칙을 정의한다. 사용 규칙에 의해서 특정한 처리에 관한 규칙이 정의되어 있지 않은 경우, 미리 결정되어 있는 디폴트의 설정을 적용한다. 디폴트 설정과 사용 규칙이 상이한 경우, 제약이 더욱 강하고, 더욱 보안적인 규칙을 적용해야 한다.
도 17은, 데이터 배신 시스템의 네트워크 환경을 나타내는 개략도이다. 본 발명의 제1실시형태에 의한 DRM 시스템은, 콘텐츠 제공자 또는 콘텐츠 서버로부터 네트워크를 통하여 디지털 데이터를 다운로드하는 클라이언트 장치에 포함되어 있다. 이 네트워크는, 유선 네트워크 또는 무선 네트워크일 수도 있고, 인터넷 또는 인트라넷(intranet)일 수도 있고, 서버에의 1대1 직접 접속일 수도 있고, 인터넷과 로컬 LAN 모두와의 접속일 수도 있으며, 기타 구성일 수도 있다.
이어서, 본 발명의 제1실시형태에 의한 DRM 시스템에 대하여 상세하게 설명한다.
DRM 시스템은, 라이선스 데이터를 보안성있게 저장하고 송신하기 위한 암호화 알고리즘 및 프로토콜을 제공함으로써, 라이선스 데이터의 안전한 관리를 보증한다. 또한, 데이터의 송신측(소스)과 수신측(싱크) 간의 추가적인 데이터 보안층으로서 이용되는 카드를 통하여 전송되는 디지털 데이터에도 적용할 수 있다.
이하, 이러한 DRM 시스템을 구비하고, 또한 라이선스와 디지털 데이터를 보안성있게 관리하는 장치를, "보안 컨테이너"라고 부른다. 이 보안 컨테이너는, 보안성이 있는, 개찬 방지 장치이다. 소스로부터 취득한 라이선스 데이터(또는 콘텐츠 데이터)는 이 보안 컨테이너 내의 메모리에 저장된다.
"소스"는, 콘텐츠 데이터를 취득하는 정보원을 의미하고, 콘텐츠 제공자 및 콘텐츠 서버 모두를 가리킨다. 또한, "소스"는 CD-ROM과 DVD 등, 콘텐츠 매체를 포함한다.
"싱크"는 소스로부터 콘텐츠 데이터를 취득하는 수신측이고, 클라이언트 장치 및 재생 장치 등을 가리킨다. 싱크는, 메모리 카드, IC 카드, SD(Secure Digital) 카드, 또는 CD-R 디스크 등의 기록 가능한 매체를 구비하고, 기록 매체의 판독 및 기록 매체에의 기록 기능을 구비하고 있다. 또한, 기록 매체를 재생 장치에 장착함으로써, 별개의 판독 전용 장치를 이용하여 콘텐츠 데이터를 재생할 수 있다.
도 1은, 본 발명의 제1실시형태에 의한 보안 컨테이너의 구성을 나타내는 기능 블록도이다.
보안 컨테이너(500)는, I/O 포트(port)(501)와, 세션 매니저(502)와, 라이선스 관리 엔진(506)과, 사용 규칙 적용부(505)(사용 규칙은, 명령 세트라고도 부른다)와, 암호화 엔진(507)과, 메모리 관리부(503)와, 메모리(504)를 구비하고 있다. I/O 포트(501)에는, 콘텐츠를 전송하는 소스(510) 및 콘텐츠를 수신하는 싱크(511)가 접속되어 있다. 싱크(511)는 리코더, 재생 장치, 디스플레이, 오디오 출력 장치, 및 프린터 등의 장치들 중 하나 또는 모두를 포함한다. 또한, 싱크(511)는 보안 콘테이너(500)를 포함할 수도 있다.
세션 매니저(502)는, I/O 포트(501)를 통한 접속을 관리한다. 여기서의 접속은, 통상적인 접속에 한정되지 않으며, 암호화 엔진(507)을 이용한 보안 접속을 포함한다. 세션 매니저(502)는, 접속 상대와 신임장을 교환하고 또한 상호 인증함으로써 세션을 개시하고, 라이선스 데이터와 그것에 관련된 콘텐츠 데이터에의 액세스 허가 등, 액세스의 제한을 관리한다.
라이선스 관리 엔진(506)은, 세션 매니저(502)에 의해서 설정된 세션에 있어서, I/O 포트(501)를 통하여 라이선스 데이터를 취득하여, 취득한 라이선스 데이터를 메모리(504)에 저장하고 또한 관리한다.
사용 규칙 적용부(505)는, 라이선스 관리 엔진(506)이 관리하고 또한 사용 규칙 적용부(505)가 처리하는 라이선스 데이터에 관한 사용 규칙을 결정하고, 상기 사용 규칙을 라이선스 데이터 및 콘텐츠 데이터의 처리에 적용한다. 이러한 사용 규칙은 콘텐츠의 복사 횟수를 제어하는 복사 제한, 및 부분적인 복호화 허가를 포함하는 각종 규칙을 포함할 수도 있다.
암호화 엔진(507)은, 콘텐츠 데이터의 서명, 암호화 및 복호화에 필요한 공개 키 또는 공통 키의 암호화 알고리즘과 해시 알고리즘을 구비하여, 세션 매니저(502)가 설정한 세션에 대한 암호화 프로토콜 기능을 제공한다.
메모리 관리부(503)는, 메모리(504)에의 액세스를 제어하고, 암호화 엔진(507)에 의한 암호화와 복호화의 작업 영역을 제공한다. 메모리(504)는 콘텐츠 데이터와 라이선스 데이터와, 접속 상태 정보를 저장한다.
이상과 같이 구성된 보안 컨테이너는, 디지털 라이선스 데이터를 보안성있게 저장하고 전송하기 위한 암호화 알고리즘 및 프로토콜을 제공할 수 있고, 이에 따라서 라이선스 데이터의 안전한 관리를 보증할 수 있다.
또한, 디지털 라이선스가 보통의 텍스트(text) 형식으로 보안 컨테이너로부터 나올 수 없게 보장하도록 모든 필요한 조작은 보안 컨테이너 내부에서 실행된다.
이 보안 컨테이너의 전부 또는 일부를 소프트웨어로 구성할 수 있어서, 휴대 전화 등의 기기에 보안 컨테이너를 설치할 수 있다. 또한, 이 보안 컨테이너를, 메모리 카드형의 기억 장치에 내장하여, 보안 컨테이너를 SD 카드 등의 메모리 카드 장치가 되게 함으로써, 기본적으로, 디지털 라이선스 및 데이터 관리용 메모리 카드형 장치를 제조할 수 있다. 또한, 종래의 데이터 기억 장치에 새로운 기능을 부가함으로써 디지털 라이선스 및 데이터 관리용 메모리 카드형 장치를 제조할 수 있다.
또한, 본 발명의 제1실시형태에 의한 보안 컨테이너의 메모리 내에, ISO/IEC 9293에 따른 FAT 파일 시스템을 구성함으로써, 디지털 라이선스 데이터를 메모리에, 독자적인 포맷보다는 표준화된 파일 포맷으로 저장할 수 있고, 또한, 디지털 라이선스 데이터의 저장과 검색을 포함하는, 디지털 라이선스 데이터 관리 태스크용 공개 API(application programming interface)를 제공할 수 있다.
이어서, 본 발명의 제1실시형태에 의한 보안 컨테이너를 통하여, 디지털 데이터(콘텐츠)를 특정 소스로부터 특정 싱크에 전송하는 방법을, 도 3a, 도 3b, 도 4 및 도 5를 참조하여 설명한다.
보안 컨테이너(500)를 통하여 소스로부터 싱크에 콘텐츠를 전송할 때의 트랜스코딩 처리(transcoding process)에 있어서, 4개의 데이터 세트(data set)를 정의한다. 이러한 4개의 데이터 세트는, 콘텐츠(대응하는 키로써 암호화된 것)(901)와, 콘텐츠를 암호화하기 위한 키(라이선스의 일부)와, 보안 컨테이너(500)와 싱크 간의 보안 채널에 사용되는 세션 키와, 특정 키에 대응하고 또한 보안 컨테이너(500)의 내부 제어 조작에 사용되는 명령 세트(라이선스의 일부)이다. 이러한 명령 세트는, 소스 또는 싱크로부터 보안 컨테이너(500)에 전송되지만, 전송하는 타이밍 및 통신 수단은 동일할 필요는 없고, 상이한 버스를 통하여 전송할 수 있다.
도 3a에 나타내는 바와 같이, 소스로부터 싱크에의 전송 처리는, 이하의 6개의 단계로 나눌 수 있다. 즉, (a) 소스가, 콘텐츠에 직접 또는 간접적으로 관련된 키로써 암호화된 콘텐츠(901)를 저장하는 단계와, (b) 암호화된 콘텐츠를 소스로부터 보안 컨테이너에 전송하는 단계와, (c) 명령 세트를 소스로부터 보안 컨테이너전송하는 단계와, (d) 보안 컨테이너와 싱크와의 사이에 보안 데이터 채널을 설정하는 단계와, (e) 명령 세트를 싱크로부터 보안 컨테이너에 전송하는 단계와, (f) 콘텐츠에 관련된 키를 이용하여 콘텐츠(901)를 복호화하고, 데이터를 트랜스코딩한 후에, 데이터를 상기 보안 데이터 채널을 통하여 전송하는 단계이다.
도 3b는 본 발명의 제1실시형태에 의한 보안 컨테이너에서의, 상기 단계 (f)의 트랜스코딩 처리를 나타내고 있다.
소스(510)로부터 전송된 암호화된 콘텐츠(901)는 I/O 포트(501)를 통하여 세션 매니저(502)에 입력된다. 세션 매니저(502)는 복호화부(903)와 암호화부(904), 및 세션 키 생성부(910)로 구성된 트랜스코딩 처리부(902)를 구비하고 있다. 복호화부(903)에는 라이선스 관리 엔진(506)으로부터의 복호화 키(905)와 사용 규칙 적용부(505)로부터의 사용 규칙(906)이 입력된다. 암호화된 콘텐츠(901)는 복호화부(903)에 의해서 복호화 키(905)를 이용하여 복호화된다. 복호화된 콘텐츠는, 콘텐츠의 재생 횟수 또는 재생할 수 있는 부분 등, 소정의 제한이 부가된 조건부 콘텐츠로서 출력된다. 사용 규칙에 따라서, 복호화된 출력이 I/O 포트(501)로부터 싱크(511) 또는 암호화부(904)에 전송되거나, 또는 전혀 출력되지 않는다.
암호화부(904)는, 세션 키(907)를 이용하여, 콘텐츠를 재암호화하여 그 결과를 트랜스코딩된 출력(908)으로서 I/O 포트(501)로부터 싱크(511)에 출력한다. 본 발명의 실시형태에 있어서, 세션 키(907)는 싱크(511)로부터의 정보에 따라서 세션 키 생성부(910)에 의해서 생성된다. 싱크(511)는 콘텐츠를 재생할 수 있도록, 재암호화된 콘텐츠를 복호화한다. 콘텐츠는, 콘텐츠 보호를 강화하기 위해서 암호화부(904)에 의해서 재암호화된다. 이와 같이, 트랜스코딩 처리부(902)는 콘텐츠의 코딩 포맷을 변경한다. 또한, 세션 키 생성부(901)를 싱크(511)로부터의 정보에 따라서 챌린지(토큰)를 생성하도록 구성할 수도 있다.
도 4는, 본 발명의 제1실시형태에 의한 보안 컨테이너의 트랜스코딩 처리의 일례를 나타내는 플로차트이다.
우선, 세션 매니저(502)가 암호화된 콘텐츠를 I/O 포트(501)를 통하여 소스로부터 수신한다(1001).
라이선스 관리 엔진(506)은, 수신한 콘텐츠에 관련된 라이선스 데이터를 메모리(504)로부터 취득하고, 취득한 라이선스 데이터를 사용 규칙 적용부(505)에 통지한다. 이어서, 사용 규칙 적용부(505)는, 이 라이선스 데이터에 따라서 사용 규칙을 결정하고, 이 사용 규칙을 적용하여 복호화의 필요 여부를 판정한다(1002).
복호화가 필요한 경우(1002가 Yes), 암호화 엔진(507)은, 라이선스 데이터에 의한 복호화 키를 이용하여, 암호화된 콘텐츠를 복호화한다(1003). 복호화가 필요하지 않은 경우(1002가 No), 제어는 복호화를 실행하지 않고, 단계 1004로 진행한다.
이어서, 사용 규칙 적용부(505)는, 이전에 결정한 사용 규칙을 적용하여, 암호화의 필요 여부를 판정한다(1004).
암호화가 필요한 경우(1004가 Yes), 암호화 엔진(507)은 세션 키를 이용하여 콘텐츠를 암호화하고(1005), 이어서, 세션 매니저(502)는 트랜스코딩된 콘텐츠(재암호화된 콘텐츠)를 I/O 포트(501)를 통하여 싱크(511)에 출력한다(1006). 암호화가 필요하지 않은 경우(1004가 No), 세션 매니저(502)는 복호화한 콘텐츠를 I/O 포트(501)를 통하여 싱크(511)에 출력한다(1007).
도 5는, 본 발명의 제1실시형태에 의한 보안 컨테이너의 트랜스코딩 처리의 다른 예를 나타내는 플로차트이다. 단계 1201, 1202, 1203 및 1204는 도 4에서의 단계 1001, 1002, 1003 및 1004와 동일하므로, 이것에 대한 추가 설명은 생략한다. 도 5의 단계 1205에서는, 처리 대상인 콘텐츠의 트랜스코딩이 완료되었는가를 판단한다. 처리를 계속하는 경우에는(1205가 No), 제어는 단계 1202로 복귀하여 트랜스코딩 처리를 반복한다. 이에 따라서, 트랜스코딩을 스트리밍(streaming) 및 주기적인 콘텐츠에 적용할 수 있다.
또한, 디피-헬만(Diffie-Hellman) 키 협정(agreement) 프로토콜을 이용하여 보안 컨테이너(500)와 싱크(511) 간의 보안 접속(d)을 설정함으로써, 공개되어서 널리 사용되는 방법을 이용하여 보안 접속을 설정할 수 있다.
또한, 싱크(511)에의 데이터 전송 단계 (f)에서의 명령 세트(사용 규칙)에, 싱크에 데이터를 전송하는 데에 사용하는 보안 데이터 채널의 암호화의 강도를 정의하는 제어 명령을 포함시킬 수 있다. 이에 따라서, 명령 세트를 이용하여 암호화의 강도(즉, 보안 컨테이너(500)와 싱크 간의 보안 채널의 강도)를 관리할 수 있게 되고, 데이터 채널의 종류에 따라서 더욱 유연하게 안전성을 향상시킬 수 있다.
또한, 싱크에의 데이터 전송 단계 (f)에서의 명령 세트(사용 규칙)에, 싱크에 데이터를 전송하기 위한 보안 채널이 유효한 기간을 나타내는 명령 세트를 포함시킬 수 있다. 따라서, 암호화(보안 컨테이너(500)와 싱크 간의 보안 채널)를 관리하는 명령 세트는, 단계 1004에서의 암호화가 가능한 기간을 규정할 수 있다. 이에 따라서, 고객이, 예로서, 소정의 구매 기간 동안에 개인용으로, 배신 데이터를 복사하여 저장할 수 있게 하는 구매 시스템, 또는 데이터를 계획된 용도로 사용할 수 있게 하는 구매 시스템을 구성할 수 있다.
또한, 싱크에의 데이터 전송 단계 (f)에서의 명령 세트(사용 규칙)에, 데이터의 복사물을 싱크에 몇 개 송신할 것인가를 나타내는 명령 세트를 포함시킬 수 있다. 따라서, 암호화(보안 컨테이너(500)와 싱크 간의 보안 채널)를 관리하는 명령 세트는, 전송 가능한 복사 횟수, 백업 복사 제작 횟수, 및 데이터의 공유 횟수를 규정하는 제한을 관리할 수 있다.
또한, 단계 (f)에서의 싱크에 전송된 명령 세트에, 단계 (c)에서의 소스로부터 전송된 명령 세트의 일부 또는 전부를 포함시킬 수 있다. 이에 따라서, 소스로부터 보안 컨테이너에 전송된 제어 명령을 추가할 수 있게 되어서, 소스가 보안 조건을 규정할 수 있게 하는 효과가 있다. 그러나, 라이선스나 키에 부가되는 명령 세트에 정의되어 있는 디폴트 조건은 결코 약화(弱化)되지 않는다.
또한, 단계 (f)에서의 싱크에 전송된 명령 세트에, 데이터가 싱크에 전송되기 전에, 싱크에 의해서 적용되는 조건을 나타내는 명령 세트를 포함시킬 수 있다. 이에 따라서, 암호화(보안 컨테이너와 싱크 간의 보안 채널)를 관리하는 제어 명령은, 싱크에 대한 조건을 규정할 수 있게 되고, 그 결과, 소스가 싱크의 조건을 규정할 수 있다. 예로서, 소스는, 싱크가 구입하는 데에 고가인 데이터에 대해서는 사용자 확인을 필요로 하는 등, 특정한 보안 기준을 따라야 하는 것을 규정할 수 있다.
또한, 보안 컨테이너와 싱크 간의 보안 접속(d)을 CPRM(Contents Protection of Recordable Media; 기록 가능 매체용 콘텐츠 보호 기술)을 이용하여 설정할 수 있다. CPRM을 이용함으로써, SD 카드를 포함하는, CPRM에 대응하는 모든 환경에서 이 시스템을 이용할 수 있다.
또한, 소스로부터 보안 컨테이너에 명령 세트를 전송하는 단계 (c)를 생략할 수도 있다. 이에 따라서, 소스가 간단한 기본적인 기억 장치, 또는 기억 매체인 경우에 이 시스템을 이용할 수 있다.
이어서, 본 발명의 제1실시형태에 의한 보안 컨테이너를 통하여, 재암호화된 디지털 데이터(콘텐츠)를 소스로부터 싱크에 전송하는 방법의 일례에 대하여, 도 6a, 도 6b, 도 7, 및 도 8을 이용하여 설명한다.
보안 컨테이너(500)를 통하여 소스로부터 싱크에 콘텐츠를 전송할 때의 재암호화 처리에 있어서, 3개의 데이터 세트를 정의한다. 3개의 데이터 세트는, 콘텐츠(특정 키로써 암호화한 것)(1401)와, 콘텐츠를 암호화하는 데에 사용하는 키(1407)와, 보안 컨테이너(500)에서의 제어 조작에 사용되는 명령 세트이다. 이들 명령 세트는, 소스로부터 보안 컨테이너(500)에 전송되지만, 전송하는 타이밍 및 통신 수단은, 동일할 필요는 없고, 상이한 버스를 통하여 전송할 수 있다. 보안 컨테이너(500)는, 이들 데이터 세트를 이용하여 재암호화를 실행하고, 이 재암호화 처리에서는, 싱크 고유의 키를 이용하여 재암호화하므로, 그 싱크만이 콘텐츠를 복호할 수 있다.
도 6a에 나타내는 바와 같이, 재암호화한 콘텐츠의 소스로부터 싱크에의 전송 처리는, 다음의 5개 단계로 구성되어 있다. 즉, (a) 소스가, 콘텐츠에 관련된 키를 이용하여 콘텐츠를 암호화하는 단계와, (b) 암호화된 콘텐츠(1401)를 소스로부터 보안 컨테이너에 전송하는 단계와, (c) 단계 (a)에서 암호화에 사용한 키를 보안 컨테이너에 전송하는 단계와, (d) 소스로부터 보안 컨테이너에 명령 세트를 전송하는 단계와, (e) 콘텐츠에 할당된 키를 이용하여 콘텐츠(1401)를 복호화한 후, 싱크에 할당된 키를 이용하여 콘텐츠를 재암호화하는 단계이다. 복호화 및 재암호화 단계 (e)는, 보안 컨테이너에 저장된 명령 세트에 의해서 제어된다. 또한, 단계 (c)에서의 키는 사전에 전송되거나 수신한 관련 라이선스의 일부로서 전송할 수도 있다.
도 6b는, 본 발명의 제1실시형태에 의한 보안 컨테이너에서 실행되는 단계 (e)의 재암호화 처리를 나타내고 있다. 보안 컨테이너(500)는, 암호화된 콘텐츠(1401)를 수신하고, 재암호화 처리(1402)를 실행하여, 재암호화된 콘텐츠(1408)를 출력한다. 이 재암호화 처리(1402)는, 복호화(1403)와 암호화(1404)로 구성되어 있으며, 라이선스에 링크된 키(즉, 복호화 키(1405))로써 암호화된 콘텐츠(1401)가 세션 매니저(502)에 입력되어, 복호화 키(1405)를 이용하여 복호화된다. 이어서, 관련되는 사용 규칙(1406)을 적용하여, 복호화된 콘텐츠를 라이선스에 링크된 재암호화 키(1407)를 이용하여 재암호화하고, 재암호화된 콘텐츠를 출력한다. 이 재암호화 키(1407)는 라이선스에 따라서 생성되므로, 라이선스 관리 엔진(506)으로부터 취득된다. 재암호화된 콘텐츠(1408)는 I/O 포트(501)를 통하여 싱크(511)에 출력된다. 이어서, 싱크(511)는 재암호화된 콘텐츠를 기록하거나, 또는 콘텐츠를 디코딩하여 재생한다.
도 7은, 본 발명의 제1실시형태에 의한 보안 컨테이너의 재암호화 처리의 일례를 나타내는 플로차트이다.
우선, 세션 매니저(502)가, 암호화된 콘텐츠를 I/O 포트(501)를 통하여 소스로부터 수신하여, 수신한 콘텐츠를 메모리(504)에 저장한다(1501).
이어서, 라이선스 관리 엔진(506)은, 콘텐츠에 관련된 라이선스 데이터를 메모리(504)로부터 취득하고, 상기 라이선스를 사용 규칙 적용부(505)에 전송한다. 사용 규칙 적용부(505)는, 이 라이선스에 따라서 사용 규칙을 결정하고, 이 사용 규칙을 적용하여 재암호화의 허가 여부를 판정한다(1502).
재암호화가 허가되지 않은 경우(1502가 No), 처리를 종료한다. 재암호화가 허가된 경우(1502가 Yes), 암호화 엔진(507)은 복호화 키를 이용하여, 암호화된 콘텐츠를 암호화한다(1503).
암호화 엔진(507)은, 관련되는 사용 규칙을 적용하여, 복호화된 콘텐츠를 라이선스로부터의 복호화 키를 이용하여 재암호화한다(1504). 이어서, 세션 매니저(502)는, 재암호화된 콘텐츠를 I/O 포트(501)를 통하여 출력한다(1505).
도 8은, 본 발명의 제1실시형태에 의한 보안 컨테이너에 의해서 실행되는, 주기적인 콘텐츠의 재암호화 처리의 일례를 나타내는 플로차트이다. 우선, 세션 매니저(502)가, 암호화된 콘텐츠를 I/O 포트(501)를 통하여 소스로부터 수신하여, 이 콘텐츠를 메모리(504)에 저장하거나, 또는 싱크(511)에 전송한다.
이어서, 라이선스 관리 엔진(506)은, 암호화된 콘텐츠의 라이선스 데이터를 메모리(504)로부터 판독하여, 이 라이선스 데이터를 사용 규칙 적용부(505)에 전송한다. 사용 규칙 적용부(505)는, 이 라이선스 데이터에 따라서 사용 규칙을 결정하고, 이 사용 규칙을 적용하여, 재암호화의 허가 여부를 판정한다(1601).
재암호화가 허가되지 않은 경우(1601이 No), 처리를 종료한다. 재암호화가 허가된 경우(1601이 Yes), 암호화 엔진(507)은, 암호화된 콘텐츠의 일부를 메모리(504)로부터 판독하고, 복호화 키를 이용하여, 판독한 암호화된 콘텐츠를 복호화한다(1602).
이어서, 암호화 엔진(507)은, 관련되는 사용 규칙을 적용하여, 복호화된 콘텐츠의 일부를 재암호화하고, 세션 매니저(502)는, 재암호화된 콘텐츠를 I/O 포트(501)를 통하여 출력한다(1603).
이어서, 사용 규칙 적용부(505)는, 사용 규칙을 재차 적용하여, 콘텐츠의 다음 부분에 대한 재암호화의 허가 여부를 판정한다(1604). 콘텐츠의 다음 부분에 대한 재암호화가 허가된 경우면(1604가 No), 제어는 단계 1602로 복귀하여, 처리를 계속한다. 그러나, 재암호화가 허가되지 않은 경우(1604가 Yes), 처리를 종료한다. 단계 1604에서는, 콘텐츠의 최종 부분의 처리가 완료된 경우, 재암호화가 허가되지 않은 것으로 판단하고, 처리를 종료하는 것을 염두에 두어야 한다.
이상과 같이, 사용자가 콘텐츠를 재암호화하므로 특정 사용자에 대하여 콘텐츠를 개별화할 수 있어서, 타인이 콘텐츠를 이용할 수 없다. 또한, 재암호화 처리로써 콘텐츠를 익명(匿名)으로 암호화할 수도 있다.
또한, 단계 (e)에서의 명령 세트(사용 규칙)에, 재암호화에 허용되는 계산 시간을 정의하는 제어 명령을 포함시킬 수도 있다. 이에 따라서, 재암호화를 관리하는 제어 명령은, 재암호화 가능 기간을 규정할 수 있게 된다. 따라서, 고객이, 예로서, 소정의 구매 기간 동안 개인용으로 배신 데이터를 복사하고 저장할 수 있게 하는 상용 시스템을 구성할 수 있다.
또한, 단계 (e)에서의 명령 세트에, 몇 개의 재암호화된 데이터의 복사물을 생성할 것인가를 규정하는 제어 명령을 포함시킬 수 있다. 이에 따라서, 재암호화를 관리하는 제어 명령은, 복사 가능 회수를 규정할 수 있게 됨으로써, 데이터의 백업 또는 공유에 이용될 수 있는 유효한 복사 횟수를 제한하고 관리할 수 있다. 또한 콘텐츠는 특정 고객에 링크되어 있으므로, 감시 및 감사가 가능하다.
또한, 단계 (e)에서의 명령 세트에, 재암호화가 허용되기 전에, 싱크에 의해서 적용되어야 하는 조건을 나타내는 제어 명령을 포함시킬 수 있다. 이에 따라서, 재암호화를 관리하는 제어 명령은, 싱크에 대한 조건을 규정할 수 있게 되고, 그 결과, 소스는 싱크에 의해서 적용되는 조건을 규정할 수 있다. 소스는, 예로서, 싱크가 특정의 고가의 데이터를 구입하기 위해서는 특정한 보안 기준에 따라야 하는 것을 규정할 수 있다.
또한, 단계 (e)에서의 명령 세트에, 단계 (c)에서 전송된 암호화 키를 포함시킬 수 있다. 재암호화된 데이터의 복사 가능 횟수를 규정하는 제어 명령은, 소스로부터 전송되어야 하고, 싱크에 내장된 제어 명령 세트의 일부가 아니다. 이러한 제어 명령을 명령 세트에 포함함으로써, 이들 제어 명령을 유효하게 규정할 수 있다.
단계 (e)는, 소스의 명령 세트에 의해서 적어도 부분적으로 제어될 수 있다. 이 경우, 제어 명령은 소스에 저장되고, 암호화는 소스측에서 실행된다. 이에 따라서, 데이터 제작자 또는 소유자에 해당하는 소스가, 재암호화 처리를 완전히 제어할 수 있게 된다. 또한, 재암호화를 관리하는 제어 명령을 싱크에 저장함으로써, 싱크가 독립적으로 재암호화를 제어할 수 있게 하는 효과가 있다.
이어서, 본 발명의 제1실시형태에 의한 보안 컨테이너에 있어서, 라이선스의 존재를 검증하는 방법의 일례를, 도 9a, 도 9b 및 도 10을 이용하여 설명한다. 이 방법으로써, 보안 컨테이너가 싱크 내에 구성되고, 이 싱크에 저장된 라이선스의 상세 정보를 소스에 누출하는 일 없이, 라이선스의 존재가 검증되는 것을 유념해야 한다.
소스가, 싱크의 라이선스 풀에 유효한 라이선스가 저장되어 있다는 증명을 취득하기를 희망하는 경우, 소스는, 보안 채널을 이용하여, 싱크에 증명서를 전송하도록 요구해야 한다. 싱크(511)(보안 컨테이너(500))는, 소스(510)로부터 싱크(511)에 전송된 요구(챌린지)를 참조하여 증명서를 생성한다. 이어서, 싱크(511)는 생성한 증명서를 보안 채널을 통하여 소스(510)에 전송한다.
이 챌린지는, 인증 프로토콜의 하나의 형태인 챌린지-응답 프로토콜에 이용된다. 클라이언트(싱크)의 DRM 시스템은, 라이선스에 내장된 비밀 키를 이용하여 챌린지에 서명한다. 서버(소스)는, 라이선스의 또한 일부이고, 라이선스에 관련시킬 수도 있는 공개 키를 이용하여 이 서명을 검증한다. 따라서, 서버는, DRM 시스템이 라이선스를 구비하고, 또한 올바른 증명서의 요구에 응답하고 있는가를 확인할 수 있다. 예로서, 사용자는, 자신의 비밀 코드(챌린지)를 스마트 카드에 입력하여, 다른 시스템에 로그인하기 위한 새로운 코드(응답)를 취득할 수 있다.
도 9a에 나타내는 바와 같이, 라이선스의 존재를 증명하는 처리는, 다음 6개의 단계로 나누어진다. 즉, (a) 소스와 싱크에 의한 상호 인증 단계와, (b) 소스와 싱크 간에 보안 데이터 채널을 설정하는 단계와, (c) 라이선스의 증명 요구인 챌린지를 전송하는 단계와, (d) 싱크가 챌린지와 라이선스 데이터를 이용하여 고유한 증명을 생성하는 단계와, (e) 고유한 증명을 소스에 전송하는 단계와, (f) 소스가 응답으로 수신한 증명을 검증하는 단계이다.
도 9b는, 본 발명의 제1실시형태에 의한 보안 컨테이너에서의, 상기 단계 (d)의 라이선스의 증명을 생성하는 처리를 나타내고 있다. 세션 매니저(502)는 라이선스의 증명을 요구하는 세션에서 소스(510)로부터 챌린지를 수신하고, 처리부(1801)는 라이선스의 증명을 생성하는 처리를 실행하고, 생성한 라이선스의 증명서(1804)를 출력한다. 이 라이선스의 존재를 증명하는 라이선스 증명서를 생성하는 처리부(1801)는, 라이선스로부터의 필요한 정보를 포함하는 증명서(응답)를 생성하는 증명서 생성부(1802)와, 라이선스에서의 선택 항목 데이터를 추가하는 데이터 추가부(1803)로 구성되어 있다. 소스(510)가 라이선스의 증명을 요구하면, 세션 키 생성부(910)는 세션 키와 챌린지를 생성한다. 라이선스 관리 엔진(506)으로부터 출력된 라이선스는 증명서 생성부(1802)에 전송된다. 라이선스는 메모리(504)에 저장되도록 되어 있는 것을 염두에 두어야 한다. 증명서 생성부(1802)는 세션 키와 챌린지를 이용하여 증명서를 생성한다. 이어서, 사용 규칙 적용부(505)로부터의 사용 규칙을, 생성한 증명서에 요구된 대로 적용한다. 라이선스가 선택 항목을 포함하는 경우, 데이터 추가부(1803)는 메타데이터(metadata), 및 라이선스 관리 엔진(506)으로부터의 추가적인 라이선스 데이터를 증명서에 추가한다. 이어서, 필요하면, 이 새로운 증명서를 세션 키를 이용하여 암호화한 후, 암호화된 라이선스의 증명서(1804)를 출력한다. 이 출력된 라이선스의 증명(1804)은 라이선스의 내용 자체를 전송하는 것이 아니고, 대신에 단순히 라이선스의 내용이 올바르다는 것을 증명한다. 이 출력된 라이선스의 증명(1804)은 I/O 포트(501)를 통하여 소스(510)에 전송된다. 따라서, 소스(510)는 도 9a의 단계 (c), (d), 및 (e)를 실행함으로써 싱크 또는 보안 컨테이너(500)가 적절한 라이선스를 구비한 것을 확인할 수 있다.
라이선스를 보유하고 있는 것을 나타낼 필요가 있는 경우에, 이 증명 또는 증명서의 라이선스의 내용을 공개하면 콘텐츠가 부정 이용되거나 또는 개찬될 수도 있다. 따라서, 라이선스의 내용을 공개할 필요가 없는 경우에, 이 증명 또는 증명서는 다만 유효한 라이선스가 존재한다는 증명을 나타낸다. 예로서, 전자 티켓에 대하여 중요한 것은, 유효한 티켓을 보유하고 있다는 증명이므로, 암호화된 내용을 공개할 필요는 없다.
메타데이터는, 라이선스 또는 증명서에 직접적으로는 관계가 없는 정보이다. 예로서, 영화관용의 전자 티켓의 경우에, 메타데이터를 좌석 번호 및 음료수 서비스 등의 부가적인 정보를 나타내는 데에 이용하지만, 이것에 한정되지 않는다.
도 10은, 본 발명의 제1실시형태에 의한 보안 컨테이너의, 라이선스의 증명을 생성하는 처리의 일례를 나타내는 플로차트이다. 우선, 세션 매니저(502)가, 라이선스의 증명을 요구하는 소스(510)로부터의 챌린지를 I/O 포트(501)를 통하여 수신하고, 처리를 시작한다.
라이선스 관리 엔진(506)은, 요구된 라이선스를 메모리(504)(라이선스 풀)로부터 취득하고, 취득한 라이선스 데이터를 사용 규칙 적용부(505)에 전송한다. 사용 규칙 적용부(505)는, 수신한 라이선스 데이터에 따라서 사용 규칙을 결정하고, 이 사용 규칙을 적용하여, 챌린지가 유효인가 아닌가를 판정한다(1901).
챌린지가 무효인 경우(1901이 No), 처리를 종료한다. 또한, 요구된 라이선스가 메모리(504)에 저장되어 있지 않은 경우, 요구(챌린지)를 무효로 하여, 처리를 종료한다. 요구가 유효인 경우(1901이 Yes), 증명서 생성부(1802)와 데이터 추가부(1803)는 라이선스와 챌린지를 이용하여 증명서를 생성한다(1902, 1903, 1904, 1905, 1906). 더욱 상세하게는, 기본 라이선스 항목을 포함하는 증명서를 우선 생성한다(1902). 이어서, 어느 것이든 선택적인 라이선스 항목이 있는가를 판정하고(1903), 있으면, 이 항목들을 추가한다(1904). 이어서, 생성된 증명서를 암호화할 필요가 있는가를 판정하고(1905), 필요하면, 증명서를 암호화한다(1906). 그리고, 데이터 추가부(1803)를 제거하고, 증명서 생성부(1802)를 기본 라이선스 항목과 선택 항목 모두를 포함하는 증명서를 생성하도록 구성할 수도 있는 것을 염두에 두어야 한다.
이어서, 사용 규칙 적용부(505)는, 사용 규칙을 적용하여, 증명서에 부가적인 데이터를 추가할 필요가 있는가를 판정한다(1903). 부가적인 데이터의 추가가 필요한 경우(1903이 Yes), 라이선스 관리 엔진(506)은, 라이선스로부터 부가할 데이터를 추출하고, 이 데이터를 증명서에 추가한다(1904).
그리고, 사용 규칙 적용부(505)는, 사용 규칙을 적용하여, 증명서의 암호화가 필요한가를 판정한다(1905). 암호화가 필요한 경우(1905가 Yes), 암호화 엔진(507)은 세션 키를 이용하여 증명서를 암호화한다(1906). 최종적으로, 세션 매니저(502)는 생성한 증명서를 I/O 포트(501)를 통하여 소스(510)에 출력한다.
사용 규칙에 따라서 요구가 유효한가 아닌가 하는 것은, 예로서, 전자 티켓을 이용하는 경우에, 사용 규칙에 기록된 그 티켓의 유효 기간 및 사용 가능 회수를 참조하여, 타당하면, 그 티켓이 유효한 사용 가능한 티켓인 것으로 판정하는 것을 염두에 두어야 한다. 라이선스가 유효한가를 이 예에서는 사용 규칙을 이용하여 판정했지만, 라이선스 데이터 파일의 명칭 및 작성 일자를 시스템 또는 외부 장치로써 평가할 수도 있다.
선택적인 데이터는, 예로서, 영화관용의 전자 티켓을 사용하는 경우, 영화 관람 후의 코멘트를 조사하는 사람을 선정하기 위한 마킹(marking)일 수도 있지만, 이것에 한정되지 않는다.
특정 라이선스에 대한 고유한 증명서를 발행하는 이점은, 싱크가 상세한 라이선스 정보를 소스에 전송할 필요가 없는 점이다. 또한, 이 증명서를, e-티켓 대신에 라이선스를 이용하는 전자 티켓 시스템에서도 이용할 수 있다.
또한, 디피-헬만(Diffie-Hellman) 키 협정 프로토콜을 이용하여 보안 컨테이너와 싱크 간의 보안 접속(b)을 설정함으로써, 통상의 공개된 방법을 이용하여 보안 접속을 설정할 수 있다.
또한, 보안 컨테이너와 싱크 간의 보안 접속(b)을 CPRM을 이용하여 설정할 수 있다. CPRM을 이용함으로써, SD 카드를 포함하는, CPRM에 대응하는 모든 환경에서 이 시스템을 이용할 수 있다.
또한, 증명서를 생성하는 단계 (d)는, 명령 세트에 의해서 제어된다. 이에 따라서, 증명서의 생성을 관리하는 제어 명령은, 증명서의 생성 방법에 영향을 줄 수 있게 되어서, 라이선스 발행자가 증명서의 생성 방법을 제어할 수 있다.
또한, 증명서를 생성하는 단계 (d)에서, 일방향 해시 함수를 이용할 수 있고, 이에 따라서, 암호화된 보안 증명서를 생성할 수 있게 된다.
또한, 증명서를 생성하는 단계 (d)에서, 챌린지와 증명서를, 소스로부터의 공개 키를 이용하여 암호화할 수 있다. 이것에 대한 이점은, 소스와 보안 컨테이너 간의 접속을 보안성있게 할 필요가 없는 점이다. 이 경우, 보안은 공개 키 암호화 방법에 의해서 실현된다. 또한, 이 경우, 소스의 공개 키는, 라이선스에 포함될 수도 있다.
또한, 증명서를 생성하는 단계 (d)에서, 증명서를 소스에 전송하기 전에, 증명서를 라이선스에 포함된 키를 이용하여 암호화할 수 있다. 이 경우에, 라이선스 발행자 및 허가된 제3자만이 증명서를 복호할 수 있다. 또한, 소스가 증명서를 복호할 수 있는 경우, 그 소스가 허가된 상대인 것으로 간주될 수 있으므로, 소스가 보안 컨테이너에 대하여 자체를 검증할 필요가 없다.
또한, 증명서를 소스에 전송하는 단계 (d)에서, 증명서를, 라이선스에 포함된 부가적인 데이터와 함께 소스에 전송할 수 있다. 이에 따라서, 전자 티켓을 실현할 수 있다.
또한, 라이선스에 포함된 부가 데이터가 첨부된 증명서를 소스에 전송하기 전에, 증명서 또는 부가 데이터, 또는 모두를, 라이선스에 포함된 키(세션 키)를 이용하여 암호화할 수 있다. 이에 따라서, 전자 티켓을 실현할 수 있다.
또한, 명령 세트에, 라이선스에 포함된 어느 데이터를, 증명서에 부가해야 할 것인가를 나타내는 정보를 포함시킬 수 있다. 이에 따라서, 증명서의 생성을 관리하는 제어 명령에, 라이선스에 포함된 어느 데이터를 증명서에 부가해야 할 것인가를 나타내는 정보를 포함시킬 수 있게 되어서, 콘텐츠의 유효 기간 및 유효 지역 코드 등, 라이선스에 포함되는 특정 메타데이터를 증명서에 첨부할 수 있다.
또한, 명령 세트에, 랜덤 데이터를 포함시킬 수 있다. 더욱 상세하게는, 랜덤 데이터를 증명서에 추가한 후, 증명서를 암호화한다. 이것에 대한 이점은 암호화된 랜덤화 증명서를 랜덤 데이터인 것 같이 작성하여, 이전에 전송된 다른 라이선스 증명과의 명백한 상관성을 제거할 수 있는 점이다.
이어서, 본 발명의 제1실시형태에 의한 보안 컨테이너에서의, 라이선스 상태 정보의 변경 방법의 일례를, 도 11a, 도 11b 및 도 12를 이용하여 설명한다. 라이선스 상태 정보는, 필요하면 라이선스에 할당되거나, 라이선스 내에 포함된다. 라이선스 상태 정보를 변경하기 위해서는, 우선, 소스와 보안 컨테이너 간에 상호 인증으로써 보안 채널을 설정한다. 이어서, 소스로부터 보안 컨테이너에, 라이선스 상태 정보의 변경 요구가 전송되고, 보안 컨테이너는 수신한 요구를 처리한다. 라이선스 상태 정보의 변경이 성공적이면, 보안 컨테이너는, 변경된 증명서를 소스에 전송한다. 소스는, 이 증명서를 이용하여, 요구한 변경 결과를 검증할 수 있다. 보안 컨테이너는 싱크 내에 있는 것으로 되어 있는 것을 염두에 두어야 한다.
도 11a에 나타내는 바와 같이, 라이선스 상태 정보의 변경 처리는, 다음 7개의 단계로 구성되어 있다. 즉, (a) 소스와 싱크에 의한 상호 인증 단계와, (b) 소스와 싱크 간에 보안 데이터 채널을 설정하는 단계와, (c) 라이선스 상태 정보를 변경하는 요구와 챌린지를 싱크에 전송하는 단계와, (d) 싱크가 요구된 변경을 라이선스에 적용하는 단계와, (e) 소스가 챌린지와 라이선스 데이터를 이용하여 고유한 증명서를 생성하는 단계와, (f) 생성한 고유한 증명서를 소스에 전송하는 단계와, (g) 소스가, 수신한 증명을 검증하는 단계이다.
도 11b는 본 발명의 제1실시형태에 의한 보안 컨테이너에 의해서 실행되는, 라이선스의 증명을 생성하고, 또한 그 라이선스를 변경하는 처리를 개략적으로 나타내고 있다. 세션 매니저(502)는, 라이선스의 증명을 요구하는 세션에서 소스(510)로부터 챌린지를 수신하고, 라이선스의 증명을 생성하는 처리를 실행하고, 라이선스를 변경하는 처리(2101)를 실행하여, 생성한 증명서(2105)를 출력한다. 이 라이선스의 증명을 생성하고 또한 라이선스를 변경하는 처리부(2101)는, 라이선스의 상태 정보를 변경하는 처리부(2102)와, 증명서를 생성하는 처리부(2103)와, 데이터를 추가하는 처리부(2104)로 구성되어 있다. 라이선스 상태 정보의 변경 요구와 챌린지를 세션 매니저(502)에 전송하고, 라이선스 관리 엔진(506)으로부터 라이선스를 취득한 후, 수신한 변경 요구에 따라서 라이선스 데이터를 변경한다. 라이선스 관리 엔진(506)에 저장되어 있는 라이선스를, 이 변경된 라이선스로 갱신하고, 이 챌린지를 이용하여 증명서를 작성한다. 이어서, 사용 규칙 적용부(505)로부터의 관련되는 사용 규칙을 적용하여, 요구가 있으면, 라이선스로부터의 데이터나, 메타데이터를 증명서에 추가한다. 또한, 필요하면, 암호화부(2106)가 새롭게 생성된 증명서를 세션 키를 이용하여 암호화하여, 이 증명서(2105)를 출력한다. 또한, 사용 규칙은 출력 데이터 패킷(증명서(2105)를 나타냄)에도 적용되는 것을 유념해야 한다.
도 12는, 본 발명의 제1실시형태에 의한 보안 컨테이너에 의해서 실행되는, 라이선스를 변경하고, 또한 라이선스의 증명을 생성하는 처리의 일례를 나타내는 플로차트이다. 우선, 세션 매니저(502)가 라이선스 상태 정보의 변경 요구와, 라이선스의 증명 요구를 소스로부터 수신하고, 처리를 시작한다.
라이선스 관리 엔진(506)은, 대응하는 라이선스를 메모리(504)(라이선스 풀)로부터 판독하고, 취득한 라이선스 데이터를 사용 규칙 적용부(505)에 전송한다. 사용 규칙 적용부(505)는, 수신한 라이선스 데이터에 따라서 사용 규칙을 결정하고, 이 사용 규칙을 적용하여, 챌린지가 유효한가 아닌가를 판정한다(2201).
챌린지(요구)가 무효인 경우(2201이 No), 처리를 종료한다. 또한, 대응하는 라이선스가 메모리(504)에 저장되어 있지 않은 경우, 요구가 무효인 것으로 판정하여, 처리를 종료한다. 한편, 요구가 유효한 경우(2201이 Yes), 라이선스 관리 엔진(506)은 수신한 라이선스 상태 정보의 변경의 요구에 따라서, 라이선스의 상태 정보를 변경하고(2202), 메모리(504)(라이선스 풀)에 저장되어 있는 라이선스를 변경된 라이선스로 갱신한다(2203).
이어서, 암호화 엔진(507)은, 라이선스와 챌린지를 이용하여, 증명서를 생성한다(2204).
또한, 사용 규칙 적용부(505)는, 사용 규칙을 적용하여, 증명서에 부가적인 데이터를 추가해야 하는가를 판정한다(2205). 부가적인 데이터가 필요한 경우(2205가 Yes), 라이선스 관리 엔진(506)은, 라이선스로부터 부가되는 데이터를 추출하고, 증명서에 데이터를 추가한다(2206). 부가 데이터를 추가할 필요가 없는 경우(2205가 No), 데이터를 추가하지 않는다.
사용 규칙 적용부(505)는, 사용 규칙을 적용하여, 증명서의 암호화가 필요한가 아닌가의 여부를 판정한다(2207). 암호화가 필요한 경우(2207이 Yes), 암호화 엔진(507)은, 세션 키를 이용하여 증명서를 암호화한다(2208). 최종적으로, 세션 매니저(502)는, 생성한 증명서를 I/O 포트(501)를 통하여 소스(510)에 전송한다.
라이선스 상태의 변경이 필요한 예로서는, 연간 회비를 지불함으로써 라이선스의 유효성을 연장하는 연간 라이선스 및 회원제 서비스가 있다. 구체적인 예로서, 소프트웨어 라이선스 및 온라인 잡지의 구독이 있다. 예로서, 복수의 전자 티켓에 관한 다른 예로서, 특정 기간 내에 10회 이용할 수 있는 열차 티켓에의 적용이 있다. 이 경우, 티켓을 사용할 때마다 나머지 이용 회수를 감소시키고, 또한 유효 기간이 만료되면 티켓을 무효로 하도록 라이선스 상태를 변경한다.
이 방법의 이점은, 라이선스 상태 정보를 변경함으로써, 쌍방향, 또는 복수의 전자 티켓을 실현하는 능력과, 라이선스에 의해서 부여되는 디지털 데이터의 사용을 제한하는 능력이 있는 점이다. 이하에 이러한 이점을 추가로 설명한다.
라이선스의 변경을 허가하는 시스템에서는, 라이선스 변경이 시스템에 의해서 관리되지 않을 가능성이 높아져서, 보안 관련 위험이 증가한다. 그러나, 라이선스에 1개 이상의 변경할 수 있는 값을 포함시키고, 또한 라이선스의 변경 방법 및 유효한 변경 범위를 사용 규칙에 정의함으로써, 이러한 보안 관련 위험을 감소시키고, 라이선스를 안전하게 변경할 수 있다.
라이선스의 상태의 일례로서 왕복 티켓을 들 수 있고, 이 경우, 왕로(往路) 부분이 하나의 라이선스 상태이고, 귀로(歸路) 부분이 두 번째의 상태이다. 왕복 티켓은, 귀로 부분을 사용하면 자동적으로 무효로 된다. 라이선스 상태만의 변경을 허가하는 경우, 콘텐츠를 복호화하는 키를 보호함으로써, 보안성을 향상시킬 수 있다. 다른 예로서는, 영화 콘텐츠를 재생할 수 있는 횟수 및 기간을 상태로서 정의하는 라이선스가 있다. 디지털 데이터를 영화 콘텐츠에 이용하면, 라이선스 상태 정보는 정의된 상태가 될 때까지 갱신된다. 재생 횟수 및 시간이 정의된 상태에 도달하면, 라이선스는 무효로 되어서, 디지털 데이터를 더 이상 이용할 수 없다.
또한, 디피-헬만 키 협정 프로토콜을 이용하여 보안 컨테이너와 싱크 간의 보안 접속(b)을 설정함으로써, 통상의 공개된 방법을 이용하여 보안 접속을 설정할 수 있다.
또한, 보안 컨테이너와 싱크 간의 보안 접속(b)을 CPRM을 이용하여 설정할 수 있다. CPRM을 이용함으로써, SD 카드를 포함하는, CPRM에 대응하는 모든 환경에서 이 시스템을 이용할 수 있다.
또한, 증명서를 생성하는 단계 (e)는, 명령 세트에 의해서 제어된다. 이에 따라서, 증명서의 생성을 관리하는 제어 명령은, 증명서의 생성 방법에 영향을 줄 수 있게 되어서, 라이선스 발행자가 증명서의 생성 방법을 제어할 수 있다.
또한, 증명서를 생성하는 단계 (e)에서, 일방향 해시 함수를 이용할 수 있고, 이에 따라서, 암호화된 보안 증명서를 생성할 수 있게 된다.
또한, 증명서를 생성하는 단계 (e)에서, 챌린지와 증명서를, 소스로부터의 공개 키를 이용하여 암호화할 수 있다. 이것에 대한 이점은, 소스와 보안 컨테이너 간의 접속을 보안성있게 할 필요가 없는 점이다. 이 경우, 보안은 공개 키 암호화 방법에 의해서 실현된다. 또한, 이 경우, 소스의 공개 키는, 라이선스에 포함될 수도 있다.
또한, 증명서를 생성하는 단계 (e)에서, 증명서를 소스에 전송하기 전에, 증명서를 라이선스에 포함된 키를 이용하여 암호화할 수 있다. 이 경우에, 라이선스 발행자 및 허가된 제3자만이 증명서를 복호할 수 있다. 또한, 소스가 증명서를 복호할 수 있는 경우, 그 소스가 허가된 상대인 것으로 간주될 수 있으므로, 소스가 보안 컨테이너에 대하여 자체를 검증할 필요가 없다.
또한, 증명서를 소스에 전송하는 단계 (e)에서, 증명서를, 라이선스에 포함된 부가적인 데이터와 함께 소스에 전송할 수 있다. 이에 따라서, 전자 티켓을 실현할 수 있다.
또한, 라이선스에 포함된 부가 데이터가 첨부된 증명서를 소스에 전송하기 전에, 증명서 또는 부가 데이터, 또는 모두를, 라이선스에 포함된 키(세션 키)를 이용하여 암호화할 수 있다. 이에 따라서, 전자 티켓을 실현할 수 있다.
또한, 명령 세트에, 라이선스에 포함된 어느 데이터를, 증명서에 부가해야 할 것인가를 나타내는 정보를 포함시킬 수 있다. 이에 따라서, 라이선스에 포함되는 특정 메타데이터를 증명서에 추가할 수 있다.
또한, 명령 세트에, 랜덤 데이터를 포함시킬 수 있다. 더욱 상세하게는, 랜덤 데이터를 증명서에 추가한 후, 증명서를 암호화한다. 이것에 대한 이점은 암호화된 랜덤화 증명서를 랜덤 데이터인 것 같이 작성하여, 이전에 전송된 다른 라이선스 증명과의 명백한 상관성을 제거할 수 있는 점이다.
도 15는 본 발명의 제1실시형태에 의한 시스템의 개략도이다. 이 시스템은, 서버이고 또한 이하 서버라고 부르는 콘텐츠 제공자(300)와, DRM(Digital Right Management) 단말(308)을 구비한 클라이언트(318)의, 최소한 2개의 구성 요소로 구성되어 있다. 또한, 서버로부터 수신하는 콘텐츠를 저장하는 PC(319)를 구비할 수도 있다. 서버(300)와 클라이언트(318)는 네트워크를 통하여 접속할 수 있고, 클라이언트(318)는 서버(300)로부터 네트워크를 통하여 취득한 콘텐츠를 저장하고 재생하는 처리를 실행하는 장치이다. 서버(300)의 콘텐츠 기억 장치(301)로부터 콘텐츠를 취득하는 경우, 서버(300)는, 콘텐츠에 링크된 라이선스(키)(303)를 이용하여 배신 대상인 콘텐츠를 암호화한다(302). 이 라이선스(303)는, DRM 단말(308)과 서버(300) 간의 세션에서 정의되는 세션 키(304)를 이용하여 암호화된 후(305), 이 암호화된 라이선스가 DRM 단말(308)에 전송된다. DRM 단말(308)은, 암호화된 라이선스를 수신하고, 이 라이선스를 세션 키(311)를 이용하여 복호화하고(309), 복호화된 라이선스를 라이선스 기억 장치(310)에 저장한다. 이 예에서, 라이선스를 세션 키를 이용하여 복호화하지만, 암호화된 라이선스를 라이선스 기억 장치(310)에 저장할 수도 있는 것을 염두에 두어야 한다.
서버(300)로부터 취득한 콘텐츠는 클라이언트(318)의 콘텐츠 기억 장치(317)에 저장된다. 또한, 콘텐츠는 PC(319)의 콘텐츠 기억 장치(307)에 저장될 수도 있는 것을 유념해야 한다. 서버(300)로부터 취득한 이 콘텐츠를 재생하기 위해서는, 재생 대상인 콘텐츠를 DRM 단말(308)에 전송하고, 이어서, 이 콘텐츠를 라이선스 기억 장치(310)에 저장한 관련되는 라이선스를 이용하여 복호화한다(312). 또한, 복호화 이후에 콘텐츠를 재암호화하는 트랜스코딩(312)을 적용할 수 있다. 이 트랜스코딩에, DRM 단말(308)과 클라이언트(318) 간의 세션에서 정의되는 세션 키(313)를 이용한다. 클라이언트(318)는, DRM 단말(308)로부터 콘텐츠를 취득하여, 필요에 따라서 세션 키(314)를 이용하여 콘텐츠를 복호화하고, 취득한 콘텐츠를 재생하는 등, 복호화한 콘텐츠를 매체에 출력한다.
라이선스(301)는, 사용 규칙 또는 암호화 부분을 포함하고 있다. 라이선스 키(302)는 라이선스(301)의 암호화에 관련되는 일부이고, 라이선스 내에 1개 이상의 라이선스 키를 포함시킬 수도 있다.
클라이언트(318)는 최종 사용자의 장치 또는 콘텐츠를 취득하기 위한 다른 기타의 장치이다. DRM 단말(308)은, 클라이언트(318)에 설치되는 DRM 시스템으로서, 클라이언트(318)에 고정될 수도 있고, 또는 탈착할 수도 있다. DRM 시스템을 포함하는 메모리 카드가 탈착할 수 있는 구성의 일례이다.
세션 키는 보안 접속을 보증하기 위하여 암호화와 복호화에 이용되는 일시적인 키이다. 세션 키는, 통신 접속인 세션이 설정되어 있는 기간과 장소에 대해서만 유효하다.
도 16은 본 발명의 제1실시형태에 의한 다른 시스템의 개략도이다. 이 시스템은, 서버이고 또한 이하 서버라고 부르는 콘텐츠 제공자(300)와, DRM 단말(308)을 구비한 클라이언트(318)와, 외부 기억 매체(400)의, 최소한 3개의 구성 요소로 구성되어 있다. 이 시스템은, 도 15에 나타낸 시스템과 기본적으로 동일하지만, 콘텐츠 데이터가 외부 기억 매체(400)(또는 외부 기억 장치)에만 저장되는 것이 상이하다. 서버(300)로부터 취득한 콘텐츠를 재생하기 위해서는, 재생 대상인 콘텐츠를 외부 기억 매체(400)로부터 클라이언트(318)의 DRM 단말(308)에 전송하고, 라이선스 기억 장치(310)에 저장한 관련되는 라이선스를 이용하여 복호화한다(312).
또한, 복호화 이후에 콘텐츠를 재암호화하는 트랜스코딩(312)을 이용할 수도 있다. 이 트랜스코딩에, DRM 단말(308)과 클라이언트(318) 간의 세션에서 정의되는 세션 키(313)를 이용한다. 클라이언트(318)는, DRM 단말(308)로부터 콘텐츠를 취득하여, 필요에 따라서 세션 키(314)를 이용하여 콘텐츠를 복호화하고, 취득한 콘텐츠를 재생하는 등, 복호화한 콘텐츠를 매체에 출력한다.
예로서, 사용자는 카드형 시스템을 이용하여, 온라인으로 라이선스를 구입할 수 있다. 구입을 위한 인증이 완료되면, 시스템은 라이선스 발행자(서버(300))와의 보안 접속을 설정한다. 이어서, 요구된 라이선스 데이터를 암호화하여, 시스템에 전송한다. 이어서, 시스템은 암호화된 라이선스 데이터를 복호하고(309), 그것이 유효한 것인가를 확인한 후, 라이선스 데이터를 라이선스 기억 장치(310)에 저장한다. 명령 세트, 즉, 사용 규칙이, 라이선스를 암호화한 상태로 저장하는 것을 나타내는 경우는, 시스템에 내장된 장치의 고유한 비밀 키를 사용하여 라이선스를 암호화한 후, 암호화된 데이터를 라이선스 기억 장치(310)에 저장한다.
사용자가, 예로서 오디오 콘텐츠를 재생하기를 원하는 경우, DRM 단말(308)은, 우선 인증을 실행하고, 인증이 성공적이면, 사용자의 클라이언트 재생 장치(클라이언트(318))와의 보안 접속을 설정하고, 세션 키(313, 314)를 준비한다. 세션 키(313, 314)가 발행되면, 필요로 하는 콘텐츠가 DRM 단말(308)에 전송된다. 콘텐츠는 라이선스에 포함된 키를 이용하여 복호화(312)되고, 세션 키를 이용하여 재암호화(312)된 후, 클라이언트 재생 장치(클라이언트(318))에 전송된다. DRM 단말(308)로부터 클라이언트(318)에 전송된 콘텐츠는, 소정의 세션 키(314)를 사용하여 복호되고, 클라이언트 데이터 경로(315)가 처리된 후, 클라이언트(318)의 매체 출력(316)에 전송된다.
라이선스가 부여된 콘텐츠를 새로운 라이선스에 관련시켜서 재암호화할 필요가 있는 경우, 콘텐츠는, 우선, 클라이언트(318)로부터 DRM 단말(308)에 전송되어서, 기존의 라이선스를 이용하여 복호된 다음, 새로이 발행된 라이선스를 이용하여 재암호화된 후, 클라이언트(318)에 반송된다. 이 경우, 콘텐츠 재암호화 처리는 원래의 라이선스에 관련된 명령 세트(사용 규칙)를 이용하여 제어하고 검증한다.
전자 티켓 서비스의 일부로서, 예로서, 권리 보유자가 DRM 시스템에 라이선스의 증명을 발행할 것을 요구하는 경우, 본 발명에서는, 라이선스를 보유하고 있는 것을 증명하는 데에 필요한 것 이상의 더 많은 데이터를 클라이언트에 전송할 필요가 없다. 클라이언트 또는 권리 보유자가 DRM 시스템과의 인증에 성공하면, 양자 간에 보안 접속이 설정되고, 세션 키가 생성된다. 권리 보유자 또는 클라이언트가 DRM 시스템에 증명을 요구하면, DRM 시스템은 증명서를 작성한다. 이 증명서에는 선택적인 데이터를 포함시킬 수 있다. 라이선스에 부가된 제어 명령 세트, 즉, 사용 규칙이, 라이선스의 존재를 증명할 수 있으면, 증명서의 생성에 영향을 줄 수도 있다. 예로서, 제어 명령 세트는, 각각의 증명서 요구에 대하여 상이한 증명서를 발행하거나, 또는 증명서를 랜덤하게 할 것을 요구할 수 있으므로, 증명서의 생성에 영향을 줄 수 있다.
권리 보유자가, 복수의 전자 티켓을 요구하는 등, 라이선스 상태의 변경을 요구하는 경우, 그 요구된 변경의 제어 명령이 라이선스의 증명 요구에 포함된다. 이 제어 명령에는, 라이선스 상태에 어떠한 변경을 가해야 할 것인가가 정의되어 있다. DRM 시스템은 요구된 변경을 실행하고, 갱신된 규칙 데이터가 추가된 라이선스 증명서를, 증명서 요구 당사자에게 전송한다.
(제2실시형태)
도 2는, 본 발명의 제2실시형태에 의한 보안 컨테이너의 구성을 나타내는 기능 블록도이다.
보안 컨테이너(600)는, I/O 포트(501)와, 세션 매니저(502)와, 라이선스 관리 엔진(506)과, 사용 규칙 적용부(505)와, 암호화 엔진(507)과, 메모리 관리부(503)와, 메모리(504)를 구비하고 있는 것이 제1실시형태에 의한 보안 컨테이너와 동일하지만, 장치-의존 키 메모리(601)와, 로그(log) 관리 엔진(602)을 추가로 구비하고 있는 것이 상이하다.
이하에, 본 발명의 제2실시형태의 추가된 구성 요소에 대하여 설명한다.
장치-의존 키 메모리(601)는, 암호화와 복호화를 위한, 각각의 클라이언트 시스템 고유의, 1개만이 아닌 복수 개의 키를 저장할 수 있다. 암호화 엔진(507)이, 공통 키 암호화 알고리즘을 이용하여 라이선스 데이터를 암호화하고 복호화할 때에, 이 장치-의존 키 메모리(601)로부터의 장치-의존 키를 사용한다. 장치-의존 키(601)는, 각각의 장치에 대하여 고유한 것으로서, 하드 코드되어 있거나(hard-coded) 또는 장치에 미리 저장되어 있다. 장치-의존 키가 사용자 정보를 참조하지 않는 경우, 익명(匿名)인 것으로 간주된다. 라이선스가 익명으로 저장되어 있는 경우, 장치-의존 키 또는 내장된 키가 이용된다.
로그 관리 엔진(602)은, 보안 컨테이너에 의해서 처리된 라이선스 상태의 변경을 로그 데이터로서 기록하고 저장한다. 세션 동안의 통신 트랜잭션으로부터의 로그 데이터와, 암호화 엔진(507)에 의해서 실행되는 암호화 및 복호화 처리와, 기타 보안에 관련된 처리를, 세션 매니저(502)로부터 수신하여, 로그 정보로서 기록하고 저장한다.
이에 따라서, 시스템 고유의 키를 이용하여 콘텐츠를 암호화할 수 있게 되어서, 데이터의 도청 및 개찬에 대한 보호를 더욱 강화할 수 있다. 또한, 보안 컨테이너 또는 그 보안 컨테이너에 저장되어 있는 디지털 라이선스 데이터가 개찬되거나 남용된 경우, 시스템 제작자나 허가된 제3자가 그것을 인식할 수 있다.
이하에, 본 발명의 제2실시형태에 의한 보안 컨테이너의, 라이선스를 저장하는 방법의 일례를, 도 13a, 도 13b 및 도 14를 이용하여 설명한다. 보안 컨테이너와 소스에 의한 상호 인증이 성공하면, 보안 채널이 설정된다. 이 보안 채널을 통하여 수신한 라이선스 데이터는, 보안 컨테이너 내의 내부 메모리에 저장된다. 또한, 보안 컨테이너는, 싱크 내에 있는 것으로 되어 있다.
도 13a에 나타내는 바와 같이, 라이선스를 저장하는 처리는, 다음 4개의 단계로 구성되어 있다. 즉, (a) 소스와 싱크에 의한 상호 인증 단계와, (b) 소스와 싱크 간에 보안 데이터 채널을 설정하는 단계와, (c) 라이선스를 보안 데이터 채널을 통하여 소스로부터 싱크에 전송하는 단계와, (d) 라이선스를 싱크에 저장하는 단계이다.
도 13b는 본 발명의 제2실시형태에 의한 보안 컨테이너의, 라이선스를 저장하는 처리를 개략적으로 나타내고 있다. 세션 매니저(502)는, 암호화된 라이선스를 수신하고, 라이선스를 저장하는 처리(2402)를 실행한다. 라이선스를 라이선스 관리 엔진(506)과 메모리 관리부(503)를 통하여 메모리(504)에 저장한다. 이 라이선스를 저장하는 처리(2404)는, 복호화(2403)와 암호화(2404)로 구성되어 있다.
소스(510)로부터 전송된 암호화된 라이선스(2401)는 세션 매니저(502)에 입력된다. 세션 키 생성부(910)는 소스(510)와의 세션에 따라서 세션 키를 생성하고, 이 세션 키를 이용하여 암호화된 라이선스가 복호화된다. 암호화된 콘텐츠는 또한 사용 규칙을 포함하고, 이 사용 규칙을 적용한다. 이어서, 필요하면, 복호화된 라이선스를 재암호화한다. 재암호화에는, 장치-의존 키 메모리(601)로부터의 장치-의존 키를 이용한다. 복호화 또는 재암호화된 라이선스를 라이선스 풀(도시되어 있지 않음)에 저장한다.
도 14는, 본 발명의 제2실시형태에 의한 보안 컨테이너의, 라이선스를 저장하는 처리의 일례를 나타내는 플로차트이다. 우선, 세션 매니저(502)가 I/O 포트(501)를 통하여 소스(510)로부터 암호화된 라이선스를 수신하고, 처리를 시작한다. 수신한 라이선스는 상이한 경로(매일 등)를 통하여 소스(510)로부터 전송된 사용자의 비밀 키(고유 ID)를 이용하여 복호화하거나, 또는 장치-의존 키(익명의)를 이용하여 복호화할 수 있다.
라이선스 관리 엔진(506)은, 수신한 라이선스가 고유하게 확인할 수 있는 것인가, 즉, 고유 ID(Identification)를 구비한 것인가를 판단한다(2501). 라이선스가 고유하게 확인할 수 있는 것인 경우(2501이 "고유 ID"), 암호화 엔진(507)은 대응하는 ID를 갖는 사용자의 비밀 키를 이용하여 라이선스를 복호화한다(2502). 라이선스가 익명인 경우(2501이 "익명"), 암호화 엔진(507)은 장치-의존 비밀 키(장치-의존 키(601))를 이용하여 라이선스를 복호화한다(2503). 라이선스 관리 엔진(506)은, 복호화한 라이선스가 유효한가 아닌가의 여부를 판단하고(2504), 라이선스가 유효하지 않은 경우(2504가 No), 처리를 종료한다.
라이선스 관리 엔진(506)은 복호화한 라이선스를 사용 규칙 적용부(505)에 전송한다. 사용 규칙 적용부(505)는, 수신한 라이선스에 따라서 사용 규칙을 결정하고, 이 결정한 사용 규칙을 적용하여, 라이선스의 암호화가 필요한가 아닌가를 판정한다(2505).
라이선스의 암호화가 필요한 경우(2505가 Yes), 암호화 엔진(507)은 복호화된 라이선스를 장치-의존 비밀 키(장치-의존 키(601))를 이용하여 암호화한다(2506). 암호화가 필요하지 않은 경우(2505가 No), 암호화는 실행하지 않는다. 라이선스 관리 엔진(506)은, 복호화된 라이선스 또는 재암호화된 라이선스를, 메모리(504)(라이선스 풀)에 저장한다(2507).
고유한 ID의 라이선스는, 사용자의 비밀 키로써 암호화되어 있는 라이선스이며, 라이선스 풀(라이선스 관리 엔진)에 저장된다. 사용자의 비밀 키는, 패스워드 등 사용자에 관련되는 정보를 포함하고, 또한 시스템 사용자에 속하는 정보로서 등록되어 있다. 그러나, 암호화에 이용되는 사용자의 비밀 키는 공개되지 않고, 사용일지라도, 시스템에 저장되어 있는 키 이외는 복사물을 취득할 수 없다. 이 비밀 키는, 콘텐츠 제공자, 시스템 제조자, 또는 인가된 제3자에 의해서 제공되거나, 장치 내부에서 생성된다.
또한, 암호화에 이용하는 키와 복호화에 이용하는 키가 상이한 공개 키 암호를 이용할 수도 있다. 공개 키를 이용하는 경우, 암호화에 이용하는 공개 키는 장치에 의해서 제공된다. 그러나, 암호화 키에 관련되는 복호화 키는, 암호화 키만을 이용해서는, 언제든지 필요한 시간에 계산할 수는 없다.
따라서, 라이선스를 보안 컨테이너에 저장하는 경우에, 라이선스 데이터가 보안 데이터 채널을 통하여 소스로부터 싱크에 전송되어서, 싱크의 메모리에 저장된다. 라이선스 데이터는 결코 평문으로 공개되는 일은 없다.
또한, 디피-헬만 키 협정 프로토콜을 이용하여 보안 컨테이너와 싱크 간의 보안 접속을 설정함으로써, 통상의 공개된 방법을 이용하여 보안 접속을 설정할 수 있다.
또한, 보안 컨테이너와 싱크 간의 보안 접속을 CPRM을 이용하여 설정할 수 있다. CPRM을 이용함으로써, SD 카드를 포함하는, CPRM에 대응하는 모든 환경에서 이 시스템을 이용할 수 있다.
라이선스를 저장하는 다른 방법은, (a) 소스와 싱크에 의한 상호 인증 단계와, (b) 싱크에 관련된 공개 키를 소스에 전송하는 단계와, (c) 싱크에 관련된 공개 키를 이용하여 암호화된 라이선스를 소스로부터 싱크에 전송하는 단계와, (d) 싱크가 라이선스를 싱크에 관련된 비밀 키를 이용하여 복호화하는 단계로 구성되어 있다. 이 경우, 보안 컨테이너와 소스는 상호 인증을 실행하고, 인증에 성공하면, 장치에 관련된 공개 키가 소스에 전송된다. 소스는, 수신한 공개 키를 사용하여 라이선스 데이터를 암호화하여, 암호화된 데이터를 보안 컨테이너에 전송한다. 이어서, 보안 컨테이너는 수신한 데이터를 내부 메모리에 저장한다.
또한, 상기 실시형태를 조합하여 이용할 수도 있다.
따라서, 라이선스를 보안 컨테이너에 저장하는 경우, 라이선스 데이터가 소스로부터 싱크에 보안성있게 전송되어서, 싱크의 메모리에 안전하게 저장된다. 라이선스 데이터는 결코 평문으로 공개되는 일은 없다.
이상으로부터, 라이선스를 보안 컨테이너에 보존할 때에, 라이선스 데이터는 소스로부터 싱크에 보안성있게 전송되어, 싱크의 메모리에 보안성있게 보존된다. 라이선스 데이터는 결단코 평문으로 공개되는 일은 없다.
(발명의 유리한 효과)
따라서, 본 발명에 의해서, 합법적으로 취득한 콘텐츠를, 전용 재생 하드웨어 또는 고유한 ID를 갖는 호환성있는 PC 하드웨어를 이용하는 것에 한정되지 않고, 자유롭게 재생할 수 있으며, 또한 디지털 라이선스 데이터를 보안성있게 저장하고 송신하기 위한 암호화 알고리즘 및 프로토콜을 제공함으로써, 라이선스 데이터의 안전한 관리를 보증할 수 있다.
또한, 시스템 고유의 키를 콘텐츠의 암호화에 이용할 수 있게 되어서, 데이터의 도청 및 개찬에 대한 보호를 더욱 강화할 수 있다. 또한, 시스템 제작자나 허가된 제3자가, 보안 컨테이너 또는 그 보안 컨테이너에 저장되어 있는 디지털 라이선스 데이터가 개찬되거나 남용된 것을 인식할 수 있다.
또한, 본 발명은, 온라인 및 오프라인에서도 모든 형태의 매체 배신에 이용될 수 있고, 어떠한 특정한 플랫폼이나 매체 형태에 한정되지 않는다. 디지털 콘텐츠 및 매체 권리 보호에 추가하여, 본 발명을 소프트웨어, 프로그램 배신, 및 라이선스 형태의 보호 방법에도 적용할 수 있다.
본 발명을 데이터 보호 관리 장치 및 데이터 보호 관리 방법에 이용할 수 있다.

Claims (20)

  1. 송신측과 수신측간의 라이선스와 암호화된 콘텐츠의 데이터 통신을 가능하게 하고, 상기 통신 데이터를 보호하고 관리하는 데이터 보호 관리 시스템으로서,
    송신측으로부터 라이선스와 암호화된 콘텐츠를 취득하는 처리를 실행하는 세션 매니저와,
    상기 세션 매니저가 취득한 라이선스를 저장하고 관리하는 라이선스 관리 엔진과,
    상기 라이선스를 저장하는 메모리를 구비하고,
    상기 세션 매니저는, 라이선스의 증명(proof) 요구인 챌린지(challenge)를 수신하면, 라이선스를 검증하는 증명서(certificate)를 생성하고, 생성한 증명서를 수신측에 전송하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  2. 제1항에 있어서, 상기 라이선스에 관련된 사용 규칙을 결정하고, 상기 사용 규칙을 상기 라이선스와 콘텐츠의 최소한 하나의 처리에 적용하는 사용 규칙 적용부를 추가로 포함하는 데이터 보호 관리 시스템.
  3. 제1항에 있어서, 세션 매니저는 증명서를 암호화하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  4. 제1항에 있어서, 세션 매니저는 라이선스로부터의 선택 항목을 증명서에 추가하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  5. 제4항에 있어서, 선택 항목 데이터를 라이선스에 포함된 키를 이용하여 암호화하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  6. 제2항에 있어서, 사용자 규칙은, 라이선스에 따라서, 증명서에 부가되는 데이터를 결정하는 정보를 포함하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  7. 제1항에 있어서, 세션 매니저는, 송신측으로부터 라이선스 변경을 수신하면, 라이선스 관리 엔진으로부터 변경전의 라이선스를 판독하여, 라이선스를 변경하고, 변경된 라이선스를 라이선스 관리 엔진에 저장하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  8. 제1항에 있어서, 세션 매니저는 키를 이용하여 콘텐츠를 복호화하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  9. 제1항에 있어서, 세션 매니저는 복호화된 콘텐츠를 재암호화하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  10. 제9항에 있어서, 송신측으로부터의 정보에 따라서 재암호화에 이용되는 키를 생성하는 것을 특징으로 하는 데이터 보호 관리 시스템.
  11. 송신측과 수신측간의 라이선스와 암호화된 콘텐츠의 데이터 통신을 가능하게 하고, 상기 통신 데이터를 보호하고 관리하는 데이터 보호 관리 방법으로서,
    송신측으로부터 라이선스와 암호화된 콘텐츠를 취득하는 처리를 실행하는 세션 단계와,
    상기 세션 매니저[sic]가 취득한 라이선스를 저장하고 관리하는 단계와,
    상기 암호화된 콘텐츠를 복호화하는 데에 필요한 키를 저장하는 단계와,
    상기 라이선스를 저장하는 단계를 포함하고,
    상기 세션 단계에서는, 라이선스의 증명 요구인 챌린지를 수신하면, 라이선스를 검증하는 증명서를 생성하고, 생성한 증명서를 수신측에 전송하는 것을 특징으로 하는 데이터 보호 관리 방법.
  12. 제11항에 있어서, 상기 라이선스에 관련된 사용 규칙을 결정하는 단계와, 상기 사용 규칙을 상기 라이선스와 콘텐츠의 최소한 하나의 처리에 적용하는 단계를 추가로 포함하는 데이터 보호 관리 방법.
  13. 제11항에 있어서, 상기 세션 단계에서는 증명서를 암호화하는 것을 특징으로 하는 데이터 보호 관리 방법.
  14. 제11항에 있어서, 상기 세션 단계에서는 라이선스로부터의 선택 항목을 증명서에 추가하는 것을 특징으로 하는 데이터 보호 관리 방법.
  15. 제14항에 있어서, 선택 항목 데이터를 라이선스에 포함된 키를 이용하여 암호화하는 것을 특징으로 하는 데이터 보호 관리 방법.
  16. 제12항에 있어서, 사용자 규칙은, 라이선스에 따라서, 증명서에 부가되는 데이터를 결정하는 정보를 포함하는 것을 특징으로 하는 데이터 보호 관리 방법.
  17. 제11항에 있어서, 세션 단계는, 송신측으로부터 라이선스 변경을 수신하면, 라이선스 관리 엔진으로부터 변경전의 라이선스를 판독하는 단계와, 라이선스를 변경하는 단계와, 변경된 라이선스를 라이선스 관리 엔진부에 저장하는 단계를 포함하는 것을 특징으로 하는 데이터 보호 관리 방법.
  18. 제11항에 있어서, 세션 단계에서는 키를 이용하여 콘텐츠를 복호화하는 것을 특징으로 하는 데이터 보호 관리 방법.
  19. 제18항에 있어서, 세션 단계에서는 복호화된 콘텐츠를 재암호화하는 것을 특징으로 하는 데이터 보호 관리 방법.
  20. 제19항에 있어서, 송신측으로부터의 정보에 따라서 재암호화에 이용되는 키를 생성하는 단계를 추가로 포함하는 것을 특징으로 하는 데이터 보호 관리 방법.
KR1020057017281A 2003-03-24 2004-03-23 데이터 보호 관리 장치 및 데이터 보호 관리 방법 KR20050123105A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003080266 2003-03-24
JPJP-P-2003-00080266 2003-03-24

Publications (1)

Publication Number Publication Date
KR20050123105A true KR20050123105A (ko) 2005-12-29

Family

ID=33094864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057017281A KR20050123105A (ko) 2003-03-24 2004-03-23 데이터 보호 관리 장치 및 데이터 보호 관리 방법

Country Status (5)

Country Link
US (1) US20060173787A1 (ko)
EP (1) EP1609042A2 (ko)
KR (1) KR20050123105A (ko)
CN (1) CN1764883A (ko)
WO (1) WO2004086166A2 (ko)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
JP2005063333A (ja) * 2003-08-20 2005-03-10 Nec Corp データ処理システム及びその方法並びにそれに用いるデータ処理端末及びプログラム
KR100493900B1 (ko) * 2003-08-21 2005-06-10 삼성전자주식회사 사용자간 콘텐츠에 대한 권한정보의 공유방법
KR101043336B1 (ko) * 2004-03-29 2011-06-22 삼성전자주식회사 디바이스와 휴대형 저장장치간의 디지털 권리객체에 관한정보의 획득 및 제거를 위한 방법 및 장치
US8074287B2 (en) * 2004-04-30 2011-12-06 Microsoft Corporation Renewable and individualizable elements of a protected environment
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7908477B2 (en) * 2004-07-27 2011-03-15 Seiji Eto System and method for enabling device dependent rights protection
JP4717398B2 (ja) * 2004-09-10 2011-07-06 キヤノン株式会社 データ処理装置の制御方法
US20060080257A1 (en) * 2004-10-08 2006-04-13 Level 3 Communications, Inc. Digital content distribution framework
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US7899189B2 (en) 2004-12-09 2011-03-01 International Business Machines Corporation Apparatus, system, and method for transparent end-to-end security of storage data in a client-server environment
US8522293B2 (en) 2004-12-15 2013-08-27 Time Warner Cable Enterprises Llc Method and apparatus for high bandwidth data transmission in content-based networks
KR100701103B1 (ko) 2004-12-20 2007-03-28 한국전자통신연구원 내장형 보안정보 장치를 이용한 제품의 추적 및 복제 식별방법과 그 시스템
JP4692003B2 (ja) * 2005-02-10 2011-06-01 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8028322B2 (en) 2005-03-14 2011-09-27 Time Warner Cable Inc. Method and apparatus for network content download and recording
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US10339275B2 (en) * 2005-04-19 2019-07-02 Intel Corporation License confirmation via embedded confirmation challenge
US9436804B2 (en) * 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) * 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
JP4742682B2 (ja) * 2005-06-01 2011-08-10 富士ゼロックス株式会社 コンテンツ保護装置及びコンテンツ保護解除装置
JP4835167B2 (ja) * 2006-01-24 2011-12-14 富士ゼロックス株式会社 ライセンス管理のためのプログラム、システム及び方法
CN101395597B (zh) * 2006-03-06 2011-12-28 Lg电子株式会社 继承设备注册方法、数据传送方法和继承设备认证方法
US9386327B2 (en) 2006-05-24 2016-07-05 Time Warner Cable Enterprises Llc Secondary content insertion apparatus and methods
US8280982B2 (en) 2006-05-24 2012-10-02 Time Warner Cable Inc. Personal content server apparatus and methods
US20070289028A1 (en) * 2006-06-12 2007-12-13 Software Spectrum, Inc. Time Bound Entitlement for Digital Content Distribution Framework
US20070288389A1 (en) * 2006-06-12 2007-12-13 Vaughan Michael J Version Compliance System
US8024762B2 (en) 2006-06-13 2011-09-20 Time Warner Cable Inc. Methods and apparatus for providing virtual content over a network
CN101473333B (zh) * 2006-06-21 2011-09-07 威步系统股份公司 入侵检测的方法和系统
US7577559B2 (en) * 2006-08-15 2009-08-18 Nero Ag Apparatus for transcoding encoded content
US8190918B2 (en) * 2006-11-13 2012-05-29 Disney Enterprises, Inc. Interoperable digital rights management
IL180020A (en) 2006-12-12 2013-03-24 Waterfall Security Solutions Ltd Encryption -and decryption-enabled interfaces
WO2008103000A1 (en) * 2007-02-23 2008-08-28 Koreacenter Co., Ltd System and method of transmitting/receiving security data
KR100867130B1 (ko) * 2007-02-23 2008-11-06 (주)코리아센터닷컴 보안 데이터 송수신 시스템 및 방법
US8181206B2 (en) 2007-02-28 2012-05-15 Time Warner Cable Inc. Personal content server apparatus and methods
US20080226082A1 (en) * 2007-03-12 2008-09-18 Storage Appliance Corporation Systems and methods for secure data backup
US20080256596A1 (en) * 2007-04-11 2008-10-16 Seiji Eto System and method for marketing in a device dependent rights protection framework
KR101401818B1 (ko) 2007-09-12 2014-05-30 소니 픽쳐스 엔터테인먼트, 인크. 하나 이상의 사용자 장치들에 대한 콘텐츠 배포 방법 및 시스템
US9503691B2 (en) 2008-02-19 2016-11-22 Time Warner Cable Enterprises Llc Methods and apparatus for enhanced advertising and promotional delivery in a network
JP2009278223A (ja) * 2008-05-13 2009-11-26 Panasonic Corp 電子証明システム及び秘匿通信システム
US9094713B2 (en) 2009-07-02 2015-07-28 Time Warner Cable Enterprises Llc Method and apparatus for network association of content
US8649519B2 (en) * 2009-09-04 2014-02-11 Rgb Systems, Inc. Method and apparatus for secure distribution of digital content
US8499718B2 (en) 2010-01-20 2013-08-06 Ten Media, Llc Systems and methods for processing eggs
US8455026B2 (en) 2010-01-20 2013-06-04 Ten Media, Llc Systems and methods for processing eggs
BR112012018110A2 (pt) 2010-01-20 2020-08-25 Ten Media, Llc "sistema e método para processamento de ovos e outros objetos"
US8455030B2 (en) 2010-01-20 2013-06-04 Ten Media, Llc Systems and methods for processing eggs
US8823758B2 (en) 2010-01-20 2014-09-02 Ten Media, Llc Systems and methods for processing eggs
US8657098B2 (en) 2010-01-20 2014-02-25 Ten Media, Llc Systems and methods for processing eggs
US8402555B2 (en) 2010-03-21 2013-03-19 William Grecia Personalized digital media access system (PDMAS)
US20100185868A1 (en) * 2010-03-21 2010-07-22 William Grecia Personilized digital media access system
US8726403B2 (en) * 2010-09-02 2014-05-13 Verizon Patent And Licensing Inc. Secure video content provisioning using digital rights management
US8532290B2 (en) * 2011-03-04 2013-09-10 Netflix, Inc. Content playback APIS using encrypted streams
US8638935B2 (en) 2012-01-12 2014-01-28 Apple Inc. System and method for key space division and sub-key derivation for mixed media digital rights management content
US9315317B2 (en) 2012-02-21 2016-04-19 Ten Media, Llc Container for eggs
AU2013338059B2 (en) * 2012-10-29 2017-06-15 Andrew Wireless Systems Uk Limited METHOD INCLUDING CHALLENGE-RESPONSE SYSTEM TO SECURELY AUTHENTICATE SOFTWARE APPLICATION PROGRAM INTERFACES (APLs)
US20140189346A1 (en) * 2012-12-28 2014-07-03 Next Education, Llc License server manager
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
CN103281183B (zh) * 2013-04-27 2016-04-13 天地融科技股份有限公司 转换装置和显示系统
US9866534B2 (en) 2013-12-06 2018-01-09 Sony Corporation Computer ecosystem providing privacy and tracking in sharing user-generated content
US8997249B1 (en) 2014-06-18 2015-03-31 Storagecraft Technology Corporation Software activation and revalidation
JP5870163B2 (ja) * 2014-06-30 2016-02-24 達男 眞子 コンテンツ閲覧制限システム、コンテンツ閲覧制限方法及びコンテンツ閲覧制限プログラム並びにリムーバブルメディア読取装置
IL235175A (en) 2014-10-19 2017-08-31 Frenkel Lior Secure desktop remote control
CN105825409B (zh) * 2015-01-07 2021-03-02 航天信息股份有限公司 一种电子发票消息推送系统及方法
US20160292400A1 (en) * 2015-03-30 2016-10-06 Honeywell International Inc. Sd card license mechanism
IL250010B (en) 2016-02-14 2020-04-30 Waterfall Security Solutions Ltd Secure connection with protected facilities
US10346641B2 (en) * 2016-09-23 2019-07-09 Intel Corporation Processors, methods, systems, and instructions to determine whether to load encrypted copies of protected container pages into protected container memory
US10484354B2 (en) * 2017-02-15 2019-11-19 Telefonaktiebolaget Lm Ericsson (Publ) Data owner restricted secure key distribution
CN110309213B (zh) * 2018-03-28 2023-10-13 腾讯科技(深圳)有限公司 一种数据库访问控制方法、装置、系统、介质及设备
US11296872B2 (en) 2019-11-07 2022-04-05 Micron Technology, Inc. Delegation of cryptographic key to a memory sub-system
US11757633B1 (en) * 2019-12-30 2023-09-12 United Services Automobile Association Automation and management of public key infrastructure
CN111624934B (zh) * 2020-04-28 2021-04-27 郑州信大捷安信息技术股份有限公司 一种plc应用程序数据保护系统和方法
US11455391B2 (en) 2020-10-28 2022-09-27 International Business Machines Corporation Data leakage and misuse detection
CN112751668B (zh) * 2020-12-29 2022-10-21 杭州永谐科技有限公司 一种低成本物联网数据加密通信系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766305B1 (en) * 1999-03-12 2004-07-20 Curl Corporation Licensing system and method for freely distributed information
US6920567B1 (en) * 1999-04-07 2005-07-19 Viatech Technologies Inc. System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files
KR100653801B1 (ko) * 2000-01-21 2006-12-05 소니 가부시끼 가이샤 데이터 처리 장치 및 데이터 처리 방법
AU1547402A (en) * 2001-02-09 2002-08-15 Sony Corporation Information processing method/apparatus and program
US20020138435A1 (en) * 2001-03-26 2002-09-26 Williams L. Lloyd Method and system for content delivery control using a parallel network
US6948073B2 (en) * 2001-06-27 2005-09-20 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client

Also Published As

Publication number Publication date
EP1609042A2 (en) 2005-12-28
WO2004086166A3 (en) 2005-04-14
WO2004086166A2 (en) 2004-10-07
US20060173787A1 (en) 2006-08-03
CN1764883A (zh) 2006-04-26

Similar Documents

Publication Publication Date Title
KR20050123105A (ko) 데이터 보호 관리 장치 및 데이터 보호 관리 방법
KR101043336B1 (ko) 디바이스와 휴대형 저장장치간의 디지털 권리객체에 관한정보의 획득 및 제거를 위한 방법 및 장치
CA2568155C (en) Method and apparatus for playing back content based on digital rights management between portable storage and device, and portable storage for the same
JP5200204B2 (ja) 高信頼性システムを含む連合型デジタル権限管理機構
US8176322B2 (en) Apparatus and method for moving and copying rights objects between device and portable storage device
JP4795727B2 (ja) コンテンツの利用端末を制限する方法、記憶装置およびシステム
KR101122923B1 (ko) 휴대용 매체 상의 콘텐트에 대한 암호화 및 데이터 보호
US7810162B2 (en) Method and apparatus for playing back content based on digital rights management between portable storage and device, and portable storage for the same
JP2005080315A (ja) サービスを提供するためのシステムおよび方法
KR20060025159A (ko) 라이센스 수신용 사용자 단말
KR20020095726A (ko) 컨텐트 보호 시스템 및 방법
JP2006504176A (ja) コンテンツ操作を許可する方法及び装置
JP2004312717A (ja) データ保護管理装置およびデータ保護管理方法
EP1436998B1 (en) Apparatus and method for accessing material using an entity locked secure registry
JP2001350727A (ja) コンテンツ配信システム
KR101241413B1 (ko) 디바이스와 휴대용 저장장치간에 권리 객체를 이동, 복사하는 방법 및 장치
JP4969821B2 (ja) プログラム及びコンテンツ復号化方法
MXPA06011034A (en) Method and apparatus for acquiring and removing information regarding digital rights objects

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid