KR100656402B1 - 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치 - Google Patents

디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치 Download PDF

Info

Publication number
KR100656402B1
KR100656402B1 KR1020050113846A KR20050113846A KR100656402B1 KR 100656402 B1 KR100656402 B1 KR 100656402B1 KR 1020050113846 A KR1020050113846 A KR 1020050113846A KR 20050113846 A KR20050113846 A KR 20050113846A KR 100656402 B1 KR100656402 B1 KR 100656402B1
Authority
KR
South Korea
Prior art keywords
content
user
information
list
membership
Prior art date
Application number
KR1020050113846A
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 한국전자통신연구원
Priority to KR1020050113846A priority Critical patent/KR100656402B1/ko
Priority to US11/604,516 priority patent/US20070124313A1/en
Application granted granted Critical
Publication of KR100656402B1 publication Critical patent/KR100656402B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Abstract

본 발명은 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치를 개시한다.
본 발명에 의하면, 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성할 수 있는 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하고, 콘텐츠 사용권한을 가진 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 포함한 데이터를 생성하고, 사용자가 콘텐츠를 요청하면 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 상기 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하고, 사용권한을 가진 것으로 판별된 사용자에게 암호화된 콘텐츠와 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하여, 콘텐츠 배포자의 신뢰성에 상관없이, 콘텐츠 사용권한을 가진 사용자에게만 콘텐츠를 안전하게 전달, 사용자가 원하는 콘텐츠를 효과적으로 사용할 수 있는 장점을 제공한다.

Description

