KR20030060981A - 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 - Google Patents
비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 Download PDFInfo
- Publication number
- KR20030060981A KR20030060981A KR10-2003-7007607A KR20037007607A KR20030060981A KR 20030060981 A KR20030060981 A KR 20030060981A KR 20037007607 A KR20037007607 A KR 20037007607A KR 20030060981 A KR20030060981 A KR 20030060981A
- Authority
- KR
- South Korea
- Prior art keywords
- track
- memory
- content
- encrypted
- information
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims description 90
- 230000003287 optical effect Effects 0.000 claims abstract description 5
- 230000005055 memory storage Effects 0.000 claims abstract 3
- 230000008569 process Effects 0.000 claims description 49
- 239000000872 buffer Substances 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 26
- 230000008929 regeneration Effects 0.000 claims description 5
- 238000011069 regeneration method Methods 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims 3
- 230000000295 complement effect Effects 0.000 claims 1
- 238000005070 sampling Methods 0.000 claims 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 31
- 230000006870 function Effects 0.000 description 18
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
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
- 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
- G06F21/79—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 in semiconductor storage media, e.g. directly-addressable memories
-
- 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/10—Digital recording or reproducing
-
- 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]
- G06F21/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
- G06F21/1014—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
-
- 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]
- G06F21/108—Transfer of content, software, digital rights or licenses
- G06F21/1083—Partial license transfers
-
- 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/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- 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/82—Protecting input, output or interconnection devices
- G06F21/83—Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3674—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
-
- 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/00094—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
-
- 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/00166—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
-
- 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
- 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/00217—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 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/00246—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 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 obtained from a local device, e.g. device key initially stored by the player or by the recorder
-
- 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/00217—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 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/00253—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 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/00275—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 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 the key being stored on a chip attached to the record carrier
-
- 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/00217—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 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/00253—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 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/00347—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 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 the medium identifier is used as a 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/00217—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 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/00253—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 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/00362—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 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 the key being obtained from a media key block [MKB]
-
- 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/00528—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 title is encrypted with a separate encryption key for each title, e.g. title key for movie, song or data file
-
- 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/00666—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of erasing or nullifying data, e.g. data being overwritten with a random string
- G11B20/00673—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of erasing or nullifying data, e.g. data being overwritten with a random string wherein the erased or nullified data include a cryptographic key
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/005—Reproducing at a different information rate from the information rate of recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
- H04L9/0844—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/913—Television signal processing therefor for scrambling ; for copy protection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2137—Time limited access, e.g. to a computer or 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
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/10537—Audio or video recording
- G11B2020/10546—Audio or video recording specifically adapted for audio data
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/913—Television signal processing therefor for scrambling ; for copy protection
- H04N2005/91357—Television signal processing therefor for scrambling ; for copy protection by modifying the video signal
- H04N2005/91364—Television signal processing therefor for scrambling ; for copy protection by modifying the video signal the video signal being scrambled
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/781—Television signal recording using magnetic recording on disks or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/907—Television signal recording using static stores, e.g. storage tubes or semiconductor memories
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Multimedia (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
메모리 카드, 광 디스크 또는 하드 디스크와 같은 메모리 저장 장치로부터의 암호화된 오디오 비디오 또는 다른 컨텐츠에 액세스하여 다이나믹하게 암호해제시키기 위하여 전자 장치에서 가동하는 최초 장비 제조자를 위한 보안 소프트웨어 팩키지로서, 장치의 사용자 인터페이스는 단순 명령을 전송시킬 필요만 있을 뿐이며 암호 해제된 컨텐츠가 출력된다.
Description
저작권이 있는 음악을 인터넷으로, 다른 통신 시스템에 의해서, 또는 소매 매장을 통해서 전자적으로 배포하는 가능성은 음악의 인가되지 않은 복제에 대한 관심에 의해서 제한된다. 이것은 또한 비디오 뿐만 아니라 다른 오디오 컨텐츠(content)에 대해서도 마찬가지다. 컨텐츠는 궁극적인 고객에게 암호화된 형태로 공급되는 것이 전형적이며, 고객은 암호화된 컨텐츠 파일을 개인용 컴퓨터 메모리, 휴대용 재생 장치의 메모리, 쓰기 가능한 콤팩트 디스크(CD)도는 비휘발성 메모리 카드와 같은 어떤 저장 매체상에 기록한다. 컨텐츠의 제공자는 컨텐츠의 인가되지 않은 복제의 가능성을 제거하고 싶어하지만, 발생하는 복제량을 최소화시키는 조치를 취하는데 만족해야만 한다. 이것은 기록 매체상에 컨텐츠의 보호를 제공하는 것을 포함한다. 비 휘발성 메모리 카드상에 저장된 컨텐츠의 보호는 콤팩트 디스크 또는 다른 기록 가능 매체에 저장될 수 있다.
컨텐츠 데이타 저장 매체로서 사용되기에 적절한 몇가지의 상업적으로 이용 가능한 비 휘발성 메모리 카드가 존재한다. 그 하나는 콤팩트 플래쉬(CF) 카드이고, 다른 것은 멀티미디어카드(MultiMediaCard;MMC) 이며, 또 다른 하나는 MMC 카드와 밀접하게 관련된 보안 디지탈(SD) 메모리 카드이다. 이 모든 세가지와 다른것들은 본 출원의 양도인인 캘리포니아, 서니베일의 샌디스크 코포레이션으로부터의 다양한 저장 역량으로서 이용 가능하다. MMC 에 대한 물리적이고 전기적인 상세는 캘리포니아, 큐페르티노의 멀티미디어카드 협회(MMCA)에 의해서 때때로 업데이트되고 출판되는 "멀티미디어카드 시스템의 상세"에 주어져 있다. 1999 년 6 월과 2000 년 1 월의 버젼 2.11 과 2.2 의 상세는 각각 본원에 참고로서 포함된다. MMC 의 제품은 샌디스크 코포레이션에 의해 간행된 2000년 4 월자의 "멀티미디어카드 제품 매뉴얼" 개정판 2 에 설명되어 있으며, 이러한 매뉴얼은 본원에 참고로서 포함된다. MMC 제품의 전기적인 작동은 토마스 엔. 툼스와 미키 홀츠만이 1998 년 11 월 4 일자로 출원하고 샌디스크사가 양도 받은 특허 출원 제 09/185,649 호 및, 09/186,064 호에 개시되어 있다. 이들 출원은 모두 본원에 참고로서 포함된다.
신규의 SD 카드는 MMC 카드와 유사하며, 평면상에서 같다. 그들 사이의 기본적인 차이는 카드와 호스트 사이의 보다 빠른 데이타 전송을 가능하게 하기 위하여 부가적인 데이타 접촉을 구비한다는 것이다. SD 카드의 다른 접촉부는, SD 카드를 받아들이도록 디자인된 소켓이 MMC 카드도 받아들이기 위하여, MMC 카드의 접촉부와 같다. SD 카드와의 전기적인 인터페이스는, 호스트의 작동에 대한 변화가 양쪽 유형의 카드를 수용하기 위하여 거의 필요하지 않도록, 위에서 참조된 상세의 버젼 2.11 에 설명된 MMC 제품과 대부분 역으로 호환되도록 만들어진다. SD 카드의 전기적인 인터페이스와 그것의 작동은 2000.8.17 에 제출되어 계류중인 특허 출원 09/641,023 호에 설명되어 있으며, 이것은 본원에 참조로써 포함된다.
본 출원은 2000. 12.7. 자로 출원된 미국 특허 가출원 제 60/251,731 호 "비회발성 메모리 카드, 콤팩트 디스크 또는 다른 매체로부터의 기록된 오디오, 비디오 또는 다른 컨텐츠를 재생하기 위한 보안 소프트웨어 시스템" 및, 본원과 동일자로 동시에 출원되고 본원과 동일한 발명자가 발명한 대리인 참조 번호 M 9913-1 의 "비휘발성 메모리 카드, 콤팩트 디스크 또는 다른 매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를 재생하기 위한 시스템, 방법 및, 장치"에 관련된다. 이들 출원은 여기에 참고로서 전체적으로 포함된다.
소스 코드는 다음의 파일을 포함하는 부속물로서 37 CFR 1.52 에 따른 콤팩트 디스크에서 제출되는데, 이들 각각은 본원에 참조로서 포함된다.
Sd_security\Sd_oem\Makefile, 11/05/01,2KB;
Sd_security\Sd_oem\Readme,11/05/2001,3KB;
Sd_security\Sd_oem\Sd_oem.c, 11/05/2001, 6KB;
Sd_security\Sd_oem\Sd_oem.h, 11/05/2001, 1KB;
Sd_security\Sd_oem\Sd_oem.inc, 11/05/2001, 1KB;
Sd_security\Sd_oem\Sdtypes.h, 11/05/2001, 3KB;
Sd_security\Sd_oem\vssver.scc 11/05/2001, 1KB;
Sd_security\Security\Tstsampl\Dotest.c, 11/05/2001, 8KB;
Sd_security\Security\Tstsampl\Makefile, 11/05/2001, 4KB;
Sd_security\Security\Tstsampl\Readme 11/05/2001, 3KB;
Sd_security\Security\Tstsampl\Regress.c, 11/05/2001, 26KB;
Sd_security\Security\Tstsampl\Sdls.c, 11/05/2001, 10KB;
Sd_security\Security\Tstsampl\Sdrm.c, 11/05/2001, 5KB;
Sd_security\Security\Tstsampl\Securmmc.c, 11/05/2001, 6KB;
Sd_security\Security\Tstsampl\Tstsampl.inc, 11/05/2001, 1KB;
Sd_security\Security\Tstsampl\vssver.scc, 11/05/2001, 1KB;
Sd_security\Security\Err.h, 11/05/2001, 1KB;
Sd_security\Security\Fsentry.c, 11/05/2001, 7KB;
Sd_security\Security\keyInfo.h, 11/05/2001, 84KB;
Sd_security\Security\Makefile, 11/05/2001, 3KB;
Sd_security\Security\Readme, 11/05/2001, 4KB;
Sd_security\Security\Scdrv.c, 11/05/2001, 29KB;
Sd_security\Security\Scdrv.h, 11/05/2001, 5KB;
Sd_security\Security\Scfs.c, 11/05/2001, 13KB;
Sd_security\Security\Scfs.h, 11/05/2001, 4KB;
Sd_security\Security\Sdsec.h, 11/05/2001, 5KB;
Sd_security\Security\Sdsys.c, 11/05/2001, 2KB;
Sd_security\Security\Security.c, 11/05/2001, 64KB;
Sd_security\Security\Smanager.c, 11/05/2001, 7KB;
Sd_security\Security\Smanager.h, 11/05/2001, 2KB;
Sd_security\Security\Ssmapi.c, 11/05/2001, 3KB;
Sd_security\Security\vssver.scc, 11/05/2001, 1KB;
Sdaudlib\HostFunc.c, 11/05/2001, 3KB;
Sdaudlib\Inpoutp.c, 11/05/2001, 1KB;
Sdaudlib\mssccprj.scc, 11/05/2001, 1KB;
Sdaudlib\plmInfo.h, 11/05/2001, 16KB;
Sdaudlib\Sd_plm.h, 11/05/2001, 5KB;
Sdaudlib\Sd_tkm.h, 11/05/2001, 4KB;
Sdaudlib\Sd_types.h, 11/05/2001, 2KB;
Sdaudlib\Sdapi.h, 11/05/2001, 2KB;
Sdaudlib\Sdaudapi.c, 11/05/2001, 91KB;
Sdaudlib\Sdaudapi.h, 11/05/2001, 8KB;
Sdaudlib\Sdaudlib.dsp, 11/05/2001, 4KB;
Sdaudlib\Sdaudlib.dsw, 11/05/2001, 1KB;
Sdaudlib\vssver.scc, 11/05/2001, 1KB.
본 발명은 전체적으로 그리고 상세하게는 메모리 카드, 콤팩트 디스크 또는 다른 매체로부터의 디지탈 오디오, 비디오 또는 다른 컨텐츠의 보안이 이루어진 재생에 관한 것이다.
도 1 은 보안 매체상에 정보를 읽고 쓰도록 사용된 장치에 대한 설명이다.
도 2 는 보안 매체에 접근하도록 사용된 장치의 개략적인 다이아그램이다.
도 3a 는 보안 매체의 층에 대한 이론적인 설명이다.
도 3b 는 보안 매체의 메모리 셀에 대한 물리적이고 논리적인 구조에 대한 설명이다.
도 3c 는 트랙 구조와 트랙의 구성 부분에 대한 설명이다.
도 4 는 매체 키이 블록(MKB) 이미지를 그것의 커다란 구성의 부분으로 나눈것에 대한 설명이다.
도 5 는 인증 및, 암호 해제 과정의 일부에 대한 설명이다.
도 6 은 인증 및, 암호화 과정에 대한 설명이다.
도 7 은 도 6 에 도시된 인증 키이 교환 과정에 대한 개략적인 도면이다.
도 8a 는 본 발명의 소프트웨어에 대한 블록 다이아그램이다.
도 8b 는 본 발명의 소프트웨어의 모듈을 설명하는 블록 다이아그램이다.
도 8c 는 본 발명에 따른 사전 재생 및, 재생 과정에 대한 순서도의 개관이며, 관련된 API 모듈/셀이 도시되어 있다.
도 8d 는 도 8c 에서 오디오 컨텐츠 시작 국면의 확장된 순서도이다.
도 8e 는 도 8c 의 사전 재생 처리 동안에 만들어진 정보 블록에 대한 설명이다.
도 9 는 본 발명에 따른 오디오 트랙의 재생에 대한 순서도 개관이다.
도 10 은 도 9 의 단계에서 도 4 에 도시된 MKB 이미지 처리에 대한 순서도이다.
암호화된 컨텐츠는 접근하기가 곤란하며, 암호화된 컨텐츠를 가진 메모리 카드 또는 콤팩트 디스크는 암호화된 컨텐츠와 암호화되지 않은 컨텐츠에 접근하기 위한 특정의 명령과 루틴을 필요로 하는 특정의 구조를 각각 가진다. 본 발명의 소프트웨어는 그 어떤 최초의 장비 제조자(original equipment manufacturer; OEM)도 무수한 상이한 유형의 마이크로프로세서를 가진 무수한 상이한 유형의 장치에 설치할 수 있고 그리고 가동할 수 있는 간단한 솔루션(solution)이다. 이러한 장치들은 개인용 컴퓨터로부터 카 스테레오를 위한 휴대용 장치까지 걸쳐 있으며, 암호화될 수 있는 컨텐츠에 접근하고 싶어하는 그 어떤 장치라도 구비한다. 휴대용 장치는 휴대용 오디오 플레이어 또는 휴대 전화 또는 휴대용 오르가나이저(organizer) 또는 전체적으로 그 어떤 마이크로프로세서로 제어되는 휴대용 장치일 수 있다. 저장 매체는 플래쉬 메모리 또는 그 어떤 유형의 기록 가능한 디스크일 수 있다. 장치들은 소용량 또는 대용량의 메모리를 가진 단순하거나 또는 강력한 마이크로프로세서를 가질 수 있다. 소프트웨어는 암호화의 목적으로 단지 작은 버퍼를 이용하고 필요로 하며 제한된 처리용 전력과 메모리를 가진 환경에서조차 효과적으로 가동하도록 디자인된다. 이것은 그 어떤 유형의 일반적인 목적의 마이크로프로세서에 의해서 가동될 수 있거나, 또는 DSP 또는 ASIC 와 같은 특수한 목적의 마이크로프로세서에 의해서 가동될 수 있다. 더욱이, 암호화 및, 암호 해제(보안) 엔진과 같이, 소프트웨어의 컴퓨터적으로 요구되는 부분들은 DSP 에 의해서 수행될 수 있는 반면에, 소프트웨어의 다른 부분들은 마이크로프로세서 또는 ASIC 에 의해서 수행될 수 있다.
소프트웨어는 오디오, 비디오 및, 이메이지 인터페이스를 가져서 개별 유형의 파일들 각각의 명령을 수신한다. 이러한 인터페이스들은 재생 목록과 다른 편리한 특징을 처리하는 것을 포함하는 재생 및, 기록을 조직화(organize) 할 수 있다. 따라서, 장치가 무엇이건 간에, 단지 명령을 인터페이스에 발행할 필요만이 있으며 소프트웨어는 보안 매체로부터의 데이타를 읽거나 쓰고, 오디오 비디오 또는 이미지 엔진내에 있는 그 어떤 공지의 오디오, 비디오 또는 이미지 파일 포맷으로부터의 데이타를 디코딩하고 압축 해제(decompressing)시키는 것을 처리할 것이다.
암호화와 암호 해제는 고립된 모듈내에서 발생하여 접근하기가 매우 어렵고 따라서 매체 또는 장치로부터 파일을 복사하기 위하여 암호화 키이에 접근하기를 희망하는 인가되지 않은 사람으로부터의 그 어떤 시도에 대해서도 고립된다. 컨텐츠는 작은 부분에서만 암호 해제되며, 다이내믹(dynamic) 키이 발생과 삭제의 방법은 암호 해제 키이의 노출을 최소화시킨다.
암호화된 컨텐츠는 접근이 곤란하며, 암호화된 컨텐츠를 가진 메모리 카드 또는 콤팩트 디스크는 각각 암호화되고 암호 해제된 컨텐츠에 접근하는데 특정의 명령과 루틴(routine)을 필요로 하는 특정의 구조를 가진다. 본 발명의 소프트웨어는 단순한 솔루션이어서 그 어떤 최초의 장치 제조자(OEM)들이라도 상이한 유형의 마이크로프로세서를 가진 무수한 상이한 유형의 장치에서 설치하고 가동시킬 수 있는 것이다. 이러한 장치들은 개인용 컴퓨터에서 카 스테레오용 휴대 장치에 이르는 범위를 가지며, 암호화될 수 있는 컨텐츠에 접근하고 싶어하는 그 어떤 장치라도 포함한다. 휴대용 장치들은 휴대용 오디오 재생기 또는 휴대 전화 또는 휴대 오르가나이저 또는 마이크로프로세서로 제어되는 그 어떤 일반적인 휴대용 장치일 수 있다. 저장 매체는 플래쉬 메모리 또는 그 어떤 유형의 기록 가능한 디스크일 수 있다. 장치들은 소용량 또는 대용량의 메모리를 가진 간단하거나 또는 강력한 마이크로프로세서를 가질 수 있다. 소프트웨어는 암호화의 목적을 위하여 단지 작은 버퍼를 이용하고 필요로 하며 제한된 처리용 전력과 메모리를 가진 환경에서조차 효과적으로 가동하도록 디자인된다. 이것은 그 어떤 유형의 일반적인 목적의 마이크로프로세서에 의해서 가동될 수 있거나, 또는 DSP 또는 ASIC 와 같은 특수한 목적의 마이크로프로세서에 의해서 가동될 수 있다. 더욱이, 암호화 및, 암호 해제(보안) 엔진과 같이, 소프트웨어의 컴퓨터적으로 요구되는 부분들은 DSP 에 의해서 수행될 수 있는 반면에, 소프트웨어의 다른 부분들은 마이크로프로세서 또는 ASIC 에 의해서 수행될 수 있다. 상기 참고 자료에서 밝혀진 소스 코드는 본 출원의 일부를 형성하며, 본원에 참고로서 포함된다.
도 1 을 참조하면, 컨텐츠의 보호가 음악과 같은 오디오 컨텐츠에 적용되는 예시적인 시스템이 설명되어 있다. 호스트 컴퓨터 장치(11)는 도시된 바와 같이 개인용 컴퓨터(PC)일 수 있으며, 음악 또는 다른 컨텐츠를 배포하도록 소매 상점에 위치한 매점에 있는 것일 수 있다. 이러한 예에서 SD 메모리 카드(13)가 음악을 저장하도록 사용된다. 카드(13)는 응용 장치안에 삽입될 수 있으며, 본 경우에서는카드(13)상에 기록된 음악 또는 다른 오디오 컨텐츠를 개인용 이어폰을 통하여 재생하도록 배터리로 작동되는 휴대용 장치(PD)(15)이다. 컴퓨터 유니버설 시리얼 버스(USB) 접속(17)을 통하는 것과 같이 장치(17)를 호스트(11)에 접속시킴으로써 장치(15)내에 삽입되었을때 음악은 카드(13)상에 저장될 수 있다. 이와는 달리, 재생 장치(15)에 컨텐츠를 카드(13)로 기록하는 성능이 제공되어 있지 않거나, 또는 이와는 다르게 필요로 한다면, 카드 라이터(writer)/리이더(reader)(19)는 USB 연결(21)을 통해서 컴퓨터에 연결될 수 있으며, 카드(13)는 음악을 카드상에 기록하도록 그 안에 삽입된다. 카드(13)는 다음에 라이터/리이더(19)로부터 제거되어서 휴대용 장치(15)로 삽입되어 카드상에 기록된 오디오 컨텐츠를 재생한다. 호스트(11)는 그것이 4C 엔터티(entity) 및, SD 그룹의 보안 및, 인증 프로토콜에 따라서 카드(13)의 컨텐츠 데이타로부터 쓰고 읽는데 필요한 소프트웨어를 구비할때 인가된 순응 모듈(licensed compliant module; LCM)으로 지칭된다.
예로 든 휴대용 응용 장치(15)에 있는 전자 시스템은 도 2 에 도시되어 있다. 버스(23)를 통해서 함께 작동 가능하게 연결된 것은 컴퓨팅 유니트(MCU)(25)이고, 바람직스럽게는 일부 비 휘발성 플래쉬 메모리(25A), 시스템 메모리(27)를 가지며, 이것은 고속의 랜돔 액세스 메모리(RAM)인 것이 바람직스러우며, 메모리 카드(13)와 연결된 인터페이스 회로(29)를 가진다. USB 접속(17)은 또한 선택적으로는 MCU(25)에 제공된다. 필요하다면 오디오 또는 비디오 데이타와 같은 컨텐츠 데이타를 압축 해제시키고 그리고/또는 암호 해제시키도록 디지탈 신호 프로세서(DSP)(31)가 또한 포함되는데, 이것은 압축되고 그리고/또는 암호화된 형태로 저장된다. DSP(31)는 또한 프로세서의 일부로서 포함된 그 자체의 RAM 메모리(31)를 가진다. DSP(31)는 포함되거나 또는 포함되지 않을 수 있다. 더욱이, DSP 프로세서가 포함되지 않는다면, MCU(25)의 기능성을 수행할 수 있으며, 따라서 MCU(25)는 제거될 수 있다. 리이드 온리 메모리(ROM)(32)는 본 발명의 소프트웨어의 일부 또는 전부를 저장할 수 있다. ROM(32)내의 소프트웨어 명령과 데이타는 ROM(32)으로부터 직접적으로 수행되거나 또는 읽혀질 수 있거나 또는 처음에 장치의 회로내에 포함된 RAM 메모리 안으로 들어갈 수 있다.
기록 가능한 매체상의 컨텐츠 보호에 대한 상세는 인텔 코포레이션, 인터네셔널 비지니스 머신 코포레이션, 마쓰시다 일렉트릭 인더스트리 및, 도시바 코포레이션(4C 엔터티)에 의해 함께 설립되었다. 4C 엔터티의 다음 3 가지 간행물이 특히 여기에 관련되어 있는데, 이것들은 본원에 참조로서 포함된다: "기록 가능한 매체 상세에 대한 컨텐츠 보호, 개론 및, 공통적인 암호 요소", 개정판 0.94, 2000년 10 월, "기록 가능한 매체 상세에 대한 컨텐츠 보호, SD 메모리 카드 북" 개정판 0.95, 2001 년 5 월 및, "C2 블록 시퍼 상세(block Cipher Specification), 개정판 0.9 2000 년 1 월 및, "기록가능한 매체 상세에 대한 컨텐츠 보호, DVD 북" 개정판 0.95, 2001년 5 월. SD 메모리 카드에 대한 이들 4C 엔터티 상세를 수행하기 위한 다른 자세한 상세들은 마스시타 일렉트릭 인더스트리(MEI), 샌디스크 코포레이션 및, 도시바 코포레이션(SD 그룹)에 의해서 설정되었다.
도 3a 를 참조하면, 메모리 카드(13)는 4 개의 별개층을 가지는 것으로 생각될 수 있다. 그러한 층들은 또한 보안 매체의 다른 유형으로 존재할 수도 있다.
가장 기초적인 레벨에 있어서, 데이타는 메모리 카드(13)의 물리적인 층(13d)에서 클러스터(cluster)에 배치된 메모리 셀에 저장된다. 저작권이 있는 데이타이거나 또는 암호화의 가치가 있는 것이라면 데이타는 암호화되거나 또는 보안이 이루어진다. 보안 컨텐츠를 암호화시키고 암호 해제시키도록 사용된 키이는 또한 암호화되어서 물리적인 층의 보안 부위안에 저장된다.
본 발명의 소프트웨어는 장치내에서 작동되어, 제조자(OEM)가 암호화된 데이타 및, 키이를 포함하는 메모리 셀에 접근하기 위한 매우 특정한 명령을 프로그램할 필요 없이, 장치가 암호화된 정보를 저장하고 검색할 수 있게 한다. 이것은 암호화된 데이타를 장치로 전송하고, 장치내의 데이타를 암호 해제시키고, 장치로부터의 요청시에 오디오, 비디오 및, 이메이지 파일을 압축 해제하고 재생하는 방법을 포함한다. 즉, 장치는 "재생 트랙"과 같은 명령을 송신할 필요만이 있다. 소프트웨어는 명령을 받아들이고, 메모리 셀내에 저장된 암호화된 데이타를 검색하고, 암호화된 키이를 검색하고, 데이타를 조직하고 암호 해제시키며, 그것을 압축해제하고 포맷시켜서, 노래를 재생할 것이다.
논리층(13c)은 물리층(13d)의 클러스터와 메모리 셀에 대한 조직 구조를 구비한다. 2 개의 층(13c, 13d)은 카드(13)의 메모리를 구비하고 논리적으로 구성한다. 카드(13)가 보안 카드이므로, 안전 층(13b)은 아래의 층에 하우징된 보안 데이타에 대한 접근을 제어하고 제한한다.
응용층(13a)은 카드안에 저장된 컨텐츠에 접근하는 장치와 통신하는 메모리 카드(13)의 일부이다. 이것은 장치의 인터페이스 또는 접촉점(39)을 통하여 그것을수행한다. 메모리 카드(13)는 바람직스럽게는 카드의 모든 층들(13a-d)의 제어와 함께 응용층(13)의 기능성 및, 카드의 작동을 처리하는 콘트롤러를 구비한다.
전술한 상세에 따르고 도 3a 의 층(13c, 13d)에 해당하는, SD 카드(13)와 같은 기록 매체의 물리 및, 논리 구조는 도 3b 에 도시되어 있다. 카드는 메모리 셀(33)의 어레이(array)배열 및, 메모리 콘트롤러(35)를 구비한다. 사용자 데이타, 명령 및, 상태 신호들은 콘트롤러(35)와 메모리 어레이(33) 사이에서 회로(37)에 걸쳐서 통신된다. 콘트롤러(35)는 소켓에 연결된 호스트 장치와 통신되는데, 여기에서 카드는 카드상의 일련의 전기 접촉부(39)를 통해서 삽입된다.
어레이(33)의 메모리 셀은 셀들의 중첩되지 않은 4 개의 부위로 분할되는데, 이들은 개별적으로 상이한 유형의 데이타를 저장하도록 지정된다. 본 경우에 있어서, 가장 큰 저장 용량 부위(41)는 사용자 데이타, 암호화된 오디오, 비디오 또는 다른 데이타를 저장하도록 지정된다. 사용자 데이타는 암호화되지 않은 데이타를 포함할 수 있거나 그렇지 않을 수도 있다. 메모리의 시스템 부위(43)는 카드 제조자의 64 비트 매체 식별부(IDmedia) 및, 4C 엔터티에 의해 제공되는 16 매체 키이 블록(MKB)를 저장하는데, 각각의 MKB 는 4k 바이트의 최대 크기를 가지며, 모든 것은 카드 제조자에 의해서 사전 기록된다. 16 MKB 들중 하나는 오디오 사용자 데이타와 함게 사용되도록 지정되며, 다른 것은 비디오 사용자 데이타용으로, 그리고 다른 것은 이미지 데이타용으로 지정된다. 시스템 부위(43)는 카드의 외측으로부터 읽혀지도록 접근될 수 있는 쓰기 보호된 부위이다. 은폐 부위(45)는 시스템 부위(43)내에 저장된 16 개의 개별 매체 키이 블록(MKB)에 해당하는 16 개의 사전기록된 매체 유일의 키이(media unique key; Kmu)를 유지한다. 은폐 부위(45)는 쓰기 보호된 부위여서 메모리 카드 자체에 의해서만 접근될 수 있다. 보호 부위(47)는 성공적으로 명백한 상호 인가가 발생된 이후에만 접근될 수 있는 읽기/쓰기 부위이다. 임의 선택 타이틀 키이(randomly picked title key; Kt)와 복사 제어 정보(CCI)는 암호화된 형태로 보호 부위(47)내에 저장된다. 사용자 데이타 부위(41)내에 저장된 컨텐츠의 각 일부(파일)는 보호 부위(47)내에 암호화된 형태로 저장된 유일의 타이틀 키이로 암호화된다. 보호된 부위(47)내에 저장된 타이틀 키이와 CCI 는 매체 유일의 키이에 의해서 함께 연관되어 암호화되는데, 이것은 각 메모리 카드에 대해서 유일하며 그것의 은폐 부위(45)내에 저장된다.
사용자 데이타 부위(41)의 파일 시스템은 통상적으로 보통의 FAT 파일 시스템이다. FAT 시스템은 어떤 메모리 클러스터가 어떤 트랙과 트랙의 다양한 서브 구성부를 구성하는지를 설명한다. 사용자 데이타 부위(41)내의 오디오 또는 비디오 트랙은 도 3C 에 도시된 바와 같은 다중의 파일을 구비할 수 있다. 오디오 파일은 오디오 객체들(audio objects; AOB's)로 지칭되며 화상 파일들은 화상 객체(POB's)로 지칭된다. 트랙은 양쪽 모두를 구비할 수 있다. 트랙(300)은 예를 들면 AOB(304)와 AOB(308)로 구성되고, 트랙(302)은 AOB(306)으로 구성되며 마지막 트랙 (xxx)은 AOB(xxx) 와 POB(xxx)로 구성된다. 각 AOB 또는 POB 는 서브 구성부로 나누어진다. AOB(304)는 AOB 블록(312)로 나누어지는 것으로 도시되어 있으며, 이들은 헤더(318)를 가진 AOB 요소(316)로 더 나누어진다. 각 요소는 메모리 카드(13)의 하나 또는 그 이상의 메모리 클러스터내에 저장될 수 있다. AOB 요소들은 최하위 구성부 레벨인, AOB 프레임(320)으로 나뉘어진다. 컨텐츠의 엔코딩과 압축에 따라서, 각 2 초들은 변화하는 수의 프레임을 구비할 수 있다. 시간 검출 표(time search table;TMSRT)는 프레임의 수와 데이타 크기에 대한 정보를 가지며 이것은 재생의 매 2 초" 에 해당한다. 이러한 정보는 오디오 또는 비디오 트랙과 구성부 AOB의 요소들 및, 프레임들이 빠른 전진과 되감기를 위해서 접근될때 사용된다. 또한, 도 9 및, 도 10 을 참조하여 이후에 설명되는 바와 같이, 비록 1 내지 10 초 미만의 컨텐츠로부터의 그 어떤 곳이 한번에 암호 해제될 수 있을지라도, 타이틀 키이(Kt)는 컨텐츠의 이러한 "매 2 초" 를 접근하는데 소요되는 시간에 대해서만 암호 해제 상태이다. 더욱 상세하게는, CPRM 상세, SD 메모리 카드 북을 참조할 것이며, 이들은 본원에 참고로서 포함된다.
카드 메모리의 시스템 부위(43)내에 저장된 바와 같은 매체 키이 블록(MKB)는 인접한 레코드의 시퀸스를 포함하는데, 그러한 하나의 레코드는 도 4 에 도시되어 있다. 전체 MKB 이미지(49)는 64 Kbyte 이다. 이것은 512 바이트의 128 개 덩어리로 나뉘어지며, 그것이 처음에 기록하는 것의 전부 또는 일부를 포함하며 도면에서 MKB 덩어리(50)로 표시된 덩어리(1)는 그것의 구성 부분을 나타내도록 확대되어 있다. 덩어리(50)는 또한 다중의 레코드를 포함할 수도 있다. 제 1 피일드(51)는 레코드 유형을 포함하고, 제 2 피일드(53)는 레코드의 전체 길이를 포함하며, 나머지 피일드(55)는 키이 자체를 포함한다. 레코드 유형 및, 길이 피일드(51,53)내의 데이터는 암호화되지 않는다. MKB 의 각 레코드는 전체 길이내의 다중의 4 바이트이다. 도 5 의 블록(57)에 의해서 도시된 바와 같이, MKB 키이 레코드는 휴대장치(PD), 인가된 순응 모듈(LCM) 또는 저장된 컨텐츠를 읽거나 또는 프로그래밍하도록 메모리 카드를 사용하는 다른 장치에 저장된 장치 키이에 의해서 암호 해제된다. 장치 키이(Kd1, Kd2, Kd3...)는 장치의 제조자에 의해서 도 2 의 휴대용 오디오 재생기의 MCU(25)내에 있는 비휘발성 플래쉬 메모리와 같은 응용 장치의 메모리 안으로 씌어진다. 장치 키이들은 4C 엔터티에 의해서 장치 제조자들에게 제공되며 신뢰성 있게 유지된다. 주어진 응용 장치내에 저장된 장치 키이들의 수는 장치의 유형에 달려있다.
도 5 의 처리를 수행하는 응용 장치(PD, LCM 또는 다른 장치)는 블록(57)의 암호화의 일부로서 매체 키이(Km)를 계산하는데, 이것은 도 9 및, 도 10 과 관련하여 더욱 상세하게 설명될 것이다. 삽입된 메모리 카드의 시스템 부위로부터 읽혀진 MKB 의 각 레코드(도 4)는 이러한 방식으로 항상 처리된다. MKB 의 처리가 완성된 이후에, 가장 최근에 계산된 Km 값은 블록(57)의 비밀 매체 키이 출력으로서 취해진다. 이러한 매체 키이(Km) 및, 매체 식별부(IDmedia)는 도 5 의 블록(59)에 의해서 표시된 바와 같이 C2 일방향 함수의 사용에 의해 조합되어, 매체 유일의 키이(Kmu)를 발생시킨다. 이러한 처리의 상세한 사항은 이전에 참고된 4C 엔터티의 간행물을 참고함으로써 얻을 수 있다.
도 6 은 도 3 의 메모리 공간 배당을 받은 메모리 카드(13)로 오디오 컨텐츠를 기록하거나 또는 그로부터 오디오 컨텐츠를 재생할 때 발생하는 모든 인증 및, 암호화 처리를 도시한다. 개인 컴퓨터 또는 다른 LCM (63)에서 발생하는 처리는 오디오 또는 다른 컨텐츠를 카드(13)상으로 레코딩하기 위해서 도시되어 있다. 마찬가지로, 휴대용 오디오 또는 다른 응용 장치(65)의 처리는 레코딩된 컨텐츠를 카드(13)로부터 읽는 것에 대해서 도시되어 있다. 양쪽에는 도 5를 참조하여 설명된 처리가 포함되어 있는데, 처리 블록(57,59)은 응용 장치(65)의 일부이며 그에 대응하는 처리 블록(57', 59')은 컨텐츠 레코딩 시스템(63)의 일부이다.
레코딩 컨텐츠의 일부로서, 임의로 할당된 키이(Kt)는 오디오의 하나의 파일(일부)를 암호화하도록 암호화 모듈(69)에 의해 사용되기 위한 라인(67)에서의 입력이거나 또는 라인(71)에서의 다른 컨텐츠 입력이다. 암호화된 파일은 다음에 메모리 카드(13)의 사용자 데이터 부위(41)내에 저장된다. 타이틀 키이가 레코딩된 컨텐츠를 암호화하는데 이용될 있기 위하여, 이전에 설명된 바와 같이, 타이틀 키이(Kt)의 암호화된 버전이 보호된 카드 메모리 부위(47)내에 저장된다. 타이틀 키이(Kt)의 암호화된 버전은 또한 시스템 메모리(27), MCU(25)의 RAM 메모리(25A) 또는 DSP(31)의 RAM 메모리(31A)들중 어느 것에 저장된다. 암호화된 타이틀 키이(Kt)를 장치의 메모리내에 저장하는 것은 보호된 카드 메모리 부위(47)에 접근할 필요성을 제거한다. 이것은 각각의 읽기를 위해서 보호된 부위(47)에 접근하는 것과 비교하여 상당한 시간 및, 처리 용량을 절감시키기 때문에 중요하다. 이것은 도 9를 참조하여 이후에 설명될 것이다. 타이틀 키이(Kt)와 복사 제어 정보(CCI)는 메모리 카드(61) 상의 LCM(63)과 모듈(81)내의 일련의 암호화 모듈(75,55 및, 79)에 의해서 암호화된다. 매체 유일의 키이(Kmu)는 모듈(77)에 의해서 사용된다. 인증 키이 교환(AKE) 모듈(83)은 모듈(59')에 의해서 계산되고 카드(61)의 은폐 부위(45)내에 저장된 매체 유일의 키이(Kmu)를 조합하여 각 모듈(79,81)에 의해 사용된 세션 키이(session key, Ks)를 발생시킨다. 응용 장치(65)가 기록된 암호화 컨텐츠를 암호 해제시키기 위하여, 동일한 참조 번호로 표시되지만 프라임(')이 부가되어 표시된 대응 모듈은 암호화 과정의 역을 수행하도록 사용된다.
도 7 은 메모리 카드의 보호된 부위(47)에 접근하기 위한 기술을 나타내는데, 카드와 일부 LCM 또는 응용 장치 사이에서 인증 및, 키이 교환(AKE) 시도 응답 프로토콜을 사용하는 것이다. 이러한 인증이 성공적일 때, 카드와 다른 모듈 또는 장치는 보안이 이루어진 공통의 세션 키이(Ks)를 공유한다. 전술한 과정과 프로토콜에 대한 상세한 설명은 이전에 알려진 4C 엔터티의 간행물을 참고하여 이루어질 수 있다.
도 8a 및, 도 8b 는 상기에 언급된 과정으로써 암호화된 정보에 접근하기 위하여 휴대용 장치 또는 LCM 에서 작동되도록 디자인된 소프트웨어 시스템의 구현예를 도시한다. SanDisk 소프트웨어(SW100)는 완전한 턴-키이(turn-key) 소프트웨어 솔루션이어서 OEM 음악 재생기와 레코더들이 보안이 이루어진 디지탈(SD) 메모리 카드를 포함하는 보안 매체를 용이하게 지원할 수 있게 한다. 휴대용 장치(15)내에 도시된 SW100 은 SD 카드(13)에 접근하기 위한 것이다. SW100 은 개인용 컴퓨터와 같은 그 어떤 인가를 받은 순응 모듈(licensed compliant module)내에 설치될 수도 있다. 도 8a 에 도시된 바와 같이, 그것의 가장 높은 레벨에 있어서, SW100 은 장치(15)로부터, 특히 장치(15)의 사용자 인터페이스로부터 호출을 수신하며, 암호화된 내용을 보안 디지털 카드(13)로부터 검색하여, 암호 해제된 컨텐츠를 장치로 반환시킨다. 따라서 많은 복잡한 과정을 수행하는데 단지 간단한 호출이 필요하다.카드(13)의 메모리 위치내에 저장된 암호화된 컨텐츠를 검색하는 복잡한 과정 및, 컨텐츠를 차후에 암호 해제시키고 포맷시키는 것은 SW100 에 의해서 취급된다.
SD 메모리 카드의 인증 부위에 대한 접근을 수행하는 것은 이전에 언급된 바와 같이 OEM 들이 4C 엔터티로부터 인가를 받아야만 하는 비밀 장치 키이를 사용할 것을 필요로 한다. 이러한 키이 값들을 보호하고 그들의 노출을 SDK SW 100 소프트웨어 층내에 제한하는 것은 소프트웨어 디자인에 있어서 중심적인 고려들중 하나이다. 이러한 키이들(그리고 세션 키이와 같은 다른 결과적인 값)을 단일의 내부 모듈에 고립시키면서 SD 메모리 카드 장치 드라이버와 같은 보안 매체가 상기 값들에 의존하는 작동을 수행하는 것은 강력하고 보안이 이루어진 방법론에서 달성된다. 일단 다시, SD 메모리 카드는 본 발명을 나타내도록 사용되며, 그러나 본 발명은 CD, 또는 카드나 원격 위치된 저장 장치내에 있을 수 있는 다른 보안이 이루어진 메모리에서 사용될 수 있다.
도 8b 는 SW100 의 층이 이루어진 구조체를 보다 상세하게 도시한다. 오디오 인터페이스(105), 비디오 인터페이스(110) 및, 이메이징 인터페이스(115)가 장치로의 통신의 지점들이다. 이러한 인터페이스들은 장치를 위한 통신의 단일 지점을 제공하며 일반적으로 장치로부터 단순한 명령을 수신함으로써, 장치가 보안 매체로부터 암호화된 데이터를 얻고, 데이터를 암호 해제시키고 그리고 처리하는 복잡성과 연관될 필요가 없게 한다. 모든 이러한 복잡한 과정은 SW100 에 의해서 취급된다. 인터페이스(105, 110, 115)들도, 예술가의 이미지 같은 이미지를 예술가의 노래 또는 재생 목록에 연관시키는 것과, 관리 재생 목록 같은 재생의 배치를 관리한다.응용 프로그래밍 인터페이스(API)(130A)는 명령 디스패처(command dispacher)(CD)(130)내에 상주한다. CD(130)와 API(130a)는 인터페이스(105,110, 115)로부터 명령을 수신하여, 정보를 인터페이스로 중계하며, 모든 과정들을 조직화하는데, 상기 과정들은 SW100에서 발생한다- 장치(15)의 과정은 필요한 모든 암호화, 암호 해제 및, 압축 알고리듬과 함께, 보안 매체상에 저장된 컨텐츠의 레코딩과 재생에 관련된다.
SD 오디오 엔진(SDAE)(140), SD 비디오 엔진(SDVE)(150), 및, SD 이메이지 엔진(SDIE)(160)은, CD(130)로부터의 명령을 수신시에, 보안 매체상에 상주하는 오디오, 비디오, 이미지 컨텐츠를 각각 처리한다. 이것은 SDAE(140)가 AAC, WMA 및, MP3 와 같은 오디오를 위한 공지의 그 어떤 포맷이라도 처리할 수 있다는 점을 의미한다. 마찬가지로, 이것은 SDVE(150)가 윈도우즈 미디어 파일과 같은 비디오 클립 또는 리얼 네트워크 파일 MPEG 과 같은 공지의 그 어떤 포맷이나 비디오 파일의 그 어떤 공지의 유형도 처리할 수 있다는 것을 의미한다. 마지막으로 SDIE(160)는 TIF, GIF, JPEG, 비트맵등과 같은 공지 유형의 그 어떤 이메이지 파일도 처리할 수 있다. 각 인터페이스는 보안이 이루어진 API(SAPI)와 보안이 이루어지지 않은 API(NSPI)를 가진다. 처리된 컨텐츠는 암호화될 수 있거나 또는 암호화되지 않을 수 있다. 암호화된 컨텐츠는 SAPI (140A, 150A, 160A)를 통해서 접근된다. 이러한 SAPI 는 SanDisk 보안 매니저(SSM)(180)과 통신한다. 보안 컨텐츠와 관련된 모든 명령은 SSM(180)을 통해서 전달된다. 이후에 보다 상세하게 설명되는 보안이 이루어진 디지털 보안 엔진(SDSE)(175)은 모든 암호화 및, 암호 해제 과정을 취급한다.매체를 인증하고 컨텐츠를 암호 해제시키는데 사용된 키이들은 SDSE (175)내에 포함되어 그에 의해서만 전적으로 처리된다. 카드상에 상주하는 암호화되지 않은 컨텐츠는 NSAPI (140B, 150B, 160B)를 통해서 접근된다. 이러한 NSAPI들은 매체상의 암호화되지 않은 컨텐츠에 접근하기 위하여 비 보안 파일 인터페이스(NSFI)(170)과 통신한다.
저장 매체내의 데이터를 읽고 쓰기 위하여, NSFI(170)와 SDSE(175)는 장치 구동부(190)와 통신한다. SD 카드의 예에 있는 장치 구동부(190)는 SD 카드(13)의 장치 인터페이스(39)의 접촉부로의, 그리고 그로부터의 신호를 관리하고 구동시킨다. 장치 구동부(190)는 다양한 장치 또는 매체의 장치 인터페이스에 대한 특정 유형에 주문 제작될 것이다. 메모리 카드 장치의 경우에, 구동부(190)는 장치(15)상에 위치된 접촉부로의 그리고 그로부터의 신호를 관리하고 구동한다. 광 매체의 경우에, 장치 구동부(190)는 광 픽업 유니트(optical pick-up unit)를 포함하는 다양한 하드웨어 구성부로의 그리고 그로부터의 신호를 관리하고 구동한다. 이와는 달리, 하드 디스크 드라이드(hdd)의 경우에, 장치 구동부(190)는 요구되는 hdd 신호를 관리하고 구동할 것이다. 장치 구동부(19)는 보안 장치 구동부 인터페이스(SDDI)(190a)와 비 보아 장치 구동부 인터페이스(NSDDI)(190B)를 포함한다. SDDI(190A)와 NSDDI(190B)는 장치 구동부(190)내에서 서로로부터 고립된다. SDDI(190A)는 SDSE(175)와 전용으로 통신하는 반면에, NSDDI(190B)는 NSFI(170)와 전용으로 통신한다.
장치 키이들과 SD 오디오 보안 계획에 중심적인 다른 값들은 하나의 제한된보안 소프트웨어 모듈인, SD 보안 엔진(SDSE)(175)내에 하우징된다. 이러한 값들의 모든 조작은 이러한 모듈에 단독으로 제한된다. 값들은 SDSE(175) 위의 소프트웨어 층 안으로 또는 밖으로 결코 통과되지 않는다. 이러한 키이들을 포함하는 보안 서비스에 대한 모든 요청은 이러한 보안 모듈을 보호하는 SSM(180)에 의해서 제어되고 모니터된다. 보안 모듈의 아래에, SD 메모리 카드 장치 구동부(190)는 보안 접근을 수행한다. 이러한 구동부 서비스에 대한 요청은 비밀의(private) 구동부 보안 인터페이스인, 보안 장치 구동부 인터페이스(SDDI)(190a)를 통해서 이루어지는데, 이것은 보안 모듈에만 알려진다. SDSE(175)는 이러한 인터페이스(190a)를 사용하여 Get Media Key Block(MKB)와 같은 특수한 보안 명령을 수행한다. 비 보안 장치 구동부 인터페이스(NSDDI)(190B)도 장치 구동부(190)를 사용하여 카드(13)의 사용자 부위(41)내에 있는 그 어떤 암호화되지 않은 파일에 접근한다.
SW100 의 보안의 구성은 그것의 키이의 보안내에 거주한다. 비밀의 "소프트 키이(soft key)"는 일시적인 보안 부위에 장기간 저장되지 않는데, 이것이 키이를 손상시킬 가능성을 증가시키고 따라서 암호화된 컨텐츠의 손상 가능성을 증가시키기 때문이다. SW100 은 필요한 키이(또는 "소프트 키이")를 동적으로 발생시키고 그러한 특정 키이들에 대한 즉각적인 필요성이 없을 때 그들을 삭제하는 SDSE(175)내의 계획을 이용한다.
SW100 의 작용이 이제 보다 상세하게 설명될 것이다. SW100, 특히 명령 디스패처(130/API130A)는 특정의 기능을 수행하도록 요청 받을 수 있는 다수의 API 루틴을 가진다. 비록 많은 루틴(routine)이 있을지라도, 단지 22 개의 루틴만이장치(15)에 의해서 외부에서 접근된다. 이러한 루틴은 호출에 의해서 접근되는데, 이들은 명령으로서 지칭된다. 메모리 카드(또는 다른 매체(13))내의 컨텐츠를 검색하기 위하여, 장치는 22 개의 호출들중 단지 하나를 보낼 필요가 있으며 컨텐츠는 검색되어, 암호 해제되며, 필요하다면 디코딩(decoding) 된다. 예를 들면 오디오의 경우에, 장치는 단지 "재생" 호출을 보낼 필요가 있으며, 음악이 시작될 것이다.
다음에 나열된 API 들은 적용예들이 보안 디지털(SD) 표준에 순응하는 장치에 인터페이스될 수 있게 한다. 비록 본 발명의 수행이 SD 표준으로써 예시되었을지라도, 본 발명은 많은 상이한 표준과 함께 사용될 수 있다.
루틴/호출 | |
호출 기능/API 루틴 | 호출 명칭/API 루틴(첨부된 소스 코드에서 도시된 바와 같음) |
1. 오디오 시스템을 초기화하라 | SdInitAudioSystem |
2. 매체를 장착하라(필요하다면) | SdMountAudio |
3.오디오를 탈착하라(필요하다면) | SdUnMountAudio |
4. 이용 가능한 자유 공간을 점검 | SdDriveFreeSpace |
5. 매체를 추출하라 | SdEjectCard |
6. 재생목록의 수를 가져오라 | SdGetPlayListCount |
7. 재생 목록을 가져오라 | SdGetPlayLists |
8. 트랙 타이틀(x)를 가져오라 | SdGetTrackTitle |
9. 트랙 정보를 가져오라 | SdGetTrackInfo |
10.트랙을 열라 | SdOpenTrack |
11.트랙을 재생하라 | SdPlayTrack |
12.다음 트랙으로 이동하라 | SdNextTrack |
13. 재생을 정지하라 | SdStopPlay |
14. 재생을 일시 정지하라 | SdPauseTRack |
15. 재생을 재개하라 | SdResumeTrack |
16. 재생 목록을 재설정하라 | SdResetPlayList |
17. 재생을 급속 전진/되감기하라(+/-) | SdForward |
18. 트랙 인덱스를 재생 목록으로 부가하라 | SdAddTKItoPLM |
19. 트랙 인덱스를 재생 목록으로부터 삭제하라 | SdDelTKItoPLM |
20.트랙 인덱스를 트랙 관리자로부터 삭제하라 | SdDelTKItoTMG |
21. MP3를 내부 재생 포맷으로 변환하라 | SdConvertAACToSA1 |
22.AAC를 내부 재생 포맷으로 변환하라 | SdConvertAACToSA1 |
장치(15)에 의해서 호출될 수 있는 본원적인 API 루틴(principle API routine)은 이제 상세하게 설명될 것이다. 도 8a 내지 도 8E를 참고하기로 한다.
도 8c에서 볼 수 있는 바와 같이, 사전 재생 과정(805)와 재생 과정(810)이 있다. 도 8E 의 블록은도 8C 의 과정 동안에 만들어진다. 관련된 API 모듈은 장치(15)의 사용자 인터페이스에 의해서 호출되었을 때 수행되다. 오디오 재생의 경우에, 모듈에 대한 호출은 도 8B 에 도시된 바와 같이 장치(15)의 사용자 인터페이스에 의해서 오디오 인터페이스(105)로 보내진다. 플로우 차트에 나열된 기능을 수행하는 주요 호출/모듈은 우측에 표시되어 있다. 이러한 모듈의 많은 것들은 내부적으로 그리고 외부적으로 접근된 다른 모듈을 수행하며, 목록들은 전부가 나열된 것을 의미하는 것은 아니며, 이전에 참고로서 포함되고 본 출원의 일부를 형성하였던 콤팩트 디스크상의 소프트웨어 코드를 참조할 것을 의미하는 것이다. 보다 상세한 것에 대해서는 소프트웨어 코드를 참조하면 된다.
장치는 처음에 단계(803)에서 동력이 제공되어서, 그 후에 사전 재생 과정(805)이 시작된다. 사전 재생 과정은 2 개의 주요 국면을 가진다. 동력 초기화 국면(805.10)과 오디오 컨텐츠 초기화 국면(805.20)이다. 오디오 컨텐츠 초기화 국면은 도 8D를 참조하여 보다 상세하게 설명될 것이다.
일반적으로 이야기하면, 사전 재생 과정(805)에서, 장치와 매체는 초기화되며 매체로부터의 특정의 정보는 매체로부터 읽혀져서 장치(15)의 RAM 메모리의 버퍼에 저장된다. 도 2에서 이미 도시된 바와 같이, 이러한 RAM 메모리는 시스템 메모리(27), DSP(31)의 RAM 메모리(31A), 또는 MCU(25)의 RAM 메모리(25A)이다. 단계(805A)에서 SW100 은 매체의 드라이브 번호를 가져온다. 일부 적용예에 있어서는 장치(15)에 의해서 접근되는 하나 이상의 메모리 카드 또는 디스크가 있을 수 있다. 이러한 단계에서 각 드라이브상의 컨텐츠에 적절하게 접근될 수 있기 위하여 모든 드라이브 번호를 가져올 것이다. 이것은 API 루틴의 SdInitAudioSystem 으로써 성취되며, 장치(15)에 의해서 호출될 수 있거나 또는 사전 재생 루틴의 일부로서 SW100 에 의해서 내부적으로 호출될 수 있다. SW100 은 다음에 SW100 내의 SSM180 과 SDSE175를 초기화할 것이다. 이것은 매체로부터의 그 어떤 암호화된 키이와 컨텐츠가 처리될 수 있기 전에 필요하다. SW 100 은 또한 카드(13)내의 트랙 관리자와 재생 목록을 초기화할 것이다.
단계(805B)에서, SW100 은 매체를 초기화할 것이고 검증할 것이다. 여기에 예시된 SD 카드의 경우에, 도 5 내지 도 7 의 MKB 과정이 수행될 것이다. 이러한 MKB 과정은 단계(805A) 동안에 수행될 수 있으며, 사전에 수행되었다면 이것은 단계(805B)에서 다시 수행되지 않을 것이다. 이러한 과정에 대한 보다 상세한 사항은 도 5 내지 도 7 과 이전에 여기에 포함된 4C 의 서류를 참고하기로 한다. 이러한 과정은 또한 도 10을 참조하여 보다 상세하게 설명되어 있다. 단계(805B)에 있어서, 매체 정보의 값은 카드(13)로부터 복사되어 도 8E 의 매체 정보 블록(850)의 위치에서 장치(13)의 RAM 메모리내에 저장된다. 이것은 API 루틴의 SdMountAudio 로써 수행되며, 장치(15)에 의해서 호출될 수 있거나 또는 사전 재생 루틴의 일부로서 SW 100 에 의해서 내부적으로 호출될 수 있다. 따라서 재생 목록 일반 정보의값(pTgInfo), 매체의 타당성 번호(SanDisk), 드라이브 번호(drivenum), 매체의 보안 시스템(security) 및, 매체의 장착 상태(mounted)는 그것의 개별 위치들에 채워질 것이다. 이러한 위치들은 카드(13)로부터 읽혀져야할 필요 없이 API 호출의 그 어떤 수에 의해서 호출될 때 장치(15)의 RAM 으로부터 차후에 읽혀질 수 있다.
동력 초기화(805,10)이 완료된 이후에, 오디오 컨텐츠 초기화(805,20)이 시작된다. 일반적으로 이야기해서, 오디오 컨텐츠 초기화(805,20) 동안에, 개별 트랙과 다중 오디오 트랙의 암호화된 오디오 컨텐츠의 순서화와 위치를 지정하는 정보는 카드(또는 다른 매체)(13)로부터 장치(15)의 RAM 안에 있는 작은 버퍼 안으로 복사된다. 이러한 정보는, 도 8E 내의 블록에 도시된 바와 같이, 장치내에서 급속하게 그리고 용이하게 접근될 수 있으며 차후의 재생 과정(810) 동안에 항상 읽혀지거나 또는 업데이트될 필요는 없다.
도 8D를 참조하면, 오디오 컨텐츠 초기화 국면(805.20)이 보다 상세하게 설명될 것이다. 이러한 국면은 메모리 카드(또는 다른 매체)(13)상의 암호화된 컨텐츠에 대한 국부적인 로드맵(roadmap)이나 또는 디렉토리(directory)로서 작용하는 다수의 구조를 생성한다.
단계(805C) 에 있어서, 장치(15)는 API 모듈의 SdGetPlayListCount를 호출한다. 이러한 호출과, 모든 다음의 호출은 일반적으로 장치(15)의 사용자 인터페이스의 소프트웨어로부터 SW100 의 인터페이스 모듈들중 하나로 전송된다. 오디오 재생의 이러한 예시에 있어서, 호출은 사용자 인터페이스로부터 오디오 인터페이스(105)로 전송된다. 비디오 재생의 경우에, 호출은 비디오인터페이스(110)로 전송되며 이미지 재생의경우에, 호출은 이미지 인터페이스(115)로 전송될 것이다. 호출은 다음에 API(130A)내에 API 모듈을 구비하는 명령 디스패처(130)로 중계된다.
단계(805D)에 있어서, SdGetPlayListCount 는 카드(13)로부터의 정보를 장치(15)의 RAM 메모리 안으로 복사함으로써 재생 목록 정보 블록(860)에 대한 값을 채울 것이다. 이것은 매체 정보 블록(850)을 참조함으로써 적절한 인가 드라이브를 선택할 것이다. 모든 인가된 드라이브에 대한 재생 목록의 전체 숫자는 장치(15)의 RAM 안으로 복사될 것이다.
단계(805E)에서, 장치(15)는 API 모듈의 SdGetPlaylist 를 호출한다.
단계(805F)에서 SdGetPlaylist 는 카드(13)로부터의 정보를 장치(15)의 RAM 메모리 안으로 복사함으로써 재생 목록 정보 블록(860)에 대한 값을 채울 것이다. 이것은 적절한 인가된 드라이브를 선택할 것이며, 여기에서 재생 목록 정보는 매체 정보 블록(850)을 참조함으로써 상주한다. 밀리초(millisecond) 단위인 선택되거나 또는 디폴트(default)의 재생 목록의 전체 재생 시간(pListTime), 재생 목록내의 트랙의 수(tracksInPlist), 현재 재생 목록에 해당하는 인덱스 수(index), 재생 목록 명칭의 문자열 길이(Length) 및, 재생 목록의 명칭(pListName)은 재생 목록 정보 블록(860)의 개별 위치안에 채워질 것이다.
단계(805G)에서 장치(15)는 API 모듈의 SdGeTrackInfo 를 호출한다.
단계(805H)에 있어서, SdGetTrackInfo 는 카드(13)로부터의 정보를 장치(15)의 RAM 으로 복사함으로써 트랙 정보 블록(870)에 대한 값을 채울 것이다. 이것은적절한 인가된 드라이브를 선택할 것이며, 여기에서 재생 목록 정보는 매체 정보 블록(850)을 참조함으로써 상주하게 된다. 이것은 재생 목록 정보 블록(860)을 참조함으로써 각 재생 목록내의 트랙을 선택할 것이다. 트랙내의 관련된 트랙 유니트("TKI's")를 포함하는 밀리초 단위의 전체 트랙 시간(trackTime), 관련된 TKI's 를 포함하는 바이트 단위의 전체 트랙 크기(bytesize), 트랙내의 TKI's 의 수(tkisInTrack), 트랙 수(tracknum), 현재 트랙에 해당하는 인덱스(index), 그리고 매체로부터의 트랙 정보(trkInformation)가 그들의 개별 위치들 안으로 채워질 것이다.
단계(805I) 에서 장치(15)는 API 모듈의 SdOpenTrack 을 호출한다.
단계(805J)에서, SdOpenTrack 은 카드(13)로부터의 정보를 장치(15)의 RAM 안으로 복사함으로써 트랙 일반 정보 블록(880)에 대한 값의 일부를 채울 것이다. 이것은 매체 정보 블록(850)을 참조함으로써 적절한 드라이브를 선택할 것이며, 재생 목록 정보 블록(S60)과 트랙 정보 블록(870), 밀리초 단위의 전체 재생 시간(pListTime), 현재 재생 목록의 수(plistnum), 재생되어야 하는 트랙 번호(tracknum), 트랙에 대한 제 1 의 AOB(firstAOB) 및, 암호화되고 있곤 현재의 AOB(currentAOB)를 참조함으로써 트랙 및, 적절한 재생 목록내의 트랙을 선택할 것이다.
단계(805K)에 있어서 SdOpenTrack 은 카드(13)로부터의 정보를 장치(15)의 RAM 안으로 복사함으로써 트랙 인덱스 정보 블록(875)을 채운다. 이것은 인가된 드라이브를 선택하게 되는데, 여기에서 재생 목록 정보는 매체 정보 블록(850)과 재생 목록 정보 블록(860)을 참조함으로써 상주하며, 재생 목록 정보 블록(860)과 트랙 정보 블록(870)을 참조함으로써 적절한 재생 목록내에 적절한 트랙을 선택할 것이다.
트랙 정보 블록(870)이 만들어진 이후에, 단계(805L)에 있어서, SdOpenTrack 은 카드(13)로부터의 정보를 장치(15)의 RAM 에 복사함으로써 트랙 일반 정보 블록(880)의 나머지 값을 채울 것이다. 다음의 값들이 블록(880)의 그들 개별의 위치 안으로 채워질 것이다: 매체에 대한 검증(SanDisk), 작동 명령(CMD), MP3, AAC 또는 WMA 와 같은 오디오 포맷(audioformat), 코드 샘플림 주파수(samfreq), 예를 들면 음악, 도서 이미지 등과 같은 적용 속성(appAtrib), 바이트의 오디오 객체의 크기(sizeAOB), 트랙에 대한 마지막 AOB(lastAOB), 트랙에 대한 AOB 의 전체 수(countAOB), 헤더(header)로서 알려지기도 한 AOB 에서의 동기 위치의 현재 위치(syncword), AOB 내의 탐색 위치(seekposAOB), 밀리초 단위의 트랙의 경과 시간(trkElapsedTime), 밀리초 단위의 트랙의 전체 재생 시간(trkTotalTime), 관련된 TKI's 를 포함하는 바이트의 전체 트랙 크기(bytesize), 밀리초 단위의 각 요소의 재생시간(elementplaytime), 전진 탐색 시간(fwTime), 다음 트랙으로의 시간(fwNext), 재생 목록내의 트랙의 수(tracksInPlist), 현재 요소의 크기(elementplaytime), 현재 요소내의 오프셋(element offset), AOB 내의 현재 요소(currentelement), AOB 내의 요소들의 전체 수(totalelements) 및, AOB 의 파일 핸들(handle)(fdAOB) 들이다. 본 발명의 상이한 구현예에 있어서, 단계(805J)는 트랙 정보 블록(880)의 값을 완전하게 채울 것이며 단계(805K)는 제거될 것이다. 트랙 인덱스 정보 블록(875)은 트랙 일반 정보 블록(880)의 서브셋(subset)이며 공간과 처리 시간을 절감하도록 디자인된다. 이것은 단지 정보를 브라우징(browsing)하는 경우에 장치(15)의 사용자 인터페이스에 의해서 참조된다는 것을 의미한다. 일단 사용자 인터페이스가 재생을 위한 특정의 트랙을 선택하였다면, 트랙 일반 정보 블록(880)은, 블록(875)내에 포함된 정보의 서브셋을 포함하여 채워질 것이다.
SdOpenTrack 은 장치(15)에 의해 호출될 수 있거나 또는 SW100 에 의해서 사전 재생 루틴의 일부로서 내부적으로 호출될 수 있다.
장치의 메모리내에 블록의 정보와 블록을 포함시키는 것이 유리한데, 이는 만약 그 어떤 실패가 재생 과정에 있다면 매체를 재설정할 필요가 없기 때문이며, 즉, 동력 초기화(805.10)의 단계(805A) 또는 단계(805B)를 수행할 필요가 없기 때문이다. 또한, 정상적으로는 카드(13)로부터 재생에 필요한 정보를 읽을 필요가 없어야 한다. 블록(850, 860, 870, 875 및, 880)내의 정보는 다음의 프레임내에 포함된 컨텐츠에 대한 포인터(pointer)로서 사용되기 때문에 블록내의 정보는 다음의 컨텐츠(오디오, 비디오등)에 접근하는데 사용된다. 도 8E 는 오디오 또는 비디오 트랙을 구성하는 파일, 요소들 및, 프레임들의 메모리 카드(13)내 위치를 상세하게 나타내며 도 3C 를 참조하여 이전에 설명된 바와 같이 이들은 메모리 카드(13)내에 위치된다.
단계(805)의 사전 재생 과정은 다수의 호출(괄호안의 수는 테이블(I)에서의 호출을 표시한다)에 의해서 야기될 수 있다. 도 8C 에서 도시된 바와 같이, 오디오 컨텐츠 초기화(805.20)를 야기하게될 외부 호출은 다음과 같다:SdOpenTrack,SdGetPlaylistCount, SdGetPlaylist 및, SdGetTrackInfo 들이다. SdOpenTrack(10)은 내부적으로 SdNextTrack(12), SdStopPlay(13) 및, SdResetPlaylist(16)에 의해서 호출된다. API 모듈의 SdGetPlaylistCount, SdGetPlaylist, 및, SdGetTrackInfo 는 SdOpenTrack 에 의해서 내부적으로 호출될 수도 있다. 일반적으로, 장치(15)에 의해서 트랙 시간의 표시, 되감기, 급속 전진, 재생 목록 변경, 그래픽 사용자 인터페이스 디스플레이의 변경 또는 트랙의 삭제와 같은 장치 기능에 대하여 요청이 이루어진다. 일단 사전 재생 과정(805)이 완수되면, 재생 과정(810)은 시작될 수 있다.
재생 과정(810)에 있어서, 하나 또는 그 이상의 오디오 또는 비디오 트랙의 재생을 개시하고, 정지시키고 또는 일시 정지시키는 호출은 단계(810A)에서 도 8B 의 오디오 인터페이스(105), 비디오 인터페이스(110) 또는 이미지 인터페이스(115)에 의해서 수신된다. 이러한 호출은 도 8C 에서 재생 과정(810) 다음에서 볼 수 있으며 SdPlayTrack, SdNexTrack, SdStopPlay, SdPauseTrack, SdResumeTrack, SdResetPlayList, SdForward, SdAddTKItoPLM, SdDelTKItoPLM, SdDelTKItoTMG, SdConvertMP3ToSA1 및, SdConvertAACToSA1 이다.
내부적으로 나또는 장치에 의해서 요청되었을때 얼마나 많은 API 모듈이 수행되었는지에 무관하게, 2 개의 주된 모듈이 오디오 트랙을 재생시키기 위하여 항상 필요할 것이다. 이러한 모듈은 SdOpenTrack(10)과 SdPlayTrack(11) 이다. SdOpenTrack(10)과 SdPlayTrack(11)은 메모리 카드(13)의 클러스터의 메모리 위치내에 포함된 암호화된 컨텐츠에 접근하기 위하여 트랙 일반 정보 블록(88)내의 정보를 읽을 것이다.
SdOpenTrack(10)은 SdNextTrack(12), SdStopPlay(13) 및, SdResetPlaylist(16)에 의해 내부적으로 호출된다. 일반적으로, 이것은 트랙 시간의 표시, 되감기, 급속 전진, 재생 목록의 변경, 그래픽 사용자 인터페이스 디스플레이의 변경 또는 트객의 삭제와 같은 장치 기능에 대하여 장치(15)에 의해서 요청을 받을 것이다.
SdPlayTrack(11)은 음악 또는 비디오 트랙을 재생하는 코어(core) API 이다. 이것은 사용자가 현재의 트랙, 다음의 트랙을 재생하기를 원할때나, 또는 그가 트랙내에서 되감기 또는 급속 전진을 원할때 장치에 의해서 일반적으로 사용된다. 이것은 SdNextTrack(12), SdResumeTrack(15) 및, SdForward(17)와 같은 다른 API 에 의해서 요청된다. SdPlayTrack 은 선택된 트랙에 대한 AOB 를 찾아서, 오디오 포맷(MP3, AAC 또는 WMA 등)을 점검하고, 트랙을 디코딩한다.
도 8B, 9 및, 10 을 참조하여, 도 8c 의 단계(810B)에 도시된 암호화된 트랙의 재생이 설명될 것이다.
암호화된 컨텐츠가 요구된다면, OEM 의 4C-인가를 받은 장치 키이가 사용될 것을 요구하는 SW100 및, 장치(15)로부터/SW100 및, 장치(15)로 명령이 내려진다. 이러한 키이들의 모든 처리는 SSM(180) 아래에 하우징된 SDSE(175) 모듈로만 제한된다. 비 보안 또는 비 암호화 컨텐츠가 요청된다면, NSFI(170) 및, NSAPI's(140B, 150B, 160B)와 NSDD(190B)가 컨텐츠에 접근할 것이다.
SSM(180)이 보안 서비스에 대한 요청을 수신하였을때, 이것은 명령 요청 패킷(packet)을 SDSE(175)내의 처리_보안(process_security) 기능으로 통과시킴으로써 그것을 수행한다. 키이 값은 요청 패킷내에 결코 포함되지 않거나 또는 SDSE(175)의 위에 있는 소프트웨어 층에 노출되지 않는다.
SDSE(175)에 의해서 내부적으로 필요할때, 장치 키이들은 기능 호출을 통해서 OEM에 공급된 라이브러리(library)내로 검색된다. SDSE 의 라이브러리(175)인 security.lib 은, 암호해제된 키이가 시스템의 보안 부위내에 상주하는 시간을 감소시키도록 설계된, 다음의 API 들을 포함한다.
1) SEC_AKE API;
2) SEC_ENC_TKEY API;
3) SEC_DEC_TKEY API;
4) SEC_GETCCI API;
5) SEC_UPDATECCI API.
SW 100 의 기능성과 구조는 본 출원의 내용중에 설명되어 있으며 보다 상세하게는 상기의 API들(1-5)의 기능성이 도 9 의 플로우차트내에 도시되어 있다. API들은 그들이 수행하는 해당 기능들 다음에 도시되어 있다. 모든 SW100 뿐만 아니라 이들 API 들의 수행에 대한 보다 상세한 내용은 본 출원의 부속물로 제출된 소스 코드에서 볼 수 있다.
장치 키이는 일단 획득되면 SD 메모리 카드로부터의 매체 키이 블록(MKB)와 조합되어 "매체 키이(media key)"를 형성한다. 이러한 값은 차후의 요청을 처리하는데 사용되도록 SDSE(175)내에 유지된다. 그러나, "유일의 매체 키이(Kmu)는 결코SDSE(175)의 내측에 유지되지 않는다. 모든 보안 접근을 위한 기초를 형성하는 이러한 값은 실시간에 기초하여 (그리고 캐쉬(cache)되지 않으면서) 별도의 보안 예방 조치로서 항상 계산된다. SDSE(175)내의 키이 처리의 상세한 설명은 다음과 같다.
암호화 과정은 일반적인 용어에 있어서 보안 매체상에 위치된 컨텐츠의 인가되지 않은 복사를 중지시키도록 설계된 것이다. 본 발명에는 이것을 달성하기 위한 많은 특징들이 있다. 처음에, 예를 들면 노래와 같은 전체 파일은 즉시 암호 해제되지 않으며 그것이 손상되기 쉬운 메모리내로 저장된다. 휴대용 장치는 버퍼를 할당하며 SDSE(175)는 암호화된 컨텐츠의 덩어리를 한번에 읽고, 그것을 암호 해제시키며, 다음에 파일의 끝에 도달할때까지 계속해서 같은 버퍼에 쓴다.
도 6 및, 도 7 에 도시된 바와 같이, 매체 유일의 키이(Kmu)와 타이틀 키이(Kt)는 컨텐츠를 암호 해제하도록 마지막으로 사용된 키이들이다. 타이틀 키이를 보호하는 많은 방법이 있다. 키이를 장치(15)의 매우 보안이 이루어진 부위에 저장하면, 암호화된 버퍼가 읽혀지고 암호 해제될때마다 다른 것은 카드(13)의 보호된 부위(47)로부터 타이틀 키이를 읽게 된다.
도 9를 참조하면, 단계(205)에 있어서, 도 4 에 도시된 바와 같은, 64 킬로바이트인 MKB 이미지가 도 6 에 도시된 바와 같이 매체 키이(Km)를 처리하도록 읽혀져서, 매체 유일의 키이(Kmu)를 산출한다. 이러한 단계는 도 10 에 더 상세하게 설명되어 있으며 이것은 이후에 설명될 것이다. 장치 및, 매체의 상호 인증이 단계(205)에서 완료된 이후에, AKE 과정을 겪어서 세션 키이(Ks)를 산출하게 되는데, 상기 세션 키이는 단계(210)에서 (장치가 턴온(turn on)되거나 또는 활성 상태에 있는 한) 세션(session) 동안에 단지 사용될 수 있다. AKE 과정은 도 6을 다시 한번 참조함으로써 볼 수 있다. 단계 213 에 있어서, 매체 유일의 키이(Kmu)는 삭제된다. 단계(215)에 있어서, 세션 키이(Ks)는 메모리 카드(13)의 보호된 부위(47)에 저장된 이중으로 암호화된 타이틀 키이(E(E(Kt)))를 암호 해제시키는데 사용된다. 결과는 한번 암호화된 타이틀 키이(E(Kt)) 이다. 단계 220에서, 이러한 암호화된 타이틀 키이(E(Kt))는 장치(15)의 메모리내에 저장된다. E(Kt) 는 시스템 메모리(27), MCU(25)의 RAM 메모리(25A), 또는 DSP(31)의 RAM 메모리(31A)내에 저장될 수 있다. 타이틀 키이(Kt)는 각 타이틀에 대해서 특정적인 것으로서, 본 발명을 예시하도록 사용된 도 9 및, 오디오의 영역에서는 트랙으로서 지칭된다. 각 트랙은 다중의 파일들로 만들어질 수 있는데, 예를 들면, 긴 클래식 노래의 경우에 그러하다. 커다란 비디오 클립에 대해서는, 타이틀이 많은 파일을 포함할 수 있다. 따라서, 트랙의 암호화된 컨텐츠의 모든 차후의 읽기 및, 암호 해제에 대해서, 타이틀 키이는 그것이 지역 메모리내에 저장되기 때문에 메모리 카드로부터 검색될 필요가 없으며, 귀중한 시간 및, 컴퓨팅 자원이 절감될 수도 있고, 동시에, 타이틀 키이는 보안 목적을 위해서 암호화되어 유지된다.
단계(225)에 있어서, 트랙의 일부가 재생된다. 이러한 부분은 트랙을 포함하는 파일의 그 어떤 것일 수 있다. 단계(225a)에 있어서, 매체 유일의 키이(Kmu)가 다시 한번 계산된다. 단계(225b)에 있어서, 지역 메모리에 저장된 암호화된 타이틀 키이가 암호 해제된다. 다음에, 단계(225c)에 있어서, 타이틀 키이는 카드 메모리카드(13)의 사용자 부위(41)로부터의 컨텐츠를 포함하는 장치(15)의 버퍼로부터 컨텐츠를 암호 해제시키도록 사용된다. 버퍼가 암호 해제된 직후에, 타이틀 키이는 단계(225d)에서 삭제되며 매체 유일의 키이는 단계(225e)에서 삭제된다. 단계(225d)와 단계(225e)의 순서는 중요하지 않지만, 트랙의 일부를 읽는데 드는 시간동안에만 양쪽 키이들이 노출되는 것이 중요하다. 이러한 부분은 재생(암호 해제되고, 압축 해제되고, 그리고 디코딩된) 컨텐츠, 오디오 또는 다른 것의 1 초의 일부내지는 약 10 초에 이르기까지의 그 어느 곳일 수 있다. 바람직스럽게는 이것이 2 초이다. 그 부분을 읽는데 드는 시간은 처리 속도와 장치의 버퍼 크기를 포함하는 많은 인자에 달려있다. 이전에 설명된 바와 같이, SW 100 은 MCU(25) 또는 DSP(31)에 의해서 수행될 수 있고 장치(15)의 메모리(27, 25A, 31A 또는 32)들중 어느 것에 저장될 수 있으며, 따라서 처리 시간이 변화할 수 있다. 이것은 트랙의 모든 부분들이 단계(230)에서와 같이 읽혀질때까지 반복된다. 일단 모든 부분들이 읽혀졌다면, 만약 재생이 계속될 경우에 시스템은 단계(235)에서와 같이 다음의 트랙으로 이동할 수 있다. 이것은 예를 들어 사용자가 전체의 재생 목록을 재생하도록 선택하였다면 그렇게 될 수 있다는 것이다.
트랙의 모든 부분들이 읽혀져서 다음 트랙을 읽는 것이 시작될 때, 과정은 단계(215)에서 다시 시작될 것이며 카드(13)의 보호된 부위(47)로부터 다음의 이중으로 암호화된 타이틀 키이를 검색할 것이다. 이것은 다중의 트랙을 포함하고 있는 전체 재생 목록을 재생하도록 사용자가 장치를 작동 상태에 설정하였을 경우에 일반적인 경우이다. 세션이 폐쇄되면 (즉, 장치(15)가 턴온 되거나 턴오프(turn onor trun off)된다면), 새로운 세션 키이가 발생되어야 할 것이며 과정은 단계(210)에서 시작될 것이다. 메모리 카드가 제거되거나 또는 새롭게 삽입된다면, 장치와 매체는 다시 인증을 받아야 할 것이며 과정은 트랙을 읽기 위하여 단계(205)에서 다시 시작할 것이다.
도 10 은 위에서 설명된 도 9 의 단계(205)에서 매체 키이 블록을 처리하는 작동을 처리한다. 도 4에서 도시되었던 것과 같이, MKB 이미지(49)는 길이에 있어서 64 Kbyte 이다. MKB를 계산하도록 전체 이미지(49)를 즉시 읽는 것은 비효율적이며, 커다란 RAM 과 긴 처리 시간을 필요로 한다. 본 시스템은 RAM 요건을 감소시키고 처리 시간을 줄인다. MKB 이미지(49)는 덩어리(1) 내지 (128)로 분할된다. 각 덩어리는 512 바이트이며 MKB 의 레코드의 상이한 4 개 유형들중 하나를 포함할 수 있다: 0 ×81 로서 알려진 입증 매체 키이 레코드(the verify media key record, VMKR); 0×01 로서 알려진 계산 매체 키이 레코드(the calculate media key record, CMKR); 0×82 로서 알려진 조건부 계산 매체 키이 레코드(the conditionally calculate media key record, CCMKR); 또는 0×02 로서 알려진 종료 매체 키이 레코드(the end media key record, EMKR). 이러한 레코드들은 위에서 언급된 4C 엔터티의 기록 가능한 매체의 보호(CPRM) 명세에 설명되어 있다.
이러한 예에서, 덩어리의 길이와 버퍼의 길이는 같다. 그러나, 버퍼의 길이와 덩어리의 길이는 256 바이트 내지 4096 바이트이다. 각 레코드는 레코드 유형에 기초하여 특정의 작동을 수행하도록 검사되며 특정의 데이터는 매체 키이를 획득하도록 이후를 위해서 예비될 것이다. 레코드 길이는 레코드가 식별될때마다 버퍼 오프셋의 전체 길이에 부가된다. 덩어리의 수는 전체 길이를 덩어리 길이로 나눔으로써 계산된다. 덩어리의 수는 선택된 덩어리 데이터의 매체 키이 블록에 대한 인덱스(index)이다. 전체 길이의 나머지는 선택된 덩어리 데이터에 대하여 오프셋(offset)된다. 행과 열이 사용되어 암호화된 매체 키이와 조건부의 암호화된 매체 키이가 어느 곳에 있는지를 계산한다. 이러한 암호화된 키이들이 보관되어서 전자 코드북 모드 알고리듬에서의 암호 해제 C2 암호가 수행되어 매체 키이를 획득하도록 수행된다. 이러한 매체 키이는 다음에 올바른 최종의 매체 키이(Km)를 위해서 검증된다.
레코드의 수와 연관된 MKB 로부터 매체 키이(Km)를 획득하기 위한 MKB 덩어리마다 필요한 읽음(read)의 수인 T 는 아래와 같다.
레코드의 수 < T < (레코드의 수*2)
T: MKB 덩어리에 접근하는데 필요한 횟수
각 레코드는 상이한 길이와 데이터 값을 가진다. 각 레코드의 정보는 2 번 읽는 것 안에서 획득될 수 있다. 4 개의 레코드가 있기 때문에, 4 회의 읽음과 8 회의 읽음 사이에 MKB 덩어리를 처리하고 레코드를 획득할 필요가 있을 것이다.
따라서 읽음의 수인 T 는,
4 < T < 8 이다.
MKB 데이터의 512 바이트에 접근하는데 N ms 가 걸린다고 가정하자. 제 1 방법으로부터 매체 키이를 획득하도록 전체 64K 의 MKB 이미지에 접근하는데는 (128 * N)ms 가 걸릴 것이다. 제 2 의 방법으로부터, 최악의 경우인 시나리오에서는 매체 키이를 획득하는데 (8*N)ms 가 걸린다. 따라서 이러한 계획을 사용함으로써 상당한 시간이 절감된다. 평균적으로, 매체 키이(Km)를 획득하려면, 읽음의 수는 4 내지 6 의 범위에 있으며, 필요한 시간은 위에서 도시된 것보다 비례적으로 작다.
도 10에서 확장된, 도 9 의 단계(205)는, 최종의 매체 키이가 단계(205.75)에서 생성될때까지 또는 매체가 단계(205.80)에서 거절될때까지 수행된다. 128 개의 덩어리 모두가 읽혀질 필요는 없으며, 덩어리마다 512 바이트 모두를 매체 키이를 계산하기 위하여 읽을 필요는 없다. MKB 데이터를 처리하는 것은 데이터의 덩어리를 한번에 요청하는 것과, 특정의 덩어리내에 있는 소기 위치를 지향하는 것과, 획득된 값을 계산하는 것을 필요로 한다. MKB 데이터 모두가 필요한 것은 아니다. 도 10 에 도시된 알고리듬은 MKB 데이터의 어떤 덩어리가 필요한지, 어떤 레코드가 처리되어야 하는지, 그리고 어디에 암호화된 데이터가 위치하는지를 계산하도록 수학적인 계산을 제공할 것이다.
단계 205.5 에 있어서, 버퍼 포인터(buffer pointer)는 데이터 버퍼로 설정되며 버퍼 오프셋은 클리어(clear)된다. 다음에 단계(205.10)에 있어서, 덩어리의 수는 그것이 최대 덩어리 수와 같은지 또는 그보다 큰지를 알기 위해서 점검된다. 만약 그렇다면, 에러가 단계(205.15)에서 반환될 것이다. 만약 그렇지 않다면, 덩어리의 수는 증가될 것이며 새로운 데이터가 단계(205.20)에서 버퍼로 로딩될 것이다. 다음에 버퍼 오프셋은 단계(205.25)에서 업데이트될 것이다. 따라서, 포인터는 올바른 위치 덩어리 수 더하기 오프셋)에 설정될 수 있다. 단계(205.30)에 있어서, 버퍼 포인터는 버퍼 오프셋으로 설정된다. 단계(205.40)에 있어서, 버퍼가 읽혀져서 포인터가 위치되는 오프셋에서 시작된다. 다음에 시스템은 그것이 어떠한 유형의 레코드를0 읽고 있는지를 결정할 것이다. 단계(205.40)에서 알 수 있는 바와 같이, 시스템은 우선 어떠한 유형의 레코드가 읽혀지고 있는지, 그리고 어떠한 레코드 길이가 그 레코드와 연관되어 있는지를 점검한다. 각 레코드의 레코드 길이는 버퍼 포인트가 차후의 레코드를 읽으면서 위치되어야 하는 곳을 결정하는데 사용될 것이다. 이것은 단계(205.49)에 의해서 반영되어, 버퍼의 오프셋을 업데이트시키고 버퍼 포인트를 새로운 오프셋에 설정시킨다.
레코드가 단계(205.42)에서 도시된 것과 같은 CMKR 이라면, 시스템은 암호화된 매체 키이(Km)가 단계(205.49)에서 위치된 곳인 올바른 MKB 위치에 대한 오프셋과 버퍼 덩어리의 수를 업데이트시킨다. 각 카드는 16 MKB를 가진다. 따라서, 시스템은 오프셋이 될 것인데 여기에서 암호화된 매체 키이는, 특정의 MKB 덩어리의 수로 가고, 버퍼(16 블록 × 512 바이트)를 할당하고, 암호화된 매체 키이를 읽도록 각 블록내의 오프셋으로 가게 된다. 다음에 시스템은 단계(205.50)에서 매체 키이를 암호 해제(계산)시키도록 장치(15)로부터 공급된 장치 키이(Kd)를 사용한다. 일단 매체 키이가 계산되면 다음의 단계는 매체 키이를 검증하게 된다.
레코드가 단계(205.44)에서 평가된 바와 같이 VMKR 이라면, 단계(205.50)에서의 제 1 시도, 또는 단계(205.65)에서의 제 2 시도에서, 이전에 계산되었던 매체 키이는 단계(205.55)에서의 기준 매체 키이(Km)와 비교될 것이다. 이것을 하기 위하여, 기준 매체 키이는 처음에 지역적으로 저장될 것이다. 키이가 같다면, 6 진법에 있어서 DEADBEEF 인, 통과(pass)가 반환될 것이며, 시스템은 조건부로 매체 키이를 계산할 필요가 없다. 다음의 레코드를 읽는 것을 어디에서 시작할지를 계산하기 위하여, VMKR 의 레코드 길이가 사용되어 버퍼 포인터를 다음의 레코드로 움직인다. 만일 키이가 같지 않다면, 언제 CCMKR 레코드가 단계(205.46)에서 읽히는지 다시 계산될 것이다. 이러한 레코드가 읽혀진다면, 버퍼 지점이 단계(205.49)에서 업데이트된 버퍼 오프셋에서 읽혀지도록 설정된 이후에 매체 키이가 다시 한번 단계(205.65)에서 계산될 것이며, 다음의 VMKR 이 읽혀질 때를 차후에 검증할 것이다. CCMKR 이 계산되는 최대의 시간 수는 시스템에 의해서 바람직스럽게는 한번 설정될 수 있다.
제 1 의 계산은 CMKR 이 밝혀졌을 때 발생한다. 이것이 VMKR 이 밝혀질 때 개시된 검증 과정 동안에 결정되는 바와 같이 성공적으로 계산된다면, 조건부로 매체 키이(Km)를 계산할 필요는 없다. 검증이 성공적이지 못하다면 CCMKR 이 밝혀졌을 때 매체 키이(Km)가 계산될 것이며 재검증될 것이다. 이것은 매체 키이를 계산할 수 있는 2 번의 기회가 있다는 것을 의미한다. 마지막으로, 단계(205.48)에서, 다음에 단계(205.75)에서 평가된 바와 같이 레코드가 EMKR 이라면, 버퍼 포인터가 단계(205.49)에서 이러한 유형의 레코드에 대하여 적절한 오프셋에 설정된 이후에, 시스템은 레코드의 끝에서 타당한 매체 키이(Km)가 존재하는 것을 검증할 것이며, 단계(205.75)에서 마지막 매체 키이(Km)가 발생될 것이다. 그러나, 만약 타당한 매체 키이가 단계(205.70)에서 반환되지 않는다면, 단계(205.85)에 의해서 도시된 바와 같이 처리는 도 9 의 단계(210)에서 계속될 것이다. 따라서 MKB 처리는 완료되다.
SDSE(175)내의 기능은 장치 구동부(19)에 대한 보안 장치 구동부 인테페이스(190A)을 사용함으로써 Get MKB 와 같은 보안 접근을 수행한다. 마찬가지의 장치 드라이버인 SDDI(190A)도 또한 그것이 직접적으로 호출할 수 있는 SDSE(175)내의 기능을 이용할 수 있다. 예를 들면, 인가 부위에 대한 읽기를 지시하기 전에, SDDI(190A)는 처음에 SDSE(175)내의 sec_ake 기능을 호출하여야 한다. sec_ake 기능은 다시 SDDI(190a)로 호출된다. 이러한 SDSE(175)내의 장치 키이의 고립을 용이하게 하는 "이중 호출 관계"는 SD-오디오 표준의 SW 100 의 수행에 대하여 유일하다.
SDSE(175)는 모든 키이-배향의 처리를 취급하고, 이러한 값들은 특정의 SD 명령들이 오디오 인터페이스(105), 비디오 인터페이스(110) 또는 이미지 인터페이스(115)에 의해 수신될 때 필요하기 때문에, 장치 구동부는 그것이 직접적으로 호출할 수 있는 SDSE(175)내의 기능을 이용하여야 한다. 기능을 수행할 때, SDSE 모듈(175)는 다시 장치 구동부(190)의 비밀 보안 인터페이스인 SDDI(190A)으로 호출되어야 한다. 이러한 "이중 호출 관계"는 SDSE(175)와 장치 구동부(190) 사이에서 서로 짜여진 요청을 가능하게 하여, 키이 값이 보안 모듈내에 고립될 수 있게 한다.
SDSE(175) 소프트웨어 층은 보안 구동부 요청 패킷을 초기화하고 요청 패킷 포인터를 통과시키는 보안 구동부 인터페이스 가입 지점을 호출함으로써 비밀 인터페이스를 통하여 보안 장치 구동부 서비스를 실시한다.
참조로서 포함된 첨부의 소스 코드를 명확하게 하기 위하여, 다음의 표가 제공된다.
요청 패킷(sdapi.h 로 정의됨)은 다음과 같이 한정된 데이터 유형 SSMSERVE 로 구성되어 있다.
변수 | 변수 명칭 |
Typedef struct_mySecuredDrv | |
{ | |
데이터 버퍼 | UCHAR *buffer |
데이터 블록의 수 | UNIT16 noBlocks |
적용 유일 번호 | UNIT16 mkb_ID |
시작 어드레스 | UNIT16 lba |
보안 플래그 | INT16 securityFlag |
드라이브 번호 | INT16 driveNo |
명령 인덱스 | INT16 opCode |
} |
명령 인덱스(INT16 opCode) 는 요청되는 서비스에 대한 명령을 유지한다. 지원된 명령은 다음을 포함한다:
명령 | 기능 코드 루틴 |
장치 식별 | SDDRV_IDENT 0 # 한정 |
보안 식별 | SDDRV_SECIDENT 1 # 한정 |
보안 읽기 | SDDRV_SECRD 2 # 한정 |
보안 쓰기 | SDDRV_SECWR 3 # 한정 |
보안 소거 | SDDRV_SECERASE 4 # 한정 |
MKB 읽음 | SDDRV_RDMKB 5 # 한정 |
MID 를 가져옴 | SDDRV_GETMID 6 # 한정 |
챌린지(challange)를 설정 | SDDRV_SETCHALGE 7 # 한정 |
챌린지를 가져옴 | SDDRV_GETCHALGE 8 # 한정 |
응답을 설정 | SDDRV_SETRESP 9 # 한정 |
응답을 가져옴 | SDDRV_GETRESP 10 # 한정 |
보호된 부위의 크기 변화 | SDDRV_CHANGESA 11 # 한정 |
보안 장치 구동부 서비스의 요청은 SDSE(175) 모듈로부터 발행된다. 예를 들면, 챌린지 발생(1) 기능은 챌린지(1)를 다음과 같이 보낸다.
명령 | 작동 |
보안 루틴을 호출하라 | SDSECURITYDRV mySecDrv |
드라이브 번호를 설정하라 | mySecDrv.driveNo = (INT16)drv |
메모리 어드레스를 매체내에 설정하라 | mySecDrv.lba = 0 |
데이타 블록의 번호 | mySecDrv.noBlocks = 1 |
챌린지를 설정하라 | mySecDrv.opCode =SDDRV_SETCHALGE |
챌린지(1)를 보내라 | mySecDrv.buffer = Chlg 1 |
장치 구동부로 호출하라 | scDDHandler(&mySecDrv) |
모든 키이 조작은 SDSE(175)에 제한되어 있기 때문에, SSDI(190A)는 인증 키이 교환(AKE)을 수행하도록 또는 버스를 가로질러 전달되었던 데이타를 암호 해제시키도록 SDSE(175)에 의존하여야만 한다 (버스를 지나서 보내진 모든 데이타는 각 AKE 로부터 발생된 "세션 키이"를 사용하여 처음에 암호화된다는 점을 주목하라).
AKE 를 수행할때, SDSE(175)는 명령을 SD 메모리 카드(13)로 보내야만 하며, 따라서 이것은 다시 SDDI(190A)으로 호출되어야 한다. 이러한 호출 관계는 도 7 의 다이아그램에 개략되어 있으며 이것은 인증 부위의 읽기를 처리하는데 필요한 단계를 나타낸다.
보안 SDDI(190A)에 의해서 호출되었을때, SDSE(175)내의 sec_ake 함수는 비밀의 구동부 인터페이스를 통하여 보안 장치의 구동부로 4 개의 호출을 다시 수행한다. 이러한 4 개의 요청은 SDDRV_SETCHALGE, SDDRV_GETCHALGE, SDDRV_SETRESP 및, SDDRV_GETRESP 로 이루어진다. 이것은 보안 모듈이 도 7 에 도시된 바와 같은, 필요한 챌린지 설정/챌린지 가져오기, 응답 설정/응답 가져오기를 수행할 수 있게 한다. 결과적인 세션 키이는 보안 모듈내에 저장된다. 이것은 보안 장치 드라이버가 SDDI(190A)로부터 정보를 가져오도록 SDSE(175)의 bus_decrypt 기능으로 호출할때 데이타를 암호 해제시키도록 사용된다.
본 발명의 시스템과 방법은 많은 방법에 있어서 종래 기술보다 유리하다. 본 발명은 최초의 장비 제조자들에게 저장 매체의 메모리 구조에 대한 그 어떤 지식을 가질 필요 없이 암호화된 컨텐츠에 접근하도록 하는 턴키 방식의 솔루션(turnkey solution)을 제공한다. 암호 해제 과정은 그 자체로서 매우 복잡하다. 더욱이, 메모리 카드 또는 콤팩트 디스크에 대한 단순한 읽기와 쓰기가 그 자체내에서 그리고 그 자체에 대해서 복잡하다. 제조자들이 해야할 필요가 있는 모든 것은 "재생" 또는 "다음 트랙"과 같은 단순한 명령을 보내는 것이며 메모리 장치가 무엇이 되건간에 그로부터 암호 해제된 컨텐츠를 반환 받는 것이다.
장치 키이와 결과적인 세션 키이는 매우 고립되고 보호된 소프트웨어 층내에서 조작된다. 이들은 결코 상부층에 노출되지 않는다. 심지어는 하부 장치 구동부 층에게도 키이에 대한 직접적인 접근이 주어지지 않는다. 매체 키이가 발생하였을때 장치 키이들은 OEM-공급의 라이브러리로부터 검색된다. 이러한 키이는 보안 엔진내에서 유지되지만, 보안 계획의 핵심인 매체 유일의 키이(Kmu)는 저장되지 않는다. 보안 엔진에 대한 비밀 인터페이스는 보안 엔진이 메모리 카드에 대한 낮은 레벨의 접근을 얻을 수 있게 하는 반면에, 모든 보안 관련 키이들(예를 들면 장치 키이, 매체 키이, 세션 키이)의 노출을 보안 엔진내에 제한되어 유지시킨다. "이중 호출 관계"는 보안 엔진과 보안 장치 구동부가 각각의 다른 서비스의 사용과 서로 짜여지는 것을 허용한다.
본 발명의 특정의 구현예와 그들의 장점이 설명되고 도시되었을지라도, 첨부된 청구 범위에 한정된 바와 같은 본 발명의 범위와 사상을 이탈함이 없이 다양한 변화, 대체 및, 변경이 그 안에서 이루어질 수 있다는 점이 이해되어야 한다. 예를 들면, 비록 SD 메모리 카드의 사용이 본 발명의 기능을 예시하도록 나타났을지라도, 본 발명은 암호화된 컨텐츠를 가지는 그 어떤 매체상에서도 사용될 수 있다. 이것은 또한 그 어떤 유형의 장치에 의해서도 사용될 수 있다. 더욱이, 암호화된 컨텐츠는 메모리 장치가 고정되어 있거나 또는 제거될 수 있거나, 그리고 고체 상태이거나 또는 회전되는지의 여부에 무관하게 어떤 유형의 메모리 장치로부터도 암호 해제될 수 있다. 컨텐츠는 오디오 또는 비디오에 제한되지 않지만, 암호화할 가치가 있는 어떤 컨텐츠일 수 있다.
본 발명은 매체의 암호화에 이용할 수 있다.
Claims (34)
- 메모리 카드상에 상주하는 암호화된 오디오 또는 비디오 컨텐츠의 재생을 위한, 오디오 또는 비디오 장치에서 장치의 최초 장비 제조자에 의해서 사용되어야 하는 소프트웨어 프로그램으로서, 소프트웨어 프로그램은:장치의 사용자 인터페이스로부터 재생 명령을 포함하는 명령을 수신하고;최초의 장비 제조자가 장치의 사용자 인터페이스로부터 재생 명령을 소프트웨어 프로그램으로 보낼 필요만 있도록 메모리 카드로부터의 암호화된 오디오 또는 비디오 컨텐츠를 해독하고 해독된 오디오 또는 비디오가 재생되도록 구성된 것을 특징으로 하는 소프트웨어 프로그램.
- 제 1 항에 있어서,소프트웨어 프로그램은,암호화된 컨텐츠의 위치 정보를 오디오 비디오 장치의 메모리로 복사하고;오디오 비디오 장치의 메모리로부터 위치 정보에 접근하고;접근된 위치 정보와 함께 메모리 카드내의 암호화된 컨텐츠의 위치를 정하도록; 더 구성된 것을 특징으로 하는 소프트웨어 프로그램.
- 제 1 항에 있어서,오디오 또는 비디오 컨텐츠를 해독하는 것은:메모리 카드의 보호된 부위로부터 하나 또는 그 이상의 암호화된 키이를 장치의 메모리 버퍼 안으로 복사하는 단계;복사된 암호화 키이들중 하나 또는 그 이상을 해독하는 단계; 하나 또는 그 이상의 해독된 키이로 복사된 암호화 오디오 또는 비디오 컨텐츠를 해독하는 단계;를 구비하는 소프트웨어 프로그램.
- 제 3 항에 있어서,오디오 또는 비디오 컨텐츠를 해독한 이후에 하나 또는 그 이상의 해독된 키이를 즉각적으로 삭제하는 단계를 더 구비하는 소프트웨어 프로그램.
- 제 4 항에 있어서,하나 또는 그 이상의 해독된 키이가 삭제되기 전에 컨텐츠의 약 1 내지 10 초 미만이 하나 또는 그 이상의 해독된 키이로 한번에 해독되는 것을 특징으로 하는 소프트웨어 프로그램.
- 제 4 항에 있어서,하나 또는 그 이상의 컨텐츠가 삭제되기 전에 컨텐츠의 약 2 초가 한번에 하나 또는 그 이상의 해독된 키이로 해독되는 것을 특징으로 하는 소프트웨어 프로그램.
- 제 1 항에 있어서,오디오 또는 비디오 컨텐츠를 해독하는 것은:(a) 매체의 유일한 키이를 계산하는 단계; 그리고 다음에,(b) 매체의 유일한 키이로 장치의 메모리내에 저장된 타이틀 키이를 해독하는 단계; 그리고 다음에,(c) 프레임들의 그룹을 해독하는 단계; 그리고 다음에,(d) 해독된 타이틀 키이들 삭제하는 단계;(e) 매체의 유일한 키이들 삭제하는 단계; 및,(f) 전체 트랙이 완성될때까지 (a) 내지 (e)를 반복하는 단계;를 구비하는 것을 특징으로 하는 소프트웨어 프로그램.
- 마이크로프로세서, 랜돔 액세스 메모리(random access memory) 및, 마이크로프로세서에 의해서 수행되는 소프트웨어 프로그램을 가진 휴대용 장치로서, 상기 장치는,휴대용 장치의 사용자 인터페이스로부터 재생 명령을 포함하는 명령의 그룹을 수신하고;명령을 수신할때 제거 가능한 저장 매체에 상주하는 암호화된 데이타를 검색하고;암호화된 데이타를 장치의 메모리내에 저장하고;데이타를 해독하고; 그리고해독된 오디오 또는 비디오 컨텐츠를 출력하기 위하여 장치가 사용자 인터페이스로부터의 명령 그룹으로부터의 명령을 소프트웨어 프로그램으로 보낼 필요만 있도록 해독된 오디오 또는 비디오 컨텐츠를 출력하게끔; 구성된 것을 특징으로 하는 휴대용 장치.
- 제 8 항에 있어서,암호화된 데이타의 약 2 초가 장치의 메모리내에 저장되며, 그리고 차후에 삭제되기 전에 해독되는 것을 특징으로 하는 휴대용 장치.
- 제 8 항에 있어서,제거 가능한 저장 매체는 광 디스크인 것을 특징으로 하는 휴대용 장치.
- 제 8 항에 있어서,제거 가능한 저장 매체는 광 디스크인 것을 특징으로 하는 휴대용 장치.
- 제 8 항에 있어서,장치의 소프트웨어는 AAC, MP3 또는 WMA 포맷에서 오디오 컨텐츠를 압축해제시키고 디코딩시키도록 더 구성되는 것을 특징으로 하는 휴대용 장치.
- 제 8 항에 있어서,장치의 소프트웨어는:제거 가능한 저장 매체로부터의 트랙 정보와 재생 목록 정보를 장치의 메모리 안으로 복사하고; 그리고,장치의 메모리내 트랙 정보와 재생 목록에 기초하여 검색되어야 하는 암호화된 데이타의 위치를 정하도록; 더 구성된 것을 특징으로 하는 휴대용 장치.
- 제 13 항에 있어서,트랙 정보는 각 트랙에 대하여:트랙으로 이루어진 오디오 객체(object)의 수;트랙으로 이루어진 최초의 오디오 객체;트랙으로 이루어진 최후의 오디오 객체;해독되고 있는 현재의 오디오 객체; 및,현재의 오디오 대상의 오프셋(offset);을 구비하는 것을 특징으로 하는 휴대용 장치.
- 제 14 항에 있어서,트랙 정보는,바이트로서의 트랙의 크기;트랙의 총 재생 시간;트랙의 경과된 시간;오디오 객체내의 현재 요소의 수;재생되어야 하는 트랙의 현재 요소;현재 요소의 오프셋;오디오 객체내의 요소들의 전체 갯수;를 더 구비하는 것을 특징으로 하는 휴대용 장치.
- 보안이 이루어진 매체내에 저장된 암호화 오디오 또는 비디오 컨텐츠를 장치로 재생하는 방법으로서, 상기 방법은 사전 재생(pre-play) 과정과 재생 과정을 구비하며,상기 사전 재생 과정은,상기 장치의 메모리내에 있는 재생되어야 하는 트랙에 관한 하나 또는 그 이상의 정보 그룹을 복사하는 것을 구비하고,상기 재생 과정은,재생을 시작하도록 사용자 인터페이스로부터 하나 또는 그 이상의 명령을 수신하는 단계;장치의 메모리로부터의 하나 또는 그 이상의 정보의 그룹에 접근하는 단계;램 메모리내에 복사된 하나 또는 그 이상의 정보 그룹의 정보에 기초하는 시??스에 따라서 보안이 이루어진 매체로부터 장치의 메모리내로 암호화된 컨텐츠를 복사하는 단계;하나 또는 그 이상의 정보 그룹의 정보에 기초한 시??스에서 보안이 이루어진 매체로부터 암호화된 정보를 해독하는 단계;를 구비하는 재생 단계;를 구비하는 방법.
- 제 16 항에 있어서,암호화된 컨텐츠의 대략 1 내지 5 초 미만이 복사되고 한번에 해독되는 것을 특징으로 하는 방법.
- 제 16 항에 있어서,하나 또는 그 이상의 정보 그룹은 재생 목록과 트랙 정보를 구비하는 것을 특징으로 하는 방법.
- 제 16 항에 있어서,하나 또는 그 이상의 정보 그룹은 어느 재생 목록이 재생되어야 하는지를 지정하고, 재생 목록내의 어느 트랙이 플레이되어야 하는지를 지정하는 것을 특징으로 하는 방법.
- 제 19 항에 있어서,하나 또는 그 이상의 정보 그룹은 트랙내의 어느 오디오 객체가 재생되어야 하는지와 오디오 객체가 보안 매체내의 어느 곳에 위치하는지를 더 포함하는 것을특징으로 하는 방법.
- 제 20 항에 있어서,하나 또는 그 이상의 정보 그룹은 오디오 객체내의 어느 요소가 재생되어야 하는지, 그리고 요소내의 어느 프레임이 재생되어야하는지를 더 포함하는 것을 특징으로 하는 방법.
- 제 16 항에 있어서,사전 재생 과정은 보완 매체를 인증하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 휴대용 장치가 메모리 저장 장치상의 암호화된 음악에 접근할 수 있게하는 시스템으로서,휴대용 장치의 사용자 인터페이스로부터 복수개의 명령을 수신하고; 그리고고립된 보안 엔진에 명령을 전달하도록; 구성된하나 또는 그 이상의 응용 프로그래밍 인터페이스를 포함하고,상기 고립된 보안 엔진은,응용 프로그래밍 인터페이스로부터 명령을 수신하고;암호화된 키이와 암호화된 컨텐츠를 메모리 저장 장치로부터 휴대용 장치의 메모리로 복사하고;키이의 암호를 해제하고;암호가 해제된 키이를 사용하여 컨텐츠의 암호를 해제하고; 그리고암호가 해제된 키이를 삭제하도록; 구성된 시스템.
- 프로세서와 랜돔 액세스 메모리를 가진 장치가 명령의 그룹으로써 메모리 카드로부터의 암호화된 데이타에 용이하게 접근할 수 있게 하는 방법으로서, 상기 방법은,메모리 카드로부터의 재생 목록 정보를 검색하고 정보를 장치의 랜돔 액세스 메모리내에 저장하는 단계;메모리 카드로부터의 트랙 정보를 검색하고 트랙 정보를 장치의 랜돔 액세스 메모리내에 저장하는 단계;명령의 그룹으로부터 선택된 명령을 장치로부터 수신하는 단계로서, 명령은 랜돔 액세스 메모리로부터의 재생 목록 정보와, 트랙 정보에 접근하는 것인 단계;메모리 카드내에 저장된 암호화된 데이타를 검색하고 접근된 정보에 기초하여 데이타를 암호 해제시킴으로써 명령을 수행하는 단계;를 구비하는 방법.
- 제 24 항에 있어서,재생 목록 정보는,재생 목록의 명칭;재생 목록 명칭의 스트링(string) 길이;재생 목록의 재생 시간;재생 목록에 의해 구비되는 트랙; 및,재생 목록에 해당하는 인덱스(index);를 구비하는 것을 특징으로 하는 방법.
- 제 24 항에 있어서,트랙 정보는:트랙 번호;트랙 번호에 해당하는 인덱스;트랙내의 트랙 유니트의 번호; 및,트랙의 재생 시간;을 구비하는 방법.
- 제 24 항에 있어서,트랙 정보는:트랙의 포맷 유형;트랙의 샘플링 주파수;바이트로서의 트랙 크기; 및,암호 해제되고 있는 현재의 트랙;을 포함하는 것을 특징으로 하는 방법.
- 제 27 항에 있어서,전체 트랙 정보는:트랙에 의해서 포함되는 오디오 객체의 수;트랙에 의해서 포함된 제 1 의 오디오 객체;트랙에 의해서 포함된 마지막 오디오 객체;암호해제되고 있는 현재의 오디오 객체; 및,현재의 오디오 객체의 오프셋;을 구비하는 방법.
- 제 27 항에 있어서,데이타를 암호해제하는 단계는:하나 또는 그 이상의 암호화된 키이를 메모리 카드의 보호된 영역으로부터 장치의 메모리 버퍼내로 복사하는 단계;암호화된 오디오 또는 비디오 컨텐츠를 메모리 카드로부터 장치의 메모리 버퍼내로 복사하는 단계;복사된 암호화 키이들중 하나 또는 그 이상을 암호 해제시키는 단계;복사된 암호화 오디오 또는 비디오 컨텐츠를 하나 또는 그 이상의 암호 해제된 키이로써 암호 해제시키는 단계;를 구비하는 방법.
- 제 27 항에 있어서,데이타를 암호 해제시키는 단계는:(a) 매체 유일의 키이(media unique key)를 계산하는 단계;(b) 장치의 메모리내에 저장된 타이틀 키이(title key)를 매체 유일의 키이로써 암호 해제시키는 단계;(c) 프레임의 그룹을 암호 해제시키는 단계;(d) 암호 해제된 타이틀 키이를 삭제하는 단계;(e) 매체 유일의 키이를 삭제하는 단계; 및,(f) 전체 트랙이 완성될때까지 상기 (a) 내지 (e) 단계를 반복하는 단계;를 구비하는 방법.
- 장치가 보안 매체상의 컨텐츠에 접근할 수 있게 하는 소프트웨어 시스템으로서,장치로부터 명령을 수신하기 위한 하나 또는 그 이상의 사용자 인터페이스 모듈;사용자 인터페이스 모듈로부터의 명령을 수신하고, 암호화되고 암호화되지 않은 컨텐츠 모두를 보안 매체로부터 검색하고 저장하는 것을 처리하기 위한 응용 프로그래밍 인터페이스;보안 매체로부터 장치의 메모리로 전송된 암호화된 키이와 암호화된 컨텐츠를 암호 해제시키기 위한 보안 엔진으로서, 암호 해제된 키이는 암호화된 컨텐츠를 암호 해제시키도록 사용되는 보안 엔진;을 구비하고,하나 또는 그 이상의 키이들이 제 1 의 암호화된 데이타 구획내에 포함되고,암호화된 컨텐츠는 제 2 의 암호화된 데이타 구획내에 포함되며, 그리고보안 엔진은 제 1 데이타 구획부의 일부를 버퍼링하고 암호 해제시키고, 제2 데이타 구획부를 버퍼링하고 암호 해제시키며, 이후에 암호 해제시키기 전에 암호 해제된 하나 또는 그 이상의 키이를 삭제함으로써, 컨텐츠의 1 내지 약 5 초 미만을 암호 해제시키는데 드는 시간동안 암호 해제된 키이들은 암호 해제 상태에 있는 것을 특징으로 하는 소프트웨어 시스템.
- 제 31 항에 있어서,컨텐츠의 약 2 초를 암호해제시키고 처리하는데 드는 시간 동안 키이는 암호 해제된 상태에 있는 것을 특징으로 하는 소프트웨어 시스템.
- 제 32 항에 있어서,컨텐츠는 AAC, MP3 또는 WMA 의 형태로 엔코딩되는 것을 특징으로 하는 소프트웨어 시스템.
- 제 31 항에 있어서,버퍼링되고 암호해제된 제 1 데이타 구획부의 일부는 약 512 바이트인 것을 특징으로 하는 소프트웨어 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US25173100P | 2000-12-07 | 2000-12-07 | |
US60/251,731 | 2000-12-07 | ||
PCT/US2001/046661 WO2002047080A2 (en) | 2000-12-07 | 2001-11-06 | System, method, and device for playing back recorded audio, video or other content from non-volatile memory cards, compact disks or other media |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030060981A true KR20030060981A (ko) | 2003-07-16 |
Family
ID=22953171
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-7007607A KR20030060981A (ko) | 2000-12-07 | 2001-11-06 | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 |
KR1020037007604A KR100844998B1 (ko) | 2000-12-07 | 2001-12-06 | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른 매체로부터 기록된 오디오, 비디오 또는 다른 콘텐츠를 재생하기 위한 시스템, 방법 및 장치 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020037007604A KR100844998B1 (ko) | 2000-12-07 | 2001-12-06 | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른 매체로부터 기록된 오디오, 비디오 또는 다른 콘텐츠를 재생하기 위한 시스템, 방법 및 장치 |
Country Status (8)
Country | Link |
---|---|
US (5) | US7227952B2 (ko) |
EP (3) | EP2357651A3 (ko) |
JP (2) | JP4219680B2 (ko) |
KR (2) | KR20030060981A (ko) |
CN (2) | CN1720578A (ko) |
AU (2) | AU2002232494A1 (ko) |
TW (2) | TW544579B (ko) |
WO (2) | WO2002047080A2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101270712B1 (ko) * | 2006-05-08 | 2013-06-03 | 후이 린 | 메모리 카드 암호화 및 복호화를 사용하여 디지털 컨텐츠를보호하는 방법 |
Families Citing this family (155)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6578203B1 (en) | 1999-03-08 | 2003-06-10 | Tazwell L. Anderson, Jr. | Audio/video signal distribution system for head mounted displays |
ID27746A (id) * | 1999-05-28 | 2001-04-26 | Matsushita Electric Ind Co Ltd | Kartu semikonduktor, peralatan playback, peralatan perekaman, metoda playback, metoda perekaman, dan media perekaman dapat dibaca kombuter |
US20020057364A1 (en) | 1999-05-28 | 2002-05-16 | Anderson Tazwell L. | Electronic handheld audio/video receiver and listening/viewing device |
US7210160B2 (en) | 1999-05-28 | 2007-04-24 | Immersion Entertainment, L.L.C. | Audio/video programming and charging system and method |
US6585622B1 (en) | 1999-12-03 | 2003-07-01 | Nike, Inc. | Interactive use an athletic performance monitoring and reward method, system, and computer program product |
US8956228B2 (en) * | 1999-12-03 | 2015-02-17 | Nike, Inc. | Game pod |
EP1267515A3 (en) * | 2000-01-21 | 2004-04-07 | Sony Computer Entertainment Inc. | Method and apparatus for symmetric encryption/decryption of recorded data |
FR2815738B1 (fr) * | 2000-10-25 | 2003-03-21 | Dolphin Integration Sa | Controle d'acces a une memoire integree avec un microprocesseur |
KR20030060981A (ko) * | 2000-12-07 | 2003-07-16 | 쌘디스크 코포레이션 | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 |
JP2002328846A (ja) * | 2001-02-20 | 2002-11-15 | Sony Computer Entertainment Inc | コピー管理システム,クライアント端末装置の情報処理プログラムが記憶されたコンピュータ読み取り可能な記憶媒体,管理サーバ装置の情報処理プログラムが記憶されたコンピュータ読み取り可能な記憶媒体,クライアント端末装置の情報処理プログラム,管理サーバ装置の情報処理プログラム,コピー管理方法,クライアント端末装置の情報処理方法、及び管理サーバ装置の情報処理方法 |
US20030188183A1 (en) * | 2001-08-27 | 2003-10-02 | Lee Lane W. | Unlocking method and system for data on media |
FR2830950A1 (fr) * | 2001-10-11 | 2003-04-18 | Archos | Systeme et procede de stockage de masse, et unite de stockage de masse autonome et portative utilisee dans un tel systeme |
US20030145183A1 (en) * | 2002-01-31 | 2003-07-31 | Muehring Phillip T. | Applications for removable storage |
US8656178B2 (en) * | 2002-04-18 | 2014-02-18 | International Business Machines Corporation | Method, system and program product for modifying content usage conditions during content distribution |
US7367059B2 (en) * | 2002-05-30 | 2008-04-29 | Nokia Corporation | Secure content activation during manufacture of mobile communication devices |
CN1679273A (zh) | 2002-08-08 | 2005-10-05 | M-系统快闪盘开拓者公司 | 用于数字权利管理的集成电路 |
EP1532765A1 (en) * | 2002-08-20 | 2005-05-25 | Koninklijke Philips Electronics N.V. | Mobile network authentication for protecting stored content |
US20040039932A1 (en) * | 2002-08-23 | 2004-02-26 | Gidon Elazar | Apparatus, system and method for securing digital documents in a digital appliance |
US7979700B2 (en) | 2002-08-23 | 2011-07-12 | Sandisk Corporation | Apparatus, system and method for securing digital documents in a digital appliance |
EP1550341B1 (en) * | 2002-10-07 | 2007-01-03 | Telefonaktiebolaget LM Ericsson (publ) | Security and privacy enhancements for security devices |
WO2004034617A1 (en) * | 2002-10-07 | 2004-04-22 | Immersion Entertainment, Llc | System and method for providing event spectators with audio/video signals pertaining to remote events |
KR20040034076A (ko) * | 2002-10-21 | 2004-04-28 | 케이비 테크놀러지 (주) | 엠피쓰리 플레이어 및 엠피쓰리 제공 서버 및 엠피쓰리파일 재생방법 |
US20040083378A1 (en) * | 2002-10-29 | 2004-04-29 | Research Triangle Software, Inc. | Method, systems and devices for handling files while operated on in physically different computer devices |
US8206219B2 (en) | 2002-10-30 | 2012-06-26 | Nike, Inc. | Interactive gaming apparel for interactive gaming |
AU2003288938A1 (en) | 2002-10-30 | 2004-06-07 | Nike International Ltd. | Clothes with tracking marks for computer games |
US20040093509A1 (en) * | 2002-11-12 | 2004-05-13 | Gidon Elazar | Method and apparatus for connecting a storage device to a television |
US7599976B1 (en) * | 2002-11-13 | 2009-10-06 | Metrowerks Corporation | System and method for cryptographic key generation |
US7478248B2 (en) | 2002-11-27 | 2009-01-13 | M-Systems Flash Disk Pioneers, Ltd. | Apparatus and method for securing data on a portable storage device |
JP3878542B2 (ja) * | 2002-11-29 | 2007-02-07 | 株式会社東芝 | 記録装置 |
JP4434573B2 (ja) * | 2002-11-29 | 2010-03-17 | 株式会社東芝 | ライセンス移動装置及びプログラム |
JP4525350B2 (ja) * | 2003-01-15 | 2010-08-18 | ソニー株式会社 | 信号処理システム |
EP1565867A1 (en) * | 2003-02-21 | 2005-08-24 | Matsushita Electric Industrial Co., Ltd. | Software-management system, recording medium, and information-processing device |
WO2004111751A2 (en) | 2003-06-13 | 2004-12-23 | Orbid Limited | Method and system for performing a transaction and for performing a verification of legitimate use of digital data |
US11063766B2 (en) | 2003-06-13 | 2021-07-13 | Ward Participations B.V. | Method and system for performing a transaction and for performing a verification of legitimate access to, or use of digital data |
WO2005034092A2 (en) * | 2003-09-29 | 2005-04-14 | Handheld Entertainment, Inc. | Method and apparatus for coding information |
US7593687B2 (en) | 2003-10-07 | 2009-09-22 | Immersion Entertainment, Llc | System and method for providing event spectators with audio/video signals pertaining to remote events |
EP1524659A1 (en) * | 2003-10-13 | 2005-04-20 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for decrypting an encrypted supplementary data set |
KR101022465B1 (ko) * | 2003-11-13 | 2011-03-15 | 삼성전자주식회사 | 암호화된 디지털 데이터의 복사 및 복호화 방법 및 장치 |
US7519274B2 (en) | 2003-12-08 | 2009-04-14 | Divx, Inc. | File format for multiple track digital data |
US8472792B2 (en) | 2003-12-08 | 2013-06-25 | Divx, Llc | Multimedia distribution system |
WO2005076138A1 (en) * | 2004-02-03 | 2005-08-18 | Sydney Gordon Low | A content player |
JP4740157B2 (ja) * | 2004-02-03 | 2011-08-03 | サンディスク セキュア コンテンツ ソリューションズ インコーポレイテッド | デジタルデータコンテンツの保護 |
US7499550B2 (en) * | 2004-02-09 | 2009-03-03 | International Business Machines Corporation | System and method for protecting a title key in a secure distribution system for recordable media content |
FR2867582B1 (fr) * | 2004-03-10 | 2006-05-05 | Michel Koenig | Unite electronique portative comportant dans un microcircuit un processeur numerique a capacite de cryptographie, une me oire flash de grande capacite et un processeur de traitement du signal |
KR101100385B1 (ko) * | 2004-03-22 | 2011-12-30 | 삼성전자주식회사 | 인증서 폐지 목록을 이용한 디지털 저작권 관리 방법 및장치 |
TWI259957B (en) * | 2004-04-19 | 2006-08-11 | Faraday Tech Corp | System and method for accessing discrete data |
JP4762979B2 (ja) | 2004-05-10 | 2011-08-31 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 認証装置 |
US20050280705A1 (en) * | 2004-05-20 | 2005-12-22 | Immersion Entertainment | Portable receiver device |
US20050262361A1 (en) * | 2004-05-24 | 2005-11-24 | Seagate Technology Llc | System and method for magnetic storage disposal |
JP4686138B2 (ja) * | 2004-05-26 | 2011-05-18 | 株式会社東芝 | 記憶媒体変換方法、プログラム及び機器 |
US8393005B2 (en) * | 2004-06-30 | 2013-03-05 | Panasonic Corporation | Recording medium, and device and method for recording information on recording medium |
JP2006020154A (ja) * | 2004-07-02 | 2006-01-19 | Toshiba Corp | コンテンツ管理方法及びコンテンツ管理用プログラム、並びに電子機器 |
JP2006020253A (ja) * | 2004-07-05 | 2006-01-19 | Ricoh Co Ltd | 情報管理システム、情報管理方法、記録媒体及びプログラム |
DE112004002943B4 (de) * | 2004-08-26 | 2010-06-24 | Fujitsu Ltd., Kawasaki | Inhalte-Management-Programm, -Verfahren und -Vorrichtung |
JP4569228B2 (ja) * | 2004-09-02 | 2010-10-27 | ソニー株式会社 | データ処理方法、情報記録媒体製造管理システム、記録データ生成装置、および方法、並びにコンピュータ・プログラム |
TWI277870B (en) * | 2004-11-22 | 2007-04-01 | Toshiba Corp | Copyright management method, information recording/reproducing method and device, and information recording medium and method of manufacturing the medium |
US8270901B2 (en) | 2004-12-17 | 2012-09-18 | Martin E. Hellman | Dropout-resistant media broadcasting system |
US7865917B2 (en) * | 2004-12-17 | 2011-01-04 | Martin E Hellman | Security enhanced tiered subscription broadcast system |
US8627354B2 (en) | 2004-12-17 | 2014-01-07 | Martin E. Hellman | Tiered subscription broadcast system |
JP2006185016A (ja) * | 2004-12-27 | 2006-07-13 | Hitachi Ltd | コンテンツ移動制御装置及び方法 |
KR101147763B1 (ko) * | 2005-01-19 | 2012-05-25 | 엘지전자 주식회사 | 데이터 복호방법 및 복호장치, 기록매체 |
US20060170760A1 (en) * | 2005-01-31 | 2006-08-03 | Collegiate Systems, Llc | Method and apparatus for managing and distributing audio/video content |
US8423788B2 (en) | 2005-02-07 | 2013-04-16 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
US8108691B2 (en) | 2005-02-07 | 2012-01-31 | Sandisk Technologies Inc. | Methods used in a secure memory card with life cycle phases |
US8321686B2 (en) | 2005-02-07 | 2012-11-27 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
KR100670005B1 (ko) * | 2005-02-23 | 2007-01-19 | 삼성전자주식회사 | 모바일 플랫폼을 위한 메모리의 무결성을 원격으로 확인하는 확인장치 및 그 시스템 그리고 무결성 확인 방법 |
US20060248235A1 (en) * | 2005-03-21 | 2006-11-02 | Sony Corporation | Method and apparatus for data collection in a media player |
US8832458B2 (en) | 2005-03-22 | 2014-09-09 | Seagate Technology Llc | Data transcription in a data storage device |
US7360057B2 (en) | 2005-03-22 | 2008-04-15 | Seagate Technology, Llc | Encryption of data in a range of logical block addresses |
US20060265436A1 (en) * | 2005-05-20 | 2006-11-23 | Andrew Edmond | Grid network for distribution of files |
US8874082B2 (en) * | 2005-05-25 | 2014-10-28 | Qualcomm Incorporated | Apparatus and methods for protecting data on a wireless device |
US8887295B2 (en) * | 2005-06-27 | 2014-11-11 | Safend Ltd. | Method and system for enabling enterprises to use detachable memory devices that contain data and executable files in controlled and secure way |
US20070005625A1 (en) * | 2005-07-01 | 2007-01-04 | Nec Laboratories America, Inc. | Storage architecture for embedded systems |
US7748031B2 (en) | 2005-07-08 | 2010-06-29 | Sandisk Corporation | Mass storage device with automated credentials loading |
US7840178B2 (en) * | 2005-07-12 | 2010-11-23 | Martin E. Hellman | FM broadcast system competitive with satellite radio |
US8438647B2 (en) | 2005-07-14 | 2013-05-07 | Imation Corp. | Recovery of encrypted data from a secure storage device |
US8321953B2 (en) | 2005-07-14 | 2012-11-27 | Imation Corp. | Secure storage device with offline code entry |
US8335920B2 (en) | 2005-07-14 | 2012-12-18 | Imation Corp. | Recovery of data access for a locked secure storage device |
US8015606B1 (en) | 2005-07-14 | 2011-09-06 | Ironkey, Inc. | Storage device with website trust indication |
CN101243513A (zh) * | 2005-08-23 | 2008-08-13 | 皇家飞利浦电子股份有限公司 | 使用物理单向函数的信息载体鉴别 |
WO2007030760A2 (en) * | 2005-09-08 | 2007-03-15 | Sandisk Corporation | Mobile memory system for secure storage and delivery of media content |
US7536540B2 (en) | 2005-09-14 | 2009-05-19 | Sandisk Corporation | Method of hardware driver integrity check of memory card controller firmware |
US20070061597A1 (en) | 2005-09-14 | 2007-03-15 | Micky Holtzman | Secure yet flexible system architecture for secure devices with flash mass storage memory |
WO2007123567A2 (en) | 2005-09-19 | 2007-11-01 | Ironkey, Inc. | Recovery of encrypted data from a secure storage device |
US20080025504A1 (en) * | 2005-11-23 | 2008-01-31 | Robert Rapp | Computer or digital device data encryption/decryption performed by using a random analog source |
JP2007164540A (ja) | 2005-12-14 | 2007-06-28 | Samsung Electronics Co Ltd | データ記憶装置,データ記憶方法およびプログラム |
US8639873B1 (en) | 2005-12-22 | 2014-01-28 | Imation Corp. | Detachable storage device with RAM cache |
US8266378B1 (en) | 2005-12-22 | 2012-09-11 | Imation Corp. | Storage device with accessible partitions |
US20070145135A1 (en) * | 2005-12-28 | 2007-06-28 | Fabrice Jogand-Coulomb | Methods used in a nested memory system with near field communications capability |
US20070145152A1 (en) * | 2005-12-28 | 2007-06-28 | Fabrice Jogand-Coulomb | Nested memory system with near field communications capability |
US7590600B2 (en) * | 2006-03-28 | 2009-09-15 | Microsoft Corporation | Self-contained rights management for non-volatile memory |
US7971071B2 (en) * | 2006-05-24 | 2011-06-28 | Walkoe Wilbur J | Integrated delivery and protection device for digital objects |
US20070288752A1 (en) * | 2006-06-08 | 2007-12-13 | Weng Chong Chan | Secure removable memory element for mobile electronic device |
US8126993B2 (en) | 2006-07-18 | 2012-02-28 | Nvidia Corporation | System, method, and computer program product for communicating sub-device state information |
JP4979312B2 (ja) * | 2006-09-09 | 2012-07-18 | ソニー株式会社 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US8839005B2 (en) * | 2006-09-13 | 2014-09-16 | Sandisk Technologies Inc. | Apparatus for transferring licensed digital content between users |
US8423794B2 (en) | 2006-12-28 | 2013-04-16 | Sandisk Technologies Inc. | Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications |
US20090006796A1 (en) * | 2007-06-29 | 2009-01-01 | Sandisk Corporation | Media Content Processing System and Non-Volatile Memory That Utilizes A Header Portion of a File |
US8069298B2 (en) * | 2007-06-29 | 2011-11-29 | Sandisk Technologies Inc. | Method of storing and accessing header data from memory |
US7685374B2 (en) * | 2007-07-26 | 2010-03-23 | Siliconsystems, Inc. | Multi-interface and multi-bus structured solid-state storage subsystem |
US20090052670A1 (en) * | 2007-08-21 | 2009-02-26 | Samsung Electronics Co., Ltd. | Method and apparatus for storing digital content in storage device |
JP4473900B2 (ja) * | 2007-08-22 | 2010-06-02 | 株式会社東芝 | 半導体メモリ装置 |
US20090060182A1 (en) * | 2007-09-04 | 2009-03-05 | Thomas Killian | Apparatus and method for enhancing the protection of media content |
JP2009086890A (ja) * | 2007-09-28 | 2009-04-23 | Toppan Printing Co Ltd | 申請受理システムおよび申請受理方法 |
KR101453464B1 (ko) * | 2007-11-09 | 2014-10-21 | 삼성전자주식회사 | 이동통신 단말기의 컨텐츠 권한 정보 관리 장치 및 방법 |
EP2223232A4 (en) | 2007-11-16 | 2015-02-25 | Sonic Ip Inc | Hierarchical and reduced index structures for multimedia files |
KR20090052199A (ko) * | 2007-11-20 | 2009-05-25 | 삼성전자주식회사 | 저장 장치, 상기 저장 장치를 이용하는 단말장치와 그 방법 |
US8327051B2 (en) * | 2007-11-20 | 2012-12-04 | Sandisk Technologies Inc. | Portable handheld memory card and methods for use therewith |
US8315950B2 (en) * | 2007-12-31 | 2012-11-20 | Sandisk Technologies Inc. | Powerfully simple digital media player and methods for use therewith |
JP5025009B2 (ja) * | 2008-02-15 | 2012-09-12 | 株式会社東芝 | 認証方法、ホスト計算機及び記録媒体 |
US8695087B2 (en) * | 2008-04-04 | 2014-04-08 | Sandisk Il Ltd. | Access control for a memory device |
US8839002B2 (en) * | 2008-04-23 | 2014-09-16 | Cyberlink Corp. | Optical media recording device for protecting device keys and related method |
WO2009135196A1 (en) | 2008-05-02 | 2009-11-05 | Ironkey, Inc. | Enterprise device policy management |
US8713026B2 (en) * | 2008-06-13 | 2014-04-29 | Sandisk Technologies Inc. | Method for playing digital media files with a digital media player using a plurality of playlists |
US20090313432A1 (en) * | 2008-06-13 | 2009-12-17 | Spence Richard C | Memory device storing a plurality of digital media files and playlists |
US8009831B2 (en) * | 2008-06-30 | 2011-08-30 | Condel International Technologies Inc. | Method and system for hiding the decryption key in a dispersive way |
JP4620146B2 (ja) * | 2008-07-18 | 2011-01-26 | 株式会社東芝 | 情報処理装置及び認証方法 |
US8365279B2 (en) * | 2008-10-31 | 2013-01-29 | Sandisk Technologies Inc. | Storage device and method for dynamic content tracing |
CN101753683B (zh) * | 2008-12-03 | 2013-09-04 | 深圳富泰宏精密工业有限公司 | 手机防盗系统 |
US20100162120A1 (en) * | 2008-12-18 | 2010-06-24 | Derek Niizawa | Digital Media Player User Interface |
JP2010218428A (ja) * | 2009-03-18 | 2010-09-30 | Buffalo Inc | 外付け記憶装置及びその制御方法 |
GB2468862A (en) * | 2009-03-24 | 2010-09-29 | Steven John Kennedy | A method of protecting electronic content by encryption or deletion of consumed portions |
US8429365B2 (en) * | 2009-06-26 | 2013-04-23 | Sandisk Technologies Inc. | Memory device and method for embedding host-identification information into content |
US8745365B2 (en) | 2009-08-06 | 2014-06-03 | Imation Corp. | Method and system for secure booting a computer by booting a first operating system from a secure peripheral device and launching a second operating system stored a secure area in the secure peripheral device on the first operating system |
US8683088B2 (en) | 2009-08-06 | 2014-03-25 | Imation Corp. | Peripheral device data integrity |
US8977783B2 (en) * | 2009-10-21 | 2015-03-10 | Media Ip, Llc | High-speed secure content transfer to SD card from kiosk |
US8954625B2 (en) * | 2010-01-21 | 2015-02-10 | Lee Friedman | System, method and computer program product for portable multimedia content display |
US10158958B2 (en) * | 2010-03-23 | 2018-12-18 | Dolby Laboratories Licensing Corporation | Techniques for localized perceptual audio |
US8892691B2 (en) * | 2010-04-07 | 2014-11-18 | Apple Inc. | Real-time or near real-time streaming |
CN102479296A (zh) * | 2010-11-29 | 2012-05-30 | 公安部第一研究所 | 一种u盘数据防病毒木马方法 |
US8533812B1 (en) * | 2011-03-03 | 2013-09-10 | Symantec Corporation | Systems and methods for securing access to kernel devices |
JP5776432B2 (ja) * | 2011-08-11 | 2015-09-09 | ソニー株式会社 | 情報処理装置、および情報処理方法、並びにプログラム |
JP5747758B2 (ja) * | 2011-09-15 | 2015-07-15 | ソニー株式会社 | 情報処理装置、および情報処理方法、並びにプログラム |
US8826459B2 (en) * | 2011-11-29 | 2014-09-02 | Jason Swist | Systems and methods of automatic multimedia transfer and playback |
JP5100884B1 (ja) * | 2011-12-02 | 2012-12-19 | 株式会社東芝 | メモリ装置 |
US8831218B2 (en) * | 2012-04-10 | 2014-09-09 | Western Digital Technologies, Inc. | Digital rights management system and methods for provisioning content to an intelligent storage |
JP5377712B2 (ja) * | 2012-05-31 | 2013-12-25 | 株式会社東芝 | 電子機器 |
US9361483B2 (en) * | 2012-07-10 | 2016-06-07 | Forcepoint Federal Llc | Anti-wikileaks USB/CD device |
JP2013118616A (ja) * | 2012-09-24 | 2013-06-13 | Toshiba Corp | メモリ装置 |
WO2014049830A1 (ja) * | 2012-09-28 | 2014-04-03 | 富士通株式会社 | 情報処理装置および半導体装置 |
US9143331B2 (en) * | 2013-02-07 | 2015-09-22 | Qualcomm Incorporated | Methods and devices for authentication and key exchange |
US9342699B2 (en) * | 2013-11-06 | 2016-05-17 | Blackberry Limited | Method and apparatus for controlling access to encrypted data |
US10140477B2 (en) * | 2013-12-09 | 2018-11-27 | Thales E-Security, Inc. | Obfuscating in memory encryption keys |
US20150186656A1 (en) * | 2013-12-26 | 2015-07-02 | Hui Lin | Method for protecting digital contents by using memory card encryption and decryption |
JP5870163B2 (ja) * | 2014-06-30 | 2016-02-24 | 達男 眞子 | コンテンツ閲覧制限システム、コンテンツ閲覧制限方法及びコンテンツ閲覧制限プログラム並びにリムーバブルメディア読取装置 |
KR102230862B1 (ko) * | 2014-07-01 | 2021-03-24 | 삼성전자 주식회사 | 영상처리장치 및 그 제어방법 |
KR20160039922A (ko) | 2014-10-02 | 2016-04-12 | 삼성전자주식회사 | 영상처리장치 및 그 제어방법 |
US9626304B2 (en) * | 2014-10-21 | 2017-04-18 | Sandisk Technologies Llc | Storage module, host, and method for securing data with application information |
US10949508B2 (en) * | 2017-08-11 | 2021-03-16 | Productionpal, Llc | System and method to protect original music from unauthorized reproduction and use |
US11176265B2 (en) * | 2017-12-29 | 2021-11-16 | Stash America Llc | Data-centric interactive data security system |
US10630652B2 (en) * | 2017-12-29 | 2020-04-21 | Janine Darling | Data-centric secure data technology, archiving, and storage system |
US11017127B2 (en) | 2018-01-31 | 2021-05-25 | Seagate Technology Llc | Storage compute appliance with internal data encryption |
US10909272B2 (en) | 2018-01-31 | 2021-02-02 | Seagate Technology Llc | Storage compute appliance with user authentication and memory allocation capabilities |
WO2020051910A1 (en) * | 2018-09-14 | 2020-03-19 | Cobo Global Limited | Secure hardware cryptographic key storage device with detachable battery and anti-tamper security functionality |
US11483361B2 (en) * | 2020-06-24 | 2022-10-25 | KORD, Inc. | Audio stem access and delivery solution |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4465901A (en) * | 1979-06-04 | 1984-08-14 | Best Robert M | Crypto microprocessor that executes enciphered programs |
JPS6084686A (ja) | 1983-10-17 | 1985-05-14 | Toshiba Corp | 情報記録媒体の記録方式 |
NL8402095A (nl) * | 1984-07-02 | 1986-02-03 | Philips Nv | Inrichting voor het weergeven van informatie van een registratiedrager. |
US4661658A (en) | 1985-02-12 | 1987-04-28 | International Business Machines Corporation | Offline PIN validation with DES |
EP0198384A3 (en) | 1985-04-09 | 1988-03-23 | Siemens Aktiengesellschaft Berlin Und Munchen | Method and device for enciphering data |
DE3512785A1 (de) | 1985-04-10 | 1986-10-23 | Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt | Verfahren zur zugriffssicherung |
FR2592502B1 (fr) | 1985-12-26 | 1990-03-30 | Lefevre Jean Pierre | Certificateur a memorisation sequentielle |
DE3601526A1 (de) | 1986-01-20 | 1987-07-23 | Rene Dipl Biol Kleinhenn | Kopierschutzverfahren fuer computerprogramme mit hilfe der smart card |
FR2596177B1 (fr) | 1986-03-19 | 1992-01-17 | Infoscript | Procede et dispositif de sauvegarde qualitative de donnees numerisees |
CA2153445C (en) * | 1994-09-08 | 2002-05-21 | Ashok Raj Saxena | Video optimized media streamer user interface |
DE69532153T2 (de) | 1994-09-30 | 2004-09-02 | Mitsubishi Corp. | Datenurheberrechtsverwaltungssystem |
US5604801A (en) * | 1995-02-03 | 1997-02-18 | International Business Machines Corporation | Public key data communications system under control of a portable security device |
US5790423A (en) * | 1995-06-14 | 1998-08-04 | Audible, Inc. | Interactive audio transmission receiving and playback system |
DE69634850T2 (de) * | 1995-10-09 | 2006-05-18 | Matsushita Electric Industrial Co., Ltd., Kadoma | Informationsaufzeichnungsträger, informationswiedergabegerät und informationswiedergabeverfahren |
US5790431A (en) * | 1995-11-20 | 1998-08-04 | International Business Machines Corporation | Method and system for measuring availability in a distributed network |
US6118870A (en) * | 1996-10-09 | 2000-09-12 | Lsi Logic Corp. | Microprocessor having instruction set extensions for decryption and multimedia applications |
DE69733986T2 (de) | 1996-10-31 | 2006-01-26 | Matsushita Electric Industrial Co., Ltd., Kadoma | Vorrichtung zur verschlüsselten Kommunikation mit beschränkten Schaden bei Bekanntwerden eines Geheimschlüssels |
US5966441A (en) | 1996-11-18 | 1999-10-12 | Apple Computer, Inc. | Method and apparatus for creating a secure autonomous network entity of a network component system |
JPH11250141A (ja) * | 1998-03-04 | 1999-09-17 | Nippon Telegr & Teleph Corp <Ntt> | リアルタイムコンテンツの配信方法 |
JPH11328033A (ja) | 1998-05-20 | 1999-11-30 | Fujitsu Ltd | ライセンス委譲装置 |
US6523113B1 (en) | 1998-06-09 | 2003-02-18 | Apple Computer, Inc. | Method and apparatus for copy protection |
US6040622A (en) | 1998-06-11 | 2000-03-21 | Sandisk Corporation | Semiconductor package using terminals formed on a conductive layer of a circuit board |
JP3634636B2 (ja) | 1998-08-05 | 2005-03-30 | 株式会社東芝 | データ再生装置及びデータ記録装置並びにプログラム記録媒体 |
US6611812B2 (en) * | 1998-08-13 | 2003-08-26 | International Business Machines Corporation | Secure electronic content distribution on CDS and DVDs |
US6901457B1 (en) | 1998-11-04 | 2005-05-31 | Sandisk Corporation | Multiple mode communications system |
US6279114B1 (en) | 1998-11-04 | 2001-08-21 | Sandisk Corporation | Voltage negotiation in a single host multiple cards system |
US6332175B1 (en) * | 1999-02-12 | 2001-12-18 | Compaq Computer Corporation | Low power system and method for playing compressed audio data |
US6615192B1 (en) * | 1999-03-12 | 2003-09-02 | Matsushita Electric Industrial Co., Ltd. | Contents copying system, copying method, computer-readable recording medium and disc drive copying contents but not a cipher key via a host computer |
MY123388A (en) * | 1999-03-15 | 2006-05-31 | Sony Corp | Processing method and apparatus for encrypted data transfer |
US6367019B1 (en) | 1999-03-26 | 2002-04-02 | Liquid Audio, Inc. | Copy security for portable music players |
JP4161466B2 (ja) * | 1999-04-22 | 2008-10-08 | 日本ビクター株式会社 | コンテンツ情報記録方法及びコンテンツ情報処理装置 |
JP3682840B2 (ja) * | 1999-05-21 | 2005-08-17 | 日本ビクター株式会社 | コンテンツ情報記録方法及びコンテンツ情報記録装置 |
CA2338695C (en) * | 1999-05-28 | 2009-07-07 | Matsushita Electric Industrial Co., Ltd. | Semiconductor memory card, playback apparatus, recording apparatus, playback method, recording method, and computer-readable recording medium |
ID27746A (id) * | 1999-05-28 | 2001-04-26 | Matsushita Electric Ind Co Ltd | Kartu semikonduktor, peralatan playback, peralatan perekaman, metoda playback, metoda perekaman, dan media perekaman dapat dibaca kombuter |
JP4127587B2 (ja) * | 1999-07-09 | 2008-07-30 | 株式会社東芝 | コンテンツ管理方法およびコンテンツ管理装置および記録媒体 |
US7386516B2 (en) | 1999-09-10 | 2008-06-10 | Metavante Corporation | System and method for providing secure services over public and private networks using a removable portable computer-readable storage |
CN100414864C (zh) * | 2000-03-09 | 2008-08-27 | 松下电器产业株式会社 | 具有编辑装置和记录媒体的音频数据重放管理系统及方法 |
JP2001256113A (ja) * | 2000-03-13 | 2001-09-21 | Toshiba Corp | コンテンツ処理システムおよびコンテンツ保護方法 |
US6661812B1 (en) | 2000-04-05 | 2003-12-09 | Triscend Corporation | Bidirectional bus for use as an interconnect routing resource |
US6820148B1 (en) | 2000-08-17 | 2004-11-16 | Sandisk Corporation | Multiple removable non-volatile memory cards serially communicating with a host |
KR20030060981A (ko) | 2000-12-07 | 2003-07-16 | 쌘디스크 코포레이션 | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 |
US6313386B1 (en) | 2001-02-15 | 2001-11-06 | Sony Corporation | Music box with memory stick or other removable media to change content |
US6888532B2 (en) | 2001-11-30 | 2005-05-03 | Palmone, Inc. | Automatic orientation-based user interface for an ambiguous handheld device |
-
2001
- 2001-11-06 KR KR10-2003-7007607A patent/KR20030060981A/ko active IP Right Grant
- 2001-11-06 AU AU2002232494A patent/AU2002232494A1/en not_active Abandoned
- 2001-11-06 EP EP11003401.4A patent/EP2357651A3/en not_active Withdrawn
- 2001-11-06 WO PCT/US2001/046661 patent/WO2002047080A2/en active Application Filing
- 2001-11-06 EP EP01992016A patent/EP1512147A2/en not_active Withdrawn
- 2001-11-06 CN CNA018220096A patent/CN1720578A/zh active Pending
- 2001-11-06 JP JP2002548721A patent/JP4219680B2/ja not_active Expired - Fee Related
- 2001-12-06 US US10/006,465 patent/US7227952B2/en not_active Expired - Fee Related
- 2001-12-06 KR KR1020037007604A patent/KR100844998B1/ko not_active IP Right Cessation
- 2001-12-06 EP EP01990898A patent/EP1461808A2/en not_active Withdrawn
- 2001-12-06 JP JP2002548722A patent/JP4219681B2/ja not_active Expired - Fee Related
- 2001-12-06 AU AU2002230658A patent/AU2002230658A1/en not_active Abandoned
- 2001-12-06 CN CNB018214495A patent/CN100514471C/zh not_active Expired - Fee Related
- 2001-12-06 WO PCT/US2001/047014 patent/WO2002047081A2/en active Application Filing
- 2001-12-06 US US10/006,554 patent/US7840818B2/en not_active Expired - Lifetime
- 2001-12-07 TW TW090130438A patent/TW544579B/zh not_active IP Right Cessation
- 2001-12-07 TW TW090130439A patent/TW558903B/zh not_active IP Right Cessation
-
2007
- 2007-05-31 US US11/809,222 patent/US20070237329A1/en not_active Abandoned
- 2007-09-18 US US11/901,577 patent/US20080137865A1/en not_active Abandoned
-
2010
- 2010-11-04 US US12/927,001 patent/US8443208B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101270712B1 (ko) * | 2006-05-08 | 2013-06-03 | 후이 린 | 메모리 카드 암호화 및 복호화를 사용하여 디지털 컨텐츠를보호하는 방법 |
Also Published As
Publication number | Publication date |
---|---|
TW544579B (en) | 2003-08-01 |
US20020186842A1 (en) | 2002-12-12 |
WO2002047081A2 (en) | 2002-06-13 |
JP4219681B2 (ja) | 2009-02-04 |
JP2005506590A (ja) | 2005-03-03 |
AU2002232494A1 (en) | 2002-06-18 |
US20020176575A1 (en) | 2002-11-28 |
EP1512147A2 (en) | 2005-03-09 |
US7840818B2 (en) | 2010-11-23 |
CN1541391A (zh) | 2004-10-27 |
KR20040055724A (ko) | 2004-06-26 |
US20080137865A1 (en) | 2008-06-12 |
WO2002047080A3 (en) | 2005-01-13 |
JP2005506589A (ja) | 2005-03-03 |
US20070237329A1 (en) | 2007-10-11 |
JP4219680B2 (ja) | 2009-02-04 |
US20110191600A1 (en) | 2011-08-04 |
CN100514471C (zh) | 2009-07-15 |
TW558903B (en) | 2003-10-21 |
WO2002047080A2 (en) | 2002-06-13 |
CN1720578A (zh) | 2006-01-11 |
KR100844998B1 (ko) | 2008-07-09 |
US8443208B2 (en) | 2013-05-14 |
WO2002047081A3 (en) | 2004-07-08 |
EP2357651A3 (en) | 2013-06-26 |
EP1461808A2 (en) | 2004-09-29 |
EP2357651A2 (en) | 2011-08-17 |
WO2002047081A9 (en) | 2003-04-17 |
US7227952B2 (en) | 2007-06-05 |
AU2002230658A1 (en) | 2002-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20030060981A (ko) | 비휘발성 메모리 카드, 콤팩트 디스크 또는 다른매체로부터 기록된 오디오, 비디오 또는 다른 컨텐츠를재생하기 위한 시스템, 방법 및, 장치 | |
US6618789B1 (en) | Security memory card compatible with secure and non-secure data processing systems | |
US8393005B2 (en) | Recording medium, and device and method for recording information on recording medium | |
EP1313108B1 (en) | Memory and data processing units and data processing methods | |
JP2002135243A (ja) | データ再生装置、データ記録装置、およびデータ再生方法、データ記録方法、リスト更新方法、並びにプログラム提供媒体 | |
JP2007525755A (ja) | デジタルデータコンテンツの保護 | |
JP2002132583A (ja) | データ処理装置、データ記憶装置、およびデータ処理方法、並びにプログラム提供媒体 | |
JP2002132585A (ja) | 情報記録装置、情報再生装置、情報記録媒体、および情報記録方法、情報再生方法、並びにプログラム提供媒体 | |
JP2002132141A (ja) | データ記憶装置、およびデータ記録方法、データ再生方法、並びにプログラム提供媒体 | |
JP2002132456A (ja) | 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体 | |
JP2002539557A (ja) | 書き込みアクセスの際に位置とキーをランダム化することによる蓄積媒体のコピー保護 | |
JP2003044361A (ja) | データ保存再生システム、データ保存装置、データ再生装置、データ保存再生方法、プログラム、および媒体 | |
US6983281B1 (en) | Terminal apparatus | |
KR100320181B1 (ko) | 디지탈 데이터 파일 암호화 방법 | |
EP1585127A2 (en) | System, method, and device for playing back recorded audio, video or other content from non-volatile memory cards, compact disks, or other media | |
JP3882459B2 (ja) | メモリ装置、データ処理装置、データ処理システムおよびデータ処理方法 | |
KR100365916B1 (ko) | 데이터 암호화 장치 및 방법 | |
JP2002133767A (ja) | データ再生装置、データ記録装置、およびデータ再生方法、データ記録方法、並びにプログラム提供媒体 | |
JP2002132587A (ja) | データ再生装置、データ記録装置、およびデータ再生方法、データ記録方法、並びにプログラム提供媒体 | |
JP2006506762A (ja) | セキュアなローカルコピープロテクション | |
JP2006229277A (ja) | 記録再生システム | |
JP2002330128A (ja) | 半導体音楽再生装置 | |
MXPA00011207A (en) | Copy-protection on a storage medium by randomizing locations and keys upon write access |
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 | ||
NORF | Unpaid initial registration fee |