KR101450131B1 - Methods and apparatuses for accessing content based on a session ticket - Google Patents
Methods and apparatuses for accessing content based on a session ticket Download PDFInfo
- Publication number
- KR101450131B1 KR101450131B1 KR1020097012043A KR20097012043A KR101450131B1 KR 101450131 B1 KR101450131 B1 KR 101450131B1 KR 1020097012043 A KR1020097012043 A KR 1020097012043A KR 20097012043 A KR20097012043 A KR 20097012043A KR 101450131 B1 KR101450131 B1 KR 101450131B1
- Authority
- KR
- South Korea
- Prior art keywords
- content
- session
- encryption key
- memory device
- parameter
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000015654 memory Effects 0.000 claims abstract description 36
- 238000004891 communication Methods 0.000 claims abstract description 12
- 230000008859 change Effects 0.000 claims abstract description 8
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- LZIAMMQBHJIZAG-UHFFFAOYSA-N 2-[di(propan-2-yl)amino]ethyl carbamimidothioate Chemical compound CC(C)N(C(C)C)CCSC(N)=N LZIAMMQBHJIZAG-UHFFFAOYSA-N 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits 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/00485—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
- G11B20/00492—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
- G11B20/00521—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein each session of a multisession recording medium is encrypted with a separate encryption key
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits 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/00485—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
- G11B20/0055—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein license data is encrypted
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00746—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
- G11B20/00789—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of functional copies, which can be accessed at a time, e.g. electronic bookshelf concept, virtual library, video rentals or check-in/check out
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00746—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
- G11B20/00797—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of times a content can be reproduced, e.g. using playback counters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/0084—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific time or date
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/60—Solid state media
- G11B2220/61—Solid state media wherein solid state memory is used for storing A/V content
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Library & Information Science (AREA)
- Storage Device Security (AREA)
- Telephonic Communication Services (AREA)
Abstract
메모리 디바이스 상에 저장된 콘텐트에 액세스하기 위한 방법이 제공된다. 이 방법에서, 콘텐트에 액세스하기 위한 요청은 전송되고 세션 티켓은 수신된다. 세션 티켓은 콘텐트를 디크립트하기 위하여 사용된 파라미터를 포함하고 세션 티켓은 세션을 변화시키도록 구성된 변수를 바탕으로 생성된다. 콘텐트는 세션 티켓을 바탕으로 액세스될 수 있다. 메모리 및 상기 메모리와 통신하는 처리기를 포함하는 장치가 제공된다. 상기 처리기는 메모리 디바이스에 저장된 콘텐트에 액세스하기 위한 요청을 메모리 디바이스에 전송하고; 세션 티켓을 수신하고; 및 상기 세션 티켓을 바탕으로 콘텐트에 액세스하도록 구성된다. 세션 티켓은 콘텐트를 디크립트하기 위하여 사용된 파라미터를 포함하고 세션 티켓은 세션에서 변화하도록 구성된 수를 바탕으로 생성된다.A method is provided for accessing content stored on a memory device. In this method, the request to access the content is sent and the session ticket is received. The session ticket contains the parameters used to decrypt the content and the session ticket is generated based on the variables configured to change the session. The content can be accessed based on the session ticket. An apparatus is provided that includes a memory and a processor in communication with the memory. The processor sending a request to the memory device to access content stored in the memory device; Receiving a session ticket; And access the content based on the session ticket. The session ticket contains the parameters used to decrypt the content and the session ticket is generated based on the number configured to change in the session.
Description
본 발명의 실시예는, 일반적으로 콘텐트 액세스에 관한 것이고, 보다 구체적으로는 콘텐트를 라이센스와 연결하고 세션 티켓을 바탕으로 콘텐트에 액세스하는 것에 관한 것이다.Embodiments of the present invention relate generally to content access, and more specifically to associating content with a license and accessing content based on a session ticket.
디지털 권리 관리(DRM)는 음악 파일들, 비디오 파일들, 및 다른 콘텐트 같은 콘텐트의 분배를 보호 및 제어하기 위하여 사용된 기술이다. DRM에서, 콘텐트는 암호화 키로 암호화되어, 암호화 키는 콘텐트를 디크립트하기 위하여 사용될 수 있다. 사용자가 콘텐트를 디크립트하고 액세스하기 위하여, 사용자는 콘텐트와 연관된 라이센스에 액세스하여야 한다. 일반적으로, 라이센스는 라이센스 제공자에 의해 정의된 허가를 바탕으로 콘텐트에 액세스하기 위한 다른 액세스 권리들을 승인할 수 있다. 예를 들어, 라이센스는 제한된 수의 횟수 동안 콘텐트(예를 들어, 음악 파일)가 플레이 되게 제한할 수 있다. Digital rights management (DRM) is a technology used to protect and control the distribution of content such as music files, video files, and other content. In DRM, the content is encrypted with an encryption key, and the encryption key can be used to decrypt the content. In order for the user to decrypt and access the content, the user must access the license associated with the content. In general, a license may authorize other access rights to access the content based on the permissions defined by the license provider. For example, a license may limit content (e.g., a music file) to play for a limited number of times.
종래 DRM 기술들에서, 콘텐트를 디크립트하기 위하여 사용된 암호화 키는 라이센스에만 저장된다. 라이센스는 해킹될 수 있고 암호화 키는 라이센스로부터 쉽게 추출될 수 있다. 만약 암호화 키가 손상되면, 인증되지 않은 사용자는 라이센스 없이 콘텐트를 디크립트하고 이에 따라 제한 없이 콘텐트에 액세스할 수 있다. 결과적으로, 콘텐트의 보호를 추가로 개선하는 것이 필요하다.In conventional DRM techniques, the encryption key used to decrypt the content is stored only in the license. The license can be hacked and the encryption key can be easily extracted from the license. If the encryption key is compromised, an unauthorized user can decrypt the content without a license and thus access the content without restriction. As a result, it is necessary to further improve the protection of the content.
본 발명의 여러 실시예들은 콘텐트와 라이센스를 연결하고 세션 티켓을 바탕으로 콘텐트에 액세스하기 위한 방법들, 시스템들 및/또는 장치들을 제공한다. 상기 실시예들이 방법, 회로, 시스템, 또는 디바이스를 포함하는 여러 방식으로 실행될 수 있다는 것이 인식되어야 한다. 본 발명의 몇몇 실시예들은 하기에 기술된다.Various embodiments of the present invention provide methods, systems and / or devices for connecting content and licenses and for accessing content based on session tickets. It should be appreciated that the embodiments may be practiced in a variety of ways including methods, circuits, systems, or devices. Some embodiments of the invention are described below.
일 실시예에서, 메모리 디바이스 상에 저장된 콘텐트에 액세스하기 위한 방법이 제공된다. 이 방법에서, 콘텐트에 액세스하라는 요청이 전송되고 세션 티켓이 수신된다. 세션 티켓은 콘텐트를 디크립트하기 위하여 사용된 파라미터를 포함하고 세션 티켓은 세션에서 변화하도록 구성된 변수를 바탕으로 생성된다. 콘텐트는 세션 티켓을 바탕으로 액세스될 수 있다.In one embodiment, a method is provided for accessing content stored on a memory device. In this method, a request to access the content is sent and a session ticket is received. The session ticket contains the parameters used to decrypt the content and the session ticket is generated based on the variables configured to change in the session. The content can be accessed based on the session ticket.
다른 실시예에서, 장치는 제공된다. 상기 장치는 메모리 및 상기 메모리와 통신하는 처리기를 포함한다. 처리기는 메모리 디바이스에 저장된 콘텐트에 액세스하기 위한 요청을 메모리 디바이스에 전송하고; 세션 티켓을 수신하고; 및 세션 티켓을 바탕으로 콘텐트에 액세스한다. 세션 티켓은 콘텐트를 디크립트하기 위하여 사용된 파라미터이고 세션 티켓은 세션에서 변화하도록 구성된 변수를 바탕으로 생성된다.
본 발명의 일 실시예에 따른 콘텐트에 액세스하기 위한 방법은 암호화 키에 의해 암호화된 콘텐트를 메모리 디바이스에 저장하는 단계; 세션 티켓 및 상기 콘텐트를 액세스하기 위한 요청을 호스트 컴퓨팅 디바이스로부터 수신하고, 상기 세션 티켓은 이미 상기 호스트 컴퓨팅 디바이스로 제공되었으며 세션과 연관된 값을 갖고 다른 세션들에서 값을 변화시키는 변수를 갖는 상기 암호화 키와 연관된 파라미터를 암호화함으로써 상기 메모리 디바이스에 의해 생성된 단계; 상기 변수를 갖는 상기 세션 티켓을 해독함으로써 상기 세션 티켓으로부터 상기 암호화 키와 연관된 상기 파라미터를 추출하도록 시도하며, 만일 상기 세션이 변하지 않았다면, 상기 변수의 값은 변하지 않았고, 상기 암호화 키와 연관된 상기 파라미터는 상기 세션 티켓으로부터 추출되는 단계; 만일 상기 암호화 키와 연관된 상기 파라미터가 상기 세션 티켓으로부터 추출되면 : 상기 파라미터에 근거하여 상기 암호화 키를 획득하는 단계; 상기 암호화 키를 사용하여 상기 콘텐트를 해독하는 단계; 상기 콘텐트를 상기 호스트 컴퓨팅 디바이스로 전송하는 단계를 포함한다.
본 발명의 다른 실시예에 따른 메모리 디바이스는 암호화 키에 의해 암호화된 콘텐트를 저장하도록 동작하는 메모리와; 상기 메모리와 통신하는 제어기를 포함하고, 상기 제어기는 : 세션 티켓 및 상기 콘텐트를 액세스하기 위한 요청을 호스트 컴퓨팅 디바이스로부터 수신하고, 상기 세션 티켓은 이미 상기 호스트 컴퓨팅 디바이스로 제공되었으며 세션과 연관된 값을 갖고 다른 세션들에서 값을 변화시키는 변수를 갖는 상기 암호화 키와 연관된 파라미터를 암호화함으로써 상기 메모리 디바이스에 의해 생성되었고; 상기 변수를 갖는 상기 세션 티켓을 해독함으로써 상기 세션 티켓으로부터 상기 암호화 키와 연관된 상기 파라미터를 추출하도록 시도하며, 만일 상기 세션이 변하지 않았다면, 상기 변수의 값은 변하지 않았고, 상기 암호화 키와 연관된 상기 파라미터는 상기 세션 티켓으로부터 추출되며; 만일 상기 암호화 키와 연관된 상기 파라미터가 상기 세션 티켓으로부터 추출되면 : 상기 파라미터에 근거하여 상기 암호화 키를 획득하고, 상기 암호화 키를 사용하여 상기 콘텐트를 해독하며, 상기 콘텐트를 상기 호스트 컴퓨팅 디바이스로 전송하도록 동작한다.
본 발명의 또 다른 실시예에 따른 메모리 디바이스는 메모리와; 상기 메모리와 통신하는 제어기를 포함하고, 상기 제어기는 세션과 연관된 값을 갖고 다른 세션들에서 값을 변화시키는 변수를 갖는 상기 암호화 키와 연관된 파라미터를 암호화함으로써 세션 티켓을 생성하고; 상기 세션 티켓을 호스트 컴퓨팅 디바이스로 제공하며; 상기 세션 티켓 및 콘텐트를 액세스하기 위한 요청을 호스트 컴퓨팅 디바이스로부터 수신하고; 상기 변수를 갖는 상기 세션 티켓을 해독함으로써 상기 세션 티켓으로부터 상기 암호화 키와 연관된 상기 파라미터를 추출하도록 시도하며, 만일 상기 세션이 변하지 않았다면, 상기 변수의 값은 변하지 않았고, 상기 암호화 키와 연관된 상기 파라미터는 상기 세션 티켓으로부터 추출되며; 만일 상기 암호화 키와 연관된 상기 파라미터가 상기 세션 티켓으로부터 추출되면 : 상기 파라미터에 근거하여 상기 암호화 키를 획득하고, 상기 암호화 키를 사용하여 상기 콘텐트를 해독하며, 상기 콘텐트를 상기 호스트 컴퓨팅 디바이스로 전송하도록 구성된다.In another embodiment, an apparatus is provided. The apparatus includes a memory and a processor in communication with the memory. The processor sends a request to the memory device to access the content stored in the memory device; Receiving a session ticket; And access the content based on the session ticket. A session ticket is a parameter used to decrypt content, and a session ticket is generated based on a variable configured to change in a session.
A method for accessing content in accordance with an embodiment of the present invention includes: storing content encrypted by an encryption key in a memory device; Receiving a session ticket and a request for accessing the content from a host computing device, the session ticket having a value that is already provided to the host computing device and has a value associated with the session, A step generated by the memory device by encrypting a parameter associated with the memory device; Attempting to extract the parameter associated with the encryption key from the session ticket by decrypting the session ticket with the variable; if the session has not changed, the value of the variable has not changed; and the parameter associated with the encryption key is Extracting from the session ticket; If the parameter associated with the encryption key is extracted from the session ticket: obtaining the encryption key based on the parameter; Decrypting the content using the encryption key; And sending the content to the host computing device.
A memory device according to another embodiment of the present invention includes: a memory operative to store content encrypted by an encryption key; Wherein the controller receives a session ticket and a request to access the content from a host computing device, the session ticket already provided to the host computing device and having a value associated with the session Generated by the memory device by encrypting a parameter associated with the encryption key with a variable that changes the value in other sessions; Attempting to extract the parameter associated with the encryption key from the session ticket by decrypting the session ticket with the variable; if the session has not changed, the value of the variable has not changed; and the parameter associated with the encryption key is Extracted from the session ticket; If the parameter associated with the encryption key is extracted from the session ticket: obtain the encryption key based on the parameter, decrypt the content using the encryption key, and send the content to the host computing device .
A memory device according to another embodiment of the present invention includes: a memory; The controller communicating with the memory, the controller generating a session ticket by encrypting a parameter associated with the encryption key having a value associated with the session and varying values in other sessions; Providing the session ticket to a host computing device; Receive a request for accessing the session ticket and content from a host computing device; Attempting to extract the parameter associated with the encryption key from the session ticket by decrypting the session ticket with the variable; if the session has not changed, the value of the variable has not changed; and the parameter associated with the encryption key is Extracted from the session ticket; If the parameter associated with the encryption key is extracted from the session ticket: obtain the encryption key based on the parameter, decrypt the content using the encryption key, and send the content to the host computing device .
본 발명의 다른 실시예들 및 장점들은 본 발명의 원리들을 예시적으로 도시하는 첨부 도면들과 관련하여 얻어진 다음 상세한 설명으로부터 명백할 것이다.Other embodiments and advantages of the present invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, which illustrate, by way of example, the principles of the invention.
본 발명은 첨부 도면들과 관련하여 다음 상세한 설명에 의해 쉽게 이해될 것이고, 유사한 참조 번호들은 유사한 구조 엘리먼트들을 나타낸다.The present invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, in which like reference numerals designate like structural elements.
도 1은 본 발명의 실시예에 따른 장치들의 시스템의 간략화된 블록도이다.1 is a simplified block diagram of a system of devices according to an embodiment of the present invention.
도 2는 본 발명의 실시예에 따른 콘텐트를 디크립트하기 위하여 사용된 파라미터의 생성을 도시하는 블록도이다.2 is a block diagram illustrating generation of parameters used to decrypt content according to an embodiment of the present invention.
도 3은 본 발명의 실시예에 따른 메모리 디바이스에 액세스하기 위한 시스템의 간략화된 블록도이다.3 is a simplified block diagram of a system for accessing a memory device in accordance with an embodiment of the present invention.
도 4는 본 발명의 실시예에 따른 메모리 디바이스로부터 콘텐트의 액세스를 도시하는 흐름도이다.4 is a flow diagram illustrating accessing content from a memory device in accordance with an embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 세션 티켓의 생성을 도시하는 블록도이다.5 is a block diagram illustrating generation of a session ticket according to an embodiment of the present invention.
도 6은 본 발명의 실시예에 따른 세션 티켓을 사용하여 메모리 디바이스에 액세스하기 위한 시스템의 간략화된 블록도이다.6 is a simplified block diagram of a system for accessing a memory device using a session ticket in accordance with an embodiment of the present invention.
도 7은 본 발명의 실시예에 따른 세션 티켓을 바탕으로 메모리 디바이스로부터 콘텐트의 액세스를 도시하는 흐름도이다.7 is a flow diagram illustrating accessing content from a memory device based on a session ticket in accordance with an embodiment of the present invention.
도 8은 본 발명의 실시예에 따른 콘텐트에 액세스하기 위한 호스트 컴퓨팅 디바이스 상에 호스트될 수 있는 프로그램 애플리케이션들의 간략화된 블록도이다.Figure 8 is a simplified block diagram of program applications that may be hosted on a host computing device for accessing content in accordance with an embodiment of the present invention.
도 9는 본 발명의 실시예에 따른 메모리 디바이스에 포함될 수 있는 프로그램 애플리케이션들의 간략화된 블록도이다.9 is a simplified block diagram of program applications that may be included in a memory device according to an embodiment of the invention.
도 10은 본 발명의 실시예에 따른 콘텐트 보호 플랫폼 및 다른 프로그램 애 플리케이션들을 호스팅하기에 적당한 호스트 컴퓨팅 디바이스의 일반적인 개요의 간략화된 블록도이다.10 is a simplified block diagram of a general overview of a host computing device suitable for hosting a content protection platform and other program applications in accordance with an embodiment of the present invention.
도 11은 본 발명의 실시예에 따른 메모리 디바이스의 간략화된 블록도이다.11 is a simplified block diagram of a memory device in accordance with an embodiment of the present invention.
하나 또는 그 이상의 실시예들의 상세한 설명은 첨부 도면들과 함께 하기에 제공된다. 상세한 설명은 상기 실시예들과 관련하여 제공되지만, 임의의 특정 실시예로 제한되지 않는다. 상기 범위는 청구항들 및 다수의 대안들, 변형들에 의해서만 제한되고, 등가물들은 포함된다. 다수의 특정 항목들은 완전한 이해를 제공하기 위하여 다음 상세한 설명에 나타난다. 이들 항목들은 예시적으로 제공되고 기술된 실시예들은 이들 특정 항목들 몇몇 또는 모두 없이도 청구항들에 따라 실행될 수 있다. 간략화를 위하여, 실시예들과 관련된 기술 분야들에서 공지된 기술 자료는 상세한 설명을 불필요하게 모호하게 하는 것을 방지하기 위하여 상세히 기술되지 않는다.The detailed description of one or more embodiments is provided below in conjunction with the accompanying drawings. The detailed description is provided in connection with the above embodiments, but is not limited to any specific embodiment. The scope is limited only by the claims and many alternatives and modifications, and equivalents are included. Many specific items are set forth in the following description to provide a thorough understanding. These items are provided illustratively and the described embodiments may be practiced in accordance with the claims without some or all of these specific items. For simplicity, technical data known in the art relating to the embodiments are not described in detail in order to avoid unnecessarily obscuring the detailed description.
여기에 기술된 실시예들은 콘텐트와 라이센스를 연결하고 세션 티켓을 바탕으로 콘텐트에 액세스하는 것을 제공한다. 암호화 키는 암호화된 콘텐트를 디크립트하고 액세스하기 위하여 사용된다. 이하에 보다 상세히 설명될 바와 같이, 양쪽 라이센스 및 콘텐트와 연관된 파라미터들은 암호화 키를 유도하기 위하여 사용된다. 몇몇 실시예들에서, 암호화 키를 유도하기 위하여 사용된 파라미터는 변수로 추가로 인크립되어 콘텐트에 대한 액세스는 세션으로 제한된다.The embodiments described herein provide for connecting content and licenses and accessing content based on session tickets. The encryption key is used to decrypt and access the encrypted content. As will be described in more detail below, parameters associated with both licenses and content are used to derive the encryption key. In some embodiments, the parameters used to derive the encryption key are further encapsulated into a variable such that access to the content is restricted to the session.
도 1은 본 발명의 실시예에 따른 장치 시스템의 간략화된 블록도이다. 도 1 에 도시된 바와 같이, 시스템(102)은 호스트 컴퓨팅 디바이스(114) 및 메모리 디바이스(116)를 포함한다. 호스트 컴퓨팅 디바이스(114)는 메모리 디바이스에 저장된 콘텐트(118)를 저장 또는 검색하기 위하여 메모리 디바이스(116)에 액세스할 수 있는 여러 전자 디바이스들을 포함할 수 있다. 메모리 디바이스(116)는 핀 및/또는 소켓 접속기들 같은 기계적 인터페이스(108)에 의해 호스트 컴퓨팅 디바이스(114)에 제거 가능하게 결합될 수 있다. 메모리 디바이스(116)는 메모리 저장 디바이스이다. 이하에 설명될 바와 같이, 메모리 디바이스(116)의 예는 비휘발성 메모리를 사용하는 메모리 카드이다.1 is a simplified block diagram of a device system in accordance with an embodiment of the present invention. As shown in FIG. 1,
호스트 컴퓨팅 디바이스(114)는 애플리케이션(104)을 호스트한다. 애플리케이션(104)은 여러 프로그램 애플리케이션들을 포함한다. 예를 들어, 애플리케이션(104)은 호스트 컴퓨팅 디바이스(114) 상 하드웨어 및 소프트웨어 리소스들을 관리하는 오퍼레이팅 시스템일 수 있다. 다른 실시예에서, 애플리케이션(104)은 오디오 및 비디오 파일들을 플레이하도록 구성된 멀티미디어 플레이어일 수 있다. 부가적으로, 예를 들어, 애플리케이션(104)은 비디오 게임일 수 있다. 애플리케이션(104)은 메모리 디바이스(116)에 저장된 콘텐트(118)에 액세스할 수 있다. 콘텐트(118)는 여러 데이터를 포함할 수 있다. 콘텐트(118)의 예들은 WAVE, MPEG-1 오디오 층 3(MP3), Advanced Audio Coding(AAC), 및 다른 오디오 파일 포맷들 같은 오디오 파일 포맷들로 인코딩된 오디오 파일들을 포함한다. 콘텐트(118)는 Audio Video Interleave(AVI), Moving Picture Experts Group(MPEG), 및 다른 비디오 파일 포맷들 같은 비디오 파일 포맷들로 인코딩된 비디오 파일들을 포함할 수 있다. 콘텐트(118)의 다른 예들은 도큐먼트 파일들, 이미지 파일들, 애플리케이션 파일들, 및 다른 데이터를 포함한다.
콘텐트와 라이센스 연결Linking content and licenses
도 2는 본 발명의 실시예에 따른 콘텐트를 디크립트하기 위하여 사용된 파라미터의 생성을 도시하는 블록도이다. 도 2는 콘텐트(118) 및 연관된 라이센스(204)를 도시한다. 콘텐트(118)는 콘텐트가 난해하도록 암호화된다. 일반적으로, 라이센스(204)는 콘텐트(118)가 액세스되는 데이터(예를 들어, 문자열, 파일, 및 다른 데이터)이다. 라이센스(204)는 액세스의 지속 기간, 특정 컴퓨팅 디바이스에 콘텐트의 액세스 제한, 날짜들, 시간들, 콘텐트가 액세스될 수 있는 횟수, 및 다른 허가들 같은 콘텐트(118)에 액세스하기 위한 허가들 또는 룰들을 포함할 수 있다. 라이센스(204)는 콘텐트(118)에 액세스하기 위한 허가들을 정의하도록 구성될 수 있다. 그러므로 사용자는 라이센스(204)에 포함된 허가들을 바탕으로 콘텐트(118)에 액세스하게 된다. 예를 들어, 라이센스(204)는 특정 컴퓨팅 디바이스에서 음악 파일 형태의 콘텐트(118)가 3회 플레이되게 할 수 있다. 다른 실시예에서, 라이센스(204)는 콘텐트(118)가 액세스되게 하지만 다른 컴퓨팅 디바이스에 카피되게 하지 않는다.2 is a block diagram illustrating generation of parameters used to decrypt content according to an embodiment of the present invention. FIG. 2 shows content 118 and associated license 204. FIG. The content 118 is encrypted so that the content is difficult to understand. Generally, license 204 is data (e.g., strings, files, and other data) to which content 118 is to be accessed. The license 204 may include permissions or rules for accessing the content 118, such as the duration of the access, the access restrictions of the content to a particular computing device, the dates, times, the number of times the content can be accessed, Lt; / RTI > The license 204 may be configured to define permissions for accessing the content 118. The user therefore accesses the content 118 based on the permissions contained in the license 204. [ For example, the license 204 may cause the content 118 in the form of a music file to be played three times in a particular computing device. In another embodiment, the license 204 allows the content 118 to be accessed but not copied to another computing device.
콘텐트(118)는 암호화되고 제 3 파라미터(210)는 콘텐트를 디크립트할 때 사용하기 위해 구성된다. 제 3 파라미터(210)는 콘텐트(118)의 디크립션과 연관될 수 있는 여러 데이터를 포함한다. 예를 들어, 제 3 파라미터(210)는 콘텐트(118)의 인크립션 및 디크립션에 사용된 암호화 키일 수 있다. 암호화 키 대신, 제 3 파라미터(210)는 암호화 키에 대한 레퍼런스를 포함할 수 있다. 예를 들어 레퍼런스는 암호화 키를 식별하는 수 또는 문자열일 수 있다. 제 3 파라미터(210)는 인증 키를 포함할 수 있다. 인증 키는 호스트 컴퓨팅 디바이스 및 메모리 디바이스 사이의 세션들을 인증하기 위하여 사용된 암호화 키이다. 다른 예에서, 제 3 파라미터(210)는 암호화 논스(nonce)일 수 있다. 암호화 논스는 암호화 키를 생성하기 위하여 사용될 수 있는 수이다.The content 118 is encrypted and the
제 3 파라미터(210)는 제 1 파라미터(202) 및 제 2 파라미터(206)를 바탕으로 생성된다. 다른 말로, 제 3 파라미터(210)는 다음과 같이 표현될 수 있다:The
제 3 파라미터 = F(제 1 파라미터, 제 2 파라미터) (1.0)Third parameter = F (first parameter, second parameter) 1.0
여기서 제 3 파라미터는 제 1 및 제 2 파라미터들(202 및 206)의 함수이다. 상기 함수는 해시 함수 같은 여러 함수를 포함할 수 있어서, 제 3 파라미터(210)는 해시 함수의 해시 값일 수 있다. 제 1 파라미터(202)는 라이센스(204)와 연관되고 제 2 파라미터(206)는 콘텐트(118)와 연관된다. 제 1 및 제 2 파라미터들(202 및 206)은 여러 데이터를 포함할 수 있다. 예를 들어, 제 1 파라미터(202)는 수일 수 있다. 실시예에서, 상기 수는 임의로 생성될 수 있다. 다른 실시예에서, 상기 수는 미리 정의된다. 제 2 파라미터(206)는 제 1 파라미터(202)에 따르거나 그 반대일 수 있다. 예를 들어, 제 2 파라미터(206)는 암호화 키에 대한 레퍼런스 및 제 1 파라미터(202) 모두로부터 유도된 수 또는 문자열일 수 있다. 상기 수 또는 문자열은 다음과 같이 표현될 수 있다:Where the third parameter is a function of the first and
제 2 파라미터 = F(키 레퍼런스, 제 1 파라미터) (1.2)Second parameter = F (key reference, first parameter) (1.2)
여기서 제 2 파라미터(206)는 암호화 키에 대한 레퍼런스 및 제 1 파라미터(202) 모두의 함수이다. 제 2 파라미터(206)가 인증 키 및 제 1 파라미터(202) 모두로부터 유도될 수 있다는 것은 인식되어야 한다. 다른 실시예에서, 제 2 파라미터(206)는 암호화 논스 및 제 1 파라미터(202)로부터 유도될 수 있다. 반대로, 제 1 파라미터(202)는 제 2 파라미터(206) 및 인증 키로, 암호화 키에 대한 레퍼런스, 암호화 논스 또는 다른 파라미터들로부터 유도될 수 있다.Where the
제 1 및 제 2 파라미터들(202 및 206)은 각각 라이센스(204) 및 콘텐트(118)와 연관된다. 라이센스(204) 또는 콘텐트(118)와 연관되도록, 제 1 및 제 2 파라미터들(202 및 206)은 각각 라이센스 및 콘텐트 내에 배치되거나 포함될 수 있다. 예를 들어, 제 2 파라미터(206)는 콘텐트(118)의 헤더 또는 풋터(footer)에 배치될 수 있다. 선택적으로, 제 1 파라미터(202) 및/또는 제 2 파라미터(206)는 라이센스(204) 및/또는 콘텐트(118)와 무관하게 배치될 수 있다. 만약 무관하게 배치되면, 라이센스(204)는 제 1 파라미터에 대한 포인터를 포함하는 제 1 파라미터(202)와 연관될 수 있다. 콘텐트(118)는 만약 제 2 파라미터가 콘텐트와 무관하게 배치되면 제 2 파라미터(206)에 대한 포인터를 포함할 수 있다.The first and
도 3은 본 발명의 실시예에 따른 메모리 디바이스에 액세스하기 위한 시스템의 간략화된 블록도이다. 도시된 바와 같이, 시스템(302)은 메모리 디바이스(116)에 결합된 호스트 컴퓨팅 디바이스(114)를 포함한다. 호스트 컴퓨팅 디바이스(114)는 애플리케이션(104) 및 제 1 콘텐트 보호 플랫폼(304)을 포함할 수 있다. 메모리 디바이스(116)는 제 2 콘텐트 보호 플랫폼(306), 콘텐트(118), 및 라이센스(204)를 포함한다. 실시예에서, 라이센스(204)는 메모리 디바이스(116)의 숨겨진 구획부에 저장될 수 있고 여기서 라이센스는 많은 애플리케이션들에 의해 보여지거나 액세스할 수 없다. 메모리 디바이스(116)에 저장된 것 외에, 라이센스(204)는 호스트 컴퓨팅 디바이스(114)에 저장될 수 있다. 제 1 및 제 2 콘텐트 보호 플랫폼들(304 및 306)은 메모리 디바이스(116)에 대한 콘텐트(118)를 보호하기 위한 기술적인 플랫폼들이다. 제 1 콘텐트 보호 플랫폼(304) 및/또는 제 2 콘텐트 보호 플랫폼(306)으로 인해, 사용자는 콘텐트 보호를 타협하지 않고 메모리 디바이스(116) 및 상기 메모리 디바이스의 콘텐트(118)를 전달할 수 있다. 데이터를 보호하기 위하여 사용될 수 있는 여러 콘텐트 보호 플랫폼들이 있고, 그 예들은 상표명 TrustedFlashTM 및 GruviTM(SanDisk, Inc.에 의해 제조됨)으로 팔린다.3 is a simplified block diagram of a system for accessing a memory device in accordance with an embodiment of the present invention. As shown, the
도 3에 도시된 바와 같이, 제 1 콘텐트 보호 플랫폼(304)에 의한 애플리케이션(104)은 메모리 디바이스(116)에 저장된 콘텐트(118)에 대한 요청을 전송한다. 여기서, 콘텐트(118)는 암호화된다. 콘텐트(118)를 디크립트하기 위하여, 라이센스(204)와 연관된 제 1 파라미터(202) 및 콘텐트(118)와 연관된 제 2 파라미터(206)는 검색된다. 제 1 파라미터(202) 및 제 2 파라미터(206)는 라이센스(204) 및 콘텐트(118)에 각각 포함될 수 있거나, 라이센스 및 콘텐트와 무관하게 배치된 파일들 수 있다. 방정식 1.0에 의해 정의된 바와 같이, 제 3 파라미터는 제 1 파라미터(202) 및 제 2 파라미터(206)를 바탕으로 생성된다. 다른 말로, 제 3 파라미터는 제 1 및 제 2 파라미터들(202 및 206)로부터 유도될 수 있다. 제 3 파라미터는 콘텐트(118)를 디크립트하기 위하여 사용된 암호화 키, 암호화 키에 대한 레퍼런스, 인증 키, 논스, 또는 다른 파라미터들일 수 있다. 제 3 파라미터로 인해, 애플리케이션(104)은 콘텐트(118)를 디크립트하고 액세스할 수 있다. 콘텐트(118)에 액세스하기 위하여, 제 1 콘텐트 보호 플랫폼(304)은 제 3 파라미터 및 콘텐트(118)에 대한 요청을 메모리 디바이스(116)에 전송할 수 있다. 제 2 콘텐트 보호 플랫폼(306)은 제 3 파라미터를 바탕으로 콘텐트(118)를 디크립트하고 디크립트될 콘텐트를 제 1 콘텐트 보호 플랫폼(304)에 의해 애플리케이션(104)에 전송할 수 있다.As shown in FIG. 3,
도 3의 실시예에서, 호스트 컴퓨팅 디바이스(114) 상에 호스트된 제 1 콘텐트 보호 플랫폼(304)은 제 1 및 제 2 파라미터들(202 및 206)을 검색하고 제 1 및 제 2 파라미터들을 바탕으로 제 3 파라미터를 생성한다. 다른 실시예에서, 메모리 디바이스(116)에 포함된 제 2 콘텐트 보호 플랫폼(306)은 제 1 및 제 2 파라미터들(202 및 206)을 검색하고 제 1 및 제 2 파라미터들을 바탕으로 제 3 파라미터를 생성한다.In the embodiment of FIG. 3, the first
도 4는 본 발명의 실시예에 따른 메모리 디바이스로부터 콘텐트의 액세스를 도시하는 흐름도이다. 402에서 시작하여, 콘텐트는 콘텐트가 보호되는지(즉, 암호화)를 결정하기 위하여 분석된다. 콘텐트와 연관된 여러 정보는 콘텐트가 암호화 되는지를 가리킬 수 있다. 콘텐트의 헤더는 예를 들어 콘텐트가 암호화되는 것을 가리킬 수 있다. 선택적으로, 콘텐트의 파일이름 확장은 콘텐트가 암호화되는 것을 가리킨다. 만약 콘텐트가 보호되지 않으면, 콘텐트는 410에 직접적으로 액세스될 수 있다. 만약 콘텐트가 보호되지 않으면, 제 1 파라미터는 404에서 라이센스로부터 검색된다. 이 실시예에서, 제 1 파라미터는 수이다. 상기 수는 임의로 생성 또는 미리 정의될 수 있다. 406에서, 제 2 파라미터는 콘텐트로부터 검색된다. 실시예에서, 방정식 1.2에서 표현된 바와 같이, 제 2 파라미터는 암호화 키에 대한 레퍼런스 및 제 1 파라미터로부터 유도될 수 있다. 암호화 키는 콘텐트를 암호화 또는 디크립트하기 위하여 사용된다. 결과적으로, 제 2 파라미터는 콘텐트 및 라이센스 모두와 연관되는데, 그 이유는 제 2 파라미터가 콘텐트를 디크립트하기 위하여 사용된 암호화 키에 대한 레퍼런스 및 라이센스와 함께 포함된 수로부터 유도 또는 계산되기 때문이다. 다른 실시예에서, 제 1 파라미터(예를 들어, 수)는 콘텐트와 연관되고 제 2 파라미터는 라이센스와 연관될 수 있다.4 is a flow diagram illustrating accessing content from a memory device in accordance with an embodiment of the present invention. Beginning at 402, the content is analyzed to determine if the content is protected (i.e., encrypted). The various information associated with the content may indicate whether the content is encrypted. The header of the content may indicate, for example, that the content is encrypted. Optionally, the file name extension of the content indicates that the content is encrypted. If the content is not protected, the content can be directly accessed 410. If the content is not protected, the first parameter is retrieved from the license at 404. In this embodiment, the first parameter is a number. The number may be randomly generated or predefined. At 406, the second parameter is retrieved from the content. In an embodiment, as represented in equation 1.2, the second parameter may be derived from the reference to the encryption key and the first parameter. The encryption key is used to encrypt or decrypt the content. As a result, the second parameter is associated with both the content and the license, because the second parameter is derived or calculated from the number included with the reference and license for the encryption key used to decrypt the content. In another embodiment, the first parameter (e.g., number) may be associated with the content and the second parameter may be associated with the license.
제 1 파라미터 및 제 2 파라미터로 인해, 암호화 키에 대한 레퍼런스는 408에서 생성 또는 계산될 수 있다. 방정식 1.0에서 상기된 바와 같이, 암호화 키에 대한 레퍼런스는 제 1 파라미터 및 제 2 파라미터를 바탕으로 생성될 수 있다. 그 후, 410에서, 콘텐트는 제 3 파라미터를 바탕으로 디크립트 및 액세스될 수 있다. 예를 들어, 일 실시예에서, 암호화 키에 대한 레퍼런스 형태의 제 3 파라미터는 메모리 디바이스에 전송될 수 있다. 메모리 디바이스는 암호화 키를 저장하는 안전한 저장소를 포함할 수 있다. 메모리 디바이스는 암호화 키에 대한 레퍼런스를 사용하여 안전 저장소로부터 암호화 키를 검색할 수 있다. 암호화 키로 인해, 메모리 디바이스는 콘텐트를 디크립트하고 호스트 컴퓨팅 디바이스에 디크립트된 콘텐트를 전송할 수 있다.Due to the first parameter and the second parameter, a reference to the encryption key may be generated or calculated at 408. As described above in Equation 1.0, a reference to the encryption key may be generated based on the first parameter and the second parameter. Then, at 410, the content can be decrypted and accessed based on the third parameter. For example, in one embodiment, a third parameter in the form of a reference to an encryption key may be sent to the memory device. The memory device may include a secure store for storing the encryption key. The memory device may retrieve the encryption key from the secure store using a reference to the encryption key. Due to the encryption key, the memory device can decrypt the content and send the decrypted content to the host computing device.
세션 티켓을 바탕으로 콘텐트에 액세스Access content based on session tickets
도 5는 본 발명의 실시예에 따른 세션 키의 생성을 도시하는 블록도이다. 파라미터(502)는 처음에 제공되고 상기 파라미터는 콘텐트의 디크립션과 연관될 수 있는 여러 데이터를 포함한다. 파라미터(502)는 상기된 라이센스 및 콘텐트와 연관된 파라미터들을 바탕으로 생성될 수 있다. 파라미터(502)의 예들은 콘텐트의 디크립션을 위해 사용된 암호화 키에 대한 레퍼런스, 암호화 논스 또는 다른 파라미터들 포함한다.5 is a block diagram illustrating generation of a session key according to an embodiment of the present invention. The
세션 티켓(506)의 생성은 변수(504)의 사용을 수반한다. 변수(504)는 여러 데이터를 포함한다. 예를 들어, 데이터는 수일 수 있다. 상기 수는 미리 정의되거나 임의로 생성될 수 있다. 다른 실시예에서, 데이터는 캐릭터 문자일 수 있다. 상기된 파라미터들과 달리, 변수(504)는 라이센스 및 콘텐트와 연관되지 않을 수 있다. 다른 말로, 변수(504)는 라이센스 및 콘텐트와 무관할 수 있다. 변수(504)는 세션에서 변화하도록 구성된다. 세션은 임의의 시간 기간 동안에 걸칠 수 있다. 예를 들어, 세션은 시간, 날, 주, 또는 다른 시간 단위들 동안 지속할 수 있다. 게다가, 세션은 메모리 디바이스에 결합된 호스트 컴퓨팅 디바이스가 시작 또는 재시작될 때 만료할 수 있다. 세션은 또한 메모리 디바이스가 호스트 컴퓨팅 디바이스로부터 분리될 때 만료할 수 있다. 게다가, 예를 들어, 세션은 콘텐트에 대한 액세스의 제한된 횟수(예를 들어, 콘텐트가 액세스될 수 있는 제한된 횟수)에 걸칠 수 있다.The creation of a
세션 티켓(506)은 파라미터(502) 및 변수(504)를 바탕으로 생성되어, 파라미터는 세션 티켓(506)을 정의하기 위하여 변수를 바탕으로 암호화된다. 세션 티켓(506)은 그러므로 다음과 같이 표현된다:A
세션 티켓 = F(파라미터, 변수) (2.0)Session ticket = F (parameter, variable) (2.0)
여기서 세션 티켓은 파라미터(502) 및 변수(504)의 함수이다. 세션 티켓(506)으로 인해, 콘텐트는 세션 티켓을 바탕으로 액세스될 수 있다. 예를 들어, 호스트 컴퓨팅 디바이스는 세션 티켓(506)을 메모리 디바이스에 전송할 수 있다. 메모리 디바이스는 세션 티켓(506)을 바탕으로 콘텐트를 디크립트하기 위하여 사용된 파라미터를 유도할 수 있다. 파라미터(502)는 다음과 같이 유도된다:Where the session ticket is a function of the
파라미터 = F-1(세션 티켓, 변수) (2.2)Parameter = F -1 (session ticket, variable) (2.2)
여기서 파라미터는 세션 티켓(506) 및 변수(504)의 인버스 함수이다.Where the parameter is an inverse function of the
세션 티켓(506)이 특정 콘텐트와 연관되는데 그 이유는 세션 티켓이 콘텐트를 디크립트하기 위하여 사용하기 때문이라는 것이 인식되어야 한다. 결과적으로, 메모리 디바이스에 저장된 다른 콘텐트는 만약 세션 티켓이 다른 콘텐트를 디크립트하기 위하여 파라미터(502) 같은 파라미터를 포함하지 않으면 세션 티켓(506)에 사용되거나 액세스될 수 없다. 예로서, 만약 메모리 디바이스에 저장된 두 개의 독립된 콘텐트들이 다른 암호화 키들로 암호화되면, 호스트 컴퓨팅 디바이스 또는 메모리 디바이스는 두 개의 독립된 콘텐트들에 액세스하기 위하여 두 개의 다른 세션 티켓들을 생성한다. 여기서, 하나의 세션 티켓은 다른 암호화 키들로 암호화된 두 개의 독립된 콘텐트들에 액세스하기 위하여 사용될 수 없다.It should be appreciated that the
도 6은 본 발명의 실시예에 따른 세션 티켓을 사용하여 메모리 디바이스에 액세스하기 위한 시스템의 간략화된 블록도이다. 시스템(602)은 메모리 디바이스(116)에 결합된 호스트 컴퓨팅 디바이스(114)를 포함한다. 호스트 컴퓨팅 디바이스(114)는 애플리케이션(104) 및 제 1 콘텐트 보호 플랫폼(304)을 포함할 수 있다. 메모리 디바이스(116)는 제 2 콘텐트 보호 플랫폼(306), 콘텐트(118), 및 라이센스(204)를 포함한다. 상기된 바와 같이, 제 1 및 제 2 콘텐트 보호 플랫폼들(304 및 306)은 메모리 디바이스(116)에 저장된 콘텐트(118)의 디지털 권리들을 관리하도록 구성될 수 있다. 6 is a simplified block diagram of a system for accessing a memory device using a session ticket in accordance with an embodiment of the present invention. The
도 6에 도시된 바와 같이, 애플리케이션(104)은 제 1 콘텐트 보호 플랫폼(304)에 의해 메모리 디바이스(116)에 저장된 콘텐트(118)에 대한 요청을 전송한다. 콘텐트(118)는 암호화 키에 의해 암호화된다. 암호화 키(예를 들어, 암호화 키에 대한 레퍼런스; 논스, 또는 다른 파라미터들)와 연관된 파라미터는 제 2 콘텐트 보호 플랫폼(306)에 제공된다. 콘텐트(118)에 대한 요청에 응답하여, 제 2 콘텐트 보호 플랫폼(306)은 방정식 2.0으로 표현된 세션 티켓을 정의하기 위하여 변수(604)를 바탕으로 파라미터를 암호화한다. 제 2 콘텐트 보호 플랫폼(306)은 변수(604)(예를 들어, 수, 문자열, 또는 다른 파라미터)를 생성할 수 있다. 변수(604)는 세션에서 변화하도록 구성된다. 예를 들어, 제 2 콘텐트 보호 플랫폼(306)은 모든 세션에 대해 다른 변수(604)를 생성할 수 있다. 변수(604)는 임의로 생성 또는 미리 정의될 수 있다.As shown in FIG. 6, the
세션 티켓이 생성된 후, 제 2 콘텐트 보호 플랫폼(306)은 컴퓨팅 디바이스(114)를 호스트하기 위하여 세션 티켓을 전송한다. 세션 티켓으로 인해, 호스트 컴퓨팅 디바이스(114)는 세션 티켓을 바탕으로 콘텐트(118)에 액세스할 수 있다. 콘텐트(118)에 액세스하기 위하여, 호스트 컴퓨팅 디바이스(114)는 추후 세션 티켓을 다시 메모리 디바이스(116)에 전송한다. 세션 티켓의 수신으로, 제 2 콘텐트 보호 플랫폼(306)은 방정식 2.2에서 표현된 콘텐트(118)를 디크립트하기 위하여 사용된 파라미터를 추출하기 위하여 세션 티켓을 디크립트한다. 만약 변수(604)가 변화되지 않으면, 파라미터는 디크립션이 파라미터를 암호화하기 위하여 사용된 변수와 동일한 변수를 바탕으로 하기 때문에 추출될 수 있다. 변수(604)는 다른 세션들에서 변화할 수 있다. 결과적으로, 변수(604)는 만약 변수들이 동일한 세션 내에서 생성되면 파라미터를 암호화하기 위하여 사용된 변수와 동일하다. 그러나, 만약 변수(604)가 변화되면, 파라미터는 디크립션이 파라미터를 암호화하기 위하여 사용된 변수와 다른 변수를 바탕으로 하기 때문에 추출될 수 없다. 변수(604)는 만약 변수들이 다른 세션들 내에서 생성되면 파라미터를 암호화하기 위하여 사용된 변수와 다르다. 세션에서 변수(604)를 변화함으로써, 세션 티켓은 하나의 세션 동안 지속하거나 유효하다. 만약 파라미터가 추출되면, 제 2 콘텐트 보호 플랫폼(306)은 파라미터를 바탕으로 콘텐트(118)를 디크립트하고 호스트 컴퓨팅 디바이스(114)에 디크립트된 콘텐트를 전송할 수 있다.After the session ticket is generated, the second
다른 실시예에서, 제 1 콘텐트 보호 플랫폼(304)은 콘텐트(118)를 디크립트하기 위하여 사용된 파라미터를 암호화함으로써 세션 티켓을 생성할 수 있다. 여기서, 콘텐트(118)에 액세스하기 위하여 애플리케이션(104)에 의한 요청에 응답하여, 제 1 콘텐트 보호 플랫폼(304)은 세션 티켓을 생성할 수 있고 상기 세션 티켓을 애플리케이션(104)에 전송할 수 있다. 애플리케이션(104)은 콘텐트(118)에 액세스하기 위하여 제 1 콘텐트 보호 플랫폼(304)에 다시 세션 티켓을 전송할 수 있다.In another embodiment, the first
도 7은 본 발명의 실시예에 따른 세션 티켓을 바탕으로 메모리 디바이스로부터 콘텐트의 액세스를 도시하는 흐름도이다. 702에서 시작하여, 암호화 키에 대한 레퍼런스는 검색된다. 레퍼런스는 호스트 컴퓨팅 디바이스 또는 메모리 디바이스로부터 검색될 수 있다. 메모리 디바이스에 저장된 콘텐트는 암호화되고 암호화 키를 사용하여 디크립트될 수 있다. 암호화 키에 대한 레퍼런스로 인해, 암호화 키에 대한 레퍼런스는 세션 티켓을 정의하기 위하여 704에서 수를 바탕으로 암호화된다. 상기 수는 세션에서 변화하도록 구성되고 임의로 생성될 수 있다. 그 다음 세션 티켓은 예를 들어 706에서 호스트 컴퓨팅 디바이스로 전송될 수 있다.7 is a flow diagram illustrating accessing content from a memory device based on a session ticket in accordance with an embodiment of the present invention. Beginning at 702, a reference to the encryption key is retrieved. The reference may be retrieved from a host computing device or a memory device. The content stored in the memory device may be encrypted and decrypted using the encryption key. Due to the reference to the encryption key, the reference to the encryption key is encrypted based on the number at 704 to define the session ticket. The number may be configured and optionally generated to vary in a session. The next session ticket may be sent, for example, at 706 to the host computing device.
호스트 컴퓨팅 디바이스가 메모리 디바이스 상에 저장된 콘텐트에 액세스할 때, 호스트 컴퓨팅 디바이스는 706에서 메모리 디바이스에 수신된 세션 티켓을 전송할 수 있다. 메모리 디바이스는 708에서 세션 티켓을 수신하고 710에서 수를 바탕으로 세션 티켓을 디크립트한다. 만약 상기 수가 세션 티켓을 생성하기 위하여 사용된 수와 매칭하면, 암호화 키에 대한 레퍼런스는 디크립션 동작으로부터 추출될 수 있다. 그러나, 만약 세션이 변화되고 다른 수가 메모리 디바이스에 의해 유지되면, 암호화 키에 대한 레퍼런스는 수들이 매칭하지 않기 때문에 디크립션 동작으로부터 추출될 수 없다. 만약 암호화 키에 대한 레퍼런스가 세션 티켓으로부터 추출될 수 있으면, 암호화 키는 712에서 레퍼런스를 바탕으로 검색된다. 암호화 키는 예를 들어 안전한 저장소로부터 검색될 수 있다. 콘텐트는 암호화 키를 사용하 여 714에서 디크립트되고 예를 들어 716에서 호스트 컴퓨팅 디바이스로 전송된다.When the host computing device accesses the content stored on the memory device, the host computing device may send the received session ticket to the memory device at 706. [ The memory device receives the session ticket at 708 and decrypts the session ticket based on the number at 710. If the number matches the number used to generate the session ticket, a reference to the encryption key may be extracted from the decryption operation. However, if the session is changed and another number is maintained by the memory device, the reference to the encryption key can not be extracted from the decryption operation because the numbers do not match. If a reference to the encryption key can be extracted from the session ticket, the encryption key is retrieved based on the reference at 712. The encryption key may be retrieved from, for example, a secure repository. The content is decrypted at 714 using the encryption key and sent to the host computing device at, for example, 716.
도 8은 본 발명의 실시예에 따른 콘텐트에 액세스하기 위한 호스트 컴퓨팅 디바이스 상에 호스트될 수 있는 프로그램 애플리케이션들의 간략화된 블록도이다. 호스트 컴퓨팅 디바이스(114)는 애플리케이션(104), 디지털 권리 관리(DRM) 모듈(806), 콘텐트 보호 플랫폼(304), 파일 시스템 관리기(808), 및 디바이스 드라이버(810)를 호스트할 수 있다. 상기된 바와 같이, 애플리케이션(104)은 멀티미디어 플레이어들, 비디오 게임들, 및 다른 애플리케이션들 같은 여러 프로그램 애플리케이션들을 포함할 수 있다. 애플리케이션(104)은 DRM 모듈(806) 및 콘텐트 보호 플랫폼(304)과 통신한다. DRM 모듈(806)은 호스트 컴퓨팅 디바이스(114)가 메모리 디바이스 또는 다른 위치들에 저장된 콘텐트의 디지털 권리들을 관리하게 한다. 예를 들어, DRM 모듈(806)은 콘텐트를 보호할 수 있고 상기 콘텐트의 분배를 제어한다. 상기된 바와 같이, 콘텐트 보호 플랫폼(304)은 메모리 디바이스 상 콘텐트를 보호하기 위한 기술적 플랫폼이다. 콘텐트 보호 플랫폼(304)은 보안 관리기(802) 및 호스트 암호화 엔진(804)을 포함할 수 있다. 일반적으로, 보안 관리기(802)는 메모리 디바이스에 저장된 콘텐트의 액세스를 관리한다. 관리는 예를 들어 콘텐트가 보호되는지를 검사하고, 라이센스 및 콘텐트와 연관된 파라미터들을 바탕으로 암호화 키에 대한 레퍼런스를 생성하고, 파라미터 및 변수를 바탕으로 세션 티켓을 생성하고, 변수를 생성하고, 및 다른 동작들을 포함한다. 호스트 암호화 엔진(804)은 암호화 동작들을 처리하기 위하여 암호화 라이브러리들을 포함한다. 콘텐트 보호 플랫폼(304) 및 DRM 모듈(806)은 함께 보안 저장 및 콘텐트 관리 능력들을 호스트 컴 퓨팅 디바이스(114)(및 메모리 디바이스)에 제공한다. 예를 들어, 콘텐트 보호 플랫폼(304) 및 DRM 모듈(806)은 메모리 디바이스에 저장된 콘텐트(예를 들어, 음악 파일들, 영화 파일들, 소프트웨어, 및 다른 데이터)의 보안 저장 및 콘텐트에 대한 액세스를 제어하기 위하여 사전 정의된 정책들의 실행을 허용한다.Figure 8 is a simplified block diagram of program applications that may be hosted on a host computing device for accessing content in accordance with an embodiment of the present invention. The
콘텐트 보호 플랫폼(304)은 파일 시스템 관리기(808)와 통신한다. 일반적으로, 파일 시스템 관리기(808)는 메모리 디바이스에 저장된 콘텐트의 액세스(예를 들어, 판독, 기입 및 다른 액세스 동작들)을 관리 및 처리하도록 구성된다. 예를 들어, 파일 시스템 관리기(808)는 메모리 디바이스로부터 콘텐트를 판독하고 처리를 위하여 콘텐트 보호 플랫폼(304)에 상기 콘텐트를 전송할 수 있다. 호스트 컴퓨팅 디바이스(114)는 메모리 디바이스와 인터페이스 할 수 있다. 호스트 컴퓨팅 디바이스(114)는 그러므로 메모리 디바이스와 인터페이스하기 위하여 시스템 관리기(808)와 통신하는 디바이스 드라이버(810)를 포함할 수 있다. 디바이스 드라이버(810)는 예를 들어 메모리 디바이스와 통신하기 위하여 낮은 레벨 인터페이스 함수들을 포함할 수 있다. 보다 낮은 레벨의 인터페이스 함수의 예는 메모리 디바이스에 및 상기 메모리 디바이스로부터 입력 및 출력과 연관된 입력/출력 함수들을 포함한다.The
도 9는 본 발명의 실시예에 따라 메모리 디바이스에 포함될 수 있는 프로그램 애플리케이션들의 간략화된 블록도이다. 메모리 디바이스(116)는 DRM 모듈(902), 콘텐트 보호 플랫폼(306), 암호화 엔진(904), 및 보안 저장소(906)를 포함할 수 있다. 메모리 디바이스(116)에서, DRM 모듈(902)은 메모리 디바이스(116) 가 메모리 디바이스에 저장된 콘텐트의 디지털 권리들을 관리하게 한다. 예를 들어, DRM 모듈(902)은 콘텐트 권리들을 실행하기 위하여 구성될 수 있다. 상기된 바와 같이 콘텐트 보호 플랫폼(306)은 메모리 디바이스(116)에 저장된 콘텐트를 보호하기 위한 기술 플랫폼이다. 콘텐트 보호 플랫폼(306)은 파라미터 및 변수를 바탕으로 세션 티켓을 생성하기 위하여 라이센스 및 콘텐트와 연관된 파라미터들을 바탕으로 암호화 키에 대한 레퍼런스를 생성하도록 구성될 수 있고, 다른 동작들을 위해 구성될 수 있다. 암호화 엔진(904)은 암호화 동작들을 처리하고 보안 저장소(906)는 암호화 키들을 저장한다.9 is a simplified block diagram of program applications that may be included in a memory device in accordance with an embodiment of the invention. The memory device 116 may include a DRM module 902, a
다른 실시예에서, 도 8의 호스트 컴퓨팅 디바이스(114) 및 도 9의 메모리 디바이스(116)가 도 8 및 9에 도시된 것과 달리 보다 적거나 많은 프로그램 애플리케이션들을 포함할 수 있다는 것이 인식되어야 한다. 예를 들어, 도 8에 도시된 바와 같이, 파일 시스템 관리기(808) 및 디바이스 드라이버(810)는 콘텐트 보호 플랫폼(304)에 통합될 수 있다. 도 8의 호스트 컴퓨팅 디바이스(114)는 그러므로 DRM 모듈(806) 및 콘텐트 보호 플랫폼(304)을 포함할 수 있다.It should be appreciated that in other embodiments, the
도 10은 본 발명의 실시예에 따라 콘텐트 보호 플랫폼 및 다른 프로그램 애플리케이션들을 호스팅하기에 적당한 호스트 컴퓨팅 디바이스의 일반적인 개요의 간략화된 블록도이다. 몇몇 실시예들에서, 호스트 컴퓨팅 디바이스(114)는 컴퓨터 프로그램들(예를 들어, 콘텐트 보호 플랫폼), 논리, 애플리케이션들, 방법들, 처리들, 또는 콘텐트에 액세스하기 위한 다른 소프트웨어를 실행하기 위하여 사용될 수 있다. 호스트 컴퓨팅 디바이스(114)의 예들은 데스크탑 컴퓨터, 서버, 휴대용 컴퓨 팅 디바이스, 퍼스널 디지털 어시스탄트, 모바일 전화, 기구 내의 계산 엔진, 및 다른 컴퓨터 시스템들을 포함한다. 도 10에 도시된 바와 같이, 호스트 컴퓨팅 디바이스(114)는 처리기(1004), 시스템 메모리(1006)(예를 들어, 랜덤 액세스 메모리(RAM)), 저장 디바이스(1008)(예를 들어, 판독 전용 메모리(ROM), 자기 디스크 드라이브들, 광학 디스크 드라이브들, 및 다른 저장 디바이스들), 통신 인터페이스(1012)(예를 들어, 모뎀 또는 이더넷 카드), 디스플레이(1014)(예를 들어, 음극선관(CRT) 또는 액정디스플레이(LCD)), 입력/출력 디바이스(1016)(예를 들어, 키보드), 및 커서 제어부(1018)(예를 들어, 마우스 또는 트랙볼) 같은 디바이스들 및 서브시스템들과 상호작용하는 정보를 통신하기 위한 버스(1002) 또는 다른 통신 메카니즘을 포함한다.10 is a simplified block diagram of a general overview of a host computing device suitable for hosting a content protection platform and other program applications in accordance with an embodiment of the present invention. In some embodiments, the
몇몇 실시예들에서, 호스트 컴퓨팅 디바이스(114)는 시스템 메모리(1006)에 저장된 하나 또는 그 이상의 프로그램 명령들의 하나 또는 그 이상의 시퀀스들을 실행할 때 처리기(1004)에 의해 특정 동작들을 수행한다. 상기 프로그램 명령들은 저장 디바이스(1008) 같은 다른 컴퓨터 판독 가능 매체로부터 시스템 메모리(1006)에 판독될 수 있다. 몇몇 실시예들에서, 배선 회로는 본 발명의 실시예들을 실행하기 위하여 소프트웨어 프로그램 명령들 대시 또는 상기 소프트웨어 프로그램 명령과 결합하여 사용될 수 있다.In some embodiments, the
용어 "컴퓨터 판독 가능 매체"가 실행을 위한 처리기(1004)에 프로그램 명령들을 제공하는데 참여하는 적당한 매체를 말하는 것이라 인식되어야 한다. 상기 매체는 비휘발성 매체, 휘발성 매체, 및 전송 매체를 포함하지만 제한되지 않는 형태 들을 취할 수 있다. 비휘발성 매체는 예를 들어 저장 디바이스(1008) 같은 광학 또는 자기 디스크들을 포함할 수 있다. 휘발성 매체는 시스템 메모리(1006) 같은 동적 메모리를 포함할 수 있다. 전송 매체는 버스(1002)를 포함하는 와이어들을 구비한 동축 케이블들, 구리 와이어, 및 광섬유들을 포함한다. 전송 매체는 무선파 및 적외선 데이터 통신들 동안 생성된 바와 같은 음향 또는 광 파들 형태를 취할 수 있다. 컴퓨터 판독 가능 매체의 공통 형태들은 예를 들어 자기 매체들(예를 들어, 플로피 디스크, 플렉서블 디스크, 하드 디스크, 자기 테이프, 및 다른 자기 매체들), 광학 매체들(예를 들어, 컴팩트 디스크 판독 전용 메모리(CD-ROM) 및 다른 광학 매체들), 패턴들을 가진 물리적 매체(예를 들어, 펀치 카드들, 페이퍼 테이프, 임의의 다른 물리적 매체들), 메모리 칩들 또는 카트리지들, 반송파들(예를 들어, RAM, 프로그램 판독 전용 메모리(PROM), 소거 가능 프로그램 가능 판독 전용 메모리(EPROM), 플래시 메모리, 및 다른 메모리 칩들 또는 카트리지들), 및 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다.It should be appreciated that the term "computer readable medium" refers to any suitable medium that participates in providing program instructions to the
몇몇 실시예들에서, 실시예들을 실행하기 위한 프로그램 명령들의 시퀀스 실행은 단일 컴퓨팅 디바이스(114)에 의해 수행될 수 있다. 다른 실시예들에서, 통신 링크(1020)(예를 들어, 로컬 영역 네트워크(LAN), 공용 스위칭 전화 네트워크들(PSTN), 무선 네트워크, 및 다른 통신 링크들)에 의해 결합된 호스트 컴퓨팅 디바이스(114) 같은 둘 또는 그 이상의 컴퓨터 시스템들은 서로 협조하여 실시예들을 실행하기 위한 프로그램 명령들의 시퀀스를 수행할 수 있다. 게다가, 컴퓨팅 디바이스(114)는 통신 링크(1020) 및 통신 인터페이스(1012)를 통하여 프로그램, 즉 애 플리케이션 코드를 포함하는 메시지들, 데이터, 및 명령들을 전송 및 수신할 수 있다. 수신된 프로그램 명령들은 프로그램 명령들이 저장 디바이스(1008), 또는 추후 실행을 위해 다른 비휘발성 저장소에 수신 및/또는 저장될 때 처리기(1004)에 의해 실행될 수 있다.In some embodiments, the sequential execution of program instructions to perform embodiments may be performed by a
도 11은 본 발명의 실시예에 따라 메모리 디바이스의 간략화된 블록도이다. 도 11에 도시된 바와 같이, 메모리 디바이스(116)는 메모리(1104)와 통신하는 제어기(1102)를 포함한다. 일반적으로, 제어기(1102)는 메모리(1106)의 동작을 제어한다. 동작 예들은 데이터 기입(또는 프로그래밍), 데이터 판독, 데이터 소거, 데이터 검증, 및 다른 동작들을 포함한다. 또한, 제어기(1102)는, 라이센스 및 콘텐트와 관련된 파라미터를 기초로 파라미터를 생성하고, 파라미터 및 수를 기초로 세션 티켓을 생성하도록 구성되고, 상술된 다른 동작을 위해 구성될 수 있다.11 is a simplified block diagram of a memory device in accordance with an embodiment of the present invention. As shown in FIG. 11, memory device 116 includes a controller 1102 in communication with memory 1104. In general, controller 1102 controls the operation of memory 1106. Examples of operations include data writing (or programming), data reading, data erasing, data verification, and other operations. Controller 1102 may also be configured to generate parameters based on parameters associated with licenses and content, and to generate session tickets based on parameters and numbers, and configured for other operations as described above.
메모리 디바이스(116)는 여러 비휘발성 메모리 구조들 및 기술들을 포함할 수 있다. 메모리 기술들의 예들은 플래시 메모리들(예를 들어, NAND, NOR, 단일-레벨 셀(SLC/BIN), 다중-레벨 셀(MLC), 분할된 비트-라인 NOR(DINOR), AND, 고용량 결합 비율(HiCR), 비대칭 비접촉 트랜지스터(ACT), 및 다른 플래시 메모리들), 소거 가능한 판독 전용 메모리(EPROM), 전기-소거 가능 프로그램 가능 판독 전용 메모리(EEPROM), 판독 전용 메모리(ROM), 일회 프로그램 가능 메모리(OTP), 및 다른 메모리 기술들을 포함한다. 일 실시예에서, 메모리 디바이스(116)는 플래시 메모리를 사용하는 플래시 메모리 카드일 수 있다. 플래시 메모리 카드들의 예들은 보안 디지털TM(San Ramon, California의 SD Card Association에 의해 유지되는 사양들과 순응함), MultiMediaCardTM(Palo Alto, California의 MultiMediaCard Association("MMCA")에 의해 유지된 사양들에 순응함), MiniSDTM(SanDisk, Inc.에 의해 제조됨), MicroSDTM(SanDisk, Inc.에 의해 제조됨), CompactFlashTM(Palo Alto, California의 CompactFlash Association("CFA")에 의해 유지된 사양들에 순응함), SmartMediaTM(Yokohama, Japan의 Solid State Floppy Disk Card("SSFDC")에 의해 유지된 사양들에 순응함), xD-Picture CardTM(Tokyo, Japan의 xD-Picture Card Licensing Office에 의해 유지된 사양들에 순응함), Memory StickTM(Yokohama, Japan의 Solid State Floppy Disk Card("SSFDC") Forum에 의해 유지된 사양들에 순응함), TransFlashTM(SanDisk, Inc.에 의해 제조됨), 및 다른 플래시 메모리 카드들 같은 여러 상표 제품들을 포함한다. 다른 실시예에서, 메모리 디바이스(116)는 제거할 수 없는 메모리 디바이스로서 실행될 수 있다. The memory device 116 may include various non-volatile memory structures and techniques. Examples of memory technologies include flash memories (e.g., NAND, NOR, SLC / BIN, MLC, segmented bit-line NOR (DINOR) (HiCR), asymmetric contactless transistors (ACT), and other flash memories), erasable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM) Memory (OTP), and other memory technologies. In one embodiment, the memory device 116 may be a flash memory card using flash memory. Examples of flash memory cards include Secure Digital TM (compliant with specifications maintained by the SD Card Association of San Ramon, California), specifications maintained by MultiMediaCard TM (Palo Alto, California, MultiMediaCard Association ("MMCA &Quot;), MiniSD TM (manufactured by SanDisk, Inc.), MicroSD TM (manufactured by SanDisk, Inc.), CompactFlash TM (Palo Alto, California, CompactFlash Association XD-Picture Card ™ (xD-Picture Card Licensing, Tokyo, Japan), SmartMedia ™ (conforming to the specifications maintained by Yokohama, Japan's Solid State Floppy Disk Card ("SSFDC" Conform to the specifications maintained by Office), Memory Stick ™ (conforms to the specifications maintained by Yokohama, Japan's Solid State Floppy Disk Card ("SSFDC") Forum), TransFlash TM (SanDisk, Inc. , ≪ / RTI > and other flash memory cards. In another embodiment, the memory device 116 may be implemented as a non-removable memory device.
다음 특허 서류들은 여기에 기술된 실시예들에 사용될 수 있는 실시예들을 포함한다. 각각의 이들 특허 서류들은 본 출원과 동일한 데이터 분야이고, 본 발명의 양수인에게 양도되고 여기에 참조로써 통합된다: 미국 특허 출원 11/599,655의 "Methods for Linking Content with License"; 미국특허 출원 11/600,270의 "Apparatuses for Linking Content with License"; 미국 특허 출원 11/600,273의 "Apparatuses for Accessing Content Based on a Session Ticket"; 미국 특허 출원 11/600,262의 "Methods for Binding Content to a Separate Memory Device"; 미국특허 출원 11/600,245의 "Apparatuses for Binding Content to a Separate Memory Device"; 미국특허 출원 11/599,994의 "Method for Allowing Multiple Users to Access Preview Content"; 미국특허 출원 11/599,995의 "System for Allowing Multiple Users to Access Preview Content"; 미국특허 출원 11/600,005의 "Method for Allowing content Protected by a First DRM System to Be Accessed by a Second DRM System"; 미국특허 출원 11/599,991의 "System for Allowing Content Protected by a First DRM System to Be Accessed by a Second DRM System"; 미국특허 출원 11/600,300의 "Method for Connecting to a Network Location Associated with Content"; 및 미국특허 출원 11/600,006의 "System for Connectiong to a Network Location Associated with Content".The following patent documents include embodiments that may be used in the embodiments described herein. Each of these patent documents is the same data field as the present application and is assigned to the assignee of the present invention and incorporated herein by reference: "Methods for Linking Content with License" of U.S. Patent Application 11 / 599,655; U.S. Patent Application 11 / 600,270 entitled " Apparatuses for Linking Content with License "; U.S. Patent Application 11 / 600,273 entitled " Apparatuses for Accessing Content Based on a Session Ticket "; U.S. Patent Application 11 / 600,262, entitled " Methods for Binding Content to a Separate Memory Device "; U.S. Patent Application 11 / 600,245 entitled " Apparatuses for Binding Content to a Separate Memory Device "; U.S. Patent Application 11 / 599,994, entitled " Method for Allowing Multiple Users to Access Preview Content "; U.S. Patent Application 11 / 599,995 entitled " System for Allowing Multiple Users to Access Preview Content "; "Method for Allowing content Protected by a First DRM System to Be Accessed by a Second DRM System" of U.S. Patent Application 11 / 600,005; U.S. Patent Application 11 / 599,991 entitled " System for Allowing Content Protected by a First DRM System to Be Accessed by a Second DRM System "; U.S. Patent Application 11 / 600,300 entitled " Method for Connecting to a Network Location Associated with Content "; And United States Patent Application 11 / 600,006 entitled " System for Connection to a Network Location Associated with Content ".
비록 상기 실시예들이 이해의 명확화를 위해 몇몇 항목에서 기술되었지만, 실시예들은 제공된 항목들로 제한되지 않는다. 실시예들을 실행하는 많은 다른 방식들이 있다. 따라서, 개시된 실시예들은 도시되는 것이고 제한되지 않는 것이 고려되며, 실시예들은 여기에 제공된 항목들로 제한되지 않고, 첨부된 청구항들의 범위 및 등가물들 내에서 변형될 수 있다. 청구항들에서, 엘리먼트들 및/또는 동작들은 만약 청구항들에 명확하게 언급되지 않으면 임의의 특정 동작 순서를 의미하지 않는다.Although the above embodiments have been described in several items for clarity of understanding, the embodiments are not limited to the items provided. There are many different ways of implementing the embodiments. Accordingly, the disclosed embodiments are to be considered as illustrative and not restrictive, and the embodiments are not intended to be limited to the items provided herein, but may be modified within the scope and equivalents of the appended claims. In the claims, elements and / or actions are not meant to imply any particular order of operation unless explicitly stated in the claims.
상술한 바와 같이, 본 발명은, 일반적으로는 콘텐트 액세스, 보다 구체적으로는 콘텐트를 라이센스와 연결하고 세션 티켓을 바탕으로 콘텐트에 액세스하는 방법을 제공하는데 사용된다.As described above, the present invention is generally used to provide content access, and more particularly, to provide a method for connecting content with a license and accessing content based on a session ticket.
Claims (37)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/600,273 US20080112566A1 (en) | 2006-11-14 | 2006-11-14 | Apparatuses for accessing content based on a session ticket |
US11/600,273 | 2006-11-14 | ||
US11/600,263 US8079071B2 (en) | 2006-11-14 | 2006-11-14 | Methods for accessing content based on a session ticket |
US11/600,263 | 2006-11-14 | ||
PCT/US2007/023617 WO2008069888A2 (en) | 2006-11-14 | 2007-11-09 | Methods and apparatuses for accessing content based on a session ticket |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090091750A KR20090091750A (en) | 2009-08-28 |
KR101450131B1 true KR101450131B1 (en) | 2014-10-13 |
Family
ID=39313149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020097012043A KR101450131B1 (en) | 2006-11-14 | 2007-11-09 | Methods and apparatuses for accessing content based on a session ticket |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP2082348A2 (en) |
JP (1) | JP2010509887A (en) |
KR (1) | KR101450131B1 (en) |
TW (1) | TWI441037B (en) |
WO (1) | WO2008069888A2 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004015257A (en) * | 2002-06-05 | 2004-01-15 | Sanyo Electric Co Ltd | Content reproducing apparatus |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3216607B2 (en) * | 1998-07-29 | 2001-10-09 | 日本電気株式会社 | Digital work distribution system and method, digital work reproduction apparatus and method, and recording medium |
EP1278331A4 (en) * | 2000-03-30 | 2006-06-07 | Sanyo Electric Co | Content data storage |
US20040019801A1 (en) * | 2002-05-17 | 2004-01-29 | Fredrik Lindholm | Secure content sharing in digital rights management |
JP2004133654A (en) * | 2002-10-10 | 2004-04-30 | Sanyo Electric Co Ltd | Storage device, terminal device, and server system |
KR20050096040A (en) * | 2004-03-29 | 2005-10-05 | 삼성전자주식회사 | Method for playbacking content using portable storage by digital rights management, and portable storage for the same |
US7664966B2 (en) * | 2004-05-17 | 2010-02-16 | Microsoft Corporation | Secure storage on recordable medium in a content protection system |
WO2006013924A1 (en) * | 2004-08-06 | 2006-02-09 | Pioneer Corporation | Recording/reproducing device, recording medium processing device, reproducing device, recording medium, contents recording/reproducing system, and contents recording/reproducing method |
US8504849B2 (en) * | 2004-12-21 | 2013-08-06 | Sandisk Technologies Inc. | Method for versatile content control |
-
2007
- 2007-11-09 KR KR1020097012043A patent/KR101450131B1/en active IP Right Grant
- 2007-11-09 EP EP07870860A patent/EP2082348A2/en not_active Withdrawn
- 2007-11-09 WO PCT/US2007/023617 patent/WO2008069888A2/en active Application Filing
- 2007-11-09 JP JP2009537160A patent/JP2010509887A/en active Pending
- 2007-11-14 TW TW096143093A patent/TWI441037B/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004015257A (en) * | 2002-06-05 | 2004-01-15 | Sanyo Electric Co Ltd | Content reproducing apparatus |
Also Published As
Publication number | Publication date |
---|---|
WO2008069888A3 (en) | 2008-07-31 |
EP2082348A2 (en) | 2009-07-29 |
TW200839564A (en) | 2008-10-01 |
WO2008069888B1 (en) | 2008-09-18 |
JP2010509887A (en) | 2010-03-25 |
KR20090091750A (en) | 2009-08-28 |
WO2008069888A2 (en) | 2008-06-12 |
TWI441037B (en) | 2014-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6606707B1 (en) | Semiconductor memory card | |
US8763110B2 (en) | Apparatuses for binding content to a separate memory device | |
US9075957B2 (en) | Backing up digital content that is stored in a secured storage device | |
US8533807B2 (en) | Methods for accessing content based on a session ticket | |
US20100023777A1 (en) | System and method for secure firmware update of a secure token having a flash memory controller and a smart card | |
US20090276829A1 (en) | System for copying protected data from one secured storage device to another via a third party | |
US20070083939A1 (en) | Secure universal serial bus (USB) storage device and method | |
US20080115211A1 (en) | Methods for binding content to a separate memory device | |
US20090276474A1 (en) | Method for copying protected data from one secured storage device to another via a third party | |
KR20090101900A (en) | Methods and apparatuses for binding content to a seperate memory device | |
US20080112566A1 (en) | Apparatuses for accessing content based on a session ticket | |
KR20100014767A (en) | Method and system for controlling access to digital content | |
US20080114686A1 (en) | Apparatuses for linking content with license | |
US20080112562A1 (en) | Methods for linking content with license | |
KR101450131B1 (en) | Methods and apparatuses for accessing content based on a session ticket | |
KR101464960B1 (en) | Methods and apparatuses for linking content with license |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20170919 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180918 Year of fee payment: 5 |