디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치{Method and apparatus for the secure digital contents distribution}
도 1은 본 발명에 따라 디지털 콘텐츠를 안전하게 배포하는 방법의 흐름의 일 예를 도시한 것이다.
도 2는 본 발명에 따른 콘텐츠 제공자, 콘텐츠 배포자 및 콘텐츠 사용자의 단말이 적용된 통신망의 일 실시 예이다.
도 3은 본 발명에 따른 콘텐츠 제공자 구성의 예를 블록으로 도시한 것이다.
도 4는 본 발명에 따른 콘텐츠 사용자 리스트를 효율적으로 관리하는 방법의 예를 도시한 것이다.
도 5는 본 발명에 따른 멤버십 리스트 자료구조에서의 노드를 도식화 한 것이다.
도 6은 본 발명에 따른 콘텐츠 서버 구성의 예를 블록으로 도시한 것이다.
도 7은 본 발명에 따른 멤버십 관리 서버 구성의 예를 블록으로 도시한 것이다.
도 8은 본 발명에 따른 통신 서버 구성의 예를 블록으로 도시한 것이다.
도 9는 본 발명에 따른 사용자 단말 장치 구성의 예를 블록으로 도시한 것이다.
본 발명은 보안에 관한 것으로서, 보다 상세하게는 디지털 콘텐츠 사용권한을 가진 사용자들의 리스트를 안전하고 효율적으로 관리하면서, 사용자들에게 암호화된 콘텐츠에 접근하고 사용할 수 있는 정보를 안전하게 배포할 수 있으며, 사용자들의 콘텐츠 접근을 보다 세밀히 통제할 수 있는 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치에 관한 것이다.
콘텐츠의 디지털화가 진행되어 감에 따라 콘텐츠의 상업적 이용이 크게 늘어나고 있다. 특히 최근의 이동통신 분야에서 이동단말을 통한 각종 포맷의 음악, 영상, 게임 등의 서비스가 제공되고 있어, 언제 어디서나 사용자들은 자신의 이동단말을 통해 콘텐츠를 활용할 수 있게 되었다. 이러한 콘텐츠 사용을 보다 활성화하는데 있어서, 콘텐츠를 사용자의 단말로 안정적이고 빠르게 전송하는 기술과 콘텐츠 사용권한을 획득한(구매 혹은 다른 방법으로 획득한) 사용자만 콘텐츠를 사용할 수 있게 하는 기술인 디지털 저작권 관리기술(Digital Rights Management: DRM) 등과 같은 기술들이 필요하며, 이러한 기술들은 좀 더 개선될 요소들이 남아 있다.
디지털콘텐츠를 보호할 수 있는 방법은 대략 두 가지로 크게 구분된다.
첫 번째는 하드웨어를 사용한 접근 방법으로, 사용권한을 획득한 사용자 단말의 복제 불가능한 유일한 정보인 하드웨어 고유정보를 이용하여 암호화된 콘텐츠를 복호화 하게 하여 특정 사용자의 하드웨어 장치에서만 콘텐츠를 활용할 수 있도 록 하는 방법이다. 이러한 방법은 사용자의 하드웨어 고유정보를 변경하거나 복제하기 어렵기 때문에 콘텐츠 사용자를 명확히 구분할 수 있는 장점을 제공하는 반면, 하드웨어의 고장이나 노후화 등의 이유로 하드웨어를 교체할 때 발생하는 문제, 추가적인 하드웨어 설치비용 등의 어려움이 존재한다.
두 번째는 콘텐츠를 특정한 키로 암호화하고, 키를 소유한 사용자의 장치에서만 암호화된 콘텐츠를 복호화 하게 하는 방법이 있다. 이러한 방법은 앞서의 하드웨어를 사용한 접근 방법에서 발생할 수 있는 문제점들을 해결할 수 있는 장점을 제공하는 반면, 콘텐츠를 복호화 하는 키의 배포 문제가 중요한 이슈가 된다. 키 또한 디지털화된 정보이기 때문에 쉽게 복제가 가능하여, 이러한 문제를 해결하기 위해서는 공개키 기반구조(Public Key Infrastructure: PKI)를 적용하거나, 사용자 온라인 인증 등의 추가적인 보안 기술들을 필요로 한다.
앞서의 두 가지 방법을 사용한 종래기술들의 경우 콘텐츠 배포자는 콘텐츠 제공자와 콘텐츠 사용자 모두에게 완전히 신뢰된다고 가정되는 것이 일반적이다. 대규모의 사용자를 대상으로 콘텐츠를 배포하는 경우에는, 통상 콘텐츠 제공자가 직접 콘텐츠를 사용자에게 전달하는 방식보다는 대규모 네트워크 인프라를 갖춘 콘텐츠 배포자를 통해 콘텐츠를 사용자에게 전달하게 된다. 특히, 이동통신망에서 이동통신 단말을 통해 콘텐츠를 서비스 받는 사용자들에게는 콘텐츠로의 접근이 보다 용이하여야 하기 때문에, 통상 이동통신망 서비스 사업자들이 구비한 시스템에 등록된 콘텐츠에 사용자들은 접근하여 활용하게 된다. 이러한 경우에 콘텐츠는 이동통신망 서비스 사업자에게 그대로 노출될 수 있는 위험이 있으며 특히, 그 콘텐츠 가 콘텐츠 제공자와 콘텐츠 사용자 사이에서 비밀이 유지되어야 하는 콘텐츠인 경우에는 콘텐츠 배포자가 그 비밀의 콘텐츠에 무단히 접근하여 더욱 위험할 수 있다,
즉, 콘텐츠 관리의 편이를 위해 콘텐츠 사용자의 콘텐츠 사용권한 부여를 콘텐츠 제공자가 콘텐츠 배포자인 이동통신망 사업자에게 완전히 위임하여야 하는 경우가 빈번하게 발생할 수 있는데, 이 경우 콘텐츠 제공자와 콘텐츠 사용자 사이에서만 유지되어야 할 보안 혹은 비밀의 사항을 콘텐츠 배포자인 통신사업자가 무단히 침해하는 문제가 발생할 수 있다. 또한 이런 경우를 막기 위해 콘텐츠에 보안 혹은 암호를 과다하게 적용하는 경우 콘텐츠 사용자의 입장에서는 자유롭게 그 콘텐츠를 이용하기에 불편한 상황이 생기는 문제도 발생할 수 있다.
본 발명이 이루고자 하는 기술적인 과제는, 상기의 문제점들을 해결하기 위해, 콘텐츠 제공자가 콘텐츠 배포자에게 전달한 콘텐츠 사용권한을 가진 사용자들의 리스트가 콘텐츠 제공자의 도움 없이는 변경이 불가능하도록 하며, 콘텐츠 사용자가 콘텐츠 제공자와의 접촉 없이 콘텐츠 배포자의 도움만으로도 효율적으로 암호화된 콘텐츠를 사용할 수 있도록 하며, 그리고 콘텐츠 배포자가 콘텐츠 제공자가 제공한 정보만으로는 콘텐츠를 확인하거나 변경할 수 없도록 하는 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치를 제공하는 데 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 의한, 디지털 콘텐츠를 안전하 게 배포하는 방법의 일 태양은, (a) 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성할 수 있는 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 단계; (b) 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 포함한 데이터를 생성하는 단계; (c) 사용자가 콘텐츠를 요청하면 상기 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 상기 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 단계; 및 (d) 사용권한을 가진 것으로 판별된 사용자에게 암호화된 콘텐츠와 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하는 단계;를 포함하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 본 발명에 의한, 디지털 콘텐츠를 안전하게 배포하는 방법의 다른 태양은, (a) 콘텐츠 제공자가 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성하기 위한 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 단계; (b) 상기 콘텐츠 제공자가 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 포함하는 데이터를 생성하여 콘텐츠 배포자에게 전달하는 단계; (c) 사용자가 콘텐츠를 요청하면 콘텐츠 배포자는 상기 전달받은 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 단계; 및 (d) 콘텐츠 배포자가 사용권한을 가진 것으로 판별된 사용자에게 콘텐츠 제공자가 콘텐츠 배포자에 등록한 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하는 단계;를 포함하는 것을 특징으로 한다.
상기 (a) 단계에서, 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성하기 위한 제1함수, 사용자들인 멤버들의 멤버십 리스트를 안전하게 관리하기 위한 제2함수, 상기 제1함수의 초기 입력값 및 콘텐츠 제공자의 공개키 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 것이 바람직하다.
이때에 상기 제1함수는 단방향 해쉬함수이며, 상기 제2함수는 입력값의 순서에 관계없이 출력값이 결정되는 특성을 가지는 단방향 해쉬함수인 것이 바람직하다.
또한 상기 초기 입력값은 상기 콘텐츠 사용자가 콘텐츠를 이용하기 위해 사용하는 사용자 단말의 하드웨어 정보에 따라 생성될 수 있는 것이 바람직하다.
상기 방법에서, 상기 (b) 단계에서 생성되는 데이터는, 콘텐츠 제공자는 콘텐츠 사용자의 리스트, 개별 사용자에게 전송될 콘텐츠 복호화 키 생성에 필요한 데이터, 콘텐츠 사용가능시간을 포함하는 사용제한 데이터 및 상기 리스트가 악의적인 목적을 가진 자에 의해 변경되지 않았음을 확인할 수 있는 디지털서명 정보임이 바람직하다.
그리고 상기 (c) 단계에서, 상기 콘텐츠 사용자 리스트를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠 사용권한을 가진 자인지를 검색하고, 검색한 결과가 상기 콘텐츠 사용자 리스트를 기반으로 수행한 것인지를 상기 무결성 보장 정보를 기반으로 판정하는 것이 바람직하다.
또한 상기 (d) 단계에서 전달되는 정보는, 상기 사용자가 요청한 암호화된 콘텐츠, 콘텐츠 복호화 키 생성에 필요한 데이터, 콘텐츠 사용에 대한 제한 사항을 포함하는 데이터 및 콘텐츠 사용자의 고유 정보를 포함하는 데이터임이 바람직하다.
이때에 상기 방법들은, (e) 상기 전달된 정보 및 암호화/복호화를 위한 키를 생성하기 위한 초기화 값을 바탕으로 콘텐츠 사용자가 사용하는 상기 사용자의 고유 정보에 대응하는 단말기에서 암호화된 콘텐츠를 복호화하기 위한 키를 생성하고 암호화된 콘텐츠를 복호화하여 사용자에게 부여된 사용권한 범위 이내에서 콘텐츠를 사용하도록 하는 단계;를 더 포함하는 것이 바람직하다.
상기 (e) 단계에서, 상기 전송받은 콘텐츠 복호화 키 생성에 필요한 데이터를 사용하여 콘텐츠 복호화 키를 생성하며, 전송받은 콘텐츠 사용제한 범위 내에서 콘텐츠 복호화 키와 암호화된 콘텐츠를 사용하여 상기 제한 사항에 따라 사용자에게 콘텐츠를 제공하는 것이 바람직하다.
그리고 상기 (e) 단계에서 상기 사용자에게 콘텐츠를 제공하기 위한 사용자 단말기가 상기 사용자의 고유번호에 대응하는 경우에만 복호화 키 생성, 복호화 키를 이용하여 암호화된 콘텐츠 디코딩 혹은 사용자에게 콘텐츠를 제공하기 위한 재생의 과정이 수행되는 것이 바람직하다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 의한, 디지털 콘텐츠를 안전하게 배포하는 장치의 일 태양은, 콘텐츠 배포자에게 암호화된 콘텐츠와 콘텐츠의 사용권한을 갖는 사용자들의 멤버십 리스트 정보를 제공하는 콘텐츠 제공자; 및 암호화된 콘텐츠를 관리하는 콘텐츠 서버, 상기 콘텐츠 제공자가 제공한 멤버십 리스트 정보를 관리하는 멤버십 관리 서버 및 콘텐츠를 요청한 사용자들에게 암호 화된 콘텐츠를 제공할지 여부를 상기 콘텐츠 제공자가 제공한 정보를 기반으로 판별하고 사용자가 상기 콘텐츠 서버에 연결하여 암호화된 콘텐츠를 사용할 수 있도록 정보를 제공하는 통신 서버를 포함하는 콘텐츠 배포자;를 포함하는 것을 특징으로 한다.
이때에 상기 장치는, 상기 통신서버로부터 전달받은 정보를 기반으로 암호화된 콘텐츠에 접근하고 상기 콘텐츠를 복호화하여 사용자에게 제공하는 사용자 단말;을 더 포함하는 것이 바람직하다.
이하에서 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세히 설명한다.
도 1은 디지털 콘텐츠를 안전하게 배포하는 방법의 흐름의 예를 도시한 것이다.
콘텐츠를 암호화하거나 복호화하기 위한 키를 생성할 수 있는 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하고(10 단계), 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 포함한 데이터를 생성하며(20 단계), 사용자가 콘텐츠를 요청하면 상기 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 상기 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하며(30 단계), 사용권한을 가진 것으로 판별된 사용자에게 암호화된 콘텐츠와 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달한다(40 단계).
그리고 상기 전달된 정보 및 암호화/복호화를 위한 키를 생성하기 위한 초기화 값을 바탕으로 콘텐츠 사용자가 사용하는 상기 사용자의 고유 정보에 대응하는 단말기에서 암호화된 콘텐츠를 복호화하기 위한 키를 생성하고 암호화된 콘텐츠를 복호화하여 사용자에게 부여된 사용권한 범위 이내에서 콘텐츠를 사용하도록 한다(50 단계).
도 2는 본 발명에 따른 콘텐츠 제공자(100), 콘텐츠 배포자(200) 및 콘텐츠 사용자의 단말(300)이 적용된 통신망의 일 실시 예이다.
여기서 콘텐츠 배포자(100)는 이동통신망사업자를 가정하여 설명한다. 이동통신망은 이동통신 단말을 사용하는 사용자들이 언제어디서나 접근이 가능하도록 하면서, 빠르고 효과적으로 서비스를 제공하기 위해 통상적으로 분산된 시스템 장비를 구비하고 있으면서, 무선콘텐츠에 대한 배포를 담당하고 있으므로 본 발명의 구성 및 작용을 설명하기 위해 적당하다.
콘텐츠 제공자(100)는 콘텐츠 배포자(200)에게 콘텐츠와 콘텐츠의 사용권한을 갖는 사용자들의 멤버십 정보 및 각 사용자들이 콘텐츠를 이용할 수 있는 정보를 함께 제공한다.
콘텐츠 배포자(200)는 구비한 통신망에 콘텐츠 서버(210), 멤버십 관리 서버(220), 통신 서버(230)를 두고 콘텐츠 사용자가 무선콘텐츠에 빠르고 효과적으로 접근할 수 있도록 지원한다. 콘텐츠 서버(210)는 암호화된 콘텐츠를 관리하며, 멤버십 관리 서버(220)는 콘텐츠 제공자가 제공한 멤버십 리스트를 관리하며, 통신 서버(230)는 멤버십 관리 서버 및 콘텐츠 서버와 연결되어 콘텐츠를 요청한 사용자 들에게 콘텐츠를 제공할지 여부를 판별하고, 사용자가 콘텐츠 서버에 접근하여 콘텐츠를 사용할 수 있도록 필요한 정보를 제공한다.
콘텐츠 사용자는 자신이 구비한 단말기(300)를 통해 콘텐츠 배포자가 전달한 정보를 기반으로 암호화된 콘텐츠에 접근하고 상기 콘텐츠를 복호화 하여 사용한다.
앞서 설명한 콘텐츠 서버, 멤버십 관리 서버, 통신 서버는 무선통신망 사업자가 이미 구비한 장치에 각각의 목적하는 바를 이루기 위한 소프트웨어 모듈로서 개별 혹은 통합적으로 작용할 수도 있다. 즉, 본 발명에서 이루고자 하는 바를 달성하기 위하여, 본 발명에서 설명되는 시스템 장치들이 반드시 설명된 것과 동일하게 요구되는 것은 아니며, 치환 또는 변형된 형태로 실시되어 본 발명에서 이루고자 하는 바를 달성할 수도 있다.
콘텐츠 제공자(100)가 콘텐츠 사용자의 단말 장치(300)에 콘텐츠 사용에 대한 권한을 부여한다(10 단계). 이때에 콘텐츠 제공자(100)와 콘텐츠 사용자 단말(300)은 다음과 같은 정보를 공유한다. 정보의 공유 방법에 대해서는 본 발명에서 따로 제한을 두지 않는다. 즉, 종단 간(end-to-end) 보안 통신이 가능한 웹서비스 보안 기능 등을 이용해 정보가 공유될 수 있으며, SSL(Secure Socket Layer)과 같은 보안통신채널을 통해 공유될 수 있으며, 오프라인 상에서 하드웨어 또는 소프트웨어 적인 기법을 이용해 교환될 수도 있다.
- 단방향 해쉬함수(one-way hash functions):
Figure 112005068587092-pat00001
,
Figure 112005068587092-pat00002
- 초기화 값:
Figure 112005068587092-pat00003
- 콘텐츠 제공자의 공개키 정보:
Figure 112005068587092-pat00004
(이하 CP라고 기재하는 경우도 있음)
위에서 초기화 값
Figure 112005068587092-pat00005
을 제외한 정보는 제 3자에게 공개되어도 무방하다.
단방향 해쉬함수
Figure 112005068587092-pat00006
는 콘텐츠를 암호화하거나 복호화하기 위한 키(k )를 생성하기 위한 함수로, 콘텐츠 사용자는 다음과 같은 방법으로 i번째 세션에서의 키
Figure 112005068587092-pat00007
를 생성한다.
Figure 112005068587092-pat00008
즉,
Figure 112005068587092-pat00009
단방향 해쉬함수
Figure 112005068587092-pat00010
의 입력 값
Figure 112005068587092-pat00011
는 앞서의 초기화 값이며,
Figure 112005068587092-pat00012
는 이후에 상세하게 설명될 40 단계에서 콘텐츠 배포자(200)에 의해 콘텐츠 사용자 단 말(300)에게 전달되는 값이다.
단방향 해쉬함수
Figure 112005068587092-pat00013
는 멤버십 리스트를 안전하게 관리하기 위한 것으로 다음과 같이 입력 값의 순서에 결과 함수의 결과값이 영향을 받지 않는 특성을 갖는다(commutative 특성).
Figure 112005068587092-pat00014
Figure 112005068587092-pat00015
의 특성을 갖는 해쉬함수 예는 다음과 같다.
Figure 112005068587092-pat00016
초기화 값
Figure 112005068587092-pat00017
는 콘텐츠의 암호화/복호화 키(key)를 생성하기 위한 단방향 해쉬함수
Figure 112005068587092-pat00018
의 초기입력 값으로 사용된다.
Figure 112005068587092-pat00019
의 선택에 있어서 사용자의 단말(300)에 대한 하드웨어 고유정보를 포함하면 콘텐츠가 상기 하드웨어가 장착된 특정 단말에서만 사용되게 할 수 있으며, 사용자의 SIM(Subscriber Identity Module) 카드에 저장된 정보에 의해
Figure 112005068587092-pat00020
이 선택된다면, 특정 SIM 카드를 소지한 사용자만 콘텐츠를 사용하게 할 수 있다. 또한
Figure 112005068587092-pat00021
을 사용자의 고유단말번호(예를 들어, 이동통신번호)와 연관지어 생성한다면, 사용자의 특정 단말에서만 콘텐츠를 사용할 수 있게 할 수도 있다.
따라서 초기값
Figure 112005068587092-pat00022
은 응용분야마다 다른 특성이 반영되게 선택될 수 있어, 본 발명에서는 이러한
Figure 112005068587092-pat00023
의 선택을 한정하지 않는다.
콘텐츠 제공자(100)가 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 콘텐츠 배포자(200)에게 전달한다(20 단계). 그 결과 콘텐츠 제공자와 콘텐츠 배포자는 다음과 같은 정보를 공유한다. 정보의 공유 방법에 대해서는 상기에 콘텐츠 제공자(100)와 콘텐츠 사용자 단말(300)간과 같이 본 발명에서는 별도의 제한을 두지 않는다.
- 단방향 해쉬함수:
Figure 112005068587092-pat00024
- 콘텐츠 제공자의 공개키 정보:
Figure 112005068587092-pat00025
- 사용자 리스트:
Figure 112005068587092-pat00026
- 각 사용자에게 전달될 정보:
Figure 112005068587092-pat00027
, 각
Figure 112005068587092-pat00028
에 대해서
Figure 112005068587092-pat00029
는 사용자
Figure 112005068587092-pat00030
에게 전달될 정보라 정의함
- 사용자 리스트의 무결성을 보장하는 디지털 서명 정보:
Figure 112005068587092-pat00031
콘텐츠 제공자의 공개키 정보는 콘텐츠 배포자가 콘텐츠 제공자가 제공하는 사용자 리스트의 무결성을 확인하기 위한 것으로, 상기 서명 값
Figure 112005068587092-pat00032
을 확인하기 위해서 사용한다.
사용자 리스트의 무결성을 보장하는 정보에서 콘텐츠 제공자의 개인키
Figure 112005068587092-pat00033
로 서명될 입력 값 z는 사용자 리스트의 정보를 종합적으로 반영한 것으로 콘텐츠 제공자가 계산한 단방향 해쉬함수
Figure 112005068587092-pat00034
의 결과값이며, t는 타임스탬프 값을 의미한다. 이때에 타임 스탬프 값은 콘텐츠 사용가능시간을 포함하는 사용제한 데이터를 생성하기 위해 사용될 수도 있다. 이때에 타임스탬프 값은 서명의 유효성을 확인하기 위한 것으로 재전송 공격(reply-attack) 등과 같은 보안 문제를 해결하기 위한 용도로서 사용되었다.
사용자 리스트의 무결성을 보장한다는 것은 상기 리스트가 악의적인 목적을 가진 자에 의해 변경되지 않았음을 확인할 수 있다는 것을 의미한다.
도 3은 본 발명에 따른 콘텐츠 제공자의 구성의 예를 블록으로 도시한 것이다.
콘텐츠 제공자(100)는 콘텐츠 사용권한을 가진 사용자의 리스트를 관리하는 멤버십 관리부(110), 콘텐츠 사용자의 정보를 저장하기 위한 사용자 저장부(120), 콘텐츠의 암호화 및 관리를 위한 콘텐츠 관리부(130), 원 콘텐츠를 저장하기 위한 콘텐츠 저장부(140), 콘텐츠 배포자(200)와 통신하기 위한 통신부(150)로 구성된다.
멤버십 관리부(110)은 메모리상에 사용자 저장부(120)에 저장된 모든 사용자의 멤버십 리스트 자료구조(data structure)를 생성하고, 생성된 자료구조를 기반으로 사용자 멤버십 리스트에 대한 무결성을 보장하는 정보를 생성하여, 멤버십 리스트와 무결성 보장 정보를 통신부(150)을 통해 콘텐츠 배포자의 멤버십 관리 서버(220)에 전달하는 기능을 제공한다.
사용자 저장부(120)는 콘텐츠 사용권한이 부여된 사용자들의 정보를 데이터베이스 혹은 파일에 저장하거나 그 저장된 곳으로부터 인출하는 기능을 하는 모듈로, 개별 사용자들에게 부여된 콘텐츠의 종류, 콘텐츠 사용제한 정보(예를 들어, 사용가능시간, 인쇄가능횟수 등), 인적사항 등을 관리한다.
콘텐츠 관리부(130)는 콘텐츠 저장부(140)에 저장되어 있는 원 콘텐츠를 개별 사용자 혹은 동일한 키를 소유한 사용자 그룹의 키로 콘텐츠를 암호화하고 통신부(150)를 통해 암호화된 콘텐츠를 콘텐츠 배포자(200)의 콘텐츠 서버(210)로 전달한다.
통신부(150)는 웹서비스의 보안 기능, 예를 들면, ws-security, SSL(Secure Socket Layer)을 통한 보안통신채널 등의 부가적인 보안 모듈을 통해 콘텐츠 배포자(200)에게 비밀정보 혹은 암호화된 콘텐츠를 전송하는 기능을 제공한다.
멤버십 관리부(110)가 멤버십 리스트 자료구조를 생성하는 방법의 예를 설명 하기 위해, skip lists 자료구조를 간략히 설명한다.
Skip lists 자료구조는, 트리 형태의 자료구조(Binary Tree, Binary B-Tree, etc)와 유사한 목적으로 사용되는 것으로, 한 집합의 멤버들을 skip lists 자료구조를 통해 구조화하면 특정 멤버의 검색과 수정(삭제, 등록, 변경)을 빠르게 수행할 수 있는 방법 혹은 알고리즘을 제공한다.
이에 대한 자세한 내용은 William Pugh의 "`Skip lists: a probabilistic alternative to balanced tree.`, Communications of the ACM, 33(6):668-676, 1990."에서 확인할 수 있다.
본 발명의 실시예에서 skip lists 자료구조를 사용하여 설명하는 내용은 본 발명에서의 목적을 만족할 만한 다른 자료구조를 채택하여 설명될 수 있으며, 본 발명은 skip lists 자료구조를 사용하는 것에 제한되지 않는다. 다만, 다른 자료구조를 사용한다면, 본 발명에서 요구되는 바를 이루기 위해, 약간의 치환 및 변형의 과정이 요구될 수 있다. 이에 대한 것은 본 발명이 속한 기술 분야의 통상의 지식을 가진 자에게는 자명한 것이므로 별도의 설명은 생략한다.
도 4는 본 발명에 따른 콘텐츠 사용자 리스트를 효율적으로 관리하는 방법의 예를 도시한 것이다. 도 4에서 {21,25,42,53,64,75,99}의 멤버들을 갖는 집합을 skip lists 자료구조를 통해 구축한 예가 도식화된 것이다.
skip list의 양끝 노드는 각각
Figure 112005068587092-pat00035
Figure 112005068587092-pat00036
를 가지며, 이는 멤버들의 고유정보를 포함하지는 않으나 알고리즘을 단순화하기 위해 추가된 것이다.
William Pugh가 설명한 대로 skip lists를 구축하기 위해서는 각 멤버들은 먼저 정렬되어 있어야 한다. 이는 본 발명에서의 멤버들 즉, 콘텐츠 사용권한을 갖는 사용자들을 정렬하기 위해 각 멤버들은 순서가 결정될 수 있는 고유한 어떤 값을 가지고 있어야 한다는 것을 의미한다.
설명을 쉽게 하기 위해, 각 멤버들이 가져야할 고유 값을 무선통신망 사용자의 단말번호라고 가정하자. 콘텐츠 사용권한을 갖는 사용자들의 단말번호가 도 3에서와 같이 21, 25, ...,99 라고 가정한다면, 64라는 단말번호를 갖는 사용자가 멤버 리스트에 포함되어 있는지 확인하기 위해서 도 4에서 표현한 노드들
Figure 112005068587092-pat00037
이 방문되며, 이는 다음과 같은 검색 의사(psuedo) 알고리즘을 통해서 달성된다.
Figure 112005068587092-pat00038
위의 알고리즘에서 right(n)는 n 노드의 오른쪽 노드를 의미하며, down(n)는 n 노드의 아래 노드를, element(n)는 n 노드의 값(앞서 가정한 내용에 의해, 사용 자의 단말번호)을 의미한다.
멤버십 관리부(110)가 멤버십 리스트 자료구조(data structure)를 생성하는 방법과 생성된 멤버십 리스트 자료구조에서 특정 멤버를 검색하는 방법이 상기에 설명되었다.
이하는 상기와 같이 생성된 자료구조를 기반으로 사용자 멤버십 리스트에 대한 무결성을 보장하는 정보를 생성하는 방법을 앞서의 도 4와 도 5를 통해 설명한다.
도 5는 본 발명에 따른 멤버십 리스트 자료구조에서의 노드를 도식화 한 것이다. 이때에 멤버십 리스트는 콘텐츠를 사용할 정당한 권한을 가지고 있는 사용자 리스트와 실질적으로 동일하다.
각 노드는 하나의 멤버(즉, 개별 콘텐츠 사용자)에 대한 정보를 포함하고 있는데, 멤버의 고유번호(
Figure 112005068587092-pat00039
), 키 생성에 사용되는 입력 값(
Figure 112005068587092-pat00040
), 사용자의 콘텐츠 사용제한 정보(
Figure 112005068587092-pat00041
)(111)와 멤버에 대한 추가적인 정보(112)를 갖는다.
멤버의 고유번호(
Figure 112005068587092-pat00042
)는 상기에 예를 들어 설명한 사용자의 단말번호와 같은 정보이며, 키 생성에 사용되는 입력 값(
Figure 112005068587092-pat00043
)는 앞서 설명한 단방향 해쉬함수
Figure 112005068587092-pat00044
의 입력 값으로 사용되는 정보이며, 콘텐츠 사용제한 정보(
Figure 112005068587092-pat00045
)는 생성된 키를 통해 사용될 수 있는 콘텐츠의 사용제한 정보(예를 들어, 콘텐츠 사용가 능시간)를 정의한다. 콘텐츠 사용제한 정보(
Figure 112005068587092-pat00046
)는 이후 설명될 사용자 단말(300)의 콘텐츠 뷰어에서 콘텐츠 사용을 세밀하게 제한하기 위한 정보로 사용된다.
멤버에 대한 추가적인 정보(112)는 해당 멤버에 대한 서비스 개인화 혹은 다른 부가적인 안전장치, 예를 들어, 키 생성에 필요한 추가 정보, 키 생성 함수의 변경정보 등을 마련하기 위한 것으로, 일반적인 내용이므로 별도의 설명은 생략한다.
앞서 설명한 것과 같이 생성된 자료구조를 기반으로 사용자 멤버십 리스트에 대한 무결성을 보장하는 정보를 생성하는 방법은 해쉬함수
Figure 112005068587092-pat00047
와 각 멤버노드가 갖는 정보(111)를 사용하며, 아래와 같은 함수 f(n) 의 정의를 통해 계산된
Figure 112005068587092-pat00048
와 계산된 시점의 시간 값 정보를 해쉬한 값, 즉,
Figure 112005068587092-pat00049
에 콘텐츠 제공자의 개인키(
Figure 112005068587092-pat00050
)로 서명함으로써 이루어진다.
상기의
Figure 112005068587092-pat00051
는 도 4의 Initial Node와 같으며, 해쉬함수
Figure 112005068587092-pat00052
는 일반적인 특성을 갖는 해쉬함수로 상기에 사용된
Figure 112005068587092-pat00053
또는
Figure 112005068587092-pat00054
를 사용할 수도 있다.
함수 f(n) 의 정의는 다음과 같다.
Figure 112005068587092-pat00055
위의 f(n) 정의에서 r은 right(n)을, d는 down(n)을 의미하며, e(n)은
Figure 112005068587092-pat00056
를 의미한다. up(r)은 노드 r의 위 노드를 의미하는데, 도 5의 노드 구조로는 쉽게
Figure 112005068587092-pat00057
인지를 확인할 수 없다. 따라서
Figure 112005068587092-pat00058
를 계산하기 위해, 노드에 윗 노드를 가리키는 추가적인 포인터를 두거나 다른 방법을 사용하여 확인할 수도 있다.
기존 사용자의 삭제 또는 변경 혹은 신규 사용자의 등록과 같이 사용자 정보를 기반으로 생성된 자료구조가 변경된 경우에는, skip lists 수정 알고리즘을 통해 자료구조를 변경하고, 변경된 자료구조를 통해 무결성을 보장하는 정보를 상기에 설명한 방법과 같이 생성하여, 추가 혹은 삭제된 사용자 정보와 새로 생성된 무결성을 보장하는 정보가 콘텐츠 배포자의 멤버십 관리서버에 전달되어야 하는 것은 별도로 설명하지 않아도 자명한 사항이다.
이상 멤버십 관리부(110)가 멤버십 리스트 자료구조와 생성된 자료구조를 기 반으로 사용자 멤버십 리스트에 대한 무결성을 보장하는 정보를 생성하는 방법을 설명하였다. 이제 멤버십 리스트 자료구조와 무결성을 보장하는 정보를 콘텐츠 배포자(200)의 멤버십 관리 서버(220)에 전달하면 멤버십 관리 서버(220)는 해당 멤버십 리스트를 관리할 수 있게 된다.
멤버십 관리 서버(220)가 상기 설명한 콘텐츠 제공자의 멤버십 관리부에서와 같은 자료구조를 생성하기 위해서, skip lists를 생성할 때 사용된 정보, 예를 들어, 각 멤버의 레벨 정보, 즉 도 4에서 53의 값을 갖는 멤버노드의 레벨은 3, 64의 값을 갖는 멤버노드의 레벨은 1과 같은 정보가 필요할 수 있다. 이와 같은 정보는 skip lists의 자료구조를 사용하는 경우에 필요한 것이며, 다른 정보구조를 사용하는 경우에는 그에 따른 다른 정보가 필요할 수 있다.
도 6은 본 발명에 따른 콘텐츠 서버 구성의 예를 블록으로 도시한 것이다.
콘텐츠 서버(210)는 콘텐츠 접근을 제어하는 접근제어부(211), 암호화된 콘텐츠를 저장하고 있는 콘텐츠 저장부(213), 콘텐츠 저장부(213)에 저장된 콘텐츠를 사용자에게 효과적으로 전달하기 위한 콘텐츠 전송부(212), 콘텐츠 제공자 혹은 콘텐츠 배포자의 특정 서버와 통신하기 위한 통신부(214)로 구성된다.
접근제어부(211)는 콘텐츠 배포자의 부가적인 배포정책에 의해 사용자의 콘텐츠 접근을 제어하는 모듈로서, 과금, 사용자의 신용상태, 신분(예를 들어, 미성년자 혹은 성인) 등의 요소들을 근거로 사용자의 콘텐츠 접근을 제한하는 기능을 제공한다. 예를 들어, 어떤 사용자가 콘텐츠 제공자가 제공한 콘텐츠 사용자 리스트에 포함되어 있더라도, 과금 등의 문제로 콘텐츠 접근을 일시적으로 제한할 수 있는 기능을 제공한다.
콘텐츠 전송부(212)는 암호화된 콘텐츠를 콘텐츠 사용자에게 효과적으로 전송하기 위한 모듈로, 콘텐츠의 파일 타입(음악, 동영상, 텍스트, 등), 크기 등과 콘텐츠 배포자의 망 구성에 따라 그 전송방식은 여러 가지 방식으로 구현될 수 있다. 본 발명에서는 이러한 콘텐츠 전송 방식에 대해서 별도로 한정하지 않으며, 다양한 방법을 사용할 수 있다.
콘텐츠 저장부(213)는 통상적으로 데이터베이스를 활용하여, 중간 혹은 대규모의 암호화된 콘텐츠를 저장, 관리하는 기능을 제공하나, 텍스트와 같은 적은 크기의 콘텐츠는 파일로 혹은 별도로 저장하지 않고 메모리 상에서 관리될 수 있다.
통신부(214)는 콘텐츠 제공자 또는 콘텐츠 배포자의 특정 서버와 통신하여, 암호화된 콘텐츠를 등록받거나, 콘텐츠를 요청한 사용자의 정보 등을 전송받는 기능을 제공한다.
도 7은 본 발명에 따른 멤버십 관리 서버 구성의 예를 블록으로 도시한 것이다.
멤버십 관리 서버(220)는 콘텐츠 제공자가 제공한 콘텐츠 사용자 정보를 관리하는 멤버십 관리부(221)와 통신 서버 또는 콘텐츠 제공자의 시스템과 정보를 주고받기 위한 통신부(222), 멤버십 리스트 백업 저장부(223)로 구성된다.
멤버십 관리부(221)는 관리하고 있는 멤버십 정보를 기반으로 통신서버가 요청한 "특정 사용자가 특정 콘텐츠 제공자의 멤버십 리스트에 포함되어 있는가?"에 대한 질문에 응답하기 위한 정보처리 과정을 수행하여, 그 결과를 통신서버에 전달 한다. 또한 단일 콘텐츠 제공자의 멤버십 리스트 관리뿐만 아니라, 다수의 콘텐츠 제공자가 존재할 경우에는 다수의 멤버십 리스트(224)를 효과적으로 관리하는 기능을 제공한다.
통신부(222)는 콘텐츠 제공자의 시스템이나 통신서버와 연결되어 멤버십 정보를 받거나 멤버십 확인 요청에 대한 검색 결과를 되돌려 주는 기능을 수행한다.
멤버십 리스트 백업 저장부(223)는 멤버십 관리 서버가 중단되어 재 구동되는 경우에도 동일한 멤버십 리스트 자료구조를 유지할 수 있도록, 메모리상에 저장된 멤버십 리스트 자료구조를 데이터베이스 혹은 파일에 저장하는 기능을 수행한다.
멤버십 관리부(221)가, 콘텐츠 배포자가 멤버십 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 30 단계를 수행하는데 있어서, 사용자 u가 멤버십 리스트에 포함되어 있는지의 확인은, 앞서 설명한, skip lists의 검색 알고리즘(search(u))을 통해,
Figure 112005068587092-pat00059
시간 내에 계산됨을 쉽게 알 수 있다.
다만 본 발명에 따라, 콘텐츠 배포자가 신뢰할 수 없는 중개자이더라도 콘텐츠는 정확히 지정된 콘텐츠 사용자에게만 배포될 수 있어야 한다는 본 발명의 목적을 달성하기 위해, 검색된 멤버십 리스트가, 악의적인 목적을 가진 누군가에 의해, 수정되지 않았음을 판단할 수 있는 근거 자료를 통신서버에 제시할 수 있어야 하는데, 근거 자료를 생성하는 psuedo 알고리즘은 다음과 같다.
Figure 112005068587092-pat00060
위의 알고리즘 수행 전에 실행한, 사용자 u가 멤버십 리스트에 포함되어 있는지를 검색하는 과정 동안 방문한 노드들의 집합을 방문된 역순으로 정렬하여,
Figure 112005068587092-pat00061
라고 정의한다. 도 4의 예를 통해 설명한다면 이 노드의 집합은
Figure 112005068587092-pat00062
이 된다. 그리고 상기 알고리즘을 통해 생성된 결과의 집합은
Figure 112005068587092-pat00063
이라 정의한다.
생성된 집합 Q(u)는 멤버십 리스트의 무결성을 확인하는데 사용되며, 아래 통신 서버 구성의 예 설명에서 그 용도가 명확해 진다.
Figure 112005068587092-pat00064
는 skip lists 자료구조에서 모든 멤버들을 포함하는 리스트(도 4의 예에서 제일 아래쪽의 리스트임)를 의미한다.
각 노드에 대해 계산되는 함수 f(x) 값은 알고리즘 수행 시마다 계산될 필요 없이, 앞서 설명한 노드의 추가정보 필드(112)에 두어, 한번만 계산될 수 있다.
위의 알고리즘은 검색 알고리즘에서 방문된 노드들을 스택(stack) 자료구조에 넣어두어 본 발명이 속한 기술분야의 당업자면 용이하게 구현할 수 있다.
결론적으로, 멤버십 관리부에 의해 통신 서버에 전달되는 정보는 검색결과가 true인 경우에는 노드가 가진 u, CK, T와 함께 집합 Q(u)가 제공되며, 검색결과가 false인 경우에는 다음의 정보가 제공된다.
(이하에서는 노드의 사용자(u), 키 생성에 사용되는 입력값(CK), 사용자의 콘텐츠 사용제한 정보(T)를 단순하게 u, CK, T라고 기재한다.)
Figure 112005068587092-pat00065
위에서 r은 right(u)를, 실제 검색대상인 u는
Figure 112005068587092-pat00066
의 멤버가 아니기 때문에, rr은 right(r)을 의미한다. 여기서 u는 집합
Figure 112005068587092-pat00067
에서 검색대상 멤버보다 작은 가장 큰(largest member less than) 멤버를 의미한다.
element(n)은 노드 n의 사용자(u), 키 생성에 사용되는 입력값(CK), 사용자의 콘텐츠 사용제한 정보(T)를 의미한다. 위와 같은 정보가 필요한 이유를 다시 설명하면, z를 계산할 때 멤버 리스트 내 모든 노드의 정보가 포함되게 하기 위해서다.
검색 실패 시에 부가적으로 제공되는 정보는 Q(u)가 정확한지 확인하기 위함이다. 자세히 말하면, Q(u)의 첫 번째 멤버의 값이 변경되지 않았음을 확인하기 위한 것이다. 앞서 설명한 f(n)의 정의를 보면 이러한 부가적인 정보가 필요한 이유를 확인할 수 있다.
도 4의 예를 들어 설명하면, 64라는 고유번호를 갖는 멤버에 대한 검색결과는 64 노드의 u, CK, T와
Figure 112005068587092-pat00068
이며, 60이라는 고유번호를 갖는 비멤버에 대한 검색결과는 element(75), element(64),
Figure 112005068587092-pat00069
가 된다.
도 8은 본 발명에 따른 통신 서버 구성의 예를 블록으로 도시한 것이다.
통신 서버(230)는 멤버십 관리 서버(220)로부터 전송된 특정 사용자의 멤버십 관련 정보를 통해 최종적으로 사용자의 멤버십을 확인하는 멤버십 확인부(231), 콘텐츠 배포자의 사용자(예를 들어, 특정 이동통신망에서의 이동통신 사용자)에 대한 인적사항, 사용자 관리에 필요한 정보 등을 저장한 사용자 저장부(233)로부터 콘텐츠를 요청한 사용자의 정보를 획득하는 사용자 관리부(232), 콘텐츠 사용자, 콘텐츠 서버, 멤버십 관리 서버와 연결되어 필요한 정보들을 주고받기 위한 통신부(234)로 구성된다.
멤버십 확인부(231)는 콘텐츠를 요청한 사용자의 고유번호(
Figure 112005068587092-pat00070
)를 멤버십 관리 서버에 전달하고, 상기 고유번호를 갖는 사용자가 상기 콘텐츠의 콘텐츠 제공자가 제공한 멤버십 리스트에 포함되어 있는지 확인 요청한다.
콘텐츠를 요청한 사용자의 고유번호(
Figure 112005068587092-pat00071
)는 예를 들어, 사용자 단말로 사용되는 이동통신전화기의 전화번호이거나 사용자 저장부(233)로부터 획득된 고유한 사용자구분번호로 콘텐츠 제공자와 사용자 구분을 위해 사전에 협의된 정보가 될 수 있다.
멤버십 확인부(231)는 앞서 설명한 바와 같이 멤버십 관리 서버의
멤버십 관리부에 의해 생성된 확인 요청 결과(검색결과와 Q(x) 또는
Figure 112005068587092-pat00072
)를 전송받고,
Figure 112005068587092-pat00073
(단, V는 상기의 요청결과에 따라
Figure 112005068587092-pat00074
또는
Figure 112005068587092-pat00075
또는
Figure 112005068587092-pat00076
임)를 계산하여, 결과값 z가 콘텐츠 제공자가 서명한 z(본 발명의 제 20단계에서 이러한 정보를 알게 된다)와 동일한가를 확인하고(이때에 타임스탬프 t도 확인한다), 상기 콘텐츠 요청자가 멤버십 리스트에 포함되어 있는지를 최종 판정한다.
이때에 결과 값 z와 콘텐츠 제공자가 서명한 z를 비교하여 동일한가를 확인할 때에, 콘텐츠 제공자가 서명한 z값은 20 단계에서 전달받은 정보이다. 그리고 동일한가를 확인할 때에 타임스탬프 t도 확인한다.
최종 판정 결과 z가 불일치하는 경우, 즉, 누군가가 불법적으로 멤버십 리스트 정보를 변경한 경우에는 전체 멤버십 리스트를 콘텐츠 제공자로부터 다시 제공받아, 멤버십 관리 서버에 등록한다.
최종 판정 결과, 콘텐츠를 요청한 사용자가 콘텐츠에 대한 사용권한을 가지고 있다고 판단되면, 상기 무결성을 확인하기 위해 사용했던 정보와 요청 콘텐츠에 접근할 수 있는 정보, 그리고 u, CK, T를 사용자 즉, 사용자가 사용하는 단말에게 전송한다. 사용권한을 가지고 있지 않다고 판단되면, 사용자가 요청한 콘텐츠 제공을 거절한다.
상기에, 콘텐츠 배포자가 멤버십 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 30 단계와 콘텐츠 배포자가 사용권한을 가진 사용자에게 콘텐츠 제공자가 콘텐츠 배포자에 등록한 암호화된 콘텐츠에 접근하고 사용할 수 있는 정보를 전달하는 40 단계가 설명되었다.
이하에서는 콘텐츠 사용자가 암호화된 콘텐츠를 복호화하기위한 키를 생성하고 암호화된 콘텐츠를 복호화 하여 사용자에게 부여된 사용제한 범위이내에서 콘텐츠를 사용하는 50 단계를 설명한다.
도 9는 본 발명에 따른 사용자 단말 장치 구성의 예를 블록으로 도시한 것이다.
사용자 단말(300)은 암호화된 콘텐츠를 복호화 할 수 있는 키를 생성하는 콘텐츠 키 생성부(310), 콘텐츠를 복호화하고 사용자에게 부여된 사용제한 범위 내에서 사용자가 콘텐츠를 사용할 수 있도록 하는 콘텐츠 뷰어(320), 10 단계에서 설정된 콘텐츠 제공자와 공유하는 비밀정보를 관리하는 비밀값 저장부(330), 암호화된 콘텐츠를 전송받기 위한 콘텐츠 요청부(340)로 구성된다.
콘텐츠 키 생성부(310)는 앞의 40 단계에 의해 전송된 CK와 이전 콘텐츠 키를 입력 값으로 받아 다음과 같은 수식으로 콘텐츠 키를 생성한다.
Figure 112005068587092-pat00077
위의 수식은 본 발명에서 콘텐츠 키 생성부가 수행하는 방법을 한정하는 것이 아니라 하나의 예시로 설명하기 위함이다. 즉, 이전 콘텐츠 키와 CK 이외의 정보가 함께 콘텐츠 키 생성에 포함될 수 있으며, 같은 입력 값에 대해 다른 방법으로 콘텐츠 키가 생성될 수도 있다. 즉, 해쉬함수
Figure 112005068587092-pat00078
이 키로 사용되기에 작은 엔 트로피(entropy)의 결과를 제공한다면, 해당 결과로는 키로서 역할하기 어려우므로, 이를 보완 및/혹은 확장할 필요가 있다.
비밀값 저장부(330)은 본 발명의 제 1단계에서 콘텐츠 키를 생성하기 위해 정의된 초기화 값
Figure 112005068587092-pat00079
를 안전하게 관리하는 기능을 제공하기 위한 모듈로, temper-resistant 특성을 제공하는 하드웨어 장치(예를 들어, 스마트카드)나 기타 추가적인 소프트웨어적인 장치로 구성될 수 있다. 본 발명에서는 이러한 장치 사용에 대해 제한하지 않는다.
콘텐츠 요청부(340)는 통신서버가 제공한 콘텐츠에 접근할 수 있는 정보를 사용하여 해당 콘텐츠를 사용자 단말로 가져오는 기능을 제공한다. 콘텐츠를 사용자 단말로 가져오는 방법은 콘텐츠의 종류와 크기, 콘텐츠 배포자의 망 구성에 따라 달라질 수 있다.
콘텐츠 뷰어(320)는 통신 서버가 제공한 정보를 기반으로 콘텐츠 키 생성부가 생성한 키가 콘텐츠 사용권한을 가진 사용자에게 부여된 것임을 확인하고, 콘텐츠 요청부가 제공한 암호화된 콘텐츠를 콘텐츠 키 생성부가 생성한 키로 복호화 하여 사용자에게 콘텐츠를 제공하는 기능을 제공한다. 예를 들어, 통신 서버가 제공한 사용자 고유번호 u가 이동통신번호라 가정한다면, 사용자 단말의 이동통신번호와 일치하는지 여부를 확인한다. 이때에 u가 불법적인 의도로 변경되지 않았음을 확인하는 방법은 통신서버가 멤버십 리스트가 불법적으로 변경되지 않았음을 확인하는 수식을 사용하여 실행될 수 있다.
이때 통신 서버가 제공한 정보 중, 콘텐츠의 사용제한 정보 T가 사용되어 콘텐츠 뷰어(320)는 사용자가 해당 콘텐츠를 사용할 수 있는 권한을 세밀히 제어할 수도 있는 기능을 제공한다. 본 발명의 예에서 사용제한정보 T는 콘텐츠의 사용방법(usage: 콘텐츠의 인쇄, 복사, 변경, 수정 등)의 정보를 포함할 수도 있는데, 예를 들면, T가 XML(eXtensible Markup Language) 문서에 대한 해쉬 값이고, 상기 XML 문서는 콘텐츠의 사용방법에 대한 자세한 제약사항들을 포함할 수 있다.
지금까지 본 발명의 구성 및 작용을 설명하기 위해, 콘텐츠 사용자마다 개별적인 키를 제공하는 것으로 예를 들어 설명하였다. 그러나 대규모 사용자를 대상으로 동일한 콘텐츠를 제공하는 경우에는 개인마다 부여된 콘텐츠 키는 개인마다 콘텐츠를 암호화하여야 한다는 문제로 부담이 될 수 있다.
이러한 문제는 다음과 같이 해결될 수 있다.
첫 번째로, 사용자들을 그룹으로 관리하여, 같은 그룹의 사용자들에게는 키 생성을 위한 초기화 값
Figure 112005068587092-pat00080
와 콘텐츠 키 생성 시 사용되는 CK를 동일하게 제공한다.
두 번째로, 위에서 설명한 콘텐츠 키를 콘텐츠 서버의 콘텐츠 사용자 인증용 키로 사용하여, 인증된 사용자에 한해 비밀통신채널을 통해 콘텐츠 키를 내려주는 방법을 사용한다.
세 번째로, 그룹 키 알고리즘을 적용하여 본 발명에서 설명하는 일부 방법들을 수정하여 적용할 수 있을 것이다.
본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 본 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 상기의 설명에 포함된 예들은 본 발명에 대한 이해를 위해 도입된 것이며, 이 예들은 본 발명의 사상과 범위를 한정하지 않는다. 예를 들면, 상기의 설명에서는 통신망의 예로 인터넷이나 이동통신망을 주로 들었으나, 이는 PSTN과 같은 공중 전화 통신망과 같은 것을 이용해도 가능하며, 상기의 예들 외에도 본 발명에 따른 다양한 실시 태양이 가능하다는 것은, 본 발명이 속한 기술 분야에 통상의 지식을 가진 사람에게는 자명할 것이다. 본 발명의 범위는 전술한 설명이 아니라 청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
또한 본 발명에 따른 상기의 각 단계는 일반적인 프로그래밍 기법을 이용하여 소프트웨어적으로 또는 하드웨어적으로 다양하게 구현할 수 있다는 것은 이 분야에 통상의 기술을 가진 자라면 용이하게 알 수 있는 것이다.
그리고 본 발명의 일부 단계들은, 또한, 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, CD-RW, 자기 테이프, 플로피디스크, HDD, 광 디스크, 광자기 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것 도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
본 발명에 의하면, 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성할 수 있는 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하고, 콘텐츠 사용권한을 가진 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 포함한 데이터를 생성하고, 사용자가 콘텐츠를 요청하면 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 상기 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하고, 사용권한을 가진 것으로 판별된 사용자에게 암호화된 콘텐츠와 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하여, 콘텐츠 배포자의 신뢰성에 상관없이, 콘텐츠 사용권한을 가진 사용자에게만 콘텐츠를 안전하게 전달, 사용자가 원하는 콘텐츠를 효과적으로 사용할 수 있는 장점을 제공한다.
콘텐츠 제공자가 콘텐츠 배포자에게 전달한 콘텐츠 사용권한을 가진 사용자들의 리스트가 콘텐츠 제공자의 도움 없이는 변경이 불가능하며, 콘텐츠 사용자가 콘텐츠 제공자와의 접촉 없이 콘텐츠 배포자의 도움만으로도 효율적으로 암호화된 콘텐츠를 사용할 수 있도록 하며, 콘텐츠 배포자가 콘텐츠 제공자가 제공한 정보만으로는 콘텐츠를 확인하거나 변경할 수 없게 하며, 추가적으로는, 사용자에게 제공된 콘텐츠의 사용권한을 사용자의 단말장치에서 사용 콘텐츠 별로 세밀하게(예를 들어, 콘텐츠의 이용시간제한, 콘텐츠의 복제(copy) 및 인쇄(printing) 등에 대한 권리제한, 등) 제어할 수 있게 한다.
또한 불법적인 제 3자가 콘텐츠 사용자 리스트를 변경 즉, 사용권한을 가진 사용자의 삭제 혹은 사용권한을 가지지 않은 사용자를 추가하더라도, 불법적 사용자 리스트 변경이 실시간으로 간단히 확인되어, 콘텐츠 사용자 리스트를 안전하게 보호할 수 있는 장점을 제공한다.
결국 본 발명을 통해 날로 사용이 늘어가고 있는 디지털 콘텐츠를 배포자가 누구이건 신경쓰지 않더라도 안전하게 배포하여 사용할 수 있는 효과적인 수단을 제공하게 된다.

