KR100616217B1 - 프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비 - Google Patents

프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비 Download PDF

Info

Publication number
KR100616217B1
KR100616217B1 KR1020037010683A KR20037010683A KR100616217B1 KR 100616217 B1 KR100616217 B1 KR 100616217B1 KR 1020037010683 A KR1020037010683 A KR 1020037010683A KR 20037010683 A KR20037010683 A KR 20037010683A KR 100616217 B1 KR100616217 B1 KR 100616217B1
Authority
KR
South Korea
Prior art keywords
encrypted
virtual
program
storage medium
network
Prior art date
Application number
KR1020037010683A
Other languages
English (en)
Other versions
KR20040075698A (ko
Inventor
무네키 시마다
도요시 오카다
요우스케 기모토
가즈히로 가네에
겐지로 고마키
Original Assignee
가부시키가이샤 소니 컴퓨터 엔터테인먼트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 소니 컴퓨터 엔터테인먼트 filed Critical 가부시키가이샤 소니 컴퓨터 엔터테인먼트
Publication of KR20040075698A publication Critical patent/KR20040075698A/ko
Application granted granted Critical
Publication of KR100616217B1 publication Critical patent/KR100616217B1/ko

Links

Images

Classifications

    • 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
    • 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/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data

Abstract

본 발명에 따른 방법 및 장치는 처리 장비에서 암호화된 프로그램을 수신하고; 네트워크를 통하여 관리자에게 처리 장비와 관련된 적어도 일부의 식별 정보를 송신하고; 적어도 일부의 식별 정보에 반응하여 네트워크를 통하여 관리자로부터 처리 장비에서 암호화된 해독키를 수신하며; 암호화된 해독키를 해독하고; 해독키를 이용하여 암호화된 프로그램을 해독하고; 식별 정보의 적어도 일부를 이용하여 프로그램을 재암호화하며; 그리고 제 1 저장 매체 내에 식별 정보 및 재암호화된 프로그램을 저장함을 포함하는 등 임의의 기능들을 수행하기 위해 조작가능하다.
식별 정보, 네트워크, 해독키, 암호화, 관리자

Description

프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비{Methods and apparatus for secure distribution of program content}
본 발명은 프로그램 컨텐츠의 안전한 배포에 관한 방법 및 장비에 관한 것이며, 비인증 복사의 방지 및/또는 프로그램 컨텐츠의 배포에 관한 것이다.
프로그램 컨텐츠는 비디오 게임 프로그램들, 워드 프로세서 프로그램들, 스프레드시트 프로그램들 등과 같은 응용 프로그램들; 및 오퍼레이팅 시스템, 부트 프로그램들 등과 같은 시스템 프로그램들을 포함할 수 있다. 컴퓨터 프로그램들과 같은 프로그램 컨텐츠는 전통적으로 시디-롬들(CD-ROMs), 디브이디-롬들(DVD-ROMs) 등과 같이 프로그램 컨텐츠를 포함하는 운송 가능한 저장 매체를 이용하여 최종 사용자에게 배포된다. 프로그램 컨텐츠는 또한 네트워크를 통하여 서버로부터 사용자에게로와 같이 네트워크를 통한 프로그램 컨텐츠의 다운로드를 이용하여 최종 사용자에게 배포된다.
프로그램 컨텐츠의 비인증 복사본이 다수의 최종 사용자들 중에서 제작되고 공유될 수 있기 때문에 프로그램 컨텐츠를 배포하는 전통적인 방법은 안전하지 않다. 예를 들면, 만일 컴퓨터 프로그램이 저장 매체를 이용하여 특정한 최종 사용자에게 배포된다면, 그 사용자는 컴퓨터 프로그램의 비인증 복사본들이 다른 최종 사용자들에 의해 제어되는 기기 상에 배포되고 저장되도록 허용할 수 있다. 일반적으로, 이러한 비인증 복사본들은 하드디스크 드라이브들, CD-ROMs 등에 저장된다. 유사하게, 만일 컴퓨터 프로그램이 네트워크를 통한 전송을 이용하여 최종 사용자에게 배포된다면, 컴퓨터 프로그램의 비인증 복사본들이 제작되고 다른 사용자들에게 배포될 수도 있다. 예를 들면, 일단 컴퓨터 프로그램이 인증된 최종 사용자의 기기 상에 저장된다면, 그 또는 그녀는 저장 매체(예컨대, 광 디스크, 자기 디스크 등)를 이용하거나 또는 전자메일 메시지에 첨부하는 방식으로 다른 사용자에게 그 컴퓨터 프로그램의 복사본을 전달할 수도 있다.
그러므로, 프로그램 컨텐츠의 안전한 배포를 위한 기술의 새로운 방법 및 장비가 필요하며, 프로그램 컨텐츠의 비인증 복사본들의 확산과 관련되는 문제점들을 해소할 수 있다.
본 발명의 하나 이상의 양상들에 따르면, 장비는 암호화된 프로그램을 수신하기에 조작가능하며, 이 장비는: (ⅰ) 장비에 관련된 적어도 일부의 식별 정보가 네트워크를 통하여 관리자에게 전송될 수 있고, 그리고 (ⅱ) 적어도 일부의 식별 정보에 반응하여 관리자로부터 네트워크를 통하여 암호화된 해독키가 수신되도록, 네트워크를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스와; 암호화된 해독키를 해독하고, 해독키를 이용하여 암호화된 프로그램을 해독하고, 그리고 식별 정보의 적어도 일부를 이용하여 프로그램을 재암호화하기 위해 조작가능한 해독 장치; 및 식별 정보 및 재암호화된 프로그램을 저장하기 위해 조작가능한 제 1 저장 매체를 포함한다.
바람직하게는, 식별 정보는 장비에 실질적으로 고유한 기기 ID를 포함하고; 네트워크 인터페이스는 기기 ID에 반응하여 관리자로부터 네트워크를 통하여 암호화된 해독키가 수신되도록, 네트워크를 통하여 관리자로 기기 ID의 전송을 촉진하기 위해 조작가능하다.
네트워크 인터페이스는 네트워크를 통하여 관리자로부터 암호화된 가상 ID의 수신을 촉진하기 위해 조작가능하며, 가상 ID는 기기 ID와 연관된다. 바람직하게는, 해독 장치는 기기 ID를 이용하여 암호화된 가상 ID를 해독하고, 가상 ID를 이용하여 암호화된 해독키를 해독하고, 해독키를 이용하여 암호화된 프로그램을 해독하고, 그리고 가상 ID를 이용하여 프로그램을 재암호화하기 위해 조작가능하다.
바람직하게는, 제 1 저장 매체는 기기 ID 및 암호화된 가상 ID를 저장하기 위해 조작가능하다. 제 1 저장 매체는 장비와 제거 가능하게 연결될 수 있다.
해독 장치는 기기 ID를 이용하여 암호화된 가상 ID를 해독하고, 그리고 장비가 프로그램을 실행할 수 있도록 가상 ID를 이용하여 재암호화된 프로그램을 해독하기 위해 조작가능한 것이 바람직하다.
장비는 바람직하게는 기기 ID를 포함하는 제 2 저장 매체; 및 제 1 저장 매체 내에 저장된 기기 ID를 제 2 저장 매체 내에 포함된 기기 ID와 비교하고, 그리고 이들이 부합하지 않는 경우에 암호화된 가상 ID를 해독하기 위하여 저장 매체들 중 어느 하나에 포함된 기기 ID를 이용하는 것을 금지하도록 하기 위해 조작가능한 프로세서를 더 포함한다.
프로세서는 제 1 저장 매체 내에 저장된 기기 ID가 제 2 저장 매체 내에 포함된 기기 ID와 부합하지 않는 경우에 장비의 사용자가 재할당 루틴을 선택하도록 요청하기 위해 조작가능한 것이 바람직하다. 네트워크 인터페이스는: 제 1 저장 매체 내에 저장된 기기 ID와 부합하지 않는 경우에 제 2 저장 매체 내에 포함된 기기 ID를 네트워크를 통하여 관리자에게 전송하고; 그리고 네트워크를 통하여 관리자로부터 새로운 암호화된 가상 ID를 수신하는 것을 촉진하기 위해 조작가능하며, 이때 새로운 암호화된 가상 ID의 가상 ID는 제 2 저장 매체 내에 포함된 기기 ID와 관련된 것이다. 바람직하게는, 제 1 저장 매체는 암호화된 가상 ID를 새로운 암호화된 가상 ID로 교체하기 위해 조작가능하다. 해독 장치는 제 2 저장 매체 내에 포함된 기기 ID를 이용하여 새로운 암호화된 가상 ID를 해독하고, 그리고 장비가 프로그램을 실행하도록 가상 ID를 이용하여 재암호화된 프로그램을 해독하기 위해 조작가능한 것이 바람직하다.
본 발명의 하나 이상의 다른 양상들에 따르면, 장비는 암호화된 프로그램을 수신하기 위해 조작가능하며, 장비는: 관리자에 의해 생성된 저장 매체로부터 암호화된 제 1 해독키를 수신하기 위해 조작가능한 저장 매체 인터페이스와; (ⅰ) 장비에 관련된 적어도 일부의 식별 정보가 네트워크를 통하여 관리자에게 전송될 수 있고, 그리고 (ⅱ) 적어도 일부의 식별 정보에 반응하여 관리자로부터 네트워크를 통하여 암호화된 해독키가 수신되도록, 네트워크를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스와; 암호화된 해독키를 해독하고, 해독키를 이용하여 암호화된 프로그램을 해독하고, 그리고 식별 정보의 적어도 일부를 이용하여 프로 그램을 재암호화하기 위해 조작가능한 해독 장치; 및 식별 정보 및 재암호화된 프로그램을 저장하기 위해 조작가능한 제 1 저장 매체를 포함한다.
본 발명의 하나 이상의 다른 양상들에 따르면, 장비는 각각 개개의 처리 장비에 관련되는 개개의 식별 정보가 네트워크를 통하여 처리 장비로 수신될 수 있도록 네트워크를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스와; 각각 처리 장비들 중 하나에 대응하는 개개의 등록 정보 및 그 식별 정보를 포함하여 저장하기 위해 조작가능한 데이터베이스; 및 수신된 식별 정보와 부합하는 식별 정보를 포함하는 등록 정보를 데이터베이스에서 검색하기 위해 조작가능한 데이터 프로세서를 포함하고, 이때 네트워크 인터페이스는 수신된 식별 정보에 반응하여 네트워크를 통하여 처리 장비로 암호화된 해독키의 전송을 촉진하기 위해 조작가능하고, 그리고 해독키는 처리 장비에 위치하는 암호화된 프로그램을 해독하는 데 이용될 수 있다.
본 발명의 하나 이상의 다른 양상들에 따르면, 네트워크 인터페이스는 수신된 식별 정보에 반응하여 네트워크를 통하여 처리 장비로 암호화된 제 2 해독키의 전송을 촉진하기 위해 조작가능하며, 그리고 제 2 해독키는 처리 장비에 위치한 암호화된 프로그램을 해독하는 데 이용될 수 있는 암호화된 제 1 해독키를 해독하는 데 이용될 수 있다.
본 발명의 하나 이상의 다른 양상들에 따르면, 방법은 한 처리 장비에서 암호화된 프로그램을 수신하는 단계와; 처리 장비에 관련된 적어도 일부의 식별 정보를 네트워크를 통하여 관리자에게 전송하는 단계와; 적어도 일부의 식별 정보에 반 응하여 관리자로부터 네트워크를 통하여 처리 장비에서 암호화된 해독키를 수신하는 단계와; 암호화된 해독키를 해독하는 단계와; 해독키를 이용하여 암호화된 프로그램을 해독하는 단계와; 적어도 일부의 식별 정보를 이용하여 프로그램을 재암호화하는 단계; 그리고 식별 정보 및 재암호화된 프로그램을 제 1 저장 매체 내에 저장하는 단계를 포함한다.
본 발명의 하나 이상의 다른 양상들에 따르면, 방법은 한 처리 장비에서 암호화된 프로그램을 수신하는 단계와; 처리 장비에서 암호화된 제 1 해독키를 수신하는 단계와; 네트워크를 통하여 관리자로 처리 장비와 관련된 적어도 일부의 식별 정보를 전송하는 단계와; 적어도 일부의 식별 정보에 반응하여 관리자로부터 네트워크를 통하여 처리 장비에 암호화된 제 2 해독키를 수신하는 단계와; 암호화된 제 2 해독키를 해독하는 단계와; 제 2 해독키를 이용하여 암호화된 제 1 해독키를 해독하는 단계와; 제 1 해독키를 이용하여 암호화된 프로그램을 해독하는 단계와; 적어도 일부의 식별 정보를 이용하여 프로그램을 재암호화하는 단계; 그리고 제 1 저장 매체 내에 식별 정보 및 재암호화된 프로그램을 저장하는 단계를 포함한다.
본 발명의 하나 이상의 다른 양상들에 따르면, 방법은 각각 개개의 처리 장비에 관련되는 개개의 식별 정보를 네트워크를 통하여 처리 장비로부터 수신하는 단계와; 각각 처리 장비들 중 하나에 대응하는 개개의 등록 정보 및 그 식별 정보를 포함하여 데이터베이스 내에 저장하는 단계와; 수신된 식별 정보와 부합하는 식별 정보를 포함하는 등록 정보를 데이터베이스에서 검색하는 단계; 및 수신된 식별 정보에 반응하여 네트워크를 통하여 처리 장비로 암호화된 해독키를 전송하는 단계 를 포함하고, 이때 해독키는 처리 장비에 위치한 암호화된 프로그램을 해독하는 데 이용될 수 있다.
본 발명의 하나 이상의 다른 양상들에 따르면, 방법은 각각 개개의 처리 장비에 관련되는 개개의 식별 정보를 네트워크를 통하여 처리 장비로부터 수신하는 단계와; 각각 처리 장비들 중 하나에 대응하는 개개의 등록 정보 및 그 식별 정보를 포함하여 데이터베이스 내에 저장하는 단계와; 수신된 식별 정보와 부합하는 식별 정보를 포함하는 등록 정보를 데이터베이스에서 검색하는 단계; 및 수신된 식별 정보에 반응하여 네트워크를 통하여 처리 장비로 암호화된 제 2 해독키를 전송하는 단계를 포함하고, 이때 제 2 해독키는 처리 장비에 위치한 암호화된 프로그램을 해독하는 데 이용되는 암호화된 제 1 해독키를 해독하는 데 이용될 수 있다.
본 발명의 또 다른 양상들, 특징들, 이점들 등이 첨부된 도면들과 결부된 이하의 상세한 설명을 통하여 관련 기술에 숙련된 자들에게 명확해질 것이다.
본 발명을 도시하기 위하여, 현재 바람직한 도면 형식으로 도시되었으며, 반면 본 발명이 도시된 정밀한 구성 및 수단으로 한정되지는 않는다.
도 1은 본 발명의 하나 이상의 양상에 따라 하나 이상의 사용자들에게 프로그램 컨텐츠를 배포하는 시스템의 블록도이고;
도 2는 도 1의 시스템의 임의의 부분에 의해 수행되는 임의의 처리 단계들을 도시하는 개념적 블록도 및 순서도이고;
도 3은 도 1의 시스템의 임의의 부분에 의해 수행되는 다른 단계들을 도시하 는 다른 개념적 블록도 및 순서도이고;
도 4는 도 3에 도시된 발명에 따라 수행되는 임의의 처리 단계들을 도시한 순서도이고;
도 5는 예컨대, 도 1의 관리 서버에 의해 수행되는 임의의 처리 단계들을 도시한 다른 순서도이고;
도 6은 본 발명에 따른 임의의 데이터베이스 컨텐츠를 도시한 블록도이고;
도 7은 도 1의 시스템의 부분에 의해 수행되는 임의의 처리 단계들을 도시한 다른 개념적 블록도 및 순서도이고;
도 8은 도 7에 따라 수행되는 다른 처리 단계들을 도시하는 순서도이고;
도 9는 예컨대, 도 1의 고객 단말 장비(4)에 의해 수행되는 하나 이상의 다른 처리 단계들을 도시한 또 다른 개념적 블록도 및 순서도이고;
도 10은 도 9에 따라 수행되는 다른 처리 단계들을 도시한 순서도이고;
도 11은 본 발명의 한 양상에 따라 수행되는 다른 처리 단계들을 도시한 개념적 블록도 및 순서도이고;
도 12는 도 11의 처리 단계들에 관한 상세를 도시한 순서도이고;
도 13은 본 발명의 하나 이상의 양상들에 따라 수행될 수 있는 선택적인 처리 단계들을 도시하는 개념적 블록도 및 순서도이고;
도 14는 도 13의 처리 단계들에 관한 다른 상세를 도시하는 순서도이고;
도 15는 도 13의 처리 단계들에 따른 다른 처리 단계들을 도시하는 개념적 블록도 및 순서도이고;
도 16은 도 15의 처리 단계들에 관한 다른 상세를 도시하는 순서도이고;
도 17은 본 발명의 또 다른 양상을 도시하는 개념적 블록도 및 순서도이고;
도 18은 본 발명의 하나 이상의 양상들에 따른 임의의 데이터베이스 컨텐츠의 블록도이고;
도 19는 도 18의 데이터베이스 컨텐츠의 다른 특징들을 도시하는 블록도이고;
도 20은 도 17의 처리 단계들의 다른 상세를 도시한 순서도이고;
도 21은 본 발명의 하나 이상의 다른 양상들을 도시한 순서도이고;
도 22는 도 21의 발명의 다른 처리 단계들을 도시한 순서도이고;
도 23은 도 22의 발명의 다른 처리 단계들을 도시한 순서도이고; 그리고
도 24는 도 23의 발명의 다른 처리 단계들을 도시한 순서도이다.
도면들을 참조하면, 유사한 번호들이 유사한 요소들을 가리키며, 도 1에는 예컨대, 프로그램 컨텐츠의 비인증 복사본들이 방지되거나 또는 쓸모 없이 표현되도록 안전한 방식으로 다수의 최종 사용자들에게 프로그램 컨텐츠를 배포하기 위해 조작가능한 시스템(10)이 도시되어 있다. 시스템(10)은 바람직하게는 관리 서버(1), 제3자 서버(2), 암호화 서버(3), 및 다수의 고객 단말 장비(4), 모두가 연결된 인터넷과 같은 네트워크(5)를 포함한다. 시스템(10)은 본 발명의 범위로부터 벗어남 없이 다수의 관리 서버들(1), 다수의 제3자 서버들(2), 및 다수의 암호화 서버들(3)을 포함할 수도 있음에 유의한다. 간결하고 명확하게 하기 위하여, 그러한 개개의 서버들 중 오직 하나만이 이하의 상세에서 기술될 것이다.
서버들(1, 2, 3) 각각은 바람직하게는 실체 또는 개인에 의해 유지되고, 제어되고, 그리고/또는 다르게는 관련된다. 참조가 서버 및 그와 교체 가능하게 할당된 실체로 작성될 수 있음에 유의한다.
바람직하게는 의인화 데이터베이스(6)에 조작가능하게 결합된 관리 서버(1)는 바람직하게는 임의의 관리 기능(이 명세서 내 이하 상세에서 보다 많이 기술될 것임)을 수행하도록 요구되는 실체에 의해 유지되고, 제어되고, 그리고/또는 다르게는 관련된다. 관리 서버(1) 및 의인화 데이터베이스(6)는 네트워크 서버 기능 및 데이터베이스 기능을 수행하기에 적합한 공지의(또는 이하 전개되는) 하드웨어를 활용하여 이행될 수도 있다.
제3자 서버(2)는 바람직하게는 프로그램 컨텐츠의 개발자와 같이 관리 서버(1)의 경우와 다른 실체에 의해 제어되고, 유지되고, 그리고/또는 다르게는 관련된다. 실시예에 따르면, 제3자 서버(2)는 컴퓨터 응용 프로그램들, 컴퓨터 시스템 프로그램들 등의 개발자가 될 수 있다. 그러나, 제3자 서버(2)와 관련된 실체는 관리 서버(1)의 경우와 달라야 할 필요는 없으며, 실은 그 둘은 동일할 수도 있음에 유의한다. 예를 들면, 제3자 서버(2)에 의해 수행되는 기능(이 명세서 내 이하 상세에서 보다 많이 기술될 것임)은 관리 서버(1)에 의해 수행될 수도 있다. 제3자 서버(2)는 서버 관련 기능을 수행하기 위한 공지의(또는 이하 전개되는) 하드웨어를 활용하여 이행될 수도 있다.
암호화 서버(3)는 바람직하게는 관리 서버(1)의 경우와 같은 동일한 실체에 의해 제어되고, 유지되고, 그리고/또는 다르게는 관련된다. 그러나, 암호화 서버(3)가 본 발명의 범위로부터 벗어남 없는 다른 실체와 관련될 수도 있다는 점에 유의한다. 암호화 서버(3)는 서버 관련 기능을 수행하는 공지의(또는 이하 전개되는) 하드웨어를 활용하여 이행될 수도 있다. 이러한 기술로부터 명백해지는 바와 같이, 관리 서버(1), 제3자 서버(2), 및 암호화 서버(3)에 의해 수행되는 개개의 기능들은 비록 배포가 바람직하게는 도 1에 도시된 경우와 일치하긴 하지만, 그러한 서버들을 제어하고, 유지하고 그리고/또는 다르게는 관련되는 하나 이상의 서버들 및/또는 하나 이상의 실체들 중에서 배포될 수도 있다.
일반적으로, 고객 단말 장비들(4) 각각은 바람직하게는 공지의 하드디스크 드라이브 하드웨어와 같은 하드디스크 드라이브(7), 및 소니 메모리스틱과 같은 메모리 카드(8)에 조작가능하게 결합된다. 하드디스크 드라이브(7) 및 메모리 카드(8)가 고객 단말 장비(4)로부터 분리된 항목(즉, 바람직하게는 고객 단말 장비(4)에 제거 가능하게 결합된 것)으로써 도시되어 있는 반면, 그것들은 본 발명의 범위 및 사상으로부터 벗어남 없이 고객 단말 장비(4)와 통합되어 위치할 수도 있음이 이해될 수 있다. 고객 단말 장비(4)는 개인용 컴퓨터, 소니 플레이스테이션 2 등과 같은 공지의 하드웨어를 활용하여 이행될 수도 있다.
본 발명의 하나 이상의 양상들에 따르면, 고객 단말 장비(4)는 CD-ROM, DVD-ROM, 전자 메모리 등과 같은 저장 매체를 통하거나 또는 네트워크(5)를 통한 프로그램 컨텐츠의 다운로드를 통하여 컴퓨터 응용 프로그램 등과 같은 안전한 암호화된 프로그램을 수신하기 위해 조작가능한 것이 바람직하다. 안전한 암호화된 컴퓨터 프로그램이 본 발명의 개념 및 범위로부터 벗어남 없이 인증된 실체로부터 얻어지는 한편, 고객 단말 장비(4)는 제3자 서버(2; 예컨대, 네트워크(5)를 통한 다운로드를 통하여)로부터 또는 소프트웨어 개발자 및/또는 제3자 서버(2)와 직접 및/또는 간접으로 관련하여 작업하는 기존 사업자(brick-and-mortar) 배포자로부터 안전한 암호화된 프로그램을 수신한다는 점이 바람직하다. 게다가, 고객 단말 장비(4)는 특정한 실체로부터 안전하게 암호화된 컴퓨터 프로그램을 수신한다는 점이 요구되는 것은 아니며; 실제로 프로그램은 관리 서버(1) 또는 다른 실체로부터 수신될 수도 있다.
유익하게는, 최종 사용자는 그 또는 그녀가 먼저 해독키를 얻고 안전하게 암호화된 컴퓨터 프로그램을 해독함 없이는 고객 단말 장비(4)에서 그 프로그램을 실행할 수 없는 형태(예컨대, 암호화된 소스)의 컴퓨터 프로그램을 받는다. 덧붙여, 만일 안전하게 암호화된 컴퓨터 프로그램이 그 인증된 복사본을 통하여 얻어진다면, 위반한 최종 사용자는 먼저 해독키를 얻지 않고는 그 프로그램을 실행하는 것이 불가능해질 것이다. 이하에서 보다 상세하게 기술되는 바와 같이, 해독키는 오직 인증된 고객 단말 장비(4)에 의해서 얻어질 수 있다.
암호화 서버(3) 및 제3자 서버(2)에 의해 수행되는 임의의 처리 단계들을 도시한 개념적 블록도 및 순서도인 도 2를 참조한다. 이 도면은 안전하게 암호화된 컴퓨터 프로그램이 어떻게 생성되는가에 대한 실시예를 제공한다. 이 실시예에서, 제3자 서버(2)는 그 자신이거나 또는 컴퓨터 시스템 프로그램, 컴퓨터 응용 프로그램 등과 같은 프로그램 컨텐츠를 얻은 다른 실체와 결부된 소프트웨어 개발자와 관련된다. 도 2에 도시된 바와 같이, 제3자 서버(2)는 적어도 하나의 시스템 프로그램과 적어도 하나의 응용 프로그램을 포함한다. 하나 이상의 이들 프로그램들은 네트워크(5)를 통하여 암호화 서버(3)로 전송된다. 그러나, 프로그램 컨텐츠는 예컨대, 저장 매체를 통하여 암호화 서버(3)로 수동적으로 제공될 수도 있음에 유의한다.
암호화 서버(3)는 바람직하게는 프로그램 컨텐츠를 암호화하고 암호화된 프로그램 컨텐츠를 제3자 서버(2)로 반환한다. 암호화 서버(3)는 암호화된 프로그램 컨텐츠를 생성하기 위하여, 공개키 암호화, 대칭키 암호화 등과 같은 공지의 암호화 기술들 중 어떤 것을 이용할 수 있다. 이 실시예에서, 암호화 서버(3)는 암호화된 시스템 프로그램(소스 암호화 시스템 프로그램) 및 암호화된 응용 프로그램(소스 암호화 응용 프로그램)을 제3자 서버(2)로 반환하였다. 비록 본 발명을 실행함에 필요한 것은 아니지만, 암호화 서버(3)는 암호화된 프로그램 컨텐츠를 해독하는 것이 가능한 해독키를 제3자 서버(2)로 제공할 수도 있다. 이하에서 기술되는 것처럼, 제3자 서버(2)는 암호화된 프로그램 컨텐츠를 저장 매체를 통한 수작업으로, 또는 네트워크를 통한 전자 다운로드를 통하여 고객 단말 장비(4)로 배포할 수도 있다. 소스 암호화 프로그램 컨텐츠가 어떻게 배포되는 지에 관련 없이, 최종 사용자는 이하에서 기술되는 어떤 등록 단계들을 수행함 없이는 그 프로그램 컨텐츠를 실행할 수 없는 것이 바람직하다.
소스 암호화 컴퓨터 프로그램을 처리하기 위하여 수행되는 것이 바람직한 어떤 처리 단계들을 도시한 개념적 블록도 및 순서도인 도 3을 참조한다. 도 3에 도 시된 바와 같이, 고객 단말 장비(4)는 바람직하게는 CD-ROM(9)과 같은 저장 매체를 이용하거나 또는 네트워크(5)를 통한 다운로드 작업을 이용하여 소스 암호화 컴퓨터 프로그램을 수신한다. 그러나, 그 소스 암호화 컴퓨터 프로그램을 실행하기 위하여, 고객 단말 장비(4)는 반드시 그 소스 암호화 컴퓨터 프로그램을 바람직하게는 네트워크(5)를 통하여 관리 서버(1)에 등록하여야 한다.
등록 절차 중 적어도 일부의 단계들이 도 4의 순서도에 도시되어 있다. 단계 S20에서, 고객 단말 장비(4)는 위에서 기술한 방법과 동일하게 소스 암호화 컴퓨터 프로그램을 수신하고 저장한다. 단계 S22에서, 사용자는 바람직하게는 그 또는 그녀가 컴퓨터 프로그램을 인스톨하고 실행할 수 있도록 준비하기를 원함을 가리키는 명령어를 제공한다. 이 점에 대해서, 고객 단말 장비(4)는 바람직하게는 사용자의 인스톨 명령어에 반응하여 불러지는 컴퓨터 프로그램을 포함한다. 이 프로그램은 사용자가 소스 암호화 컴퓨터 프로그램을 등록하고 통신부를 부르도록 요청한다(단계 S24).
고객 단말 장비(4)는 바람직하게는 관련 기술에서 알려진 바와 같이 네트워크(5)를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스를 포함하며; 실제로 공지의 네트워크 인터페이스 하드웨어 중 어느 것도 이러한 목적을 위해 사용될 수 있다는 점에 유의한다. 단계 S26에서, 통신 채널은 고객 단말 장비(4)에 의해 초기화되고 그리고 장비(4) 및 관리 서버(1) 사이에서 수립되는 것이 바람직하다. 고객 단말 장비(4)의 네트워크 인터페이스는 바람직하게는 네트워크(5)를 통한 관리 서버(1)로의 장비(4)와 관련된 적어도 일부의 식별 정보의 전송을 촉진 하기 위해 조작가능하다. 특히, 식별 정보는 고객 단말 장비(4)에 실질적으로 고유한 기기 ID를 포함하는 것이 바람직하다. 식별 정보는 소스 암호화 컴퓨터 프로그램을 저장하기 위해 고객 단말 장비(4)에 의해 사용되는 메모리의 종류를 가리키는 매체 ID를 또한 포함할 수 있다.
고객 단말 장비(4)는 소스 암호화 컴퓨터 프로그램 및 이하에서 기술되는 어떤 다른 정보를 저장하기 위해 조작가능한 하드디스크 드라이브(7), 메모리 카드(8) 등과 같은 제 1 저장 매체, 및 기기 ID를 저장하기 위해 조작가능한 ROM(read only memory)과 같은 제 2 저장 매체를 포함하는 것이 매우 바람직하다. 고객 단말 장비(4)의 네트워크 인터페이스는 네트워크(5)를 통하여 관리 서버(1)로 기기 ID(ROM으로부터)를 전송하기 위해 조작가능한 것이 더욱 바람직하다(단계 S28). 매체 ID는 또한 고객 단말 장비(4)로부터 관리 서버(1)로 전송될 수 있다.
도 5를 참조하면, 관리 서버(1)는 네트워크(5)를 통하여 고객 단말 장비(4)로부터 예컨대, 기기 ID(가능하게는 매체 ID)의 식별 정보를 수신한다(단계 S30). 이러한 점에서, 관리 서버(1)는 식별 정보가 네트워크(5)를 통하여 고객 단말 장비(4)로부터 수신될 수 있도록 네트워크(5)를 통한 통신을 촉진하기 위해 조작가능한 네트워크 인터페이스를 포함하는 것이 바람직하다. 단계 S32에서, 관리 서버(1)는 고객 단말 장비(4)로부터 수신되는 기기 ID와 대응되는, 이하 가상 ID라 부르는 다른 ID를 할당한다. 가상 ID는 기존에 존재하는 다수의 ID들 중에서 선택되고, 가상 ID는 기기 ID 또는 몇몇 다른 연산자 상에서 수행되는 숫자조작을 통하여 유도될 수 있고, 또는 다른 공지의 또는 이하 전개되는 기술이 가상 ID를 생성 하는 데 사용될 수 있다는 점이 유의된다.
단계 S34에서, 관리 서버(1)는 고객 단말 장비(4)로부터 수신한 기기 ID(즉, 장비의 제 2 저장 매체(ROM) 내에 저장된 기기 ID)와 부합하는 기존의 기기 ID를 의인화 데이터베이스(6)에서 검색한다. 도 6을 참조하면, 의인화 데이터베이스(6)는 개개의 고객 단말 장비들(4) 중 하나에 대응하는 등록 정보의 각 세트인 개개의 등록 정보를 저장하기 위해 조작가능한 것이 바람직하다. 고객 단말 장비(4)의 적어도 일부의 식별 정보는 기기 ID와 같은 등록 정보 내에 포함된다. 도 6에 도시된 바와 같이, 도 6의 좌측 컬럼에 도시된 것처럼 다수의 기기 ID들이 의인화 데이터베이스(6) 내에 사전에 저장된다. 이들 기기 ID들이 고객 단말 장비들(4) 중 주어진 하나에 대응되고 그리고 그러한 기기 ID들이 개개의 고객 단말 장비(4)에 실질적으로 고유하다는 점이 바람직하다. 관리 서버(1)는 또한 네트워크(5)를 통하여 고객 단말 장비(4)로부터 수신한 기기 ID와 부합하는 등록 정보(예컨대, 기기 ID)를 의인화 데이터베이스(6)에서 검색하기 위해 조작가능한 데이터 프로세서를 포함하는 것이 바람직하다. 공지의 또는 이하 기술되는 데이터 처리 하드웨어 중 어떠한 것도 이러한 목적을 위해서 이용될 수 있다.
다시 도 5로 돌아가서, 단계 S36에서, 의인화 데이터베이스(6) 내에 저장된 기기 ID와 관련된 가상 ID는 관리 서버(1)로 수신된 기기 ID를 전송하는 특정한 고객 단말 장비(4)와 관련된 가상 ID를 말한다. 이러한 관련은 가상 ID가 저장된 기기 ID와 대응하도록 하는 방식으로 의인화 데이터베이스(6) 내에 가상 ID를 저장함으로써 수행되는 것이 바람직하다. 예를 들면, 고객 단말 장비(4)로부터 수신된 기기 ID가 K2345이고 생성된 가상 ID가 B5678이라면, 즉 가상 ID B5678과 기기 ID K2345 사이의 관련은 저장된 기기 ID K2345에 대응하는(연결되는) 의인화 데이터베이스(6) 내 한 위치에 가상 ID B5678을 저장함으로써 이루어질 수 있다. 유사하게, 수신된 기기 ID가 K6789이고 생성된 가상 ID가 B9012라면, 즉 가상 ID B9012와 기기 ID K6789의 사이의 관련은 저장된 기기 ID K6789에 관련되는 의인화 데이터베이스(6) 내 한 위치에 가상 ID B9012를 저장함으로써 이루어질 수 있다.
위에 기술된 바처럼, 네트워크(5)를 통하여 고객 단말 장비(4)로부터 관리 서버(1)로 전송된 식별 정보(도 4의 단계 S28)는 소스 암호화 컴퓨터 프로그램을 저장하기 위하여 고객 단말 장비(4)에 의해 사용되는 저장 매체의 종류에 대응되는 기기 ID(또는 매체 ID)의 전송을 포함할 수도 있다. 예를 들면, 매체 ID는 고객 단말 장비(4)가 소스 암호화 컴퓨터 프로그램을 하드디스크 드라이브(7), 메모리 카드(8), 또는 다른 종류의 저장 매체 안에 저장한다는 것을 가리킬 수도 있다. 응답으로, 관리 서버(1)는 저장된 기기 ID와 대응되는 한 위치에서 의인화 데이터베이스(6) 내에 수신된 매체 ID를 저장함으로써 수신된 매체 ID 및 저장된 기기 ID를 관련시킬 수 있다. 예를 들어, 저장된 기기 ID K2345는 가상 ID B5678 및 수신된 매체 ID M6980과 관련된다. 유사하게, 기기 ID K6789는 가상 ID B9012 및 수신된 매체 ID M2468과 관련된다. 기기 ID K1234 및 K0987에 마주보는 위치의 가상 ID 및 매체 ID 내의 " ------ "는 최종 사용자들에 의해 대응하는 고객 단말 장비(4)가 아직 구매되지 않았거나 또는 그러한 최종 사용자들이 관리 서버(1)로 아직 컴퓨터 프로그램들을 등록하지 않았음을 가리킨다는 점에 유의한다.
도 7 및 8을 참조하면, 관리 서버(1)는 암호화된 해독키 및 암호화된 가상 ID를 생성하기 위해 조작가능하고, 여기서 해독키는 고객 단말 장비(4)에서 소스 암호화 컴퓨터 프로그램을 해독하는 데 이용되기 위해 조작가능한 것이 바람직하다. 관리 서버(1)는 암호화 서버(3; 도 1 및 2 참조)에 의해 생성되는 개개의 소스 암호화 컴퓨터 프로그램들을 해독하는 데 이용되는 어떠한 수의 해독키들에 접속할 수도 있다는 점에 유의한다. 이들 해독키들은 암호화 서버(3) 및/또는 제3자 서버(2)에 의해 관리 서버(1)로 제공될 수 있다. 덧붙여, 이들 해독키들은 네트워크(5)를 통하여, 또는 다른 네트워크를 통하여 관리 서버(1)로 제공될 수 있으며, 또는 저장 매체 등을 통하여 수동으로 제공될 수도 있다.
단계 S40에서, 관리 서버(1)는 고객 단말 장비(4)와 관련된 가상 ID를 이용하여 해독키를 암호화는 것이 바람직하다. 덧붙여, 관리 서버(1)는 각각 의인화 데이터베이스(6)로부터 얻어지는 것이 바람직한 고객 단말 장비(4)의 관련된 기기 ID를 이용하여 가상 ID를 암호화하는 것이 바람직하다(단계 S42).
관리 서버(1)의 네트워크 인터페이스는 네트워크(5)를 통하여 고객 단말 장비(4)로 암호화된 가상 ID 및 암호화된 해독키의 전송을 촉진하기 위해 조작가능한 것이 바람직하다(단계 S44). 단계 S46에서, 고객 단말 장비(4)는 네트워크(5)를 통하여 암호화된 해독키 및 암호화된 가상 ID를 수신하고 그리고 제 1 저장 매체(예컨대, 하드디스크 드라이브(7), 메모리 카드(8) 등) 내에 저장하는 것이 바람직하다.
유익하게는, 암호화된 해독키는 예컨대, 해독키를 암호화하는 데 이용되는 가상 ID와 관련된 기기 ID를 등록하고 그리고 유효한 기기 ID를 제공하는 고객 단말 장비(4)인 인증된 고객 단말 장비(4)에만 제공된다. 덧붙여, 네트워크 침해 또는 비인증 복사와 같은 암호화된 해독키의 가로채기는 소스 암호화 컴퓨터 프로그램을 해독하기 위하여 필요한 정보(예컨대, 이용 가능한 해독키)를 제공하는 데 실패할 것이다. 실제로, 그러한 해독키는 실질적으로 고유한 가상 ID를 이용하여 암호화되어 있다. 유사하게, 암호화된 가상 ID는 등록 처리가 완료되고 고객 단말 장비(4)가 인증되었다고 여겨진 이후에만 고객 단말 장비(4)로 제공된다. 가상 ID가 암호화 방식(예컨대, 고객 단말 장비(4)의 기기 ID를 이용하여 암호화하는)으로 관리 서버(1)로부터 고객 단말 장비(4)로 전송되기 때문에, 암호화된 가상 ID의 비인증 획득도 암호화된 해독키를 해독하기 위해 필요한 정보를 가져오지 못할 것이다.
고객 단말 장비(4) 내에 소스 암호화 컴퓨터 프로그램을 로드/설치하기 위하여 수행되는 어떤 절차들이 도시된 도 9 및 10을 참조한다. 도 9는 고객 단말 장비(4)가 제 1 저장 매체(예컨대, 하드디스크 드라이브(7), 메모리 카드(8) 등)로부터 분리되어 있음을 도시한다. 그러나, 위에 기술된 바처럼, 이들 요소들은 청구된 본 발명의 범위 및 사상에서 벗어남 없이 통합되거나 또는 반-통합될 수도 있다. 절차의 이러한 단계는 고객 단말 장비(4)가 예컨대, ROM의 제 2 저장 매체, 내에 저장된 기기 ID를 포함하고, 그리고 제 1 저장 매체들(7, 8)이 다음의 항목들: 기기 ID, 암호화된 가상 ID, 암호화된 해독키, 및 소스 암호화 컴퓨터 프로그램을 포함한다는 점에 유의한다.
단계 S50에서, 사용자는 고객 단말 장비(4)로 명령어를 제공하여 앞으로의 이용을 위하여 소스 암호화 컴퓨터 프로그램을 로드/설치하도록 할 수 있다. 응답으로, 적절한 하드웨어 및 소프트웨어 절차들을 이용하는 고객 단말 장비(4)는 제 1 저장 매체들(7, 8)로부터 기기 ID를 판독하고, 그리고 예컨대, ROM과 같은 제 2 저장 매체로부터 기기 ID를 판독한다(단계 S52). 단계 S54에서, 이들 기기 ID들이 부합하는 지에 대한 판단이 이루어진다. 만일 그들이 부합하지 않는다면, 그 후 절차는 중단되고 그리고/또는 선택적인 절차로 넘어갈 것이다. 그러나, 만일 그들이 부합한다면, 절차는 암호화된 가상 ID가 기기 ID(바람직하게는, ROM 내에 저장되었던 기기 ID)를 이용하여 해독되는 단계 S56으로 진행한다. 일단 가상 ID가 얻어진다면, 암호화된 해독키는 가상 ID를 이용하여 해독된다(단계 S58). 다음으로, 소스 암호화 컴퓨터 프로그램이 해독키를 이용하여 해독된다(단계 S60). 단계 S62에서, 컴퓨터 프로그램은 단계 S56에서 얻어진 가상 ID를 이용하여 재암호화되어 고객 암호화 컴퓨터 프로그램을 얻는다. 고객 암호화 컴퓨터 프로그램은 제 1 저장 매체들(7, 8) 내에 저장된다(단계 S64). 이 단계에서, 암호화된 해독키 또는 소스 암호화 컴퓨터 프로그램 중 어느 것도 제 1 저장 매체들(7, 8) 내에 보유될 필요는 없다.
이상에서 기술된 암호화 및 해독 기능을 실행하기 위하여 고객 단말 장비(4)는 해독 장치 및 암호화 장치를 포함하는 것이 바람직하다. 해독 장치 및 암호화 장치는 함께 통합될 수 있으며, 간단히 설명하기 위해서 해독 장치라고 한다. 그와 같은 암호화 및 해독을 수행하는 공지의 또는 이하 전개되는 어떠한 하드웨어 및/또는 소프트웨어가 본 발명과 관련하여 사용될 수 있다. 예를 들면, 해독 라이브러리, 암호화 라이브러리 등이 사용될 수 있다.
편리하게도, 고객 암호화 컴퓨터 프로그램은 그 비인증 복사본이 다른 고객 단말 장비(4)의 비인증 최종 사용자에 의해 실행되지 않기 때문에 안전하다(이하에서 기술될 것이다). 실제로, 이하에 기술되는 바와 같이, 고객 암호화 컴퓨터 프로그램은 첫 번째로 해독되며 관리 서버(1)에 컴퓨터 프로그램을 등록한 장비가 아닌 다른 고객 단말 장비(4) 상에서 수행될 수 없다.
도 11 및 12를 참조하여, 컴퓨터 프로그램이 고객 단말 장비(4)에 의해 실행됨에 의한 절차가 이제 기술될 것이다. 절차상 이 단계에서, 고객 단말 장비(4)는 기기 ID를 포함하는 예컨대, ROM과 같은 제 2 저장 매체 및 기기 ID, 암호화된 가상 ID, 및 고객 암호화 컴퓨터 프로그램을 포함하는 제 1 저장 매체들(7, 8)을 포함한다.
단계 S70에서, 사용자는 고객 단말 장비(4)로 명령어를 제공하여 컴퓨터 프로그램을 실행한다. 응답하여, 적절한 컴퓨터 프로그램의 제어하에서 작동하는 고객 단말 장비(4)는 제 1 저장 매체(7, 8)로부터 기기 ID를 판독하고, 제 2 저장 매체(ROM)로부터 기기 ID를 판독한다(단계 S72). 단계 S74에서, 그 기기 ID들이 서로 부합하는 지 여부에 대한 판단이 이루어진다. 만일 부합하지 않는다면, 순서도는 도 17 내지 20과 관련하여 이하에서 보다 상세하게 기술되는 재등록 절차로 진행한다. 만일 기기 ID들이 부합한다면, 순서도는 고객 단말 장비(4)의 해독 장치가 기기 ID(바람직하게는 ROM 내에 포함된 기기 ID)를 이용하여 암호화된 가상 ID 를 해독하는 단계 S76으로 진행한다. 단계 S78에서, 고객 단말 장비(4)의 해독 장치는 단계 S76에서 얻어진 가상 ID를 이용하여 고객 암호화 컴퓨터 프로그램을 해독한다. 이 점에서, 고객 단말 장비(4)는 RAM 내에 존재하는 컴퓨터 프로그램을 실행할 수 있다.
편리하게는, 고객 암호화 컴퓨터 프로그램은 고객 암호화 컴퓨터 프로그램을 암호화하는 데 이용되는 가상 ID와 관련되는 고객 단말 장비(4)를 이용하는 경우에만 해독될 수 있다. 따라서, 고객 암호화 컴퓨터 프로그램의 비인증 복사본들이 비인증 최종 사용자들에게 제공된다면, 그러한 비인증 최종 사용자들이 그 컴퓨터 프로그램을 실행하려고 시도하는 장비는 그 고객 암호화 컴퓨터 프로그램을 해독할 수 없다. 덧붙여, 만일 제 1 저장 매체가 비인증 최종 사용자에게 제공된다면(예컨대, 저장 매체(7, 8)가 다른 고객 단말 장비(4)에 결합되도록), 제 1 저장 매체(7, 8) 내에 포함된 기기 ID는 ROM 내에 저장된 어떠한 기기 ID와도 부합하지 않으므로 암호화된 가상 ID는 해독될 수 없다. 따라서, 고객 암호화 컴퓨터 프로그램은 해독될 수 없다. 컴퓨터 프로그램의 안전한 배포에 대한 새로운 접근은 그 컴퓨터 프로그램의 비인증 복사본들이 쓸모 없게 취급되고 그리고 오직 특정한 고객 단말 장비(4)만이 그 컴퓨터 프로그램을 실행할 수 있도록 함을 보증한다.
위에서 기술된 바와 같이, 컴퓨터 프로그램은 비디오 게임, 워드 프로세서 프로그램, 스프레드시트 등과 같은 응용 프로그램이 될 수 있고, 또는 컴퓨터 프로그램은 오퍼레이팅 시스템(OS), 부트 프로그램 등과 같은 시스템 프로그램이 될 수 있다.
상술한 본 발명의 양상이 해독키가 네트워크(5)를 통하여 고객 단말 장비(4)로 제공된다는 점이 고려되는 반면, 본 발명의 다른 양상은 해독키가 수작업 배포용의 저장 매체(예컨대, CD-ROM 등)를 통하여 고객 단말 장비(4)로 제공된다는 점이 고려된다. 본 발명의 이러한 양상들은 도 13 및 14를 참조하여 이제 기술될 것이다. 도 13에 도시된 바와 같이, 고객 단말 장비(4)는 저장 매체(9A)를 통하여 암호화된 제 1 해독키를 수신한다. 제 1 해독키는 바람직하게는 고객 단말 장비(4)에서 소스 암호화 컴퓨터 프로그램을 해독하는 데 이용되기 위해 조작가능하다. 관리 서버(1)는 바람직하게는 암호화된 제 2 해독키 및 암호화된 가상 ID를 생성하기 위해 조작가능하며, 이때 제 2 해독키는 암호화된 제 1 해독키를 해독하기 위해 조작가능하다. 관리 서버(1)는 개개의 암호화된 제 1 해독키들을 해독하는 데 이용될 수 있는 다수의 제 2 해독키들 중 어떠한 것에도 접속할 수 있음에 유의한다. 이러한 제 2 해독키들은 암호화 서버(3) 및/또는 제3자 서버(2)에 의해 관리 서버(1)로 제공될 수도 있다. 덧붙여, 이들 제 2 해독키들은 네트워크(5)를 통하여, 다른 네트워크를 통하여 관리 서버(1)로 전송될 수도 있으며, 또는 저장 매체 등을 통하여 수작업으로 제공될 수도 있다.
단계 S40A에서, 관리 서버(1)는 바람직하게는 고객 단말 장비(4)와 관련된 가상 ID를 이용하여 제 2 해독키를 암호화한다. 덧붙여, 관리 서버(1)는 각각 의인화 데이터베이스(6)로부터 얻어지는 것이 바람직한, 고객 단말 장비(4)의 관련된 기기 ID를 이용하여 가상 ID를 암호화하는 것이 바람직하다(단계 S42). 관리 서버(1)의 네트워크 인터페이스는 바람직하게는 네트워크(5)를 통하여 고객 단말 장비(4)로의 암호화된 제 2 해독키 및 암호화된 가상 ID의 전송을 촉진하기 위해 조작가능하다(단계 S44A). 단계 S46A에서, 고객 단말 장비(4)는 네트워크(5)를 통하여 암호화된 제 2 해독키 및 암호화된 가상 ID를 수신하고 제 1 저장 매체(예컨대, 하드디스크 드라이브(7), 메모리 카드(8) 등) 내에 그것을 저장하는 것이 바람직하다.
유익하게는, 암호화된 제 2 해독키는 오직 인증된 고객 단말 장비(4), 예컨대, 제 2 해독키를 암호화는 데 이용되는 가상 ID와 관련되는 기기 ID를 등록하고 유효한 기기 ID를 제공한 고객 단말 장비(4)에만 제공된다. 네트워크 침해 또는 비인증 복사와 같은 암호화된 제 2 해독키의 어떠한 가로채기도 암호화된 제 1 해독키를 해독하는 데 필요한 정보(유용한 제 2 해독키)를 제공하는 데 실패할 것이다. 실제로, 그러한 제 2 해독키는 실질적으로 고유한 가상 ID를 이용하여 암호화된다. 유사하게, 암호화된 가상 ID는 등록 절차가 완료되고 그리고 고객 단말 장비(4)가 인증되었다고 여겨진 이후에만 고객 단말 장비(4)로 제공된다. 가상 ID는 암호화 방식(예컨대, 고객 단말 장비(4)의 기기 ID를 이용하여 암호화된)으로 관리 서버(1)에서 고객 단말 장비(4)로 전송되기 때문에, 암호화된 가상 ID의 비인증 수집물은 암호화된 제 2 해독키를 해독하기 위해 필요한 정보를 가질 수 없다.
고객 단말 장비(4) 내에 소스 암호화 컴퓨터 프로그램을 로드/설치하기 위하여 수행되는 임의의 절차들을 도시하는 도 15 및 16이 참조될 것이다. 도 15는 절차상 이 단계에서, 고객 단말 장비(4)는 제 2 저장 매체(ROM) 내에 저장된 기기 ID를 포함하고, 그리고 제 1 저장 매체(7, 8)는 다음의 항목들: 기기 ID, 암호화된 가상 ID, 암호화된 제 2 해독키, 암호화된 제 1 해독키, 및 소스 암호화 컴퓨터 프로그램을 포함한다.
단계 S50에서, 사용자는 더한 이용을 위해 소스 암호화 컴퓨터 프로그램을 로드/설치하기 위하여 고객 단말 장비(4)로 명령어를 제공할 수 있다. 응답으로, 적절한 하드웨어 및 소프트웨어 절차들을 이용한 고객 단말 장비(4)는 제 1 저장 매체(7, 8)로부터 기기 ID를 판독하고, 그리고 예컨대, ROM과 같은 제 2 저장 매체로부터 기기 ID를 판독한다(단계 S52). 단계 S54에서, 이들 기기 ID들이 부합되는지 여부에 대한 판단이 이루어진다. 만일 그들이 부합하지 않는다면, 절차는 종료하고 그리고/또는 선택적 절차로 넘어간다. 그러나, 만일 그들이 부합한다면, 순서도는 암호화된 가상 ID가 기기 ID(바람직하게는 ROM 내에 저장된 기기 ID)를 이용하여 해독되는 단계 S56으로 진행한다. 일단 가상 ID가 얻어진다면, 암호화된 제 2 해독키는 가상 ID를 이용하여 해독되고 그리고 암호화된 제 1 해독키는 제 2 해독키를 이용하여 해독된다(단계 S58A). 다음으로, 소스 암호화 컴퓨터 프로그램이 제 1 해독키를 이용하여 해독된다(단계 S60A). 단계 S62에서, 컴퓨터 프로그램은 단계 S56에서 얻어진 가상 ID를 이용하여 재암호화되어 고객 암호화 컴퓨터 프로그램을 얻는다. 고객 암호화 컴퓨터 프로그램은 제 1 저장 매체(7, 8) 내에 저장된다(단계 S64). 이 단계에서, 암호화된 제 1 해독키, 암호화된 제 2 해독키, 또는 소스 암호화 컴퓨터 프로그램 중 어느 것도 제 1 저장 매체(7, 8) 내에 유지될 필요는 없다.
일단 고객 암호화 컴퓨터 프로그램이 얻어지고 제 1 저장 매체(7, 8) 내에 저장된다면, 도 11 및 12를 참조하여 위에서 기술된 절차가 활용되어 그 컴퓨터 프로그램을 실행할 수 있다.
도 11 및 12를 참조하여 위에서 기술된 바와 같이, 사용자가 고객 암호화 컴퓨터 프로그램을 실행하기를 원하는 경우에, 제 1 저장 매체(7, 8) 내에 저장된 기기 ID가 고객 단말 장비(4)의 제 2 저장 매체(ROM) 내에 저장된 기기 ID와 부합하는 지 여부에 대한 판단이 단계 S74에서 이루어진다. 만일 기기 ID들이 부합하지 않는다면, 그 후 순서도는 도 17과 관련되어 이제부터 기술되는 재등록 절차로 분기한다.
만일 고객 단말 장비(4)가 다른 고객 단말 장비(4)의 저장 매체(7, 8)와 연결되도록 적절하지 않게 수정되었다면 이들 기기 ID들은 부합하지 않을 것이다. 선택적으로, 만일 고객 단말 장비(4)가 수리되고 그리고 제 2 저장 매체(ROM) 내에 저장된 기기 ID가 그 수리에 따라 변경되었다면 기기 ID들은 다를 것이다. 또한 덧붙여, 만일 사용자가 하나 이상의 이유로 그 또는 그녀의 고객 단말 장비(4)를 새로운 고객 단말 장비(4)로 교체하고 그리고 예를 들어 제 1 저장 매체가 하나 이상의 고객 암호화 컴퓨터 프로그램을 포함하고 있기 때문에 그 저장 매체(7, 8)를 남겨두었다면, 이들 기기 ID들은 다를 것이다. 어떠한 경우에도, 만일 기기 ID들이 부합하지 않는다면, 비록 컴퓨터 프로그램이 인증된 방식으로 얻어진 것이라 할지라도 사용자는 제 1 저장 매체(7, 8) 내에 포함된 컴퓨터 프로그램을 실행할 수 없기 때문에, 본 발명에 따른 재등록(또는 갱신 등록) 절차가 고려된다. 물론, 사용자는 그 컴퓨터 프로그램을 재설치할 수 있지만(프로그램들이 그 초기의 소스 암 호화된 형식으로 쉽게 판독된다는 가정 하에서), 그러나 이러한 비교적 복잡한 절차는 본 발명에 따라 회피될 수 있다.
도 17의 핵심 상세를 논의하기 전에, 제 1 저장 매체(7, 8)가 이전의 도면과는 조금 다르게 명명된 컴퓨터 프로그램들 및 데이터를 포함하는 것처럼 도시된 점에 유의한다. 구체적으로, 제 1 저장 매체(7, 8)는 의인화 시스템 프로그램, 의인화 응용 프로그램, 및 의인화 정보를 포함한다. 의인화 시스템 프로그램 및 의인화 응용 프로그램은 예컨대, 도 9, 11 및 15와 관련하여 앞에서 논의된 고객 암호화 컴퓨터 프로그램에 대응한다는 점에 유의한다. 의인화 정보는 기기 ID, 매체 ID, 암호화된 가상 ID 등 중에서 하나 이상에 대응한다.
도 17의 보다 상세한 면으로 돌아가서, 구형의 또는 고장난 고객 단말 장비(4F)가 수리 또는 교체가 이루어지는 지원 센터(11)로 제공되고, 그리고 새로운 고객 단말 장비(4N)가 사용자에게 제공된다는 절차가 도시된다. 바람직하게는, 지원 센터(11)는 고장난 단말 장비(4F)로부터의 구형의 기기 ID와 함께 새로운 고객 단말 장비(4N)로부터의 새로운 기기 ID를 관리 서버(1)로 전송한다.
도 18 및 19를 참조하면, 관리 서버(1)는 바람직하게는 고장난 단말 장비(4F)로부터 구형의 기기 ID를 그리고 그와 함께 새로운 고객 단말 장비(4N)로부터 새로운 기기 ID를 수신한다. 관리 서버(1)는 그 후에 의인화 데이터베이스(6)에 접속하고 관련된 가상 ID B9012(그리고 가능하다면 매체 ID M2468)를 얻기 위하여 구형의 고객 단말 장비(4F)의 기기 ID, 예컨대 기기 ID K6789를 검색한다. 다음으로, 새로운 고객 단말 장비(4N)의 새로운 기기 ID K1143 을 찾기 위하여 의인화 데이터베이스(6) 내에 저장된 기기 ID들이 검색된다. 다음으로, 구형의 기기 ID K6789와 관련된 가상 ID B9012는 새로운 기기 ID K1143과 관련된다(그리고 구형의 매체 ID 또한 관련된다). 절차상 이 단계에서, 관리 서버(1)는 사용자가 그 또는 그녀의 등록 정보를 갱신하기 위해 준비된다.
사용자가 고객 단말 장비(4N)에 제 1 저장 매체(7, 8) 내에 존재하는 컴퓨터 프로그램을 실행하도록 명령하는 경우에, 제 1 저장 매체(7, 8) 및 제 2 저장 매체(ROM) 내에 저장된 기기 ID들이 부합하는 지 여부에 대한 판단이 이루어짐을 상기한다(도 12의 단계 S70-74). 도 20을 참조하면, 기기 ID들이 부합하지 않는다는 판단(도 12의 단계 S74)이 이루어지는 때에, 사용자는 바람직하게는 그 또는 그녀의 등록 정보를 관리 서버(1)에 갱신하라고 유도된다(단계 S1). 단계 S2에서, 사용자가 고객 단말 장비(4)에 등록 갱신 절차를 실행하도록 명령했는 지 여부에 대한 판단이 이루어진다. 그러한 명령이 수신되었다면, 그 후 절차는 바람직하게는 사용자가 등록 정보를 갱신하도록 다시금 유도되는 단계 S1로 되돌아간다. 일단 사용자가 등록 정보를 갱신하라는 명령을 제공하였다면, 절차는 바람직하게는 단계 S2에서 단계 S3으로 진행되고, 새로운 고객 단말 장비(4N)의 제 2 저장 매체(ROM) 내에 포함된 기기 ID가(그 네트워크 인터페이스를 통하여) 네트워크(5)를 통하여 관리 서버(1)로 전송된다. 단계 S4에서, 관리 서버(1)는 의인화 데이터베이스(6)에 접속함으로써 이 정보를 확인한다. 그 후에, 구형의 가상 ID(구형의 고객 단말 장비(4F)와 기본적으로 관련되어 있는)가 새로운 기기 ID(K1143)를 이용하여 암호화되고 그리고 네트워크(5)를 통하여(예컨대, 관리 서버(1)의 네트워크 인터페이스를 경유하여) 새로운 고객 단말 장비(4N)로 전송된다.
단계 S6에서, 새로운 고객 단말 장비(4N)는 새로운 암호화된 가상 ID(의인화 정보 데이터)를 수신하고 그리고 그것을 제 1 저장 매체(7, 8) 내에 저장하며, 바람직하게는 구형의 가상 ID를 교체하는 방식으로 저장한다. 이는 등록 갱신 절차를 완료한다.
유익하게는, 새로운 암호화 가상 ID가 구형의 암호화 가상 ID와 동일한 가상 ID를 포함하고 있기 때문에, 고장난 고객 단말 장비(4F)를 통해 기본적으로 활용되는 고객 암호화 컴퓨터 프로그램은 새로운 암호화된 가상 ID를 사용하여 해독될 수 있다. 다르게 설명한다면, 구형의 암호화된 가상 ID 및 새로운 암호화된 가상 ID 사이의 유일한 차이점은 가상 ID를 암호화하는 데 이용된 기기 ID이다. 사용자가 새로운 고객 단말 장비(4N)상에서 고객 암호화 컴퓨터 프로그램을 실행하기 위하여, 도 11 및 12를 참조하여 위에서 논의된 절차 단계들이 수행될 수 있다.
본 발명의 다른 실시형태의 하나 이상의 양상들을 도시하는 절차 순서도인 도 21이 이제 참조된다. 본 발명의 이 실시형태는 대여 프로그램 컨텐츠의 배포자로부터 프로그램 컨텐츠의 안전한 배포를 의도한다. 대여 프로그램 컨텐츠의 배포자는 관리 서버(1), 제3자 서버(2), 또는 몇몇 다른 서버(도시되지 않음)일 수 있다. 고객 단말 장비(4)의 사용자가 프로그램 컨텐츠를 대여하기를 원하는 경우에, 사용자는 바람직하게는 대여 시스템의 회원이 되기를 요청한다. 이점에 대해서, 단계 S70에서, 사용자는 고객 단말 장비(4)의 활성 미캐니즘을 통하여 그 또는 그녀가 그 시스템의 회원이 되기를 원한다는 점을 알린다. 실시예에 따르면, 고객 단말 장비(4)는 회원제 절차를 촉진하는 적당한 컴퓨터 프로그램을 포함하고 실시할 수 있다.
단계 S72에서, 고객 단말 장비(4)는 바람직하게는 네트워크(5)를 통하여, 관리 서버(1)와 통신 링크를 수립한다. 단계 S74에서, 대여 시스템의 회원이 되고자 하는 고객 단말 장비(4)에 의한 요청이 바람직하게는 고객 단말 장비(4)가 네트워크(5)를 통하여 관리 서버(1)로 기기 ID를 전송하여 이루어진다. 그에 응답하여, 관리 서버(1)는 바람직하게는 고객 단말 장비(4)에 실질적으로 고유한 전자 회원 증명서를 생성한다. 관리 서버(1)는 예컨대, 본 발명의 이전 실시형태들과 관련하여 위에서 기술된 데이터베이스 관련 기술들을 이용하여 고객 단말 장비(4)의 기기 ID를 전자 회원 증명서와 연관시킬 수 있다. 단계 S80에서, 관리 서버(1)는 바람직하게는 네트워크(5)를 통하여 전자 회원 증명서를 고객 단말 장비(4)로 전송한다. 이하에서 기술되는 바와 같이, 전자 회원 증명서는 대여 절차에서 이용된다.
일단 고객 단말 장비(4)가 대여 시스템의 회원이 되었다면, 사용자는 응용 프로그램, 및 시스템 프로그램과 같은 프로그램 컨텐츠를 대여하는 것이 허용되는 것이 바람직하다. 바람직한 실시형태에서, 프로그램 컨텐츠는 비디오 게임 컴퓨터 프로그램인 것이 바람직하다. 도 22를 참조하면, 고객 단말 장비 상에서 운영되는 컴퓨터 소프트웨어는 바람직하게는 사용자가 그 또는 그녀가 컴퓨터 프로그램을 대여하기를 원한다는 것을 알리도록 허용한다. 이러한 관점에서 사용자로부터의 알림에 반응하여(단계 S82), 고객 단말 장비(4)는 바람직하게는 사용자에 의한 대여 요청이 배포자로 전송되는 배포자와 통신 링크를 수립한다(단계 S84). 단계 S86에 서, 배포자는 예컨대, 고객 단말 장비(4)의 기기 ID를 분석하거나 또는 그의 전자 회원 증명서를 분석함에 의해 고객 단말 장비(4)를 인증하는 것이 바람직하다. 이는 고객 단말 장비(4)가 기기 ID 및/또는 전자 회원 증명서를 배포자에게 제공하고 그리고 배포자가 이러한 정보가 검증되는 데이터베이스에 접속하도록 요청함에 의해 이행된다.
고객 단말 장비(4)가 인증되었다고 가정한다면, 배포자는 네트워크(5)를 통하여 고객 단말 장비(4)로 대여할 수 있는 이용 가능한 타이틀의 목록 또는 메뉴를 제공하는 것이 바람직하다(단계 S88). 고객 단말 장비(4)상에서 운영되는 컴퓨터 소프트웨어는 바람직하게는 사용자가 타이틀을 선택하고 대여 시간을 지정할 수 있도록 사용자에게 타이틀의 목록 또는 메뉴를 디스플레이하는 것을 촉진한다(단계 S90). 사용자의 선택 및 지정된 대여 시간은 바람직하게는 네트워크(5)를 통하여 배포자에게로 전송된다.
단계 S92에서, 배포자는 고객 단말 장비(4)가 지정된 시간에 대한 컴퓨터 프로그램의 대여 비용을 감당하기 위한 송금을 제공하도록 요청하는 것이 바람직하다. 이는 예컨대, 신용카드 번호, 요구불 예금 계좌 번호를 전송함에 의해, 또는 송장 등을 통한 공지의 기술들 중 어느 하나를 활용함으로써 이행될 수 있다. 일단 송금이 이루어지면, 배포자는 지시된 타이틀 및 지정 기간에 대하여 송금이 이루어졌음을 가리키는 전자 지불 티켓을 생성하는 것이 바람직하다(단계 S94). 단계 S96에서, 배포자는 네트워크(5)를 통하여 고객 단말 장비(4)로 전자 지불 티켓을 전송하는 것이 바람직하다.
본 발명에 따르면, 전자 지불 티켓은 배포자에게 제공된 송금에 대한 교환으로 대여권리의 임의의 레벨을 사용자(또는 고객 단말 장비(4))에게 제공하는 것이 바람직하다. 예를 들면, 이러한 대여 권리는 컴퓨터 프로그램의 타이틀, 대여 기간, 송금액 등을 특정한다. 이에 더하여, 전자 지불 티켓은 컴퓨터 프로그램을 해독하는 것이 가능한 해독키와 같은 부가 정보를 포함할 수 있다. 전자 지불 티켓이 해독키를 포함하도록 요구되지는 않는 반면, 실제로는 그 함유물은 오직 실시예로써만 주어진다. 또한 전자 지불 티켓은 예컨대, 기기 ID를 이용하여 암호화하거나 또는 전자 회원 증명서(가상 ID 등과 같은)의 일부를 활용함에 의해 암호화된 형태의 해독키를 포함할 수 있음에 주목한다. 어떠한 경우이든, 절차상 이 시점에서, 사용자는 대여 권리의 임의의 레벨을 받을 수 있으며, 컴퓨터 프로그램 또는 컴퓨터 프로그램의 암호화된 버전을 받는 것은 아니다.
절차상 이 시점에서, 고객 단말 장비(4)는 그의 기기 ID, 전자 회원 증명서, 그리고 주어진 기간에 대한 타이틀용 송금이 이루어졌음을 가리키는 전자 지불 티켓을 갖는다. 도 23을 참조하면, 고객 단말 장비(4)는 네트워크(5)를 통하여 관리 서버(1)와 통신 링크를 수립하는 것이 바람직하다(단계 S98). 단계 S100에서, 관리 서버(1)는 기기 ID 또는 전자 회원 증명서를 통하여 고객 단말 장비(4)를 인증하는 것이 바람직하다. 이는 고객 단말 장비(4)의 기기 ID와 이전에 제공된 전자 회원 증명서의 관련성을 포함하는 것이 바람직한 의인화 데이터베이스(6)와 같은 적절한 데이터베이스에 접속함에 의해 이루어질 수 있다는 점에 유의한다. 단계 S102에서, 고객 단말 장비(4)는 바람직하게는 네트워크(5)를 통하여 전자 지불 티 켓을 관리 서버(1)로 전송한다. 그에 응답하여, 관리 서버(1)는 전자 대여 티켓을 생성하고(단계 S104) 그리고 네트워크(5)를 통하여 전자 대여 티켓을 고객 단말 장비(4)로 전송하는 것(단계 S106)이 바람직하다.
본 발명에 따르면, 전자 대여 티켓은 바람직하게는 전자 지불 티켓에 의해 제공되는 대여 권리보다 크거나 같은 대여 권리의 레벨을 사용자(또는 고객 단말 장비(4))에게 제공한다. 예를 들면, 전자 대여 티켓은 컴퓨터 프로그램 타이틀, 대여 시간, 송금액을 지정할 수 있으며, 그리고 또한 암호화된 컴퓨터 프로그램을 해독할 수 있는 해독키와 같은 부가 정보를 포함할 수 있다(전자 지불 티켓에 해독키가 포함되어 있지 않는다는 가정 하에서). 전자 대여 티켓이 해독키를 포함한다는 점이 요구되는 것은 아니지만, 실제로 그 함유물은 오직 실시예로써만 주어진다. 또한 전자 대여 티켓은 예컨대, 기기 ID를 이용하여 암호화하거나 또는 전자 회원 증명서의 일부가 되는 다른 정보(가상 ID 등과 같은)를 활용함으로써 암호화된 형식의 해독키를 포함할 수 있다는 점에 유의한다. 어떠한 경우에도, 절차상 이 시점에서, 사용자는 바람직하게는 대여 권리의 임의의 레벨을 받지만, 그러나 컴퓨터 프로그램 또는 컴퓨터 프로그램의 암호화된 버전을 받지는 않는다.
도 24를 참조하면, 고객 단말 장비(4)는 바람직하게는 네트워크(5)를 통하여 배포자와 통신 링크를 수립한다(단계 S108). 그에 응답하여, 배포자는 예컨대, 기기 ID 또는 위에서 논의된 것처럼 전자 회원 증명서의 분석을 통하여 고객 단말 장비(4)를 인증할 수 있다(단계 S110). 다음으로, 고객 단말 장비(4)는 네트워크(5)를 통하여 배포자에게 전자 대여 티켓(또는 적어도 그 일부분)을 전송하는 것이 바 람직하다(단계 S112). 바람직하게는, 이는 고객 단말 장비(4)가 이전에 필요한 모든 단계들을 완료하고 그리고 대여용 컴퓨터 프로그램의 암호화 버전을 수신하기 위해 인증되었음을 배포자에게 알리는 것이다(단계 S114). 절차상 이 시점에서, 고객 단말 장비(4)는 기기 ID, 전자 회원 증명서(만약에 있다면, 가상 ID를 포함하여), 전자 지불 티켓, 전자 대여 티켓, 암호화된 해독키, 및 암호화된 컴퓨터 프로그램을 갖고 있는 것이 바람직하다.
본 발명에 따르면, 본 발명의 이전 실시형태들과 관련하여 위에서 논의된 절차들을 활용하여 컴퓨터 프로그램을 로드하고, 설치하고 그리고 실행할 수 있다는 점에 유의한다. 유익하게는, 본 발명의 대여 시스템 실시형태는 네트워크(5)를 통한 모든 고객 단말 장비(4)로의 대여 프로그램 컨텐츠의 안전한 배포를 가능하게 한다.
비록 여기의 발명이 특정한 실시형태들을 참조하여 기술되었지만, 이들 실시형태들은 본 발명의 응용 및 원리의 단순한 실시예라는 점이 이해될 것이다. 그러므로 첨부된 특허청구범위와 같이 본 발명의 개념 및 범위를 벗어나지 않고서 실시예적인 실시형태들에 대하여 수많은 수정이 이루어질 수 있고 그리고 다른 구성이 발명될 수 있음이 이해될 수 있다.
본 발명에 따르면, 프로그램 컨텐츠의 안전한 배포를 위한 기술의 새로운 방법 및 장비가 제공될 수 있으며, 또한 프로그램 컨텐츠의 비인증 복사본들의 확산과 관련되는 문제점들을 해소할 수 있다.

Claims (44)

  1. (ⅰ) 장비에 관련된 적어도 일부의 식별 정보가 네트워크를 통하여 관리자에게 전송될 수 있고, 그리고 (ⅱ) 상기 적어도 일부의 식별 정보에 반응하여 상기 관리자로부터 상기 네트워크를 통하여 암호화된 해독키가 수신되도록, 상기 네트워크를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스;
    상기 암호화된 해독키를 해독하고, 상기 해독키를 이용하여 암호화된 프로그램을 해독하고, 그리고 상기 식별 정보의 적어도 일부를 이용하여 상기 프로그램을 재암호화하기 위해 조작가능한 해독 장치; 및
    상기 식별 정보 및 상기 재암호화된 프로그램을 저장하기 위해 조작가능한 제 1 저장 매체를 포함하는 것을 특징으로 하는, 암호화된 프로그램을 수신하기 위해 조작가능한 장비.
  2. 제 1 항에 있어서,
    상기 식별 정보는 상기 장비에 실질적으로 고유한 기기 ID를 포함하고,
    상기 네트워크 인터페이스는 상기 기기 ID에 반응하여 상기 관리자로부터 상기 네트워크를 통하여 상기 암호화된 해독키가 수신되도록, 상기 네트워크를 통하여 상기 관리자로 상기 기기 ID의 전송을 촉진하기 위해 조작가능한 것을 특징으로 하는 장비.
  3. 제 2 항에 있어서, 상기 식별 정보는 상기 제 1 저장 매체의 종류에 대응하는 매체 ID를 포함하는 것을 특징으로 하는 장비.
  4. 제 2 항에 있어서, 상기 네트워크 인터페이스는 상기 네트워크를 통하여 상기 관리자로부터 암호화된 가상 ID의 수신을 촉진하기 위해 보다 조작가능하며, 상기 가상 ID는 상기 기기 ID와 연관된 것을 특징으로 하는 장비.
  5. 제 4 항에 있어서, 상기 해독 장치는 상기 기기 ID를 이용하여 상기 암호화된 가상 ID를 해독하고, 상기 가상 ID를 이용하여 상기 암호화된 해독키를 해독하고, 상기 해독키를 이용하여 상기 암호화된 프로그램을 해독하고, 그리고 상기 가상 ID를 이용하여 상기 프로그램을 재암호화하기 위해 조작가능한 것을 특징으로 하는 장비.
  6. 제 5 항에 있어서, 상기 제 1 저장 매체는 상기 기기 ID 및 상기 암호화된 가상 ID를 저장하기 위해 조작가능한 것을 특징으로 하는 장비.
  7. 제 6 항에 있어서, 상기 해독 장치는 상기 기기 ID를 이용하여 상기 암호화된 가상 ID를 해독하고, 그리고 상기 장비가 상기 프로그램을 실행할 수 있도록 상기 가상 ID를 이용하여 상기 재암호화된 프로그램을 해독하기 위해 조작가능한 것을 특징으로 하는 장비.
  8. 제 6 항에 있어서, 상기 제 1 저장 매체는 상기 장비와 제거 가능하게 연결된 것을 특징으로 하는 장비.
  9. 제 6 항에 있어서,
    상기 기기 ID를 포함하는 제 2 저장 매체; 및
    상기 제 1 저장 매체 내에 저장된 기기 ID를 상기 제 2 저장 매체 내에 포함된 기기 ID와 비교하고, 그리고 이들이 부합하지 않는 경우에 상기 암호화된 가상 ID를 해독하기 위하여 상기 저장 매체들 중 어느 하나에 포함된 기기 ID를 이용하는 것을 금지하도록 하기 위해 조작가능한 프로세서를 더 포함하는 것을 특징으로 하는 장비.
  10. 제 9 항에 있어서, 상기 프로세서는 상기 제 1 저장 매체 내에 저장된 기기 ID가 상기 제 2 저장 매체 내에 포함된 기기 ID와 부합하지 않는 경우에 상기 장비의 사용자가 재할당 루틴을 선택하도록 요청하기 위해 조작가능한 것을 특징으로 하는 장비.
  11. 제 9 항에 있어서, 상기 네트워크 인터페이스는:
    상기 제 1 저장 매체 내에 저장된 기기 ID와 부합하지 않는 경우에 상기 제 2 저장 매체 내에 포함된 기기 ID를 상기 네트워크를 통하여 상기 관리자에게 전송 하고; 그리고
    상기 네트워크를 통하여 상기 관리자로부터 새로운 암호화된 가상 ID를 수신하는 것을 촉진하기 위해 조작가능하며,
    이때 상기 새로운 암호화된 가상 ID의 가상 ID는 상기 제 2 저장 매체 내에 포함된 기기 ID와 관련된 것을 특징으로 하는 장비.
  12. 제 11 항에 있어서, 상기 제 1 저장 매체는 상기 암호화된 가상 ID를 상기 새로운 암호화된 가상 ID로 교체하기 위해 조작가능한 것을 특징으로 하는 장비.
  13. 제 12 항에 있어서, 상기 해독 장치는 상기 제 2 저장 매체 내에 포함된 기기 ID를 이용하여 상기 새로운 암호화된 가상 ID를 해독하고, 그리고 상기 장비가 상기 프로그램을 실행하도록 상기 가상 ID를 이용하여 상기 재암호화된 프로그램을 해독하기 위해 조작가능한 것을 특징으로 하는 장비.
  14. 제 1 항에 있어서, 상기 네트워크 인터페이스는 상기 네트워크를 통하여 상기 관리자로부터 상기 암호화된 프로그램의 수신을 촉진하기 위해 조작가능한 것을 특징으로 하는 장비.
  15. 제 1 항에 있어서, 상기 프로그램은 응용 프로그램 및 시스템 프로그램 중 하나인 것을 특징으로 하는 장비.
  16. 하나의 처리 장비에서 암호화된 프로그램을 수신하는 단계;
    상기 처리 장비에 관련된 적어도 일부의 식별 정보를 네트워크를 통하여 관리자에게 전송하는 단계;
    상기 적어도 일부의 식별 정보에 반응하여 상기 관리자로부터 상기 네트워크를 통하여 상기 처리 장비에서 암호화된 해독키를 수신하는 단계;
    상기 암호화된 해독키를 해독하는 단계;
    상기 해독키를 이용하여 상기 암호화된 프로그램을 해독하는 단계;
    상기 적어도 일부의 식별 정보를 이용하여 상기 프로그램을 재암호화하는 단계; 그리고
    상기 식별 정보 및 상기 재암호화된 프로그램을 제 1 저장 매체 내에 저장하는 단계를 포함하는 방법.
  17. 제 16 항에 있어서,
    상기 식별 정보는 상기 처리 장비에 실질적으로 고유한 기기 ID를 포함하고, 그리고
    상기 기기 ID에 반응하여 상기 네트워크를 통하여 상기 관리자로부터 상기 암호화된 해독키가 수신되도록 상기 네트워크를 통하여 상기 관리자에게 상기 기기 ID가 전송되는 것을 특징으로 하는 방법.
  18. 제 17 항에 있어서, 상기 식별 정보는 상기 제 1 저장 매체의 종류에 대응하는 매체 ID를 포함하는 것을 특징으로 하는 방법.
  19. 제 17 항에 있어서, 상기 네트워크를 통하여 상기 관리자로부터 상기 처리 장비에서 암호화된 가상 ID를 수신하는 단계를 더 포함하고, 이때 상기 가상 ID는 상기 기기 ID와 관련되는 것을 특징으로 하는 방법.
  20. 제 19 항에 있어서, 상기 기기 ID를 이용하여 상기 암호화된 가상 ID를 해독하는 단계; 상기 가상 ID를 이용하여 상기 암호화된 해독키를 해독하는 단계; 상기 해독키를 이용하여 상기 암호화된 프로그램을 해독하는 단계; 그리고 상기 가상 ID를 이용하여 상기 프로그램을 재암호화하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  21. 제 20 항에 있어서, 상기 기기 ID 및 상기 암호화된 가상 ID를 상기 제 1 저장 매체 내에 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  22. 제 21 항에 있어서, 상기 기기 ID를 이용하여 상기 암호화된 가상 ID를 해독하는 단계, 및 상기 처리 장비가 상기 프로그램을 실행할 수 있도록 상기 가상 ID를 이용하여 상기 재암호화된 프로그램을 해독하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  23. 제 21 항에 있어서, 상기 제 1 저장 매체는 상기 처리 장비에 제거 가능하게 연결된 것을 특징으로 하는 방법.
  24. 제 21 항에 있어서, 상기 처리 장비는 상기 기기 ID를 포함하는 제 2 저장 매체를 더 포함하고, 상기 방법은: 상기 제 1 저장 매체 내에 저장된 기기 ID를 상기 제 2 저장 매체 내에 포함된 기기 ID와 비교하는 단계, 및 이들이 부합하지 않는 경우에 상기 암호화된 가상 ID를 해독하기 위하여 상기 저장 매체들 중 어느 것에 포함된 기기 ID를 이용하는 것을 금지하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  25. 제 24 항에 있어서, 상기 제 1 저장 매체 내에 저장된 기기 ID가 상기 제 2 저장 매체 내에 포함된 기기 ID와 부합하지 않는 경우에 상기 처리 장비의 사용자에게 재할당 루틴을 선택하도록 요청하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  26. 제 24 항에 있어서,
    상기 제 1 저장 매체 내에 저장된 기기 ID와 부합하지 않는 경우에 상기 제 2 저장 매체 내에 포함된 기기 ID를 네트워크를 통하여 상기 관리자에게 전송하는 단계; 및
    상기 네트워크를 통하여 상기 관리자로부터 새로운 암호화된 가상 ID를 수신하는 단계를 더 포함하고, 이때 상기 새로운 암호화된 가상 ID의 가상 ID는 상기 제 2 저장 매체 내에 포함된 기기 ID와 관련된 것을 특징으로 하는 방법.
  27. 제 26 항에 있어서, 상기 제 1 저장 매체 내에서 암호화된 가상 ID를 상기 새로운 암호화된 가상 ID로 교체하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  28. 제 27 항에 있어서,
    상기 제 2 저장 매체 내에 포함된 기기 ID를 이용하여 상기 새로운 암호화된 가상 ID를 해독하는 단계; 및
    상기 처리 장비가 상기 프로그램을 실행하도록 상기 가상 ID를 이용하여 상기 재암호화된 프로그램을 해독하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  29. 제 16 항에 있어서, 상기 네트워크를 통하여 상기 관리자로부터 상기 암호화된 프로그램을 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  30. 제 16 항에 있어서, 상기 프로그램은 응용 프로그램 및 시스템 프로그램 중 하나인 것을 특징으로 하는 방법.
  31. 각각 개개의 처리 장비에 관련되는 개개의 식별 정보가 네트워크를 통하여 상기 처리 장비로 수신될 수 있도록 상기 네트워크를 통한 통신을 제공하기 위해 조작가능한 네트워크 인터페이스;
    각각 처리 장비들 중 하나에 대응하는 개개의 등록 정보 및 그 식별 정보를 포함하여 저장하기 위해 조작가능한 데이터베이스; 및
    수신된 식별 정보와 부합하는 식별 정보를 포함하는 등록 정보를 상기 데이터베이스에서 검색하기 위해 조작가능한 데이터 프로세서를 포함하고,
    상기 네트워크 인터페이스는 상기 수신된 식별 정보에 반응하여 상기 네트워크를 통하여 상기 처리 장비로 암호화된 해독키의 전송을 촉진하기 위해 조작가능하고, 그리고
    상기 해독키는 상기 처리 장비에 위치하는 암호화된 프로그램을 해독하는 데 이용되는 것을 특징으로 하는 장비.
  32. 제 31 항에 있어서,
    상기 식별 정보는 상기 대응되는 처리 장비에 실질적으로 고유한 기기 ID를 포함하고; 그리고
    상기 데이터 프로세서는 상기 기기 ID에 반응하여 상기 암호화된 해독키를 생성하기 위해 조작가능한 것을 특징으로 하는 장비.
  33. 제 32 항에 있어서, 상기 식별 정보는 상기 암호화된 프로그램을 저장하기 위하여 상기 처리 장비에 의해 이용되는 제 1 처리 장치의 종류에 대응되는 매체 ID를 포함하는 것을 특징으로 하는 장비.
  34. 제 33 항에 있어서,
    상기 프로세서는 가상 ID가 상기 기기 ID에 관련되도록 상기 기기 ID의 기능으로서 가상 ID를 생성하고, 상기 가상 ID를 이용하여 상기 해독키를 암호화하고, 그리고 상기 기기 ID를 이용하여 상기 가상 ID를 암호화하기 위해 조작가능하며; 그리고
    상기 네트워크 인터페이스는 상기 네트워크를 통하여 상기 처리 장비로 상기 암호화된 가상 ID의 전송을 촉진하기 위해 조작가능한 것을 특징으로 하는 장비.
  35. 제 34 항에 있어서,
    상기 처리 장비는 상기 기기 ID를 포함하는 제 2 저장 매체를 포함하고;
    상기 처리 장비는 상기 제 1 저장 매체 내에 저장된 기기 ID가 상기 제 2 저장 매체 내에 포함된 기기 ID와 부합하지 않는 경우에 식별 재할당을 요구하기 위해 조작가능하며;
    상기 네트워크 인터페이스는 상기 제 1 저장 매체 내에 저장된 기기 ID(예전의 기기 ID) 및 상기 네트워크를 통하여 상기 처리 장비의 제 2 저장 매체 내에 포함된 기기 ID(새로운 기기 ID)를 수신하기 위해 조작가능하며;
    상기 데이터 프로세서는 (ⅰ) 상기 데이터베이스에서 상기 예전의 기기 ID를 포함하는 등록 정보를 검색하고, (ⅱ) 상기 예전의 기기 ID와 관련된 등록 정보의 가상 ID를 얻고, (ⅲ) 상기 가상 ID를 상기 새로운 기기 ID에 관련시키고, 그리고 (ⅳ) 상기 새로운 기기 ID를 이용하여 상기 가상 ID를 암호화하기 위해 조작가능하며; 그리고
    상기 네트워크 인터페이스는 상기 네트워크를 통하여 상기 처리 장비로 상기 새로운 암호화된 가상 ID의 전송을 촉진하기 위해 조작가능한 것을 특징으로 하는 장비.
  36. 제 31 항에 있어서, 상기 네트워크 인터페이스는 상기 네트워크를 통하여 상기 처리 장비로 상기 암호화된 프로그램의 전송을 촉진하기 위해 조작가능한 것을 특징으로 하는 장비.
  37. 제 31 항에 있어서, 상기 프로그램은 응용 프로그램 및 시스템 프로그램 중 하나인 것을 특징으로 하는 장비.
  38. 각각 개개의 처리 장비에 관련되는 개개의 식별 정보를 네트워크를 통하여 상기 처리 장비로부터 수신하는 단계;
    각각 상기 처리 장비들 중 하나에 대응하는 개개의 등록 정보 및 그 식별 정보를 포함하여 데이터베이스 내에 저장하는 단계;
    수신된 식별 정보와 부합하는 식별 정보를 포함하는 등록 정보를 상기 데이 터베이스에서 검색하는 단계; 및
    상기 수신된 식별 정보에 반응하여 상기 네트워크를 통하여 상기 처리 장비로 암호화된 해독키를 전송하는 단계를 포함하고, 이때 상기 해독키는 상기 처리 장비에 위치한 암호화된 프로그램을 해독하는 데 이용되는 것을 특징으로 하는 방법.
  39. 제 38 항에 있어서,
    상기 식별 정보는 상기 대응되는 처리 장비에 실질적으로 고유한 기기 ID를 포함하고; 그리고
    상기 암호화된 해독키는 상기 기기 ID에 반응하여 생성되고 전송되는 것을 특징으로 하는 방법.
  40. 제 39 항에 있어서, 상기 식별 정보는 상기 암호화된 프로그램을 저장하기 위하여 상기 처리 방법에 의해 이용되는 제 1 저장 매체의 종류에 대응하는 매체 ID를 포함하는 것을 특징으로 하는 방법.
  41. 제 40 항에 있어서,
    상기 가상 ID가 상기 기기 ID와 관련되도록 상기 기기 ID의 기능으로서 가상 ID를 생성하는 단계;
    상기 가상 ID를 이용하여 상기 해독키를 암호화하는 단계;
    상기 기기 ID를 이용하여 상기 가상 ID를 암호화하는 단계; 그리고
    상기 네트워크를 통하여 상기 암호화된 해독키 및 상기 암호화된 가상 ID를 상기 처리 장비로 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
  42. 제 41 항에 있어서, 상기 처리 장비는 기기 ID(새로운 기기 ID)를 포함하는 제 2 저장 매체를 포함하고, 그리고 상기 제 1 저장 매체 내에 저장된 기기 ID(예전의 기기 ID)가 상기 새로운 기기 ID와 부합하지 않는 경우에 상기 처리 장비는 식별 재할당을 요구하는 데 조작가능하며, 상기 방법은:
    상기 예전의 기기 ID 및 상기 새로운 기기 ID를 수신하는 단계;
    상기 예전의 기기 ID를 포함하는 등록 정보를 상기 데이터베이스에서 검색하는 단계;
    상기 예전의 기기 ID와 관련되는 등록 정보의 가상 ID를 얻는 단계;
    상기 가상 ID를 상기 새로운 기기 ID와 관련시키는 단계;
    상기 새로운 기기 ID를 이용하여 상기 가상 ID를 암호화하는 단계; 그리고
    상기 새로운 암호화된 가상 ID를 상기 처리 장비로 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  43. 제 38 항에 있어서, 상기 네트워크를 통하여 상기 처리 장비로 상기 암호화된 프로그램을 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  44. 제 38 항에 있어서, 상기 프로그램은 응용 프로그램 및 시스템 프로그램 중 하나인 것을 특징으로 하는 방법.
KR1020037010683A 2001-12-13 2002-12-05 프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비 KR100616217B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00380609 2001-12-13
JP2001380609 2001-12-13
PCT/JP2002/012737 WO2003050997A1 (en) 2001-12-13 2002-12-05 Methods and apparatus for secure distribution of program content

Publications (2)

Publication Number Publication Date
KR20040075698A KR20040075698A (ko) 2004-08-30
KR100616217B1 true KR100616217B1 (ko) 2006-08-25

Family

ID=19187206

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037010683A KR100616217B1 (ko) 2001-12-13 2002-12-05 프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비

Country Status (8)

Country Link
US (1) US7469345B2 (ko)
EP (1) EP1454449A4 (ko)
JP (1) JP4005026B2 (ko)
KR (1) KR100616217B1 (ko)
CN (1) CN100592682C (ko)
AU (1) AU2002354094B2 (ko)
TW (1) TWI264916B (ko)
WO (1) WO2003050997A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002354094B2 (en) 2001-12-13 2006-10-19 Sony Interactive Entertainment Inc. Methods and apparatus for secure distribution of program content
EP1456995B1 (en) * 2001-12-21 2012-01-18 Sony Computer Entertainment Inc. Methods and apparatus for secure distribution of program content
US8108319B2 (en) * 2003-08-26 2012-01-31 Sony Computer Entertainment America Llc System and method for controlling access to computer readable content using downloadable authentication
GB0403705D0 (en) * 2004-02-19 2004-03-24 Waterleaf Ltd Gaming facility and method of operation thereof
EP1580644A3 (en) * 2004-03-15 2005-11-09 Yamaha Corporation Electronic musical apparatus for recording and reproducing music content
JP4265479B2 (ja) * 2004-05-26 2009-05-20 ソニー株式会社 通信システム
TWI354206B (en) * 2004-07-15 2011-12-11 Ibm Method for accessing information on article with a
WO2006033419A1 (en) * 2004-09-20 2006-03-30 Sony Computer Entertainment Inc. Methods and apparatus for distributing software applications
KR100933389B1 (ko) * 2004-09-20 2009-12-22 소니 컴퓨터 엔터테인먼트 인코포레이티드 소프트웨어 애플리케이션을 에뮬레이트하는 방법 및 장치
CA2550560C (en) * 2005-06-17 2015-07-21 Kabushiki Kaisha Toshiba Information provision system, provision information copying device, user terminal device and user management device
US9026804B2 (en) * 2006-02-24 2015-05-05 Qualcomm Incorporated Methods and apparatus for protected distribution of applications and media content
US8108692B1 (en) * 2006-06-27 2012-01-31 Siliconsystems, Inc. Solid-state storage subsystem security solution
US8307217B2 (en) * 2007-02-02 2012-11-06 Lee Lane W Trusted storage
US9672333B2 (en) 2007-05-25 2017-06-06 Adobe Systems Incorporated Trusted storage
KR20090121712A (ko) * 2008-05-22 2009-11-26 삼성전자주식회사 가상화 시스템 및 그 가상화 시스템에서의 컨텐트 사용제한 방법
US8356184B1 (en) 2009-06-25 2013-01-15 Western Digital Technologies, Inc. Data storage device comprising a secure processor for maintaining plaintext access to an LBA table
US8296422B2 (en) 2010-05-06 2012-10-23 Sony Computer Entertainment Inc. Method and system of manipulating data based on user-feedback
CN101923616A (zh) * 2010-08-03 2010-12-22 鸿富锦精密工业(深圳)有限公司 版权保护中的服务提供装置、用户终端及版权保护方法
US9305142B1 (en) 2011-12-19 2016-04-05 Western Digital Technologies, Inc. Buffer memory protection unit
CN102938032B (zh) 2012-10-17 2017-09-22 中兴通讯股份有限公司 一种对通讯终端上应用程序加、解密的方法、系统和终端
US9124569B2 (en) * 2013-06-14 2015-09-01 Microsoft Technology Licensing, Llc User authentication in a cloud environment
US9935945B2 (en) * 2015-11-05 2018-04-03 Quanta Computer Inc. Trusted management controller firmware
US11362824B2 (en) * 2018-05-25 2022-06-14 Intertrust Technologies Corporation Content management systems and methods using proxy reencryption

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4688169A (en) * 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US5046090A (en) * 1990-03-29 1991-09-03 Gte Laboratories Incorporated Recorded medium for video control system
KR100292005B1 (ko) 1991-06-17 2001-09-17 리패치 컴퓨터회로가컴퓨터소프트웨어의갱신된버전과작용하도록하기위한방법및장치
US5805551A (en) 1994-04-18 1998-09-08 Matsushita Electric Industrial Co., Ltd. Method and apparatus for preventing illegal copy or illegal installation of information of optical recording medium
US5757907A (en) 1994-04-25 1998-05-26 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for generating a machine-dependent identification
US5598470A (en) * 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block
JP3507594B2 (ja) * 1995-07-31 2004-03-15 株式会社東芝 コンピュータ
US5812883A (en) 1995-11-22 1998-09-22 Mitsubishi Chemical America, Inc. System for reading and storing formatting information after formatting a first storage medium and using the stored formatting information to format a second storage medium
JP3176030B2 (ja) 1996-01-08 2001-06-11 株式会社東芝 複製制御方法及び複製制御装置
US5951639A (en) 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
US5862325A (en) 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US6115471A (en) 1996-11-28 2000-09-05 Fujitsu Limited Member-exclusive service system and method through internet
EP0858184A3 (en) * 1997-02-07 1999-09-01 Nds Limited Digital recording protection system
US6006190A (en) * 1997-04-28 1999-12-21 Tartaroukos Llc Computer implemented method and a computer system for enforcing software licenses
US20010010046A1 (en) 1997-09-11 2001-07-26 Muyres Matthew R. Client content management and distribution system
JP3660815B2 (ja) * 1997-12-10 2005-06-15 株式会社日立製作所 ディジタル放送信号の受信装置及び記録再生装置
US5982892A (en) 1997-12-22 1999-11-09 Hicks; Christian Bielefeldt System and method for remote authorization for unlocking electronic data
US6571206B1 (en) 1998-01-15 2003-05-27 Phoenix Technologies Ltd. Apparatus and method for emulating an I/O instruction for the correct processor and for servicing software SMI's in a multi-processor environment
US6189146B1 (en) 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US7171662B1 (en) 1998-03-18 2007-01-30 Microsoft Corporation System and method for software licensing
JP3239842B2 (ja) * 1998-05-08 2001-12-17 日本電気株式会社 ソフトウェアの不正利用防止システム
DE69940281D1 (de) * 1998-07-22 2009-02-26 Panasonic Corp Digitale Datenaufzeichnungsvorrichtung und Verfahren zum Urheberrechteschutz und zur leichteren Wiedergabe von verschlüsselten Daten und rechnerlesbares Aufzeichnungsmedium zur Programmaufzeichnung
US6607136B1 (en) 1998-09-16 2003-08-19 Beepcard Inc. Physical presence digital authentication system
JP2000242604A (ja) * 1999-02-19 2000-09-08 Fujitsu Ltd コンテンツ配布システム、端末装置および記録媒体
CN1168304C (zh) * 1999-03-15 2004-09-22 汤姆森许可公司 数字本地网络的一种全球拷贝保护系统
EP1045388A1 (en) * 1999-04-16 2000-10-18 Deutsche Thomson-Brandt Gmbh Method and apparatus for preventing illegal usage of multimedia content
JP3763702B2 (ja) * 1999-05-27 2006-04-05 富士通株式会社 データ運用方法
US6971022B1 (en) * 1999-06-15 2005-11-29 Matsushita Electric Industrial Co., Ltd. Cryptographic apparatus for performing cryptography on a specified area of content data
US7100195B1 (en) 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US6427132B1 (en) 1999-08-31 2002-07-30 Accenture Llp System, method and article of manufacture for demonstrating E-commerce capabilities via a simulation on a network
US6889321B1 (en) 1999-12-30 2005-05-03 At&T Corp. Protected IP telephony calls using encryption
JP3508680B2 (ja) * 2000-02-24 2004-03-22 日本電気株式会社 コンテンツ不正コピー防止方法およびシステム
TW550477B (en) 2000-03-01 2003-09-01 Passgate Corp Method, system and computer readable medium for Web site account and e-commerce management from a central location
US6677951B2 (en) 2000-03-03 2004-01-13 Sony Computer Entertainment, Inc. Entertainment apparatus having compatibility and computer system
US6668331B1 (en) 2000-03-24 2003-12-23 Advantest Corp. Apparatus and method for successively generating an event to establish a total delay time that is greater than can be expressed by specified data bits in an event memory
AU2001255264B2 (en) * 2000-04-07 2006-11-09 Blockbuster Inc. System and process for delivery of content over a network
US20020032584A1 (en) 2000-04-10 2002-03-14 Jonathan Doctor Health care payment compliance management
US20010051928A1 (en) 2000-04-21 2001-12-13 Moshe Brody Protection of software by personalization, and an arrangement, method, and system therefor
US6779066B2 (en) 2000-05-01 2004-08-17 Matsushita Electric Industrial Co., Ltd. Module having application-specific program stored therein
JP3964142B2 (ja) 2000-08-15 2007-08-22 株式会社ソニー・コンピュータエンタテインメント エミュレート装置及び部品、情報処理装置、エミュレーション方法、記録媒体、プログラム
JP2002073421A (ja) * 2000-08-31 2002-03-12 Matsushita Electric Ind Co Ltd ライセンス発行装置、コンテンツ再生装置、ライセンス発行方法、およびコンテンツ再生方法
US6732106B2 (en) * 2000-12-08 2004-05-04 Matsushita Electric Industrial Co., Ltd. Digital data distribution system
US20020077988A1 (en) * 2000-12-19 2002-06-20 Sasaki Gary D. Distributing digital content
US6993664B2 (en) * 2001-03-27 2006-01-31 Microsoft Corporation Method and system for licensing a software product
US7735080B2 (en) 2001-08-30 2010-06-08 International Business Machines Corporation Integrated system and method for the management of a complete end-to-end software delivery process
US7483433B2 (en) 2001-09-17 2009-01-27 Foundry Networks, Inc. System and method for router data distribution
AU2002354094B2 (en) 2001-12-13 2006-10-19 Sony Interactive Entertainment Inc. Methods and apparatus for secure distribution of program content
EP1456995B1 (en) 2001-12-21 2012-01-18 Sony Computer Entertainment Inc. Methods and apparatus for secure distribution of program content
CA2369228A1 (en) 2002-01-24 2003-07-24 Alcatel Canada Inc. System and method for managing configurable elements of devices in a network element and a network
EP1505797B1 (en) 2003-08-04 2005-05-11 Alcatel A method, a communication network and a computer software product for distributing software packages or updates
US20050066324A1 (en) 2003-09-22 2005-03-24 Microsoft Corporation Method and system for distributing and installing software

Also Published As

Publication number Publication date
CN100592682C (zh) 2010-02-24
CN1491506A (zh) 2004-04-21
EP1454449A1 (en) 2004-09-08
US7469345B2 (en) 2008-12-23
EP1454449A4 (en) 2006-10-25
KR20040075698A (ko) 2004-08-30
AU2002354094B2 (en) 2006-10-19
AU2002354094A1 (en) 2003-06-23
JP2005512158A (ja) 2005-04-28
US20030123670A1 (en) 2003-07-03
WO2003050997A1 (en) 2003-06-19
TWI264916B (en) 2006-10-21
TW200305325A (en) 2003-10-16
JP4005026B2 (ja) 2007-11-07

Similar Documents

Publication Publication Date Title
KR100616217B1 (ko) 프로그램 컨텐츠의 안전한 배포를 위한 방법 및 장비
KR100983179B1 (ko) 프로그램 컨텐츠의 안전한 분배를 위한 방법 및 장비
US6684198B1 (en) Program data distribution via open network
JP4902207B2 (ja) ファイルの暗号化と復号化のための複数のキーを管理するシステムと方法
KR100236697B1 (ko) 소프트웨어 복사 처리 장치
EP1380916B1 (en) Data protection program, method and apparatus
US20080270796A1 (en) System and method for providing program information, and recording medium used therefor
US20050204405A1 (en) Method and system for digital rights management
US8799654B2 (en) Methods and apparatus for authenticating data as originating from a storage and processing device and for securing software and data stored on the storage and processing device
KR20040030454A (ko) 콘텐츠 이용권한 관리시스템, 콘텐츠 이용권한 관리방법및 정보처리장치와 컴퓨터 프로그램
NO332658B1 (no) Publisering av innhold i forbindelse med administrasjonsarkitektur for digitale rettigheter
KR20050008626A (ko) 정보 처리 장치 및 방법, 정보 처리 시스템, 기록 매체,및 프로그램
KR20020064672A (ko) 콘텐츠 이용 관리 시스템 및 콘텐츠 이용 관리 방법
EP1295455A2 (en) System and method controlling access to digital works using a network
US20020120847A1 (en) Authentication method and data transmission system
JP4353552B2 (ja) コンテンツサーバ,端末装置及びコンテンツ送信システム
US20030145211A1 (en) Information recording/reproducing system being able to limit an access and a method thereof
US20090185690A1 (en) Solution for locally staged electronic software distribution using secure removable media
CN108494724B (zh) 基于多授权机构属性加密算法的云存储加密系统
KR20020013241A (ko) 데이터 무단 사용 방지 시스템 및 방법과 휴대용 데이터저장 장치

Legal Events

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

Payment date: 20120724

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130719

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140721

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160721

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180801

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190730

Year of fee payment: 14