KR20060031846A - 복제방지된 소프트웨어 실행장치 - Google Patents

복제방지된 소프트웨어 실행장치 Download PDF

Info

Publication number
KR20060031846A
KR20060031846A KR1020067000133A KR20067000133A KR20060031846A KR 20060031846 A KR20060031846 A KR 20060031846A KR 1020067000133 A KR1020067000133 A KR 1020067000133A KR 20067000133 A KR20067000133 A KR 20067000133A KR 20060031846 A KR20060031846 A KR 20060031846A
Authority
KR
South Korea
Prior art keywords
data
encrypted
graphic
graphic data
communication channel
Prior art date
Application number
KR1020067000133A
Other languages
English (en)
Inventor
메노 에이. 트레퍼스
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20060031846A publication Critical patent/KR20060031846A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00369Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier wherein a first key, which is usually stored on a hidden channel, e.g. in the lead-in of a BD-R, unlocks a key locker containing a second
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00855Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of exchanging information with a remote server
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00876Circuits for prevention of unauthorised reproduction or copying, e.g. piracy wherein physical copy protection means are attached to the medium, e.g. holograms, sensors, or additional semiconductor circuitry
    • 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/2109Game systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 발명은 기록매체(6)에 저장된 복제방지된 소프트웨어를 실행하는 장치에 관한 것이다. 본 발명은 해커가 정보 매체(6)의 판독가능한 복제를 하는데 있어서 장해물을 증가시키는 것을 목적으로 한다. 이 목적을 달성하기 위해, 상기 암호화된 그래픽 데이터(7)와 상기 암호화 데이터(8,11,12)를 판독하는 드라이브(1)와, 상기 암호화 데이터(8,11,12)를 이용해 상기 암호화된 그래픽 데이터(7)를 해독하여 해독된 그래픽 데이터(16)를 획득하는 수단(9)과, 상기 복제방지된 소프트웨어를 실행하는 애플리케이션 처리부(4)와, 상기 그래픽 데이터(16)를 처리하는 그래픽 처리부(10)와, 상기 드라이브(1)와 상기 그래픽 처리부(10) 사이의 보안 통신 채널(5)을 오픈하여 상기 해독된 그래픽 데이터(16) 및/또는 상기 암호화 데이터(8,11, 12)를 상기 드라이브(1)에서 상기 그래픽 처리부(10)로 전송하는 수단을 구비하는 장치가 제공된다.
복제방지, 암호화 데이터, 정보매체

Description