Claims (18)

  1. (a) 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성할 수 있는 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 단계;
    (b) 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 포함한 데이터를 생성하는 단계;
    (c) 사용자가 콘텐츠를 요청하면 상기 사용자들의 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 상기 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 단계; 및
    (d) 사용권한을 가진 것으로 판별된 사용자에게 암호화된 콘텐츠와 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하는 단계;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  2. (a) 콘텐츠 제공자가 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성하기 위한 초기화 값을 포함하는 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 단계;
    (b) 상기 콘텐츠 제공자가 콘텐츠 사용권한을 가진 사용자들의 리스트와 상기 리스트의 무결성을 보장해주는 정보를 포함하는 데이터를 생성하여 콘텐츠 배포자에게 전달하는 단계;
    (c) 사용자가 콘텐츠를 요청하면 콘텐츠 배포자는 상기 전달받은 리스트와 리스트의 무결성을 보장해주는 정보를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠의 사용권한을 가진 자인지 판별하는 단계; 및
    (d) 콘텐츠 배포자가 사용권한을 가진 것으로 판별된 사용자에게 콘텐츠 제공자가 콘텐츠 배포자에 등록한 암호화된 콘텐츠에 접근하여 사용할 수 있는 정보를 전달하는 단계;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 (a) 단계에서, 콘텐츠를 암호화하거나 복호화하기 위한 키를 생성하기 위한 제1함수, 사용자들인 멤버들의 멤버십 리스트를 안전하게 관리하기 위한 제2함수, 상기 제1함수의 초기 입력값 및 콘텐츠 제공자의 공개키 정보를 콘텐츠 사용자에게 제공하여 콘텐츠 사용에 대한 권한을 부여하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  4. 제3항에 있어서,
    상기 제1함수는 단방향 해쉬함수이며,
    상기 제2함수는 입력값의 순서에 관계없이 출력값이 결정되는 특성을 가지는 단방향 해쉬함수인 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  5. 제3항에 있어서,
    상기 초기 입력값은 상기 콘텐츠 사용자가 콘텐츠를 이용하기 위해 사용하는 사용자 단말의 하드웨어 정보에 따라 생성될 수 있는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 (b) 단계에서 생성되는 데이터는,
    콘텐츠 제공자는 콘텐츠 사용자의 리스트, 개별 사용자에게 전송될 콘텐츠 복호화 키 생성에 필요한 데이터, 콘텐츠 사용가능시간을 포함하는 사용제한 데이터 및 상기 리스트가 악의적인 목적을 가진 자에 의해 변경되지 않았음을 확인할 수 있는 디지털서명 정보임을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  7. 제1항 또는 제2항에 있어서,
    상기 (c) 단계에서,
    상기 콘텐츠 사용자 리스트를 기반으로 콘텐츠를 요청한 사용자가 콘텐츠 사용권한을 가진 자인지를 검색하고, 검색한 결과가 상기 콘텐츠 사용자 리스트를 기반으로 수행한 것인지를 상기 무결성 보장 정보를 기반으로 판정하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  8. 제1항 또는 제2항에 있0어서,
    상기 (d) 단계에서 전달되는 정보는,
    상기 사용자가 요청한 암호화된 콘텐츠, 콘텐츠 복호화 키 생성에 필요한 데이터, 콘텐츠 사용에 대한 제한 사항을 포함하는 데이터 및 콘텐츠 사용자의 고유 정보를 포함하는 데이터임을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  9. 제8항에 있어서,
    (e) 상기 전달된 정보 및 암호화/복호화를 위한 키를 생성하기 위한 초기화 값을 바탕으로 콘텐츠 사용자가 사용하는 상기 사용자의 고유 정보에 대응하는 단말기에서 암호화된 콘텐츠를 복호화하기 위한 키를 생성하고 암호화된 콘텐츠를 복호화하여 사용자에게 부여된 사용권한 범위 이내에서 콘텐츠를 사용하도록 하는 단계;를 더 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  10. 제9항에 있어서,
    상기 (e) 단계에서,
    상기 전송받은 콘텐츠 복호화 키 생성에 필요한 데이터를 사용하여 콘텐츠 복호화 키를 생성하며, 전송받은 콘텐츠 사용제한 범위 내에서 콘텐츠 복호화 키와 암호화된 콘텐츠를 사용하여 상기 제한 사항에 따라 사용자에게 콘텐츠를 제공하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  11. 제9항에 있어서,
    상기 (e) 단계에서 상기 사용자에게 콘텐츠를 제공하기 위한 사용자 단말기가 상기 사용자의 고유번호에 대응하는 경우에만 복호화 키 생성, 복호화 키를 이용하여 암호화된 콘텐츠 디코딩 혹은 사용자에게 콘텐츠를 제공하기 위한 재생의 과정이 수행되는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 방법.
  12. 콘텐츠 배포자에게 암호화된 콘텐츠와 콘텐츠의 사용권한을 갖는 사용자들의 멤버십 리스트 정보를 제공하는 콘텐츠 제공자; 및
    암호화된 콘텐츠를 관리하는 콘텐츠 서버, 상기 콘텐츠 제공자가 제공한 멤버십 리스트 정보를 관리하는 멤버십 관리 서버 및 콘텐츠를 요청한 사용자들에게 암호화된 콘텐츠를 제공할지 여부를 상기 콘텐츠 제공자가 제공한 정보를 기반으로 판별하고 사용자가 상기 콘텐츠 서버에 연결하여 암호화된 콘텐츠를 사용할 수 있도록 정보를 제공하는 통신 서버를 포함하는 콘텐츠 배포자;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  13. 제12항에 있어서,
    상기 콘텐츠 제공자는,
    콘텐츠 사용자의 리스트를 관리하는 멤버십 관리부;
    콘텐츠 사용자의 정보를 저장하기 위한 사용자 저장부;
    콘텐츠의 암호화 및 관리를 위한 콘텐츠 관리부; 및
    원(original) 콘텐츠를 저장하기 위한 콘텐츠 저장부;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  14. 제12항에 있어서,
    상기 콘텐츠 서버는,
    콘텐츠에 대한 사용자의 접근을 제어하는 접근제어부;
    암호화된 콘텐츠를 저장하고 있는 콘텐츠 저장부; 및
    상기 콘텐츠 저장부에 저장된 콘텐츠를 사용자에게 전달하기 위한 콘텐츠 전송부;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  15. 제12항에 있어서,
    상기 멤버십 관리 서버는,
    상기 콘텐츠 제공자가 제공한 콘텐츠 사용자 정보를 관리하는 멤버십 관리부; 및
    멤버십 리스트를 파일 혹은 데이터베이스 시스템에 저장하기 위한 멤버십 리스트 백업 저장부;를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  16. 제12항에 있어서,
    상기 통신 서버는,
    상기 멤버십 관리 서버로부터 전송받은 특정 사용자의 멤버십 관련 정보를 통해 최종적으로 사용자의 멤버십을 확인하는 멤버십 확인부;
    사용자에 대한 인적사항, 사용자 관리에 필요한 정보를 포함한 데이터를 저장하는 사용자 저장부; 및
    상기 사용자 저장부로부터 콘텐츠를 요청한 사용자의 사용자고유번호, 콘텐츠의 접근제어에서 요구되는 데이터를 포함하는 정보를 수집하는 사용자 관리부; 를 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  17. 제12항에 있어서,
    상기 통신서버로부터 전달받은 정보를 기반으로 암호화된 콘텐츠에 접근하고 상기 콘텐츠를 복호화하여 사용자에게 제공하는 사용자 단말;을 더 포함하는 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
  18. 제17항에 있어서,
    상기 사용자 단말은,
    암호화된 콘텐츠를 복호화할 수 있는 키를 생성하는 콘텐츠 키 생성부;
    콘텐츠 제공자가 전송한 별도의 비밀정보가 있는 경우 그 비밀정보를 관리하는 비밀값 저장부;
    암호화된 콘텐츠를 전송받기 위한 콘텐츠 요청부; 및
    콘텐츠를 복호화하고 사용자에게 부여된 콘텐츠 사용조건 범위 내에서 사용자가 콘텐츠를 사용할 수 있도록 하는 콘텐츠 뷰어;로 구성된 것을 특징으로 하는 디지털 콘텐츠를 안전하게 배포하는 장치.
KR1020050113846A 2005-11-26 2005-11-26 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치 KR100656402B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050113846A KR100656402B1 (ko) 2005-11-26 2005-11-26 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치
US11/604,516 US20070124313A1 (en) 2005-11-26 2006-11-27 Method and apparatus for secure digital content distribution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050113846A KR100656402B1 (ko) 2005-11-26 2005-11-26 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR100656402B1 true KR100656402B1 (ko) 2006-12-11

Family

ID=37732926

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050113846A KR100656402B1 (ko) 2005-11-26 2005-11-26 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치

Country Status (2)

Country Link
US (1) US20070124313A1 (ko)
KR (1) KR100656402B1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9525666B2 (en) * 2005-01-31 2016-12-20 Unisys Corporation Methods and systems for managing concurrent unsecured and cryptographically secure communications across unsecured networks
US9104669B1 (en) * 2005-03-28 2015-08-11 Advertising.Com Llc Audio/video advertising network
JP5355695B2 (ja) * 2008-09-18 2013-11-27 テレフオンアクチーボラゲット エル エム エリクソン(パブル) グループ権限を使用するコンテンツ管理のための技術
US20170300590A1 (en) * 2010-12-15 2017-10-19 StarClub, Inc. Method and system for transmission of a message to authorized recipients with selected content
US20160255035A1 (en) * 2014-12-29 2016-09-01 StarClub, Inc. Method and system for transmission of a message to authorized recipients with selected content
US9147195B2 (en) * 2011-06-14 2015-09-29 Microsoft Technology Licensing, Llc Data custodian and curation system
US9244956B2 (en) 2011-06-14 2016-01-26 Microsoft Technology Licensing, Llc Recommending data enrichments
JP6189438B2 (ja) * 2012-07-18 2017-08-30 クリプトグラフィ リサーチ, インコーポレイテッド メディア・セキュリティ・コントローラを使用したメディア・アイテムの保護
US11386065B2 (en) * 2017-01-31 2022-07-12 Salesforce.Com, Inc. Database concurrency control through hash-bucket latching
US10691696B2 (en) 2017-01-31 2020-06-23 Salesforce.Com, Inc. Key-value storage using a skip list
JP2022124605A (ja) * 2021-02-16 2022-08-26 セイコーエプソン株式会社 印刷システム、及び、サーバー

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087594A1 (en) 2001-01-03 2002-07-04 International Business Machines Corporation Methods, systems and computer program products for subscriber customized generation of publications
JP2005027243A (ja) 2003-07-03 2005-01-27 Internatl Business Mach Corp <Ibm> ディジタル・コンテンツ配信システム、ディジタル・コンテンツ配信方法、そのためのサーバ、クライアント、サーバとしてコンピュータを制御するためのコンピュータ実行可能なプログラムおよびクライアントとしてコンピュータを制御するためのコンピュータ実行可能なプログラム
KR20050032324A (ko) * 2003-10-01 2005-04-07 삼성전자주식회사 공개 키 기반 구조를 이용한 도메인 형성 방법
KR20050039523A (ko) * 2003-10-22 2005-04-29 삼성전자주식회사 휴대용 저장 장치의 디지털 저작권을 관리하는 방법 및 장치
WO2005065174A2 (en) 2003-12-22 2005-07-21 Insworld.Com, Inc. Methods and systems for facilitating the production and distribution of content

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
NZ513862A (en) * 2000-01-21 2001-09-28 Sony Corp Data authentication system
US7203314B1 (en) * 2000-07-21 2007-04-10 The Directv Group, Inc. Super encrypted storage and retrieval of media programs with modified conditional access functionality
US7613917B1 (en) * 2000-09-18 2009-11-03 Navteq North America, Llc Method and system for mass distribution of geographic data for navigation systems
US6876984B2 (en) * 2001-05-31 2005-04-05 Contentguard Holdings, Inc. Method and apparatus for establishing usage rights for digital content to be created in the future
US20030145203A1 (en) * 2002-01-30 2003-07-31 Yves Audebert System and method for performing mutual authentications between security tokens
US7891007B2 (en) * 2002-06-28 2011-02-15 Microsoft Corporation Systems and methods for issuing usage licenses for digital content and services
JP2004302931A (ja) * 2003-03-31 2004-10-28 Fujitsu Ltd 機密コンテンツ管理方法
JP4537882B2 (ja) * 2005-04-18 2010-09-08 株式会社東芝 情報端末装置
US20070082654A1 (en) * 2005-10-07 2007-04-12 Speedus Corp. System to extend service, expand access and protect user data across wireless networks
US8719954B2 (en) * 2006-10-11 2014-05-06 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance-specific basis with definable permitted associated usage rights for the selected content

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087594A1 (en) 2001-01-03 2002-07-04 International Business Machines Corporation Methods, systems and computer program products for subscriber customized generation of publications
JP2005027243A (ja) 2003-07-03 2005-01-27 Internatl Business Mach Corp <Ibm> ディジタル・コンテンツ配信システム、ディジタル・コンテンツ配信方法、そのためのサーバ、クライアント、サーバとしてコンピュータを制御するためのコンピュータ実行可能なプログラムおよびクライアントとしてコンピュータを制御するためのコンピュータ実行可能なプログラム
KR20050032324A (ko) * 2003-10-01 2005-04-07 삼성전자주식회사 공개 키 기반 구조를 이용한 도메인 형성 방법
KR20050039523A (ko) * 2003-10-22 2005-04-29 삼성전자주식회사 휴대용 저장 장치의 디지털 저작권을 관리하는 방법 및 장치
WO2005065174A2 (en) 2003-12-22 2005-07-21 Insworld.Com, Inc. Methods and systems for facilitating the production and distribution of content