복제방지된 소프트웨어 실행장치{DEVICE FOR RUNNING COPY-PROTECTED SOFTWARE}
본 발명은 복제방지된 소프트웨어를 실행하는 장치 및 복제방지된 소프트웨어를 실행하는 대응 방법에 관한 것이다.
일반적으로 게임은 CD-ROM 및 DVD-ROM 디스크에 배포되어 있다. 플레이스테이션 혹은 X박스 등의 게임 콘솔과 달리 PC는 DVD-ROM 디스크 변이를 이용할 수 있다. 그러한 디스크에 저장된 게임용 데이터는 저작권 소유자의 승낙없이 종종 복제되어, 게임 공급자의 수익을 줄인다. 이들 불법 복제는 기록가능한 디스크에 배포되고, 또한 인터넷을 통해서 점점 더 배포된다. 이와 같이 게임 디스크는 인터넷을 통한 복제 및 배포로부터 방지될 필요가 있다. 현재 판독 장치에 의해 게임의 복제가 게임의 진행 중에 쉽게 이루어질 수 있다.
본 발명은 소프트웨어를 복제하는 것을 더 어렵게 하는 복제방지된 소프트웨어 실행장치를 제공하는 것을 목적으로 한다.
본 발명에 따른 목적은, 정보 매체에 저장된 암호화된 그래픽 데이터 및 암호화 데이터를 포함하는 복제방지된 소프트웨어를 실행하고,
- 상기 암호화된 그래픽 데이터와 상기 암호화 데이터를 판독하는 드라이브와,
- 상기 암호화 데이터를 이용해 상기 그래픽 데이터를 해독하여 해독된 그래픽 데 이터를 얻는 수단과,
- 상기 복제방지된 소프트웨어를 실행하는 애플리케이션 처리부와,
- 상기 해독된 그래픽 데이터를 처리하는 그래픽 처리부와,
- 상기 드라이브와 상기 그래픽 처리부 사이의 보안 통신 채널을 오픈하여 상기 해독된 그래픽 데이터 및/또는 상기 암호화 데이터를 상기 드라이브에서 상기 그래픽 처리부로 전송하는 수단을 구비하는 특허청구범위의 제1항에 기재된 장치에 의해 달성된다.
본 발명에 따르면, 정보 매체, 예를 들면 디스크에 저장된 소프트웨어, 바람직하게는 게임 소프트웨어는 그래픽 데이터를 암호화함으로써 복제 방지될 수 있다. 이후에는 상기 소프트웨어를 복제방지된 소프트웨어라고 칭한다. 암호화된 그래픽 데이터는 정보 매체, 예를 들면 CD 혹은 DVD와 같은 광 디스크에 저장된다. 암호화된 그래픽 데이터를 해독하는 암호화 데이터도 정보 매체에 저장된다. 상기 암호화 데이터의 다양한 실시예가 가능하다. 암호화 데이터는 그 자체가 암호화될 수 있거나 혹은 암호화되지 않고 판독가능한 암호화 데이터로서 저장될 수 있다. 이하, 언급된 실시예를 보다 상세히 설명한다.
정보 매체는 정보 매체로부터 암호화된 그래픽 데이터와 암호 데이터를 판독하는 디스크 드라이브 내에 위치될 수 있다. 이 드라이브는 광 정보매체를 판독하도록 구성된 광 드라이브일 수 있다. 애플리케이션 처리부는 드라이브 및 그래픽 처리부(GPU) 등, 장치의 서브 시스템들 사이의 애플리케이션 소프트웨어를 이용해서 데이터 전송을 제어하기 위해 설치된다. 애플리케이션 처리부, 드라이브 및 GPU 는 통신 버스를 통해서 서로 접속되어 있다. 전체 소프트웨어는 복제를 충분히 방지하기 위해 암호화되어야 하는 것이 아니라, 단지 소프트웨어를 실행하는데 필요한 혹은 적어도 중요한 데이터의 일부만을 암호화해야 한다. 유리하게는, 소프트웨어의 일부만을 암호화하면 해독 시간이 감소된다.
본 발명에 따르면, 선택된 데이터만이 암호화된다. 이하, 이들 데이터를 그래픽 데이터라고 칭한다. 상기 그래픽 데이터는 GPU에 의해 처리된 데이터이지만, 애플리케이션 처리부는 소프트웨어를 실행하기 위해 그래픽 데이터를 처리 혹은 조작하지 않는다. 상기 그래픽 데이터는 상기 드라이브와 상기 그래픽 처리부 사이에 전송되도록 되어 있다. 애플리케이션 소프트웨어는 상기 그래픽 데이터의 전송을 제어한다. 이들 그래픽 데이터는 텍스쳐 맵, 이미지, 비디오 데이터 혹은 3D 모델 데이터일 수 있다.
이와 같이, 암호화 데이터는 애플리케이션 소프트웨어에 공개될 필요가 없다. 암호화 데이터는 종래와 비교하여 향상된 애플리케이션 소프트웨어 유닛에 의해 제어되는 버스 시스템에서는 보이지 않는다. 시스템 위조를 방지하려고 시도할 때, 애플리케이션 소프트웨어에 암호화 데이터를 공개하는 것은 가장 취약한 점이다. 공개된 암호화 데이터가 보호되지 않고 다른 디스크에 암호화된 그래픽 데이터와 함께 용이하게 기록될 수 있다.
게다가, 본 발명에 따르면 상기 암호화 데이터를 사용하여 상기 암호화된 그래픽 데이터를 해독하는 수단이 제공된다. 한편으로 상기 암호화 데이터를 이용해서 암호화된 그래픽 데이터를 해독하고 다른 한편으로 상기 보안 통신 채널을 통해 서 GPU에 암호화된 그래픽 데이터 및/또는 암호화 데이터를 전송하는 시퀀스가 변할 수 있다.
그래픽 데이터 및/또는 암호화 데이터는 보안 통신 채널을 통해서 정보 매체에서 GPU로 전송되고, 해독된 그래픽 데이터는 GPU에 의해 처리된다. 완전한 소프트웨어를 복제려면 어떤 경우든지 해독된 그래픽 데이터를 복제하거나 혹은 다른 것들 중에서 암호화 데이터와 함께 암호화된 그래픽 데이터를 복제하는 것이 필요하다. 해독된 그래픽 데이터는 판독 장치의 불안전한 버스 시스템에서는 결코 보이지 않는다. 해독된 그래픽 데이터는 보안 통신 채널을 통해서 정보매체와 GPU 사이에 전송된다. 이와 같이, 해독된 그래픽 데이터를 복제하려면 보안 통신 채널을 해킹하는 것이 필요하다. 암호화 데이터는 또한 동일한 또는 다른 보안 통신 채널을 통해서 전송된다. 이와 같이, 암호화 데이터를 복제하려면 보안 통신 채널을 해킹하는 것이 필요하다. 보안 통신 채널은 임의로 안전하게 될 수 있다. 이와 같이, 판독 장치를 이용하여 판독가능한 버전의 소프트웨어를 얻는 것은 어렵게 될 수 있다.
보안 통신 채널을 형성하는 기술은 공지되어 있으므로 여기서는 설명되지 않을 것이다. 예를 들면, 공개 키 프로토콜을 가진 안전한 인증 채널이 사용될 수 있다. 보안 통신 채널은 이 장치의 본래의 버스 시스템에 설치되어 있다. 본 발명에 따르면 보안 통신 채널을 오픈하는 수단이 제공된다.
본 발명의 바람직한 실시예에 있어서, 상기 암호화된 그래픽 데이터를 해독하는 수단은 상기 GPU를 포함하는 그래픽 카드에 포함되고, 보안 통신 채널은 상기 암호화 데이터를 전송하기 위해 구성된다. 이러한 본 발명의 실시예에 있어서, 상기 암호화된 그래픽 데이터를 해독하는 수단에 의해 암호화된 그래픽 데이터가 해독되기 전에 암호화된 그래픽 데이터가 버스 시스템을 통해서 전송될 수 있다. 상기 암호화된 그래픽 데이터를 해독하는 수단은 예를 들면 그래픽 카드에 GPU와 함께 배치된다. GPU를 포함하는 어떤 서브 시스템이든 구비하는 그래픽 카드는 넓은 뜻으로 이해되어야 한다. 이러한 본 발명의 실시예에 있어서, 암호화 데이터는 판독가능한 버전으로 정보매체에 저장될 수 있다. 암호화 데이터는 보안 통신 채널을 통해서 상기 그래픽 카드 위의 상기 암호화된 그래픽 데이터를 해독하는 수단과 정보매체 사이에 전송된다. 이 실시예에 있어서, 암호화된 그래픽 데이터는 불안전한 채널을 통해서 상기 그래픽 카드 위의 상기 암호화된 그래픽 데이터를 해독하는 수단에 전송될 수 있다.
보안 통신 채널을 구현하기 위해 세션 키가 사용될 수 있다. 데이터는 보안 통신 채널의 입력에서 암호화되고 보안 통신 채널의 출력에서 해독된다. 세션 키는 각각의 재부팅 후에 변할 수 있다. 암호화 키를 이용한 그래픽 데이터의 암호화/해독은 통상적으로 보안 통신 채널을 위한 세션 키를 이용한 데이터의 암호화/해독과 관계없다는 점에 유념해야 한다. 실제로 서로 다른 암호화 알고리즘이 사용될 수 있다. 이러한 본 발명의 실시예에 있어서 암호화 데이터는 세션 키에 의해 보안 통신 채널의 정보 매체 측에서 암호화되어, 보안 통신 채널을 통해서 통신 채널의 GPU 측에 전송된다. 상기 암호화된 그래픽 데이터를 해독하는 수단에 도달하기 전에, 암호화 데이터는 다시 해독된다. 이와 같이, 암호화 데이터는 버스 시스템에는 보이지 않는다. 암호화 데이터를 얻으려면 보안 통신 채널에 대한 암호화 어택이 필요하다. 그것은 암호 데이터를 얻는 것을 매우 어렵게 만든다.
본 발명의 또 다른 바람직한 실시예에 있어서, 상기 암호화된 그래픽 데이터를 해독하는 수단은 상기 드라이브에 포함되고, 상기 보안 통신 채널은 해독된 그래픽 데이터를 전송하도록 구성된다. 이러한 본 발명의 실시예에 있어서, 암호화된 그래픽 데이터는 보안 통신 채널을 통해서 정보매체와 GPU 사이에 전송되기 전에 해독될 수 있다. 상기 암호화된 그래픽 데이터를 해독하는 수단은 드라이브에 포함된다. 이 실시예에 있어서, 암호화 키는 상기 암호화된 그래픽 데이터를 해독하는 수단에 의해 상기 암호화된 그래픽 데이터에 적용되고, 그 결과 해독된 그래픽 데이터는 보안 통신 채널을 통해서 상기 GPU에 전송된다. 이 실시예에 있어서, 암호화된 그래픽 데이터는 보안 통신 채널의 정보 매체 측에서 암호화 데이터에 의해 해독된다. 그 결과 해독된 그래픽 데이터는 보안 통신 채널의 세션 키에 의해 암호화 및 해독된다. 이러한 본 발명의 실시예에 있어서, 암호화 키는 독립적으로 전송되지 않아야 한다. 이것은 소프트웨어를 실행하는 속도를 향상시킬 수 있다.
상술한 바와 같이, 암호화 데이터는 그들 자체가 암호화될 수 있어 보안을 더 향상시킨다. 바람직하게는, 상기 암호화 데이터는 키 록커(key locker) 데이터와 히든(hidden) 코드 데이터를 포함하고, 상기 히든 코드 데이터에 의해 상기 키 록커 데이터를 언로크하는(unlocking) 수단은 상기 암호화된 그래픽 데이터를 해독하기 위한 암호화 키 데이터를 얻기 위해 상기 드라이브에 설치되어 있다. 이러한 본 발명의 실시예에 있어서, 암호화 키 데이터는 키 록커에 은닉되어 있다. 히든 코드는 키 록커 데이터를 언로크하기 위해 사용될 수 있다. 바람직하게는, 언로크 수단은 드라이브에 포함된다. 키 록커 데이터를 언로크하는 것은 해독의 한 형태이다. 히든 코드는 또한 정보 매체 저장될 수 있다. 이러한 본 발명의 실시예에 있어서, 암호화 데이터는 한층 더 소프트웨어를 복제하는 장애물을 증가시키는 암호화된 형태로 저장매체에 저장된다. 본 발명의 또 다른 실시예에 있어서, 히든 코드는 상기 정보 매체에 부착된 집적회로(IC)에 저장된다. IC는 히든 코드를 얻기 위해 역설계(reverse-engineered)되어야 하기 때문에, 이들 칩-인-디스크들(chip-in-discs)은 더 고가이지만, 더 위조방지된다. 히든 코드는 또한 예를 들면 스마트 카드에 의해 정보 매체로부터 독립적으로 배포될 수 있다. 암호화 키 데이터는 상술한 암호화 데이터의 특별한 경우이고, 이 암호화 키 데이터는 상술한 실시예에서 암호화 데이터와 같은 방법으로 사용될 수 있다.
본 발명의 또 다른 바람직한 실시예에 있어서, 암호화 키 데이터는 상기 정보 매체에 저장된 암호화 데이터와 드라이브 내측에 저장된 비밀 정보를 조합하여 산출된다. 이 실시예의 이점은 정보 매체가 상기 비밀 정보를 포함하는 특정 드라이브에 의해서만 판독될 수 있다는 점이다.
청구항에 기재된 장치는 플레이스테이션 혹은 X박스 등의 PC 혹은 게임 콘솔인 것이 바람직하다.
본 발명의 목적은 또한 청구항 제6항에 기재된 복제방지된 소프트웨어 실행방법에 의해 달성될 수 있다. 이 방법은 상술한 것에 의해 수행될 수 있다.
이하, 도면을 참조하여 본 발명을 보다 상세히 설명한다.
도 1은 게임 콘솔의 구조의 개략도를 나타내고,
도 2는 본 발명의 제1 실시예의 개략도를 나타내며,
도 3은 본 발명의 제2 실시예의 개략도를 나타내고,
도 4는 본 발명의 제3 실시예의 개략도를 나타내고,
도 5는 본 발명의 제4 실시예의 개략도를 나타내며,
도 6은 제1 및 제4 실시예를 조합한 본 발명의 실시예의 개략도를 나타낸다.
도 1에 개략적으로 도시된 게임 콘솔 혹은 PC의 구조는 버스(2)(PC에서는 PCI 버스)를 통해서 그래픽 카드(3) 및 소프트웨어를 처리하는 애플리케이션 처리부(4)와 접속되는 광 디스크 드라이브(1)를 포함한다. 광 디스크 드라이브(1)와 그래픽 카드(3)는 그들 사이에 보안 통신 채널(5)을 오픈시키는 수단을 포함한다. 보안 통신 채널(5)은 현존하는 버스 시스템(2)을 사용한다. 보안 통신 채널(5)을 형성하는 기술은 공지되어 있다. 하나의 방법은 공개 키 프로토콜을 사용하는 것이지만, 대칭 키를 이용하는 프로토콜도 가능하다. 광 디스크 드라이브(1)는 암호화를 수행하고, 그래픽 카드(3)는 보안 통신 채널(5)의 세션 키를 이용해서 메시지 해독을 수행한다. 메시지는 애플리케이션 소프트웨어의 제어 하에 전송된다.
그래픽 데이터는 게임 형태가 복제되는 것을 방지하기 위해 암호화되어 디스크(6)에 암호화된 형태로 저장된다. 게임의 모든 데이터가 암호화되어야 하는 것이 아니라, 단지 게임을 플레이하기 위해 필요한 몇몇 데이터만이 암호화되어야 한다. 데이터는 암호화를 위해 선택되는데, 그것은 애플리케이션 소프트웨어에 의해 변조 혹은 조작될 수 없다. 암호화되어야 할 데이터는 텍스쳐 맵, 3D 모델, 비디오 데이터 혹은 정지 화상일 수 있다. 상기 데이터는 암호화된 그래픽 데이터(7)라고 불릴 것이다. 암호화된 그래픽 데이터(7)를 해독하기 위해, 암호화 키 데이터(8)가 제공된다.
도 2에 도시한 본 발명의 제1 실시예에 따르면, 디스크(6)는 암호화된 그래픽 데이터(7)와 이 그래픽 데이터(7)를 해독하는 암호화 키 데이터(8)를 포함한다. 디스크(6)가 지닌 암호화된 그래픽 데이터(7)는 광 디스크 드라이브(1)에 의해 판독되어, 버스 시스템(2)을 통해서 그래픽 카드(3)에 전송되는데, 암호화된 그래픽 데이터는 암호화 키 데이터(k)(8)에 의해 해독된다. 암호화된 그래픽 데이터(7)는 애플리케이션 소프트웨어(4)에 의해 그래픽 카드(1)에서 디스크 드라이브(3)로 전송된다. 암호화된 그래픽 데이터(7)는 보안 통신 채널(5) 없이 PC 하드웨어 버스 시스템을 통해서 그래픽 카드(3)에 전송될 수 있다.
상기 암호화된 그래픽 데이터(7)를 해독하기 위한 암호화 키 데이터(k)(8)도 디스크(6)에 저장되고, 보안 통신 채널(5)을 통해서 그래픽 카드(3)에 전송된다. 이와 같이, 암호화 키 데이터(k)(8)가 상술한 바와 같이 보안 통신 채널(5)의 세션 키에 의해 광 드라이브(1)에서 암호화된다. 이 암호화 키 데이터(k)(8)는 애플리케이션 소프트웨어(4)의 제어 하에 게임 콘솔의 하드웨어 버스 시스템(2) 내에서 그래픽 카드(3)로 전달된다. 이것은 암호화 키 데이터(k)(8)가 예를 들면 인터넷에서, 암호화된 그래픽 데이터(70)를 포함하는 게임과 함께 복제 및 배포되는 것을 방지한다.
그래픽 카드(3)에 도달한 후에, 암호화 키 자체는 보안 통신 채널(5)의 세션 키에 의해 해독되어, 상기 암호화된 그래픽 데이터를 해독하기 위한 수단(9)에 공급된다. 해독수단(90)은 그래픽 카드(3)에서 해독 소프트웨어로서 형성된다. 해독 소프트웨어는 콘솔이 버스 시스템(2)을 통해서 전송된 암호화된 그래픽 데이터(7)를 전송된 암호화 키 데이터(8)에 의해 해독하는 것을 가능하게 한다. 해독된 그래픽 데이터(16)는 게임에 필요한 그래픽을 처리하는 그래픽 처리부(GPU)(10)에 공급된다.
디스크(6)에 저장된 암호화 키 데이터(8)는 본래의 PC에는 나타나지 않을 수 있다. 따라서, 암호화된 그래픽 데이터(7)를 가진 디스크(6)를 복제하는 것은 가능하지만 암호화 키 데이터(8)를 복제하는 것은 불가능하다. 따라서, 디스크의 복제는 암호화된 데이터를 갖지만, 암호화 키 데이터(8)가 없는 복제물을 제공한다. 그러한 복제물은 사용될 수 없다.
암호화 키 데이터(8)를 은닉하기 위한 하나의 가능성은 US6,157,606에 기재된 히든 코드 등의 광 기록 트릭(trick)이다. 더 약한 가능성은 광 드라이브(1) 내에 비밀 키 k1을 저장하는 것이고, 디스크(6)에 비밀이 아닌 키 k2를 기록하는 것이다. 키 k2는 노멀 광 드라이브(1)에 의해 판독될 수 있다. 해시 작용(hash-function)에 의한 k1+k2의 결합은 그래픽 카드(3)에서 필요한 암호화 키 데이터(8)를 검색한다. 이 방법의 단점은 키 k2가 복제될 수 있으며 디스크(6)가 어떤 게임 콘솔에서든지 플레이될 수 있지만, 본래의 PC에서는 불가능하다는 점이다.
도 3에 따른 본 발명의 제2 실시예에 있어서, 해커가 디스크(6)에 저장된 게임을 복제하는 데에는 더 많은 장애가 있다. 암호화 키 데이터(8)는 디스크의 암호화된 데이터 영역에 저장되고, 키 록커 데이터(KL)(11)라고 불린다. 키 록커 키는 예를 들면 히든 코드 데이터(HC)(12)를 이용하여 디스크에 은닉된다. 광 드라이브(1)는 히든 코드 데이터(12)로 키 록커 데이터(11)를 언로크하기 위한 수단(13)을 제공한다. 히든 코드 데이터(12)는 사용되어야 하지만, 그것은 기록될 수 없다.
이러한 본 발명의 실시예에 있어서, 키 록커 데이터(11)는 코드화된 형태의 암호화 키 데이터(8)를 제공하는데, 그것은 히든 코드 데이터(12)로 언로크될 수 있다. 언로크된 암호화 키 데이터(8)는 보안 통신 채널(5)을 통해서 그래픽 카드(3)에 전송되고, 암호화된 그래픽 데이터(7)를 해독하는 수단(9)에 공급된다. 해독된 그래픽 데이터(16)는 GPU(10)에 전송된다.
도 4에 따른 본 발명의 제3 실시예에 있어서, 해독을 위한 제1 수단(9)은 콘솔의 광 드라이브(1)에 설치된다. 암호화 키 데이터(8)와 암호화된 그래픽 데이터(7)는 광 드라이브(1)에 의해 판독되어, 해독수단(9)에 공급된다. 암호화된 그래픽 데이터(7)는 해독되어 보안 통신 채널(5)의 일단에 공급된다. 보안 통신 채널(5)의 일단에서는, 해독된 그래픽 데이터(16)가 보안 통신 채널(5)의 세션 키에 의해 암호화된다. 이후에, 그래픽 데이터는 애플리케이션 소프트웨어(4)의 제어 하에 버스 시스템(2)을 이용하는 보안 통신 채널을 통해서 그래픽 카드(3)에 전송되는데, 통신 채널에서는 세션 키에 의한 해독이 발생한다. 해독된 그래픽 데이터(16)는 그래픽 카드(3)의 GPU(10)에 공급되고, 그래픽은 처리된다.
도 5에 따른 본 발명의 제4 실시예에 있어서, 해독수단(9)은 또한 광 드라이브(1)에 설치된다. 디스크(6)에 저장된 암호화된 그래픽 데이터(7)는 광 드라이브(1)에 의해 판독되고, 해독수단(9)에 의해 해독된다. 해독된 그래픽 데이터(16)는 보안 통신 채널(5)의 일측에 공급되고, 보안 통신 채널(5)의 세션 키에 의해 이때 다시 암호화되며, 애플리케이션 소프트웨어(4)의 제어 하에 보안 통신 채널(5)을 통해서 통신 채널(5)의 타단에 전송되고 그래픽 카드(3)에서 해독되어 GPU(10)에 공급된다.
이러한 본 발명의 실시예에 있어서, 본 발명의 제2 실시예에서 알려진 추가 장애가 제공된다. 암호화 키 데이터(8)는 판독가능한 버전으로 디스크(6)에 저장되지 않지만, 암호화 키 데이터(8)는 키 록커 데이터(11)에서 로크, 즉 암호화된다. 키 록커 데이터(11)를 언로크하기 위한 히든 코드 데이터(12)는 또한 디스크(6)에 저장되어 있다. 히든 코드 데이터(12)는 기록 혹은 복제될 수 없다. 키 록커 데이터(11)는 언로크 수단(13)에 의해 언로크된다. 이것에 의해 해커가 인터넷을 통해서 게임을 복제 및 배포하는 데에는 추가적인 부담이 있다. 콘솔은 키 록커 데이터(11)를 언로크하는 수단(13)을 필요로 한다.
도 6에는 상술한 본 발명의 제2 및 제4 실시예를 포함하는 결합 구조가 도시되어 있다.
결합 구조의 필구사항은 디스크 측에서는 암호화된 형태로 디스크(6)에 저장된 암호화 키 데이터(8), 히든 데이터(12)에 의해 로크 및 언로크되어야 하는 키 록커 데이터(11)이다. 이 결합 구조는 드라이브 측에서는 히든 키를 판독하는 수 단, 히든 코드 데이터(12)로 키 록커 데이터(11)를 언로크하는 수단(13), 암호화 키 데이터(8)로 암호화된 그래픽 데이터(7)를 해독하는 수단(9), 및 일종의 보안 통신 채널(5)로서의 안전한 인증 채널을 오픈 혹은 창출하는 수단을 포함한다. 이 실시예에 있어서 ROM 마크는 히든 코드 데이터(12)로서 사용된다. 키 록커 데이터(11)는 ROM 마크(12)로 로크된다. 디스크(6)에 저장된 암호화된 그래픽 데이터(7)는 키 록커 데이터(11)에서 로크된 암호화 키 데이터(8)로 해독될 수 있다. 키 록커 데이터(11)는 게임을 실행하기 위해 라이센스 스트링(license string) 또는 커넬(kernel) 혹은 바이어스(14)가 필요로 하는 다른 데이터를 포함한다. 라이센스 스트링은 제2 안전한 인증 채널(15)을 통해서 바이어스 혹은 커넬에 전송된다. 라이센스 스트링은 추가 보안 수단이다. 암호화된 그래픽 데이터(7), 키 록커 데이터(11) 및 ROM 마스크(12)를 포함하는 디스크(6)는 본래의 게임 디스크의 작업용 복제를 창출하는 해커 공격에서 보호된다.
ROM 마크는 본래의 디스크를 박리하여 새로운 스탬퍼를 제조할 때 고유의 정밀도 손실에 쉽게 반응한다.
해커가 디스크(6)의 ISO 이미지, 즉 파일 시스템 구조를 포함하는 디스크(6)를 창출하는데 필요한 모든 정보를 포함하는 단일 파일과, 디스크에 복제되어야 하는 모든 파일을 획득하면, 해커는 암호화 키 데이터(8) 혹은 암호화된 키 록커 데이터(11) 및 매칭 ROM 마크(12)를 반드시 획득해야 한다. 원칙적으로 포맷터(레이저 빔 레코더를 제어하는 기기)는 ROM 마크를 포함하는 스탬퍼를 창출하기 위해 사용될 수 있는 글래스 마스터(glass master)를 생성할 수 있다. 방어선은 포맷터에 의 액세스를 제한하는 것이다.
또한 몇몇 DVD 레코더는 ROM 마크(12)를 창출할 수 있다. 방어선은 기록될 수는 없지만 마스터링만은 될 수 있는 ROM 마크(12)를 사용하는 것이다. 해커가 디스크(6)의 ISO 이미지, 키 록커 데이터(11) 및 정확한 위치에서 ROM 마크(12)가 마스터링된 블랭크 기록가능한 디스크를 획득하는 것이 가능하면, 그리고 키 록커 데이터(11)를 해독하는 방법을 획득하면, 키 록커(11)는 현존하는 DVD 레코더가 기록하지 않는 디스크(6)의 영역에 여전히 위치될 수 있다. 그것은 헤커가 디스크(6)를 복제하는 것을 방지한다.
해킹은 어떠한 방법으로든 판독가능한 키 록커 데이터(11)를 필요로 한다. 키 록커 데이터(11)는 해킹을 방지하기 위해 그래픽 카드(3), 커넬(14) 혹은 애플리케이션 소프트웨어(4) 등의 또 다른 서브 시스템에 제공되지 않아야 한다. 이와 같이, 암호화 키 데이터(8)는 광 드라이브(1)의 외부에서는 결코 보이지 않는다. 커넬(14) 혹은 그래픽 카드(3)가 필요로 하는 비밀은 보안 통신 채널(5)에 의해서만 제공된다. 그 결과 헤커는 다른 서브시스템과 타협하여 완전한 키 록커 데이터(11)를 검색할 수 없을 것이다. 키 록커 데이터(11)는 광 드라이브(1)를 해킹하는 것만으로 추출될 수 있다. ROM 마크(12)의 값과 암호화 키 데이터(8) 자체는 광 드라이브(1)의 폼웨어(firmware)로부터 은닉되어야 한다. ROM 마크(12) 검출 및 해독은 단일 IC에서 하드웨어적으로 행해질 수 있다. 따라서, 광 드라이브(1)의 폼웨어를 해킹하기에는 충분하지 않지만, 광 드라이브 IC는 재설계되어야 한다. 그것은 헤커가 디스크(6)를 복제하는 것을 훨씬 더 어렵게 만든다.
본 발명은 헤커가 게임을 복제하는 것을 어렵게 하는 콘솔의 복제방지된 게임 실행방법을 처리한다. 몇몇 그래픽 데이터(7)는 게임을 플레이하는 중에 애플리케이션 소프트웨어에 의해 조작되지 않아야 한다. 상기 그래픽 데이터(7)는 디스크(6)에 암호화된 형태로 저장된다. 해당 암호화 키 데이터(8)를 위한 데이터도 디스크(6)에 저장된다. 보안 통신 채널(5)은 그래픽 카드(3)와 광 드라이브(1) 사이에 설치된다. 암호화 키 데이터(8) 혹은 해독된 그래픽 데이터는 보안 통신 채널(5)을 통해서 디스크 드라이브(1)에서 그래픽 카드(3)로 전송된다. 이와 같이, 암호화 키 데이터(8)는 애플리케이션 소프트웨어(4)에 공개되지 않아 해커가 디스크(6)의 판독가능한 복제를 하는 것을 더 어렵게 만든다.

Claims (9)

  1. 정보매체(6)에 저장되며 암호화된 그래픽 데이터(7)와 암호화 데이터(8,11,12)를 포함하는 복제방지된 소프트웨어를 실행하는 장치로서,
    상기 암호화된 그래픽 데이터(7)와 상기 암호화 데이터(8,11,12)를 판독하는 드라이브(1)와,
    상기 암호화 데이터(8,11,12)를 이용해 상기 암호화된 그래픽 데이터(7)를 해독하여 해독된 그래픽 데이터(16)를 획득하는 수단(9)과,
    상기 복제방지된 소프트웨어를 실행하는 애플리케이션 처리부(4)와,
    상기 그래픽 데이터(16)를 처리하는 그래픽 처리부(10)와,
    상기 드라이브(1)와 상기 그래픽 처리부(10) 사이의 보안 통신 채널(5)을 오픈하여 상기 해독된 그래픽 데이터(16) 및/또는 상기 암호화 데이터(8,11, 12)를 상기 드라이브(1)에서 상기 그래픽 처리부(10)로 전송하는 수단을 구비하는 것을 특징으로 하는 복제방지된 소프트웨어 실행장치.
  2. 제 1 항에 있어서,
    상기 암호화된 그래픽 데이터를 해독하는 상기 수단(9)은 상기 그래픽 처리부를 포함하는 그래픽 카드에 포함되고, 상기 보안 통신 채널(5)은 상기 암호화 데이터(8,11,12)를 전송하기 위해 구비되는 것을 특징으로 하는 복제방지된 소프트웨 어 실행장치.
  3. 제 1 항에 있어서,
    상기 암호화된 그래픽 데이터를 해독하는 상기 수단(9)은 상기 드라이브에 포함되고, 상기 보안 통신 채널(5)은 상기 해독된 그래픽 데이터(16)를 전송하기 위해 구비되는 것을 특징으로 하는 복제방지된 소프트웨어 실행장치.
  4. 제 1 항에 있어서,
    상기 암호화 데이터(8,11,12)는 키 록커 데이터(11)와 히든 코드 데이터(12)를 포함하고, 상기 히든 코드 데이터(12)에 의해 상기 키 록커 데이터(11)를 언로크하는 수단(13)은 상기 암호화된 그래픽 데이터(7)를 해독하기 위한 암호화 키 데이터(8)를 획득하기 위해 상기 드라이브에 설치되는 것을 특징으로 하는 복제방지된 소프트웨어 실행장치.
  5. 제 1 항에 있어서,
    상기 장치는 게임 콘솔을 포함하는 것을 특징으로 하는 복제방지된 소프트웨어 실행장치.
  6. 정보 매체(6)에 저장되며 암호화된 그래픽 데이터(7)와 암호화 데이터(8,11,12)를 포함하는 복제방지된 소프트웨어를 실행하는 방법으로서,
    상기 정보 매체(6)로부터 상기 그래픽 데이터(7)를 판독하는 단계와,
    상기 정보 매체(6)로부터 상기 암호화 데이터(8,11,12)를 판독하는 단계와,
    상기 암호화 데이터(8,11,12)를 이용해 상기 암호화된 그래픽 데이터(7)를 해독하여 해독된 그래픽 데이터(16)를 획득하는 단계와,
    상기 해독된 그래픽 데이터(16) 및/또는 상기 암호화 데이터(8,11,12)를 보안 통신 채널(5)을 통해서 상기 드라이브(1)에서 그래픽 처리부(GPU)(10)로 전송하는 단계와,
    그래픽 처리부(10)에 의해 상기 해독된 그래픽 데이터(16)를 처리하는 단계와,
    애플리케이션 처리부(4)에 의해 상기 복제방지된 소프트웨어를 처리하는 단계를 포함하는 것을 특징으로 하는 복제방지된 소프트웨어 실행방법.
  7. 제 6 항에 있어서,
    상기 암호화 데이터(8,11,12)를 이용해 상기 암호화된 그래픽 데이터(7)를 해독하고, 해독된 그래픽 데이터(16)를 보안 통신 채널(5)을 통해서 그래픽 처리부(3)로 전송하는 단계를 특징으로 하는 복제방지된 소프트웨어 실행방법.
  8. 제 6 항에 있어서,
    암호화 데이터(8,11,12)를 보안 통신 채널(5)을 통해서 그래픽 처리부(3)로 전송하고,
    상기 암호화된 그래픽 데이터(7)를 상기 그래픽 처리부(3)로 전송하며,
    상기 암호화 데이터(8)를 이용해 상기 암호화된 그래픽 데이터(7)를 해독하는 단계를 특징으로 하는 복제방지된 소프트웨어 실행방법.
  9. 제 6 항에 있어서,
    상기 암호화 데이터(8,11,12)는 키 록커 데이터(11)와 히든 코드 데이터(12)를 포함하고, 상기 암호화 데이터를 판독하는 단계는,
    상기 광 정보 매체(6)로부터 히든 코드 데이터(12)를 판독하고,
    상기 광 정보 매체(6)로부터 키 록커 데이터(11)를 판독하며,
    상기 히든 코드 데이터(12)를 이용해 상기 키 록커 데이터(11)를 언로크하여 상기 암호화된 그래픽 데이터(7)를 해독하는 암호화 키(8)를 획득하는 단계를 포함하는 것을 특징으로 하는 복제방지된 소프트웨어 실행방법.
KR1020067000133A 2003-07-04 2004-07-01 복제방지된 소프트웨어 실행장치 KR20060031846A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03102000 2003-07-04
EP03102000.1 2003-07-04

Publications (1)

Publication Number Publication Date
KR20060031846A true KR20060031846A (ko) 2006-04-13

Family

ID=33560852

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067000133A KR20060031846A (ko) 2003-07-04 2004-07-01 복제방지된 소프트웨어 실행장치

Country Status (7)

Country Link
US (1) US20090011828A1 (ko)
EP (1) EP1644788A1 (ko)
JP (1) JP2007519278A (ko)
KR (1) KR20060031846A (ko)
CN (1) CN1816788A (ko)
TW (1) TW200506838A (ko)
WO (1) WO2005003939A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101651508B (zh) * 2008-08-15 2012-07-04 威盛电子(中国)有限公司 安全广播方法以及相关的安全广播系统与前端系统
US20110161675A1 (en) * 2009-12-30 2011-06-30 Nvidia Corporation System and method for gpu based encrypted storage access
EP2348454A1 (en) * 2010-01-20 2011-07-27 Thomson Licensing A method of and a system for execution of a software application
WO2015116855A1 (en) * 2014-01-29 2015-08-06 Intertrust Technologies Corporation Secure application processing systems and methods
US10644875B2 (en) * 2016-04-28 2020-05-05 International Business Machines Corporation Pre-authorization of public key infrastructure

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825879A (en) * 1996-09-30 1998-10-20 Intel Corporation System and method for copy-protecting distributed video content
US5915018A (en) * 1996-11-05 1999-06-22 Intel Corporation Key management system for DVD copyright management
JP3963037B2 (ja) * 1997-03-19 2007-08-22 ソニー株式会社 記録装置及び再生装置
US20020083318A1 (en) * 2000-12-26 2002-06-27 Larose Gordon Edward Method and system for software integrity control using secure hardware assist
US7073200B2 (en) * 2001-01-24 2006-07-04 Intel Corporation Method of providing secure content-based user experience enhancement within a content protection architecture
US7055038B2 (en) * 2001-05-07 2006-05-30 Ati International Srl Method and apparatus for maintaining secure and nonsecure data in a shared memory system
DE60215016T2 (de) * 2001-07-19 2007-05-03 Koninklijke Philips Electronics N.V. Vorrichtung und Verfahren zur Wiedergabe von Benutzerdaten
GB2379299B (en) * 2001-09-04 2006-02-08 Imagination Tech Ltd A texturing system
US7203310B2 (en) * 2001-12-04 2007-04-10 Microsoft Corporation Methods and systems for cryptographically protecting secure content
US7065651B2 (en) * 2002-01-16 2006-06-20 Microsoft Corporation Secure video card methods and systems
US7293178B2 (en) * 2002-12-09 2007-11-06 Microsoft Corporation Methods and systems for maintaining an encrypted video memory subsystem
US20040174998A1 (en) * 2003-03-05 2004-09-09 Xsides Corporation System and method for data encryption

Also Published As

Publication number Publication date
JP2007519278A (ja) 2007-07-12
CN1816788A (zh) 2006-08-09
US20090011828A1 (en) 2009-01-08
EP1644788A1 (en) 2006-04-12
WO2005003939A1 (en) 2005-01-13
TW200506838A (en) 2005-02-16

Similar Documents

Publication Publication Date Title
KR100359885B1 (ko) 컴퓨터 시스템 및 콘텐츠 보호 방법
KR100594954B1 (ko) 콘텐트 정보와 이와 관련된 추가 정보를 전송하는 시스템
US7111169B2 (en) Method and apparatus for content protection across a source-to-destination interface
US6850914B1 (en) Revocation information updating method, revocation informaton updating apparatus and storage medium
US7689791B2 (en) Protection of content stored on portable memory from unauthorized usage
US6957343B2 (en) Validating keying material by using a validation area of read-only media to prevent playback of unauthorized copies of content stored on the media
JP5690363B2 (ja) 書き込み方法及びコンピュータシステム。
JPH10502479A (ja) 種々の記録媒体用のコピー防止の方法及び装置
JP2005505885A (ja) 安全な1つのドライブによるコピー方法および装置
JP4177517B2 (ja) コンテンツ処理システムおよびコンテンツ保護方法
KR20100057846A (ko) 저장 장치에 저장된 컨텐트를 보호하기 위한 시스템 및 방법
US7178038B2 (en) Apparatus and method for reproducing user data
KR20060133958A (ko) 콘텐츠 보호 방법 및 시스템
JP2008527892A (ja) セキュアホストインタフェース
JP2000357127A (ja) 記憶媒体及び同媒体を使用したコンテンツ管理方法
KR20060031846A (ko) 복제방지된 소프트웨어 실행장치
JP3993384B2 (ja) 情報記録媒体、記録/再生装置及び方法
JPH09320192A (ja) 著作権保護方法及び装置
JP2008011219A (ja) 電子透かし埋込システム、装置及びプログラム
KR20040099404A (ko) 사용자 데이터 렌더링 장치 및 방법
JP5180362B1 (ja) コンテンツ再生装置およびコンテンツ再生プログラム
KR101030261B1 (ko) 정보 기록 매체, 및 정보 처리 장치 및 방법
JP2004110588A (ja) 記憶メディアアクセスシステム
JP2000315175A (ja) データ書込装置、データ読取装置、記憶媒体および鍵共有方法

Legal Events

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