Also Published As

Publication number Publication date
US20070124313A1 (en) 2007-05-31

Similar Documents

Publication Publication Date Title
KR100656402B1 (ko) 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치
US7310732B2 (en) Content distribution system authenticating a user based on an identification certificate identified in a secure container
US7484246B2 (en) Content distribution system, content distribution method, information processing apparatus, and program providing medium
US7287158B2 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
US6990684B2 (en) Person authentication system, person authentication method and program providing medium
US7243238B2 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
US7059516B2 (en) Person authentication system, person authentication method, information processing apparatus, and program providing medium
US7100044B2 (en) Public key certificate using system, public key certificate using method, information processing apparatus, and program providing medium
US7103778B2 (en) Information processing apparatus, information processing method, and program providing medium
US7096363B2 (en) Person identification certificate link system, information processing apparatus, information processing method, and program providing medium
CA2341784C (en) Method to deploy a pki transaction in a web browser
US8572372B2 (en) Method for selectively enabling access to file systems of mobile terminals
US8856530B2 (en) Data storage incorporating cryptographically enhanced data protection
US7509685B2 (en) Digital rights management
US20020026427A1 (en) Person authentication application data processing system, person authentication application data processing method, information processing apparatus, and program providing medium
CN105103119A (zh) 数据安全服务系统
CN110352413A (zh) 一种基于策略的实时数据文件访问控制方法与系统
KR100561629B1 (ko) 보안 정보 통합 관리 시스템 및 그 방법
CN105122265A (zh) 数据安全服务系统
US7185193B2 (en) Person authentication system, person authentication method, and program providing medium
CN112926082A (zh) 一种基于区块链的信息处理方法及装置
JPH05298174A (ja) 遠隔ファイルアクセスシステム
JP2001312466A (ja) 携帯コンピューター情報管理システム
Kowalski CRYPTOBOX V2.
GB2400952A (en) Digital rights management billing for a wireless device

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

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee