KR20010006967A - 메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법 - Google Patents

메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법 Download PDF

Info

Publication number
KR20010006967A
KR20010006967A KR1020000018210A KR20000018210A KR20010006967A KR 20010006967 A KR20010006967 A KR 20010006967A KR 1020000018210 A KR1020000018210 A KR 1020000018210A KR 20000018210 A KR20000018210 A KR 20000018210A KR 20010006967 A KR20010006967 A KR 20010006967A
Authority
KR
South Korea
Prior art keywords
memory unit
data
data processing
memory card
memory
Prior art date
Application number
KR1020000018210A
Other languages
English (en)
Other versions
KR100644736B1 (ko
Inventor
오카우에타쿠미
사사아키라
키하라노부유키
요코타테페이
Original Assignee
이데이 노부유끼
소니 가부시끼 가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이데이 노부유끼, 소니 가부시끼 가이샤 filed Critical 이데이 노부유끼
Publication of KR20010006967A publication Critical patent/KR20010006967A/ko
Application granted granted Critical
Publication of KR100644736B1 publication Critical patent/KR100644736B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/72Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00333Circuits 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 in header data, e.g. in sector headers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00478Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier wherein contents are decrypted and re-encrypted with a different key when being copied from/to a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits 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/00492Circuits 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/00507Circuits 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 consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits 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/00492Circuits 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/00528Circuits 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/10537Audio or video recording
    • G11B2020/10546Audio or video recording specifically adapted for audio data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/16Solid state audio

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Power Sources (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 데이터 처리 유닛에 현재 부착된 메모리 유닛이 소정의 유형인지를 판단하는 기술에 관한 것이다. 데이터 처리 유닛의 전원이 턴온되면, 메모리 유닛이 데이터 처리 유닛에 부착되었는지를 판단한다. 그런 다음, 메모리 유닛의 부트 블럭으로부터 데이터가 판독된다. 부트 블럭의 식별 정보를 참조로 하여, 부착된 메모리 유닛이 보안형 메모리 유닛과 같은 제1형 메모리 유닛인지를 판단한다. 부착된 메모리 유닛이 보안형 메모리 유닛이면, 인증 처리가 실행된다. 메모리 유닛이 인증된 후, 콘텐츠 데이터가 기록 또는 재생된다. 부착된 메모리 유닛이 보안형이 아닌 경우, 메모리 유닛이 사용될 수 없음을 나타내는 메시지가 발행된다. 데이터 처리 유닛이 비보안형 데이터 처리 유닛인 경우, 부착된 메모리 유닛이 보안형인지 비보안형인지에 상관없이 정상 동작이 실행된다.

Description

메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법{Memory unit, data processing unit, and data processing method}
본 발명은 메모리 유닛, 데이터 처리 유닛, 메모리 유닛을 기록, 예를 들면, 오디오 데이터를 기록하는 매체로 사용하는 방법에 관한 것이며, 상기 메모리 유닛은 데이터 처리 유닛에 부착, 탈착할 수 있다.
전기소거가능 PROM (EEPROM)은 메모리 스토리지의 각 비트가 두개의 트랜지스터로 구성되므로 비교적 거대한 물리적 공간을 요구하는 전기적으로 소거, 재기입가능한 메모리이다. 그러므로, EEPROM의 통합은 제한될 수 밖에 없다. 이러한 문제를 해결하기 위하여, 모든 비트 소거(all-bit-erase) 시스템을 이용하며 하나의 트랜지스터를 가진 1비트를 저장할 수 있는 플래쉬 메모리가 개발되었다. 플래쉬 메모리는 자기 디스크와 광 디스크와 같은 기록 매체를 대채할 수도 있고, 장치에 자유롭게 착탈 가능한 메모리 카드에 사용될 수 있다. 디지털 오디오 레코더/플레이어는 Compact DiscTM("CD") 또는 Mini DiscTM("MD")를 대신하여 이러한 메모리 카드를 사용할 수 있다.
이러한 메모리 카드를 이용한 오디오 레코더가 비교적 높은 품질로 디지털 오디오 데이터를 기록/재생하도록 하는 데이터 압축 방법을 이용하는 경우, 기록 및 재생되는 음악의 타이틀에 대한 저작권은 보호되어야 된다. 예를 들면, 허가되지 않은 메모리 카드를 기록/재생으로부터 보호하기 위해 암호화 기술을 사용할 수 있다. 즉, 허가된 메모리 카드에 정합되는 정식 레코더/플레이어가 암호화된 데이터의 암호해독을 위해 요구된다. 암호화 기술은 저작권 보호뿐만 아니라 메모리 카드에 저장된 정보의 보안을 보호하기 위해 사용될 수 있다.
그러나, 메모리 카드는 암호화 기능을 포함하지 않을 수도 있다. 그러므로, 이러한 메모리 카드에 기밀 데이터를 기록하고자 할 때, 데이터는 메모리 카드에 기록되기 전에 레코더/플레이어에 의해 암호화된다. 이러한 기술에는 두 가지 문제점이 있다. 첫번째로, 암호해독 키가 메모리 카드에 저장되면, 데이터의 보안은 유지되지 않는다. 두번째로, 암호해독 키가 레코더/플레이어에 저장되면, 암호화된 데이터는 데이터를 암호화및 기록한 소정의 레코더/플레이어에 의해서만 암호해독될 수 있다. 따라서, 암호화된 데이터를 저장한 메모리 카드는 다른 레코더/플레이어와 호환되지 않는다. 다시 말하면, 소정의 레코더/플레이어에 의해 암호화된 데이터가 메모리 카드에 저장되면, 메모리 카드에 저장된 암호화된 데이터는 다른 레코더/플레이어에 의해서 해독될 수 없다. 이러한 문제를 해결하기 위하여, 레코더/플레이어와 메모리 카드 모두가 암호화 기능을 가지며, 상호 허용된 시스템이 제안되었다. 이러한 시스템을 이용하면, 보안과 카드의 호환성이 유지된다.
사실상, 저작권을 가지지 않은 데이터가 메모리 카드에 기록되고 그로부터 재생되는 경우가 있다. 예를 들면, 대화가 기록되면, 압축 해제된 오디오 품질이 낮은 경우라도 높은 압축율을 가진 오디오 압축 방법이 사용된다. 이러한 경우, 기록된 데이터에 저작권을 보호할 필요는 없다. 또한, 메모리 카드가 전자 스틸 카메라, 비디오 카메라 등에 의해 제작된 화상을 기록하는 매체로 사용되면, 기록된 비디오 데이터상에 저작권을 보호할 필요는 없다.
암호화 기능을 가진 보안형 메모리 카드는 비보안형 메모리 카드보다 가격이 비싸다. 그러므로, 저작권 보호와 보안이 필요한 지의 여부에 따라, 보안형 또는 비보안형 메모리 카드를 선택적으로 사용한다.
레코더/플레이어 및 메모리 카드에 보안형, 비보안형의 두가지 유형이 각각 있는 경우, 호환성을 보장하기 위하여 각 레코더/플레이어와 메모리 카드가 보안형 또는 비보안형 중 어느 것으로 사용되어야 하는 지를 판단해야 한다. 또는, 보안형 메모리 카드의 형태는 비보안형 메모리 카드의 형태와 다를 수 있다. 예를 들면, 비보안형 레코더/플레이어 또는 보안형 레코더/플레이어에 각각 부착되는 것을 방지하기 위하여 보안형 메모리 카드 또는 비보안형 메모리 카드에 노치(notch)가 형성될 수도 있다.
레코더/플레이어와 메모리 카드 사이의 호환성 판단의 문제는 동일한 유형 (보안 또는 비시큐리)이 아닌 경우이다. 이런 경우, 동작은 무의미하며 지연이 발생할 것이다. 이러한 상황은 사용자를 귀찮게 한다. 상이한 유형의 메모리 카드를 위하여 상이한 형태를 사용하면 문제가 해결될 수도 있다. 그러나, 어떤 경우에도, 레코더/플레이어와 메모리 카드 사이의 호환성은 충분히 제공되지 않는다. 예를 들면, 시큐리형 메모리 카드는 비보안형 또는 저급의 레코더/플레이어와 함께 사용될 수 없다.
본 발명의 목적은 상기한 문제점을 해결하고자, 메모리 유닛이 소정의 기능을 가졌는지를 판단할 수 있는 메모리 유닛과 데이터 처리 유닛을 제공하는 것이다.
본 발명의 다른 목적은 메모리 유닛이 보안 기능을 가지고 있는 지를 판단할 수 있는 메모리 유닛과 데이터 처리 유닛을 제공하는 것이다.
본 발명의 또 다른 목적은 메모리 유닛이 속도 기능을 가지고 있는 지를 판단할 수 있는 메모리 유닛과 데이터 처리 유닛 및 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 비보안형 레코더/플레이어와 호환성이 있는 보안형 메모리 카드를 제공하는 것이다. 예를 들면, 비보안형 핸디 무비 카메라 (내장 카메라를 가진 기록/재생 유닛)에 의해 제작된 화상을 보안형 메모리 카드에 기록하고 이 카드로부터 기록된 화상을 재생할 수 있어야 한다. 이러한 경우, 암호화 기능은 사용되지 않는다.
본 발명의 또 다른 목적은 비고속형(non-high-speed type) 레코더/플레이어와 호환성이 있는 고속형 메모리 카드를 제공하는 것이다. 이러한 경우, 고속 기능은 사용되지 않는다.
본 발명의 이러한 목적들과 잇점들은 본 명세서와 도면으로부터 명확해 질 것이다.
본 발명의 실시예는 데이터 처리 유닛에/으로부터 착탈가능하며, 비휘발성 메모리와 상기 데이터 처리 유닛과의 커뮤니케이션을 위해 인터페이스를 가진 메모리 유닛이며, 여기에서 메모리 유닛이 소정의 기능을 실행할 수 있는지를 나타내는 식별 정보는 상기 비휘살성 메모리의 소정의 영역에 기록되며 메모리 유닛이 데이터 처리 유닛에 부착되면 데이터 처리 유닛에 의해 판독된다.
본 발명의 다른 실시예는 메모리 유닛에/으로부터 데이터를 기록/재생하는 데이터 처리 유닛이며, 여기에서 메모리 유닛은 비휘발성 메모리를 가지며 데이터 처리 유닛에/으로부터 부착/탈착되며, 데이터 처리 유닛은 메모리 유닛과의 커뮤니케이션을 위해 인터페이스를 가진다. 여기에서, 상기 데이터 처리 유닛은 메모리 유닛이 상기 메모리 유닛의 소정 영역에 기록된 식별 정보를 판독함으로써 소정의 기능을 실행할 수 있는지를 판단한다.
본 발명의 또 다른 실시예는 메모리 유닛에/으로부터 정보를 기입/판독하는 데이터 처리 유닛에서 사용되는 데이터 처리 방법에 있어서, 상기 방법은 상기 메모리 유닛이 상기 데이터 처리 유닛에 부착된 경우 메모리 유닛의 소정의 저장 영역으로부터 데이터를 판독하고, 소정 영역에 저장된 식별 정보를 점검하여 상기 메모리 유닛이 소정의 기능을 실행하는 지를 판단하는 단계를 포함한다.
본 발명에 따르면, 메모리 유닛은 메모리 유닛의 소정 영역에 기록된 소정의 기능을 메모리 유닛이 가지고 있는 지를 나타내는 식별 정보를 가진다. 이러한 메모리 유닛을 데이터 처리 유닛에 부착하면, 데이터 처리 유닛은 이러한 정보를 판독하고 메모리 유닛이 소정의 기능을 가지고 있는 지를 판단한다.
도 1은 본 발명의 실시예에 따른 레코더/플레이어와 메모리 카드의 전체적인 구성을 도시한 도면.
도 2는 본 발명의 실시예에 따른 보안형 메모리 카드의 내부 구조를 도시한 도면.
도 3은 본 발명의 실시예에 따른 비보안형 메모리 카드의 내부 구조를 도시한 도면.
도 4는 본 발명의 실시예에 따른 플래쉬 메모리의 파일 시스템 처리 계층의 구조를 도시한 도면.
도 5는 플래쉬 메모리의 물리적 데이터 구조의 포맷을 도시한 도면.
도 6은 플래쉬 메모리의 부트 블럭의 구조를 도시한 도면.
도 7은 플래쉬 메모리의 부트 블럭의 부트 및 속성 정보의 구조를 도시한 도면.
도 8a와 8b는 콘텐츠와 키 사이의 관계를 도시한 도면.
도 9는 기록 동작에서 암호화 과정을 설명하기 위해 참조될 도면.
도 10은 인증 과정을 설명하기 위해 참조될 도면.
도 11은 기록 동작에서 암호화 과정을 설명하기 위해 참조될 도면.
도 12는 재생 동작에서 암호화 과정을 설명하기 위해 참조될 도면.
도 13은 재생 동작에서 암호 해독 과정을 설명하기 위해 참조될 도면.
도 14는 레코더와 메모리 카드 사이에 배치된 인터페이스의 동작을 설명하기 위해 참조될 도면.
도 15는 레코더와 메모리 카드 사이에 배치된 인터페이스의 동작을 설명하기 위해 참조될 도면.
도 16은 본 발명의 동작을 설명하기 위해 참조될 흐름도
도 17은 본 발명의 동작을 설명하기 위해 참조될 흐름도.
*도면의 주요 부분에 대한 부호의 설명*
1 : 레코더/플레이어 2 : 중앙처리장치(CPU)
3 : 보안 블럭 4 : 동작 버튼
5 : 디스플레이 장치
도 1은 본 발명의 실시예에 따른 디지털 오디오 레코더/플레이어(1)의 구조를 도시한 블럭도이다. 디지털 오디오 레코더/플레이어(1)는 분리가능한 메모리 카드(또는 Memory StickTM)을 이용하여 디지털 오디오 신호를 기록및 재생한다. 레코더/플레이어(1)는 증폭 유닛(미도시), 스피커(미도시), CD 플레이어(미도시), MD 레코더(미도시), 튜너(미도시)등과 함께 오디오 시스템의 일부이다. 본 발명은 다른 오디오 세트에 적용가능하다. 예를 들면, 레코더/플레이어(1)는 휴대가능한 장치이다. 본 발명은 또한 위성 데이터 통신, 디지털 방송, 또는 인터넷등을 통하여 전파되는 디지털 오디오 데이터를 기록하는 세트 탑 박스에도 적용가능하다. 또한, 본 발명은 오디오 데이터보다는 동영상 데이터와 정지 영상 데이터를 기록/재생하는 시스템에 적용가능하다. 본 발명의 실시예에 따른 시스템은 디지털 오디오 신호이외에도 화상, 텍스트와 같은 부가 정보를 기록하고 재생한다.
레코더/플레이어(1)는 중앙처리장치(CPU)(2), 보안 블럭(3), 동작 버튼(4), 디스플레이 장치(5)를 가진다. 보안 블럭(3), 동작 버튼(4), 디스플레이 장치(5)는 버스(16)를 통하여 CPU(2)에 연결된다. 보안 블럭(3)은 데이터 암호화 규격(Data Encryption Standard:DES) 암호화 회로를 포함한다. 사용자의 동작 버튼(4)에 대응하는 기록 명령, 재생 명령등과 같은 데이터는 버스(16)를 통하여 CPU(2)에 제공된다. 다양한 정보들, 레코더/플레이어(1)의 동작 상태등은 디스플레이 장치(5)상에 표시된다. 오디오 인터페이스(6)는 아래에 상세히 설명될 외부 입력/출력과 내부 오디오 부호화기/복호화기(7) 사이에 배치된다.
후에 상세히 설명된 대로, 메모리 카드(40)는 플래쉬 메모리(비휘발성 메모리)(42), 제어 블럭(41), 보안 블럭(52)(DES 암호화 회로를 포함), 통신 인터페이스, 레지스터등을 가진 IC 칩이다. 메모리 카드(40)는 레코더/플레이어(1)에 착탈가능하다. 실시예에 따르면, 레코더/플레이어(1)는 암호화 기능(즉, 보안 블럭(52))을 가지지 않은 메모리와도 호환성이 있다.
오디오 부호화기/복호화기(7)는 메모리 카드(40)에 기입될 고효율의 암호화 방법에 따라 디지털 오디오 데이터를 부호화한다. 또한, 부호화기/복호화기(7)는 메모리 카드(40)로부터 판독된 부호화된 데이터를 복호화한다. MDs에 사용된 Adaptive Transform Acoustic Coding(ATRAC) 포맷의 변형인 고효율의 ATRAC3 포맷 부호화 방법을 사용할 수도 있다.
ATRAC3 포맷에서, 44.1KHz에서 샘플링되고 16비트로 양자화된 오디오 데이터는 고효율로 부호화된다. 처리될 오디오 데이터의 최소 데이터 유닛은 사운드 유닛("SU")이다. 1SU는 1024샘플 데이터를 가지며, 몇백 바이트의 데이터로 압축되는 (1024 x 16비트 x 2 채널) 비트를 가진다. 1SU의 기간은 약 23msec이다. 이러한 고효율 암호화 방법에서, 압축된 데이터의 크기는 원래 데이터의 크기보다 약 10배정도 작다. MDs에서 사용된 ATRAC3 포맷과 비교하여, ATRAC3 포맷에 따라 압축, 압축해제된 오디오 신호는 오디오 품질에 있어서도 떨어지지 않는다.
아나로그 입력(8)은 MD, 튜너, 테이프의 재생 출력 신호를 아나로그-디지털(A/D) 변환기(9)에 제공한다. A/D 변환기(9)는 아나로그 입력(8)으로부터의 신호를 디지털 오디오 신호(샘플링 주파수 = 44.1KHz, 양자화 비트수 = 16)로 변환하고, 이 변환된 디지털 오디오 신호를 오디오 인터페이스(6)에 제공한다. 디지털 입력(10)은 MD, CD의 디지털 출력 신호, 디지털 방송 신호, 또는 네트워크 전파된 오디오 데이터를 오디오 인터페이스(6)에 제공한다. 디지털 입력 신호는 예를 들면, 광 케이블을 통해 전송된다. 오디오 인터페이스(6)는 A/D 변환기(9)와 디지털 입력(10)으로부터의 입력 디지털 오디오 신호를 선택하여 오디오 부호화기/복호화기(7)에 제공한다.
오디오 부호화기/복호화기(7)는 입력된 디지털 오디오 신호를 부호화하여 보안 블럭(3)에 제공한다. 보안 블럭(3)은 데이터(여기에서는 디지털 오디오 신호)의 내용에 대한 저작권을 보호하기 위하여 오디오 부호화기/복호화기(7)로부터 수신된 부호화된 데이터를 암호화한다. 레코더/플레이어(1)의 보안 블럭(3)은 복수의 마스터 키와 각 유닛 고유의 저장 키를 가진다. 또한, 보안 블럭(3)은 랜덤 넘버 생성 회로(미도시)를 가진다. 보안 블럭(52)을 가진 메모리 카드(40)가 레코더/플레이어(1)에 부착되면, 레코더/플레이어(1)의 보안 블럭(3)은 메모리 카드(40)이 유효한지를 판단한다 (즉, 메모리 카드(40)를 인증한다). 레코더/플레이어(1)의 보안 블럭(3)이 적절한 인증 메모리 카드(40)를 가진 후, 레코더/플레이어(1)의 보안 블럭(3)과 메모리 카드(40)의 보안 블럭(52)은 세션 키를 공유한다.
보안 블럭(3)으로부터 출력된 암호화된 오디오 데이터는 CPU(2)에 제공된다. CPU(2)는 양방향 직렬 인터페이스(11)를 통하여 메모리 카드(40)과 통신한다. 실시예에서, 메모리 카드(40)는 레코더/플레이어(1)의 부착/탈착 메카니즘(미도시)에 부착된다. CPU(2)는 메모리 카드(40)의 플래쉬 메모리(42)에 암호화된 데이터를 기입한다. 암호화된 데이터는 CPU2와 메모리 카드(40) 사이에서 직렬로 전송된다.
CPU(2)는 메모리 인터페이스(11)를 통하여 메모리 카드(40)로부터의 암호화된 오디오 데이터를 판독하고, 이를 보안 블럭(3)에 제공한다. 보안 블럭(3)은 암호화된 오디오 데이터를 해독한다. 해독된 오디오 데이터는 해독된 오디오 데이터를 복호화하는 오디오 부호화기/복호화기(7)에 제공된다. 오디오 부호화기/복호화기(7)의 출력 신호는 오디오 인터페이스(6)를 통하여 D/A 변환기(12)에 제공된다. D/A 변환기(12)는 디지털 오디오 데이터를 아나로그 오디오 신호로 변환하고 그 결과를 출력(13)을 통하여 전송한다. 오디오 부호화기/복호화기(7)로부터 수신된 오디오 데이터와 보안 블럭(3)으로부터 수신된 해독된 데이터는 출력(14, 15)를 각각 통하여 또한 인터페이스(6)를 통하여 디지털 출력 신호로서 출력된다.
도 2는 메모리 카드(40)의 내부 구조를 도시한 블럭도이다. 메모리 카드(40)는 제어 블럭(41), 보안 블럭(52), 플래쉬 메모리(42)를 가진 1칩 집적회로(IC)이다. 도 2에 도시한 바와 같이, 레코더/플레이어(1)의 CPU(2)와 메모리 카드(40) 사이에 배치된 양방향 직렬 인터페이스(11)은 데이터와 함께 전송되는 클럭 신호를 전송하는 클럭 라인 SCK, 상태 신호를 전송하는 상태 라인 SBS, 데이터를 전송하는 데이터 라인 DIO, 인터럽트 라인 INT, 2개의 GND 라인, 2개의 VCC 라인, 2개의 예비(reserve) 라인을 포함한 10 라인으로 구성된다.
10라인들중 4개의 주요 라인들은 클럭 라인 SCK, 상태 라인 SBS, 데이터 라인 DIO, 인터럽트 라인 INT이다. 클럭 라인 SCK는 데이터 전송을 동기화하기 위해 클럭 신호를 전송하기 위해 사용된다. 상태 라인 SBS는 메모리 카드(40)의 상태를 나타내는 상태 신호를 전송하기 위해 사용된다. 데이터 라인 DIO는 명령과 암호화된 오디오 데이터를 입력, 출력하기 위해 사용된다. 인터럽트 라인 INT는 메모리 카드(40) 발행으로부터 레코더/플레이어(1)의 CPU(2)에 인터럽트 요청 신호를 전송하기 위해 사용된다. 메모리 카드(40)가 레코더/플레이어(1)에 부착되면, 인터럽트 신호가 생성된다. 다른 실시예에서, 인터럽트 신호는 데이터 라인 DIO를 통하여 전송되며, 이런 경우, 인터럽트 라인 INT는 접지되며 사용되지 않는다.
직렬/병렬 및 병렬/직렬 인터페이스 블럭("S/P 및 P/S IF 블럭")(43)은 인터페이스(11)에 결합된 제어 블럭(41)의 인터페이스이다. S/P 및 P/S IF 블럭(43)은 레코터/플레이어(1)로부터 수신된 직렬 데이터를 병렬 데이터로 변환한다. 또한, 제어 블럭(41)의 병렬 데이터를 직렬 데이터로 변환하여, 직렬 데이터를 레코더/플레이어(1)에 제공한다. 또한, S/P및 P/S IF 블럭(43)은 데이터 라인을 통하여 수신된 명령과 데이터를 플래쉬 메모리(42) 접근용과 암호화 과정 실행용으로 분리한다.
다시 말하면, 데이터 라인 DIO를 사용하여, 명령이 전송되면, 데이터가 전송된다. S/P P/S IF 블럭(43)은 수신된 명령과 데이터가 플래쉬 메모리(42) 접근용인지 또는 암호화 과정 실행용인지를 수신된 명령의 코드에 의해 판단한다. 판단 결과에 대응하여, 플래쉬 메모리(42) 접근용 명령은 명령 레지스터(register)(44)에 저장되며, 데이터는 페이지 버퍼(45)와 기입 레지스터(46)에 저장된다. 에러 보정 코드 부호화 회로(47)은 기입 레지스터(46)와 연결되어 배치된다. 에러 보정 코드 부호화 회로(47)는 페이지 버퍼(45)에 임시로 저장되는 데이터에 대한 에러 보정 코드의 용장(redundant) 코드를 생성한다.
명령 레지스터(44), 페이지 버퍼(45), 기입 레지스터(46), 에러 보정 코드 부호화 회로(47)의 출력 데이터는 플래쉬 메모리 인터페이스및 시퀀서 ("메모리 IF 및 시퀀서)(51)에 제공된다. 메모리 IF 및 시퀀서(51)는 플래쉬 메모리(42)에 결합된 인터페이스이며, 플래쉬 메모리(42)와 제어 블럭(41) 사이에 교환되는 데이터를 제어한다. 예를 들면, 데이터는 메모리 IF 및 시퀀서(51)를 통하여 플래쉬 메모리(42)에 기입된다.
플래쉬 메모리(42)로부터 판독된 데이터는 메모리 IF 및 시퀀서(51)를 통하여 페이지 버퍼(45), 판독 레지스터(48), 에러 보정 회로(49)에 제공된다. 에러 보정 회로(49)는 페이지 버퍼(45)에 저장된 데이터의 에러를 보정한다. 페이지 버퍼(45)로부터 출력된 에러 보정 데이터와 판독 레지스터(48)로부터 출력된 데이터는 S/P 및 P/S IF 블럭(43)에 제공되며, 직렬 인터페이스(11)를 통하여 레코더/플레이어(1)의 CPU(2)에 제공된다.
플래쉬 메모리(42)에 기입된 콘텐츠(ATRAC3 포맷으로 압축된 오디오 데이터:ATRAC3 데이터)의 저작권을 보호하기 위하여, 레코더/플레이어(1)의 보안 블럭(3)과 메모리 카드(40)의 보안 블럭(52)은 함께 콘텐츠를 암호화한다. 보안 블럭(52)는 버퍼, 메모리(53), DES 암호화 회로(54), 비휘발성 메모리(55)등을 가진다.
도 2에 도시한 바와 같이, 구성 ROM(50)이 제어 블럭(41)에 배치된다. 구성 ROM(50)은 메모리 카드(40)의 버전 정보와 다양한 종류의 속성 정보를 저장한다. 메모리 카드(40)는 사용자에 의해 동작가능한 쓰기 보호 스위치(60)를 가진다. 스위치(60)를 쓰기 보호 위치에 두면, 레코더/플레이어(1)가 플래쉬 메모리(42)에 소거 명령을 전송하여도, 플래쉬 메모리(42)에 저장된 데이터는 소거되지 않는다. 스위치(60)를 쓰기 비보호 위치에 두면, 플래쉬 메모리(42)에 저장된 데이터는 소거가능하다. 발진기(61)는 메모리 카드(40)에서 실행된 과정들에 대한 타이밍 참조로서 사용되는 클럭 신호를 생성한다.
메모리 카드(40)의 보안 블럭(52)은 복수의 인증 키와 각 메모리 카드 고유의 저장 키를 가진다. 비휘발성 메모리(55)는 보안 블럭(52)의 외부로부터의 접근이 불가한 암호화 또는 저장 키를 저장한다. 보안 블럭(52)은 랜덤 넘버 생성 회로를 가진다. 보안 블럭(52)은 레코더/플레이어(1)(소정의 데이터 포맷을 이용하는 전용 시스템을 형성한다)을 인증하고 세션 키를 공유한다. ATRAC3 데이터를 암호화할 콘탠츠 키는 세션 키로 암호화되고 레코더/플레이어(1)과 메모리 카드(40) 사시에 전송된다. 메모리 카드(40)의 보안 블럭(52)과 함께, 레코더/플레이어(1)의 보안 블럭(3)은 각 세트 고유의 저장 키를 가진다. 콘텐츠가 암호화되고 플래쉬 메모리(42)에 저장되면, 저장 키와 대응하는 콘텐츠 키가 암호화되어 암호화된 콘텐츠와 함께 저장된다.
도 3은 암호화 기능을 가지지 않은 메모리 카드(40')를 도시한다. 다시 말하면, 메모리 카드(40')는 비보안형 메모리 카드이다. 도 2의 메모리 카드(40)와 달리, 메모리 카드(40')는 보안 블럭(52)을 가지지 않는다. 메모리 카드(40')의 나머지 구조는 메모리 카드(40)와 실질적으로 동일하다. 또한, 메모리 카드(40')의 크기와 모양은 메모리 카드(40)와 동일하다. 도 1의 레코더/플레이어(1)가 보안형 레코더이므로, 레코더/플레이어(1)와 메모리 카드(40)는 상호 인증되며 그 사이에 키가 통신된다. 도 3의 메모리 카드(40')가 레코더/플레이어(1)에 부착되면, 레코더/플레이어(1)는 메모리 카드(40')가 비보안형 메모리 카드이며 레코더/플레이어(1)와 함께 사용될 수 없음을 판단한다.
레코더/플레이어(1)이 그에 부착된 메모리 카드의 유형을 판단하는 몇가지 방법이 있다. 일예로서, 메모리 카드(40')가 레코더/플레이어(1)에 부착되면, 인증을 위하여 레코더/플레이어(1)에서 메모리 카드(40')로 키가 전송된다. 메모리 카드(40')가 레코더/플레이어(1)에 정확한 응답을 전송하지 않으므로, 레코더/플레이어(1)는 타임-아웃 시간이 경과한 후 메모리 카드(40')가 보안형이 아님을 판단한다. 또 다른 예로서, 메모리 카드(40 또는 40')가 레코더/플레이어(1)에 부착되면, 메모리 카드가 보안형인지를 나타내는 식별 정보가 메모리 카드의 소정 영역(부트 영역)에 기록된다. 이러한 식별 정보를 판독한 후, 레코더/플레이어(1)는 그에 부착된 메모리 카드의 유형을 판단한다.
도 1에 도시한 레코더/플레이어(1)에 부가하여, 본 발명에 따라 비보안형 메모리 카드(40')를 사용하는 유닛을 설명한다. 일예는 CCD(Charge Coupled Device) 카메라로 제작된 화상을 메모리 카드(40')에 기록하고 그로부터 화상을 재생하는 디지털 핸디 무비 카메라이다. 후에 설명되겠지만, 본 발명의 실시예에 따르면, 메모리 카드(40)의 호환성을 개선하기 위하여, 디지털 핸디 무비 카메라와 같은 비보안 장치는 메모리 카드(40)를 이용하여 데이터를 기록및 재생할 수 있도록 구성된다. 즉, 상기와 같이, S/P 및 P/S IF 블럭(43)은 명령과 데이터를 플래쉬 메모리(42)와 보안 블럭(52)용으로 구분하는 기능을 가진다.
실시예에 따라, 메모리 카드(40, 40')는 개인용 컴퓨터의 디스크 모양의 기록 매체 FAT(File Allocation Table) 파일 시스템을 이용하여 데이터를 저장한다. 플래쉬 메모리(42)는 IPL(Initial Program Load) 영역, FAT 영여그 루트(route) 디렉토리를 가진다. IPL 영역은 레코더/플레이어(1)의 메모리에 최초로 로드된 프로그램의 주소를 저장한다. 또한, IPL 영역은 플래쉬 메모리(42)의 다양한 정보를 저장한다. FAT 영역은 플래쉬 메모리(42)의 메모리 블럭과 연관하여 데이터를 저장한다. 즉, FAT 영역은 사용되지 않은 블럭, 후속 블럭 번호, 불량 블럭, 최종 블럭을 나타내는 값을 저장한다. 루트 디렉토리는 디렉토리 엔트리(파일 속성, 업데이트된 날짜(년도, 월, 일), 개시 클러스터, 파일 크기등)를 저장한다.
메모리 카드(40, 40')의 포맷으로 정의된 파일 관리 시스템뿐만 아니라, 음악 파일을 위한 파일 관리 정보(트랙 정보 관리 파일)를 정의할 수 있다. 트랙 정보 관리 파일은 메모리 카드(40, 40')의 사용자 블럭을 이용하여 플래쉬 메모리(42)에 저장된다. 그러므로, 메모리 카드(40 또는 40')의 FAT이 손상되어도, 파일은 복구될 수 있다.
트랙 정보 관리 파일은 CPU(2)에 의해 생성된다. 레코더/플레이어(1)의 전원이 턴온되면, CPU(2)는 메모리 카드(40 또는 40')가 레코더/플레이어(1)에 부착되었는지를 판단한다. 메모리 카드(40 또는 40')가 레코더/플레이어(1)에 부착되면, CPU(2)는 플래쉬 메모리(42)의 부트 블럭을 판독한다. 부트 블럭의 식별 정보에 따라, CPU(2)는 부착된 메모리 카드가 보안형 메모리 카드인지를 판단한다.
메모리 카드(40)가 부착되면 (즉, 보안형이면), CPU(2)는 인증 절차를 실행한다. 메모리 카드(40)로부터 판독된 기타 데이터는 CPU(2)에 의해 관리된 메모리(미도시)에 저장된다. 사용된 메모리 카드(40 또는 40')의 플래쉬 메모리(42)에서, 쉽핑(shipping)되기전에, FAT 과 루트 방향이 기입된다. 데이터가 기록되면, 트랙 정보 관리 파일이 생성된다. CPU(2)가 메모리 카드(40)을 인증한 후, 레코더/플레이어(1)은 암호화된 ATRAC3 데이터 파일을 기록 또는 재생한다.
데이터가 기록되면, 동작 버튼(4)의 동작에 대응하여 기록 명령이 발행된다. 입력 오디오 데이터는 부호화기/복호화기(7)에 의해 압축된다. 부호화기/복호화기(7)로부터 수신된 ATRAC3 데이터는 보안 블럭(3)에 의해 암호화된다. CPU(2)는 암호화된 ATRAC3 데이터를 메모리 카드(40)의 플래쉬 메모리(42)에 저장한다. 그런 다음, FAT와 트랙 정보 관리 파일이 업데이트된다. 파일이 업데이트될 때마다 (즉, 오디오 데이터가 기록되면), FAT와 트랙 정보 관리 파일이 CPU(2)에 의해 제어되는 메모리에 재기입된다. 메모리 카드(40)가 레코더/플레이어(1)로부터 분리되거나, 레코더/플레이어(1)의 전원이 턴온되면, 최종 FAT와 트랙 정보 관리 파일이 메모리로부터 메모리 카드(40)의 플래쉬 메모리(42)에 제공된다. 이런 경우, 오디오 데이터가 기록될 때마다, 플래쉬 메모리(42)에 저장된 FAT와 트랙 정보 관리 파일이 재작성된다. 데이터가 편집(edit)되면, 트랙 정보 관리 파일의 콘텐츠는 업데이트된다.
도 4는 저장 매체로서 메모리 카드(40 또는 40')를 메모리 카드(40 또는 40')를 사용하는 컴퓨터 시스템의 파일 시스템 처리의 계층을 도시하는 개략적 도면이다. 도시한 바와 같이, 최상단 계층 레벨은 어플리케이션 처리층이다. 어플리케이션 처리층은 파일 관리 처리층, 논리 어드레스 관리층, 물리 어드레스 관리층, 플래쉬 메모리 접근층이 후속된다. 파일 관리 처리층은 FAT 파일 시스템이다. 물리적 어드레스는 메모리 카드(40 또는 40')의 플래쉬 메모리(42)의 개별 블럭에 지정된다. 플래쉬 메모리(42)의 블럭과 그의 물리적 어드레스간의 관계는 변화하지 않는다. 논리적 어드레스는 파일 관리 처리층상에 논리적으로 처리되는 주소이다.
도 5는 메모리 카드(40 또는 40')의 플래쉬 메모리(42)에서 처리된 데이터의 물리적 구조를 도시한 도면이다. 플래쉬 메모리(42)에서, 데이터 유닛(세그먼트라고 함)는 소정 수의 블럭(고정 길이)으로 나누어진다. 하나의 블럭은 소정 수의 페이지(고정 길이)로 나누어 진다. 플래쉬 메모리(42)에서, 데이터는 한번에 하나의 블럭씩 소거된다. 마찬가지로, 각 페이지의 크기는 동일하다. 1블럭은 페이지0에서 페이지m으로 구성된다. 1블럭은 8KB(킬로바이트) 또는 16KB의 저장 용량을 가지며, 1페이지는 512B(바이트)의 저장 용량을 가진다. 1블럭이 8KB의 저장 용량을 가지면, 플래쉬 메모리(42)의 총 저장 용량은 4MB (512 블럭) 또는 8MB(1024 블럭)이다. 1블럭이 16KB의 저장 용량을 가지면, 플래쉬 메모리(42)의 총 저장 용량은 16MB(1024 블럭), 32MB(2048 블럭), 64MB (4096 블럭)이다.
1페이지는 512 바이트의 데이터 부분과 16 바이트의 용장 부분으로 구성된다. 용장 부분의 처음 3 바이트는 데이터가 업데이트될 때마다 재작성되는 덮어쓰기(overwrite)부분이다. 처음 3 바이트는 연속적으로 블럭 상태 영역, 페이지 상태 영역, 업데이트 상태 영역을 포함한다. 용장 부분의 나머지 13 바이트는 데이터 부분의 내용에 따라 달라지는 고정 데이터이다. 13 바이트는 관리 플래그 영역(1바이트), 논리적 어드레스 영역(2바이트), 포맷 예비 영역(5바이트), 분산 정보 에러 보정 코드 (Error-Correcting Code:ECC)(2바이트), 데이터 ECC 영역(3바이트)을 포함한다. 분산 정보 ECC 영역은 관리 플래그 영역, 논리적 어드레스 영역, 포맷 예비 영역에 대한 에러 보정에 위한 용장 데이터를 포함한다. 데이터 ECC 영역은 512-바이트 영역의 데이터에 대한 에러 보정 처리를 위한 용장 데이터를 포함한다.
관리 플래그 영역은 시스템 플래그(1:사용자 블럭, 0:부트 블럭), 변환 테이블 플래그(1:무효, 0: 테이블 블럭), 복사 금지 플래그 (1:복사 허용, 0:복사 불허), 접근 허용 플래그(1:프리(free), 0:판독 금지)를 포함한다.
처음 2 블럭(블럭 0,1)은 부트 블럭이다. 블럭1은 블럭0의 백업이다. 부트 블럭은 메모리 카드(40 또는 40')에서 유효하지 않은 최상단 블럭이다. 메모리 카드(40 또는 40')가 레코더/플레이어(1)에 부착되면, 부트 블럭이 제일 먼저 액서스된다. 잔여 블럭들은 사용자 블럭이다. 부트 블럭의 페이지0은 헤더 영역, 시스템 엔트리 영역, 부트 및 속성 정보 영역을 포함한다. 부트 블럭의 페이지1은 금지된 블럭 데이터 영역을 포함한다. 부트 블럭의 페이지2는 CIS(Card Information Structure)/IDI(Idenfity Driver Information) 영역을 포함한다.
도 6은 부트 블럭의 페이지 0, 1, 2를 도시한다. 부트 블럭의 헤더(368바이트)는 부트 블럭 ID, 포맷 버전, 부트 블럭의 유효 엔트리수를 저장한다. 시스템 엔트리(48바이트)는 금지된 블럭 데이터의 시작 위치, 그 데이터 크기, 그 데이터 유형, CIS/IDI의 데이터 시작 위치, 그 데이터 크기, 그 데이터 유형을 저장한다. 부트 및 속성 정보는 메모리 카드 유형 (판독 전용형, 재작성형, 하이브리드형), 블럭 크기, 블럭수, 총 블럭수, 보안/비보안형, 카드 제작 데이터(제작일)등을 포함한다.
도 7은 도 6에 도시한 부트 및 속성 정보(96바이트)의 구조를 도시한다. 부트 및 속성 정보는 메모리 카드의 종류, 유형 (판독전용, 판독 쓰기 인에이블, 두가지 유형의 하이브리드등), 블럭 크기, 블럭수, 총 블럭수, 보안형/비보안형, 제작 데이터(제작일:년, 월, 일)등을 포함한다. 레코더/플레이어(1)는 보안 유형 정보(1바이트)를 이용하여 메모리 카드가 보안형인지를 판단한다. 도 7에서, (*1)은 메모리 카드가 부착된 경우 레코더/플레이어(1)이 판독, 점검하는 데이터 항목을 나타내며, (*2)는 제작/품질 관리 데이터 항목을 나타낸다.
플래쉬 메모리(42)의 절연막은 이 메모리에 저장된 데이터가 재작성될 때마다 품질이 저하된다. 그러므로, 메모리 카드(40 또는 40')의 수명은 플래쉬 메모리(42)가 재기입되는 횟수에 의해 제한된다. 따라서, 플래쉬 메모리(42)의 특정 저장 영역(블럭)을 반복적으로 접근하는 것을 금지하는 것이 바람직하다. 따라서, 특정 물리적 어드레스에 저장된 데이터가 재작성될 때, 업데이트된 데이터는 동일 블럭으로 되돌아가 기입되지 않는다. 대신에, 업데이트된 데이터는 사용되지 않은 블럭에 기입된다. 그러므로, 데이터가 업데이트된 후, 물리적 주소와 논리적 주소 사이의 관계는 변경된다. 이러한 과정(스와핑 과정이라고 함)이 실행되면, 동일한 블럭으로의 반복적으로 접근은 금지된다. 이렇게 하여, 플래쉬 메모리(42)의 서비스 수명이 연장된다.
논리적 어드레스가 블럭에 기입된 데이터에 대응하므로, 업데이트된 데이터가 또 다른 블럭으로 물리적으로 이동한다고 해도, FAT에는 동일한 논리적 어드레스가 유지된다. 스와핑 과정은 논리적 어드레스와 물리적 어드레스 사이의 관계의 변화를 유발한다. 이렇게 하여, 논리적 어드레스를 물리적 어드레스로 변환하는 종래의 테이블은 이러한 스와핑 과정이 실행되면 그에 따라 변경된다. 변환 테이블을 참조로, FAT에 의해 지정된 논리적 어드레스에 대응하는 물리적 어드레스가 획득된다. 이렇게 하여, 업데이트된 데이트는 동일한 논리적 어드레스를 이용하여 적절하게 액서스된다.
논리적 어드레스-물리적 어드레스 변환 테이블은 CPU(2)에 의해서 RAM에 저장된다. 그러나, RAM의 저장 용량이 작은 경우, 논리적 어드레스-물리적 어드레스 변환 테이블은 플래쉬 메모리(42)에 저장될 수 있다. 이 테이블은 기본적으로 오름 차순으로 배열된 논리적 어드레스(2바이트)를 물리적 어드레스(2바이트)와 상호연관시킨다. 플래쉬 메모리(42)의 최대 저장 용량이 128MB(8192블럭)이므로, 8192 어드레스들은 2바이트로 표시될 수 있다. 또한, 논리 어드레스-물리 어드레스 변환 테이블은 플래쉬 메모리의 저장 용량에 비례한다. 플래쉬 메모리(42)의 저장 용량이 8MB(2 세그먼트)이면, 2 세그먼트에 대응하는 2 페이지는 논리 어드레스-물리 어드레스 변환 테이블을 위해 사용된다. 논리 어드레스-물리 어드레스 변환 테이블은 플래쉬 메모리(42)에 저장된 경우, 각 페이지의 용장부의 관리 플래그의 1비트는 관련 블럭이 논리 어드레스-물리 어드레스 변환 테이블에 저장되었는지의 여부를 나타낸다.
이제, 보안 보호 기능에 대해 보다 상세히 설명한다. 우선, 도 8A와 8B에서, 키와 콘텐츠 사이의 관계가 도시되어있다. 플래쉬 메모리(42)에 저장된 각 곡조(또는 노래)는 트랙이라고 한다. 도 8a는 플래쉬 메모리(42)에 저장된 1트랙을 도시한다. 도 8a에 도시한 바와 같이, 각 트랙은 키 영역(헤더)(101)을 포함한다. 암호화된 오디오 데이터의 각 트랙(타이틀)에 대해 생성된 콘텐츠 키 CK는 메모리 카드 고유의 저장 키 Kstm로 암호화되어 그 결과로 나타나는 데이터가 키 영역(101)에 저장된다. 콘텐츠 키 CK와 저장 키 Kstm에 대한 암호화 과정에서 DES가 사용된다. DES(Kstm, CK)는 콘텐츠 키 CK가 저장 키 Kstm으로 암호화되었음을 나타낸다. 부호화된값은 바람직하게 56비트의 데이터와 CRC(Cyclical Redundancy Checking)에 의해 검출된 8비트의 에러로 구성된 64비트를 가진다.
각 트랙은 부분들(102)로 나누어진다. 부분 키 PK는 각 부분에 기록된다. 도 8a에 도시된 트랙은 하나의 부분(102)을 가진다. 부분(102)는 블럭(103) 세트(각 16KB)이다. 각 블럭(103)은 블럭 시드 BK_SEED 와 최초 벡터 INV를 저장한다. 부분 키 PK는 콘텐츠의 암호화를 위해 블럭키 BK를 생성하기 위해 콘텐츠 키 CK와 한쌍을 이룬다. 즉, BK = DES(CK(+)PK,BK_SEED)(56비트 + 8비트)(여기에서 (+)는 배타적 논리합(exclusive OR)을 나타낸다). 최초 벡터 INV는 블럭에 대한 암호화/해독 과정을 위한 최초값이다.
도 8b는 레코더/플레이어(1)에서 콘텐츠 데이터에 관한 것이다. 콘텐츠의 각 트랙에 대한 콘텐츠 키 CK가 해독되며, 결과 데이터는 레코더 고유의 저장 키 Kstd로 재암호화된다. 재암호화된 데이터는 키 영역(111)에 저장된다. 즉, 해독 과정은 IDES(Kstm,CK)(56 비트 + 8 비트)에 의해 표시된다. 재암호화 과정은 DES (Kstd,CK)(56비트+8비트)에 의해 표시된다. 블럭 키 BK를 생성하는 부분 키 PK는 콘텐츠의 각 부분(112)에 대해 기록된다. 부분(112)의 각 블럭(113)은 블럭 시드 BD_SEED 와 최초 벡터 INV를 저장한다. 메모리 카드와 함께, 블럭 키 BK는 BK = DES(CK(+)PK,BK_SEED)(56비트+8비트)로 나타낸다.
메모리 카드(40)로의 쓰기 동작
레코더/플레이어(1)의 기록(쓰기)에 사용되는 암호화 과정을 도 9와 함께 설명한다. 설명의 편의상, 도 9에서, 도 1과 유사한 부분들은 동일한 참조 번호를 사용하였으며 이에 대한 설명은 생략한다. 또한, 레코더/플레이어(1)과 메모리 카드(40)의 구성요소들 사이에서 데이터와 명령 전송에 사용되는 인터페이스(11), 버스(6), 제어 블럭(41)은 도 9와 후속되는 설명에서 생략되었다. 도 9에서, SeK는 레코더/플레이어(1)와 메모리 카드(40) 사이에 상호 인증되어 공유되는 세션 키이다. 도 9에서, 참조번호 10'는 CD이며, 디지털 입력(10)에 입력된 디지털 오디오 신호의 소스이다.
메모리 카드(40)가 레코더/플레이어(1)에 부착되면, 레코더/플레이어(1)는 메모리 카드(40)가 보안형 메모리 카드인지를 부트 영역의 식별 정보로 판단한다. 메모리 카드(40)가 보안형 메모리 카드이므로, 레코더/플레이어(1)와 메모리 카드(40)는 상호 인증된다.
레코더/플레이어(1)와 메모리 카드(40) 사이의 상호 인증 과정은 도 10을 참조로 아래와 같이 설명된다.
레코더/플레이어(1)에서 메모리 카드(40)로 쓰기 요청 신호가 전송된 후, 레코더/플레이어(1)와 메모리 카드(40)는 다시 상호 인증되며, 이에 관하여서는 도 10에서 보다 상세히 설명된다. 레코더/플레이어(1)와 메모리 카드(40)가 상호 식별 과정에 따라 서로를 적합하다고 인식하면, 후에 도 11을 참조로 보다 상세히 설명될 키 쓰기 과정이 실행된다. 그렇지 않으면, 쓰기 동작은 종료된다. 키 쓰기 과정이 완료되면, 오디오 데이터가 암호화되어 CPU(2)에 의해 인터페이스(11)를 통하여 메모리 카드(40)에 기입된다.
도 9에서, 레코더/플레이어(1)는 기입될 데이터(곡조)의 각 트랙을 위한 랜덤 넘버를 생성하고 각 랜덤 넘버에 따라 대응하는 콘텐츠 키 CK를 생성한다. 레코더/플레이어(1)의 보안 블럭(3)은 세션 키 SeK를 이용하여 콘텐츠 키 CK를 암호화한다. 레코더/플레이어(1)는 메모리 카드(40)에 암호화된 콘텐츠 키 CK를 출력한다. 메모리 카드(40)의 보안 블럭(52)의 DES 암호화/해독 회로(54)는 암호화된 콘텐츠 키 CK를 해독하고 메모리(55)로부터의 저장 키 Kstm을 이용하여 해독된 콘텐츠 키 CK를 재암호화한다. 메모리 카드(40)는 재암호화된 CK를 레코더/플레이어(1)(CPU(2))에 출력한다. 레코더/플레이어(1)(CPU(2))는 재암호화된 콘텐츠 키 CK를 각 트랙의 키 영역(111)(도 8b에 도시한)에 설정한다. 레코더/플레이어(1)는 각 트랙의 각 부분 데이터 영역(112)(도 8b에 도시)를 위한 랜덤 넘버를 생성하고, 각 랜덤 넘버에 따라 부분 키 PK를 생성한다. 생성된 각각의 부분 키 PK는 CPU(2)에 의해 대응하는 부분 데이터 영역(112)에 설정된다.
임시키 TMK는 각 부분 데이터 영역(112)에 대하여 레코더/플레이어(1)에 의해 부분 키 PK와 콘텐츠 키 CK에 대하여 아래의 수식(1)과 같이 XOR를 실행하여 생성된다. 임시 키 TMK를 생성하는 것은 XOR 함수를 사용하는 것에 제한되지 않는다. 간단한 AND 연산자와 같은 기타 함수 연산자들을 사용할 수도 있다.
TMK = PK XOR CK ...(1)
레코더/플레이어(1)는 각 부분 데이터 영역(112)의 각 블럭(113)에 대한 랜덤 넘버를 생성하고 각 랜덤 넘버에 따라 블럭 시드 BK_SEED를 생성한다. 또한, 레코더/플레이어(1)(CPU(2))는 생성된 블럭 시트 BK_SEED를 각 대응하는 블럭(113)에서의 적절한 위치에 설정한다. 레코더/플레이어(1)는 수식(2)에서 임시 키 TMK와 블럭 시드 BK_SEED를 이용하여 각 블럭(113)에 대한 블럭 키 BK를 생성하기 위한 MAC(Message Authentication Code) 동작을 실행한다.
BK = MAC (TMK,BK_SEED) ...(2)
블럭 키 BK를 생성하기 위해 SHA-1(secure Hash algorithm), RIPEMD-160, 또는 기타 일방 Hash 함수의 입력에 비밀키를 사용하여 MAC 연산이 아닌 과정을 실행할 수 있다. 여기에서, 일방향 함수 f는 x로부터 y =f(x) 를 산출하기에 용이하나 y로부터 x를 구하기는 어려운 함수를 정의한다. 일방향 Hash 함수는 "Handbook of Applied Cryptography, CRC Press"에 보다 상세히 설명되어 있다.
오디오 부호화기/복호화기(7)는 CD(10')으로부터 디지털 입력(10)으로 입력된 디지털 오디오 신호 또는 아니로그 입력(8)에 입력된 아나로그 오디오 신호를 디지털 신호로 변환하는 A/D 변환기(9)로부터의 디지털 신호를 ATRAC3 포맷에 따라 압축한다. 그런 다음, 보안 블럭(3)은 압축된 오디오 데이터를 블럭 키 BK를 이용하여 CBC(Cipher Block Chaining) 모드로 암호화하며, 이때 CBC 모드는 Federal Information Processing Standard (FIPS) PUB81(DES MODES OF OPERATION)에 정의된 데이터 암호화 모드이다.
레코더/플레이어(1)는 암호화된 오디오 데이터에 헤더를 부가하고 그 결과를 메모리 카드(40)에 출력한다. 메모리 카드(40)는 암호화된 오디오 데이터와 헤더를 플래쉬 메모리(42)에 기입한다. 이렇게 하여, 레코더/플레이어(1)로부터 메모리 카드(40)에 오디오 데이터를 기입하는 과정이 완성된다.
도 10은 레코더/플레이어(1)(SET1)과 메모리 카드(40)(MEMORY CARD) 사이에 실행된 인증 과정을 도시한다. 단계 S1에서, 메모리 카드(40)의 보안 블럭(52)의 랜덤 넘버 생성기는 랜덤 넘버 Rm를 생성하여 이 넘버와 메모리 카드(40)의 일련 번호 ID를 레코더/플레이어(1)에 전송한다.
단계 S2에서, 레코더/플레이어(1)는 Rm과 ID를 수신하여 관계 IKj = MAC(MKj,ID)에 따라 인증 키 IKj를 생성하며, 여기에서 MKj는 보안 블럭(3)에 저장된 마스터 키들중 하나이다. 레코더/플레이어(1)는 랜덤 넘버 Rd를 생성하고 인증 키를 가진 메시지 인증기 MACA(Message Authentication Code), 즉, MAC(IKj,Rd//Rm//ID) 를 생성한다. 이리하여, 레코더/플레이어(1)는 랜덤 넘버 Sd를 생성하여 Rd//Sd//MACA//j를 메모리 카드(40)에 전송한다.
단계 S3에서, 메모리 카드(40)는 데이터 Rd//Sd//MACA//j를 수신하고, j에 대응하는 보안 블럭(52)으로부터의 인증 키 IKj를 검색하여, Rd, Rm, ID를 이용하여 MACB를 인증키 IKj로 산출한다. 산출된 MACB가 수신된 MACA와 동일한 경우, 메모리 카드(40)는 레코더/디스플레이어(1)가 유효한(즉, 허가된) 것으로 판단한다. 단계 S4에서, 메모리 카드(40)는 MACC= MAC (IKj,Rm//Rd)를 생성하며 랜덤 넘버 Sm을 생성한다. 그런 다음, 메모리 카드(40)는 Sm//MACO를 레코더/플레이어(1)에 전송한다.
단계 S5에서, 레코더/플레이어(1)는 메모리 카드(40)으로부터 Sm//MACC를 수신한다. 레코더/플레이어(1)는 IKj, Rm, Rd를 이용하여 MACD를 산출한다. 산출된 MACD가 수신된 MACC와 동일한 경우, 레코더/플레이어(1)는 메모리 카드(40)이 유효한(즉, 허가된) 것으로 판단한다. 단계 S6에서, 레코더/플레이어(1)는 MAC(IKj, Rm//Rd)를 세션 키 SeK로 지정한다. 단계 S7에서, 메모리 카드(40)는 MAC (IKj, Rm//Rd)를 세션 키 SeK로 지정한다. 레코더/플레이어(1)와 메모리 카드(40)가 상호 인증되면, 세션 키 SeK는 그들 사이에 공유된다. 세션 키 SeK는 인증이 성공할 때 마다 생성된다.
도 11은 레코더/플레이어(1)(SET)가 메모리 카드(40)(MEMORY CARD)의 플래쉬 메모리(42)에 오디오 데이터를 기록하는 경우의 키 기입 과정을 도시한다. 단계 S11에서, 레코더/플레이어(1)는 콘텐츠의 각 트랙을 위한 랜덤 넘버를 생성하고 콘텐츠 키 CK를 생성한다. 단계 S12에서, 레코더/플레이어(1)는 세션 키 SeK와 함께 콘텐츠 키를 암호화하고 암호화된 DES(SeK,CK)를 메모리 카드(40)에 전송한다.
단계 S13에서, 메모리 카드940)는 레코더/플레이어(1)로부터 데이터 DES(SeK,CK)를 수신하고 세션 키 SeK와 함께 콘텐츠 키 CK를 해독한다. 해독 과정은 IDES(SeK, DES(SeK, CK))에 의해 표시된다. 단계 S14에서, 메모리 카드(40)는 메모리(55)로부터의 저장 키 Kstm과 함께 암호화된 콘텐츠 키 CK를 재암호화하고 재암호화된 콘텐츠 키 DES(Kstm, CK)를 레코더/플레이어(1)에 전송한다.
단계 S15에서, 레코더/플레이어(1)는 대응 데이터 영역(112)를 관리하기 위한 키 영역(111)에 재암호화된 콘텐츠 키 CK를 위치시키고, 재암호화된 콘텐츠 키 CK와 콘텐츠가 메모리 카드(40)의 플래쉬 메모리(42)에 기록되도록 포맷팅 과정을 실행한다. 콘텐츠를 암호화하기 위하여, 도 9와 수식(11)에서 보여진 바와 같이, 콘텐츠 키 CK와 부분 키 PK는 배타적 논리합(XOR 또는 AND)된다. XOR 연산의 결과는 임시 키 TMK이다. 임시 키 TMK는 보안 블럭(3)에만 저장된다. 이렇게 하여, 임시 키 TMK는 보안 블럭(3)의 외부로부터의 접근이 불가능하다. 각 블럭(113)의 시작에서, 랜덤 넘버가 블럭 시드 BK_SEED로서 생성된다. 랜덤 넘버는 각 부분 데이터 영역(112)에 저장된다. 레코더/플레이어(1)는 블럭 시드 BK_SEED 와 임시 키 TMK를 암호화하여 블럭 키 BK를 획득한다. 다시 말하면, BK=(CK(+)PK, BK_SEED) 관계가 획득된다. 블럭 키 BK는 보안 블럭(3)에만 저장된다. 이렇게 하여, 블럭 키 BK는 보안 블럭(3)의 외부로 부터의 접근이 불가능하다.
단계 S16에서, 레코더/플레이어(1)는 블럭 키 BK와 함께 블럭 별로 각 부분 데이터 영역(112)의 데이터를 암호화하여, 암호화된 데이터와 키 영역(111)의 데이터를 메모리 카드(40)에 전송한다. 단계 S17에서, 메모리 카드(40)는 레코더/플레이어(1)로 부터 수신된 암호화된 데이터와 키 영역(111)의 데이터 (헤더 데이터)를 플래쉬 메모리(42)에 기록한다.
메모리 카드(40)로부터의 판독 동작
레코더/플레이어(1)의 재생(읽기)을 위한 암호해독 과정은 도 12를 참조로 설명한다. 편의상, 도 12에서, 도 1와 동일한 부분은 동일한 참조 번호를 사용하였으며 그에 대한 설명은 생략하였다. 또한, 레코더/플레이어(1)와 메모리 카드(40)의 구성요소들 사이에서 데이터와 명령 전송에 사용되는 인터페이스(11), 버스(6), 제어 블럭(41)은 도 12와 후속되는 설명에서 생략되었다.
원하는 데이터(곡조)의 트랙이 레코더/플레이어(1)에서 메모리 카드(40)로 전송된다. 레코더/플레이어(1)와 메모리 카드(40)는 도 10과 연관된 상기 설명에서와 같이 상호 인증을 실행한다. 레코더/플레이어(1)와 메모리 카드(40)가 상호 식별 과정에 따라 서로를 적합하다고 인식하면, 후에 도 11을 참조로 보다 상세히 설명될 키 쓰기 과정이 실행된다. 그렇지 않으면, 쓰기 동작은 종료된다. 키 쓰기 과정이 완료되면, 암호화된 오디오 데이터가 CPU(2)에 의해 메모리 카드(40)로부터 레코더/플레이어(1)에 판독된다.
레코더/플레이어(1)와 메모리 카드(40) 사이에 상호 식별이 실행되므로, 암호화된 콘텐츠 키 CK는 레코더/플레이어(1)와 메모리 카드(40)가 서로를 적합하다고 인식하는 경우에만 적절한 세션 키 SeK를 사용하여 암호해독될 수 있다. 그러므로, 오디오 데이터의 불법 도용을 쉽게 방지할 수 있다. 판독 동작중 판독된 데이터는 도 9에 도시된 상기 쓰기 동작에 의해 기입된다. 콘텐츠 키 CK와 부분 키 PK를 각 부분 데이터 영역(112)에 설정하는 것과, 블럭 시드 BK_SEED를 각 블럭(113)에 설정하는 것은 대응하는 데이터 영역(102)에 데이터를 기입하고 그로부터 데이터를 판독하기 위한 것이다. 도 10의 단계 S6이 완료되면, 메모리 카드(40)와 레코더/플레이어(1)는 세션 키 SeK를 공유한다. 메모리 카드(40)로부터 오디오 데이터를 판독하는 것은 아래와 같이 진행된다.
메모리 카드(40)는 판독 요청 신호에 대응하는 부분 데이터 영역(102)(도 8a)에서 데이터를 명시하고 명시된 부분 데이터 영역(102)의 블럭(103)(도 8a)으로부터 사운드 유닛 SUs로 오디오 데이터를 출력한다. 메모리 카드(40)는 또한 오디오 데이터의 대응 영역(101)(도 8a)를 판독하고 그 결과를 레코더/플레이어(1)에 출력한다.
레코더/플레이어(1)는 키 영역(101)의 데이터로부터 암호화된 콘텐츠 CK를 픽업하고 그것을 메모리 카드(40)에 출력한다. 메모리 카드(40)의 보안 블럭(52)의 DES 암호화/해독 회로(54)는 메모리(55)에 저장된 저장 키 Kstm을 이용하여 암호화된 콘텐츠 키 CK를 해독하고 해독된 콘텐츠 키 CK를 세션 키 SeK를 이용하여 재암호화한다.
메모리 카드(40)는 재암호화된 콘텐츠 키 CK를 레코더/플레이어(1)에 출력한다. 레코더/플레이어(1)는 세션 키 SeK를 이용하여 메모리 카드(40)로부터의 재암호화된 콘텐츠 키 CK를 해독한다. 그런 다음, 레코더/플레이어(1)는 해독된 콘텐츠 키 CK와 각 부분 데이터 영역(102)의 데이터로부터의 부분 키 PK를 XOR하여 수식(3)에 따른 임시 키 TMK를 획득한다.
TMK = PK XOR CK ...(3)
레코더/플레이어(1)는 임시키 TMK와 각 부분 데이터 영역(102)의 블럭 시드 BK_SEED를 이용하여 아래의 수식(4)에 도시한 MAC 연산을 실행하여 블럭 키 BK를 획득한다. 블럭 키 BK는 아래와 같이 보든 블럭(103)에 대해 검색된다.
BK = MAC (TMK,BK_SEED) ...(4)
레코더/플레이어(1)의 보안 블럭(3)은 블럭 키 BK를 이용하여 오디오 데이터를 해독한다. 상세히 설명하면, 오디오 데이터는 개별적으로 검색된 블럭 키 BK를 이용하여 모든 블럭(103)에 대하여 암호해독된다. 또한, 암호화를 위해 사용된 동일한 16KB 블럭(103)에서도 암호해독은 실행된다. 오디오 부호화기/복호화기(7)는 ATRAC3 시스템에 따라 암호해독된 오디오 데이터를 확장하고, 복호화된 신호를 디지털 출력(14)를 통하여 출력하거나, D/A 변환기(12)는 디지털 오디오 신호를 아나로그 신호로 변환하고 그 결과를 아나로그 출력(13)을 통하여 출력한다. 또는, 보안 블럭(3)으로부터의 ATRAC3 오디오 데이터는 출력(15)을 통하여 출력된다. 오디오 부호화기/복호화기(7)는 오디오 데이터를 사운드 유닛 SUs로 확장한다.
도 13은 레코더/플레이어(1)가 메모리 카드(40)의 플래쉬 메모리(42)에 저장된 오디오 트랙을 재생할 때의 암호해독 과정을 보여준다. 도 9 내지 도 11에 도시한 쓰기 동작에서처럼, 세션 키 SeK는 레코더/플레이어(1)와 메모리 카드(40)가 상호 인증된 후 레코더/플레이어(1)와 메모리 카드(40) 사이에서 공유된다.
단계 S21에서, 레코더/플레이어(1)(SET)는 메모리 카드(40)(MEMORY CARD)로부터 데이터를 판독하여 저장 키 Kstm과 함께 암호화된 콘텐츠 키(즉, DES(Kstm,CK))와 암호화된 콘텐츠(원하는 트랙의 부분 데이터 영역(102))를 획득한다. 그런 다음, 레코더/플레이어(1)는 메모리 카드(40)에 저장 키 Kstm과 함께 암호화된 콘텐츠 키 CK를 전송한다.
단계 S22에서, 메모리 카드(40)는 저장 키 Kstm과 함께 콘텐츠키 CK (즉, IDES(Kstm,DES(Kstm,CK))를 해독한다. 단계 S23에서, 메모리 카드(40)는 세션 키 SeK와 함께 해독된 콘텐츠 키를 암호화하고 DES(SeK,CK)를 레코더/플레이어(1)에 전송한다.
단계 S24에서, 레코더/플레이어(1)는 세션 키 SeK와 함께 콘텐츠 키를 해독한다. 단계 S25에서, 레코더/플레이어(1)는 해독된 콘텐츠 키 CK, 부분 키 PK, 블럭 시드 BK_SEED와 함께 블럭 키 BK를 생성한다. 단계 S26에서, 레코더/플레이어(1)는 블럭 유닛으로 블럭 키 BK와 함께 각 암호화된 부분 데이터 영역(102)을 해독한다. 오디오 부호화기/복호화기(7)는 해독된 오디오 데이터를 복호화한다.
도 2에 도시된 인터페이스(11)을 참조로, 도 14는 메모리 카드(40)로부터 판독된 데이터의 타이밍도이다. 상태 0(최초 상태)이 아닌 상태에서, 데이터를 동기화하기 위해 사용된 클럭 신호는 클럭 라인 SCK를 통하여 전송된다. 레코더/플레이어(1)와 메모리 카드(40) 사시에 데이터가 전송 또는 수신되면, 상태 라인 SBS의 신호 레벨은 낮아진다. 최초 조건은 상태 또는 상태0(최초 상태)라고 한다. 타이밍 t31에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨이 높아지도록(상태1) 한다.
상태 라인 SBS의 신호 레벨이 높아지면, 메모리 카드(40)(S/P 및 P/S IF 블럭(43))는 상태0이 상태1로 변경되었음을 판단한다. 상태1에서, 레코더/플레이어(1)는 데이터 라인 DIO를 통하여 메모리 카드(40)로 판독 명령을 전송한다. 이렇게 하여, 메모리 카드(40)는 판독 명령을 수신한다. 판독 명령은 Transfer Protocol Command (TPC)라고 하는 프로토콜 명령이다. 후에 상세히 설명되겠지만, 프로토콜 명령은 통신의 내용과 그에 따르는 데이터의 길이 지정한다.
타이밍 t32에서, 명령이 전송된 후, 상태 라인 SBS의 신호 레벨은 하이에서 로우로 변경된다. 이렇게 하여, 상태1은 상태2로 변경된다. 상태2에서, 메모리 카드(40)에 의해 수신된 명령에 의해 지정된 과정이 실행된다. 사실상, 판독 명령에 의해 지정된 어드레스의 데이터는 플래쉬 메모리(42)로부터 페이지 버퍼(45)로 판독된다. 과정이 실행되는 동안, 사용중(busy) 신호(하이 레벨)가 데이터 라인 DIO를 통하여 레코더/플레이어(1)에 전송된다.
타이밍 t33에서, 데이터가 플래쉬 메모리(42)로부터 페이지 버퍼(45)로 판독된 후, 사용중 신호의 공급이 중단된다. 메모리 카드(40)이 판독 명령에 따라 데이터를 전송할 준비가 되었음을 나타내는 준비완료(ready) 신호(로우 레벨)가 레코더/플레이어(1)에 출력된다.
레코더/플레이어(1)가 메모리 카드(40)로부터 준비완료 신호를 수신하면, 레코더/플레이어(1)는 메모리 카드(40)가 판독 명령을 처리할 준비가 되었음을 판단한다. 타이밍 t34에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨이 하이가 되도록 한다. 다시 말하면, 상태2가 상태3으로 변경된다.
상태3에서, 메모리 카드(40)는 페이지 버퍼(45)에 판독된 데이터를 데이터 라인 DIO를 통하여 레코더/플레이어(1)에 출력한다. 타이밍 t35에서, 판독된 데이터가 전송된 후, 레코더/플레이어(1)는 클럭 라인 SCK를 통한 클럭 신호 전송을 중단한다. 또한, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨을 하이에서 로우로 변경한다. 이렇게 하여, 상태3은 최초 상태(상태0)으로 변경된다.
타이밍 t36에서처럼 메모리 카드(40)에서의 상태 변경으로 인해 인터럽트 과정이 실행되어야 하는 경우, 메모리 카드(40)는 데이터 라인 DIO를 통하여 레코더/플레이어(1)에 인터럽트 신호를 전송한다. 레코더/플레이어(1)가 상태0의 메모리 카드(40)로부터 데이터 라인 DIO를 통하여 인터럽트 신호를 수신하면, 레코더/플레이어(1)는 신호가 인터럽트 신호임을 판단하고 그 인터럽트 신호에 대응하는 절차를 실행한다.
도 15는 메모리 카드(40)의 플래쉬 메모리(42)에 데이터가 기입되는 동작을 도시한 타이밍도이다. 최초 상태(상태0)에서, 클럭 신호는 클럭 라인 SCK를 통하여 전송되지 않는다. 타이밍 t41에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨을 로우에서 하이로 변경한다. 이렇게 하여, 상태0은 상태1로 변경된다. 상태1에서, 메모리 카드940)는 명령을 수신할 준비가 완료되었다. 타이밍 t41에서, 데이터 라인 DIO를 통하여 메모리 카드(40)에 쓰기 명령이 전송되며, 메모리 카드(40)는 쓰기 명령을 수신한다.
타이밍 t42에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨을 하이에서 로우로 변경하도록 한다. 이렇게 하여, 상태1은 상태2로 변경된다. 상태2에서, 레코더/플레이어(1)는 쓰기 데이터를 데이터 라인 DIO를 통하여 메모리 카드(40)에 전송하고 메모리 카드(40)는 수신된 쓰기 데이터를 페이지 버퍼(45)에 저장한다.
타이밍 t43에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨을 로우에서 하이로 변경하도록 한다. 이렇게 하여, 상태2는 상태3으로 변경된다. 상태3에서, 메모리 카드(40)는 플래쉬 메모리(42)에 쓰기 데이터를 기입하고, 메모리 카드(40)는 데이터 라인 DIO를 통하여 레코더/플레이어(1)에 사용중 신호(하이 레벨)를 전송하며, 레코더/플레이어(1)는 쓰기 명령을 메모리 카드(40)에 전송한다. 현재 상태가 상태3이므로, 레코더/플레이어(1)는 메모리 카드(40)로부터 수신된 신호가 상태 신호라는 것을 판단한다.
타이밍 t4에서, 메모리 카드(40)는 사용중 신호를 출력하는 것을 중지하고 레코더/플레이어(1)에 준비완료 신호(로우 레벨)을 전송한다. 레코더/플레이어(1)가 준비완료 신호를 수신하면, 레코더/플레이어(1)는 쓰기 명령에 대응하는 쓰기 과정이 완료되었음을 판단하고 클럭 신호 전송을 중지한다. 타이밍 t45에서, 레코더/플레이어(1)는 상태 라인 SBS의 신호 레벨을 하이에서 로우로 변경한다. 이렇게 하며, 상태3은 상태0(최초 상태)으로 되돌아간다.
레코더/플레이어(1)가 상태0에서 데이터 라인 DIO를 통하여 메모리 카드(40)로부터 하이 레벨 신호를 수신하면, 레코더/플레이어(1)는 수신된 신호가 인터럽트 신호라는 것을 판단한다. 레코더/플레이어(1)는 수신된 인터럽트 신호에 대응하는 과정을 실행한다. 메모리 카드(40)가 레코더/플레이어(1)로부터 분리되면, 메모리 카드(40)은 인터럽트 신호를 생성한다.
상태 1에서 판독 및 쓰기 과정이외에, 명령이 전송된다. 상태2에서, 명령에 대응하는 데이터가 전송된다.
레코더/플레이어(1)와 메모리 카드(40) 사이에 배치된 직렬 인터페이스는 상기와 같이 인터페이스(11)에 제한되지 않는다. 즉, 다양한 유형의 직렬 인터페이스가 사용된다.
메모리 카드를 사용하는 레코더/플레이어(1)에 의해 실행된 과정이 도 16과 연관하여 설명된다. 레코더/플레이어의 전원이 턴온되면 (단계 S200), 메모리 카드 (40 또는 40')가 레코더/플레이어(1)에 부착되었는 지를 판단한다 (단계 S201). 단계 S201에서의 판단 결과가 Yes 이면, 메모리 카드(40 또는 40')의 부트 블럭으로부터 데이터가 판독된다 (단계 S202).
도 7과 관련하여 언급하였듯이, 부트 블럭의 부트및 속성 정보는 메모리 카드(40 또는 40')가 보안형인지를 나타내는 식별 정보를 포함한다. 이러한 식별 정보를 참조하여, 메모리 카드(40 또는 40')가 보안형 메모리 카드(40) 또는 비보안형 메모리 카드(40')인지를 판단한다 (단계 S203). 단계 S203에서의 판단 결과가 Yes (메모리 카드(40))이면, 인증 작용이 실행된다 (단계 S204). 메모리 카드(40)가 인증되면, 콘텐츠 데이터가 메모리 카드(40)에 기록되거나 그로부터 재생된다 (단계 S205).
단계 S203에서의 판단 결과가 No (메모리 카드(40'))이면, 메모리 카드(40')를 사용할 수 없음을 나타내는 경고 메시지가 디스플레이 장치(5)상에 디스플레이된다. 경고 메시지는 사운드와 같은 다른 방법으로도 발행될 수 있다.
상기 설명한 과정은 보안형 레코더/플레이어(1)에 의해 실행된다. 도 16의 점섬에 의해 나타낸 바와 같이, 단계 S203)에서의 판단 결과가 No (즉, 레코더/플레이어(1)가 보안형이 아니면), 단계 S202를 거쳐 단계 S207로 진행한다 (부트 블럭으로부터 데이터가 판독된다). 단계 S207에서, 메모리 카드(40 또는 40')가 보안형 메모리 카드(40) 또는 비보안형 메모리 카드(40')인지를 판단한다. 단계 S207에서의 판단 결과가 Yes 이든 No이든 상관없이, 메모리 카드(40 또는 40')에 대하여 정상 동작 (쓰기 동작, 판독 동작, 소거 동작등)이 실행된다.
상기 설명한 실시예에 따르면, 메모리 카드(40)의 소정의 기능은 보안 기능이다. 그러나, 본 발명은 보안 기능에 한정되지 않음에 유의해야 한다. 예를 들면, 본 발명은 레코더/플레이어(1)과 메모리 카드(40 또는 40'),(이때, 메모리 카드(40)의 통신 속도가 메모리 카드(40')의 종래 속도보다 빠르다) 사이에 배치된 인터페이스(11)의 통신 속도 (데이터 속도)에 적용될 수 있다.
도 17은 메모리 카드(40)의 소정의 기능으로서의 통신 속도에 연관된 과정을 도시한 흐름도이다. 단계 S300에서, 파워가 턴온된다. 단계 S301에서, 메모리 카드(40 또는 40')가 부착되었는지의 여부가 판단된다. 단계 S302에서, 메모리 카드(40 또는 40')의 부트 블럭으로부터 데이터가 판독된다. 보안 기능으로서, 부트 블럭은 메모리 카드(40 또는 40')가 고속형인지를 나타내는 식별 정보를 포함한다.
메모리 카드(40 또는 40')가 식별 정보를 가진 고속형인지를 판단한다 (단계 S303). 단계 S303에서의 판단 결과가 Yes(메모리 카드 (40))이면, 레코더/플레이어(1)와 메모리 카드(40)사이의 통신 속도 (데이터 속도)는 저속에서 고속으로 변경된다 (단계 S304). 이렇게 하여, 고속 동작이 실행된다 (단계 S305). 단계 S303에서의 판단 결과가 No (메모리 카드 40')이면, 저속 동작이 실행된다 (단계 S306). 도 17의 점선에서 나타낸 것처럼, 레코더/플레이어(1)가 고속형이 아닌 경우, 메모리 카드(40 또는 40')가 고속형인지의 여부에 상관없이 (단계 S307), 저속 동작이 실행된다 (단계 S308 또는 S309).
본 발명에 따르면, 소정의 기능을 가진 메모리 카드(40)와 소정의 기능을 가지지 않은 메모리 카드(40')가 공존하는 경우에도, 메모리 카드(40 또는 40')가 부착되면, 레코더/플레이어(1)는 메모리 카드(40 또는 40')가 소정의 기능을 가지고 있는 지를 즉시 판단할 수 있다. 이렇게 하여, 에러가 발생했는 지를 판단하기 위해 레코더/플레이어(1)를 메모리 카드(40 또는 40')와 통신하는 방법과는 달리, 필요없는 동작이 실행되지 않는다. 또한, 메모리 카드(40 또는 40')의 형태에 의해 소정의 기능을 가진 유형인지를 판단하는 방법과는 달리, 소정의 기능을 가진 메모리 카드(40)는 소정의 기능을 가지지 않은 레코더/플레이어(1)를 위해 사용될 수 있다. 이렇게 하여, 메모리 카드의 호환성이 향상된다.
본 발명의 바람직한 실시예에 대해 상세히 기술되었지만, 본 발명이 속하는 기술 분야에 있어서 통상의 지식을 가진 사람이라면, 첨부된 청구 범위에 정의된 본 발명의 정신 및 범위를 벗어나지 않는 한도내에서 본 발명을 여러 가지로 변형하여 실시할 수 있음을 알 수 있을 것이다. 상기 설명에 포함되고 첨부된 도면에 도시된 모든 사항들은 제한되는 의미가 아닌 예증으로서 해석되어야 한다. 예를 들면, 상기 설명된 실시예에서는 보안 방법으로 DES를 사용한다. 그러나, DES를 대신하여 다양한 암호화 기술들이 사용될 수 있다.
아래의 청구항들은 여기에 설명된 본 발명의 모든 포괄적이고 특별한 특징과 본 발명의 범위의 모든 설명을 포함한다.

Claims (13)

  1. 데이터 처리 유닛에 착탈가능한 메모리 유닛으로서, 상기 메모리 유닛은,
    비휘발성 메모리와,
    상기 데이터 처리 유닛과의 통신을 위한 인터페이스 수단을 포함하고,
    (i) 메모리 유닛이 보안형 인지 또는 비보안형인지 여부와, (ii) 상기 메모리 유닛이 제1 속도로 상기 메모리 유닛에 데이터가 기록되는 제1 속도형인지 또는 상기 제1 속도와는 다른 제2 속도로 상기 메모리 유닛에 데이터가 기록되는 제2 속도형인지여부중, 적어도 하나를 나타내는 식별 정보가 상기 비휘발성 메모리의 소정 영역에 기록되며,
    상기 식별 정보는 상기 메모리 유닛이 부착될 때에 상기 데이터 처리 유닛에 의해 판독되는 메모리 유닛.
  2. 메모리 유닛에/으로부터 데이터를 기록/재생하는 데이터 처리 유닛으로서,
    상기 메모리 유닛은 비휘발성 메모리를 가지며 상기 데이터 처리 유닛에/으로부터 부착/탈착가능하며, 상기 데이터 처리 유닛은,
    상기 메모리 유닛과의 통신을 위한 인터페이스 수단과,
    상기 메모리 유닛이 부착되면, (i) 상기 메모리 유닛이 보안형인지 또는 비보안형인지 여부와, (ii) 상기 메모리 유닛이 제1 속도로 상기 메모리 유닛에 데이터가 기록되는 제1 속도형인지 또는 상기 제1 속도와는 다른 제2 속도로 상기 메모리 유닛에 데이터가 기록되는 제2 속도형인지 여부중, 적어도 하나를 판단하는 수단을 포함하는 데이터 처리 유닛.
  3. 제 2 항에 있어서,
    상기 데이터 처리 유닛은 상기 판단 수단이 상기 메모리 유닛이 보안형이라고 판단한 후, 그리고 상기 메모리 유닛에 대해 인증 동작을 실행한 후, 기록/재생 동작을 실행하는 데이터 처리 유닛.
  4. 제 2 항에 있어서,
    상기 데이터 처리 유닛은 보안형과 비보안형중 하나이며, 상기 데이터 처리 유닛이 보안형이면 상기 메모리 유닛이 비보안형이라는 것을 판단한 후 상기 데이터 처리 유닛은 기록/재생 동작을 금지하는 데이터 처리 유닛.
  5. 제 2 항에 있어서,
    상기 데이터 처리 유닛은 보안형 및 비보안형중 하나이며, 상기 데이터 처리 유닛이 보안형인 경우 상기 메모리 유닛이 비보안형으로 판단된 후 상기 데이터 처리 유닛은 에러 메시지를 출력하는 데이터 처리 유닛.
  6. 제 2 항에 있어서,
    상기 데이터 처리 유닛은 상기 판단 수단에 의해 판단된 상기 제1, 제2 속도중 적절한 속도로 상기 메모리 유닛과 통신하는 데이터 처리 유닛.
  7. 제 2 항에 있어서,
    (i) 상기 메모리 유닛이 보안형 또는 비보안형인지 여부와, (ii) 상기 메모리 유닛이 제1 속도형인지 또는 제2 속도형인지 여부중, 적어도 하나를 나타내는 식별 정보가 상기 비휘발성 메모리의 소정 영역에 기록되며,
    상기 판단 수단은 상기 메모리 유닛이 상기 데이터 처리 유닛에 부착되면 비휘발성 메모리의 소정 영역으로부터 상기 식별 정보를 판독하는 수단을 포함하는 데이터 처리 유닛.
  8. 데이터 처리 유닛에 착탈가능한 비휘발성 메모리를 가지는 메모리 유닛에/으로부터 정보를 기입/판독하는 데이터 처리 유닛에 사용하는 데이터 처리 방법으로서, 상기 데이터 처리 방법은,
    상기 메모리 유닛이 상기 데이터 처리 유닛에 부착되면 상기 메모리 유닛의 비휘발성 메모리의 소정의 저장 영역으로부터 데이터를 판독하는 단계와,
    (i) 상기 메모리 유닛이 보안형 또는 비보안형인지 여부와, (ii) 상기 메모리 유닛이 제1 속도로 메모리 유닛에 데이터가 기록되는 제1 속도형인지 또는 상기 제1 속도와는 다른 제2 속도로 메모리 유닛에 데이터가 기록되는 제2 속도형인지 여부중, 적어도 하나를 판단하는 단계를 포함하는 데이터 처리 방법.
  9. 제 8 항에 있어서,
    상기 메모리 유닛이 보안형이라고 판단한 후, 그리고 상기 메모리 유닛에 대해 인증 동작을 실행한 후, 상기 메모리 유닛에/으로부터 데이터를 기입/판독하는 단계를 더 포함하는 데이터 처리 방법.
  10. 제 8 항에 있어서,
    상기 데이터 처리 유닛은 보안형 및 비보안형중 하나이며, 상기 데이터 처리 유닛이 보안형이면 상기 메모리 유닛이 비보안형이라는 것을 판단한 후 상기 메모리 유닛에/으로부터 데이터를 기입/판독하는 것을 금지하는 단계를 더 포함하는 데이터 처리 방법.
  11. 제 8 항에 있어서,
    상기 데이터 처리 유닛은 보안형 및 비보안형중 하나이며,
    상기 데이터 처리 유닛이 보안형인 경우 상기 메모리 유닛이 비보안형으로 판단된 후 에러 메시지를 출력하는 단계를 더 포함하는 데이터 처리 방법.
  12. 제 8 항에 있어서,
    상기 데이터 처리 유닛은 상기 판단 단계에서 판단된 상기 제1, 제2 속도중 적절한 속도로 상기 메모리 유닛과 통신하는 데이터 처리 방법.
  13. 제 8 항에 있어서,
    상기 소정의 저장 영역으로부터 판독된 데이터는 (i) 메모리 유닛이 보안형 또는 비보안형인지 여부와, (ii) 상기 메모리 유닛이 제1 속도형인지 또는 제2 속도형인지 여부중, 적어도 하나를 나타내는 식별 정보가 상기 비휘발성 메모리의 소정 영역에 기록되는 데이터 처리 방법.
KR1020000018210A 1999-04-07 2000-04-07 메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법 KR100644736B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP99-099948 1999-04-07
JP9994899 1999-04-07
JP17818899 1999-06-24
JP99-178188 1999-06-24

Publications (2)

Publication Number Publication Date
KR20010006967A true KR20010006967A (ko) 2001-01-26
KR100644736B1 KR100644736B1 (ko) 2006-11-13

Family

ID=26441038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000018210A KR100644736B1 (ko) 1999-04-07 2000-04-07 메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법

Country Status (6)

Country Link
US (1) US6601140B1 (ko)
EP (2) EP1313108B1 (ko)
KR (1) KR100644736B1 (ko)
CN (1) CN1164119C (ko)
DE (2) DE60017613T2 (ko)
MY (1) MY123413A (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MY123388A (en) * 1999-03-15 2006-05-31 Sony Corp Processing method and apparatus for encrypted data transfer
BR0006882B1 (pt) * 1999-05-28 2014-03-18 Panasonic Corp Cartão de memória semicondutora, aparelho de execução, aparelho de gravação, método de execução, método de gravação e meio de gravação que pode ser lido por computador
JP4300643B2 (ja) * 1999-08-24 2009-07-22 ソニー株式会社 著作権対応携帯端末、著作権非対応携帯端末
US20020003889A1 (en) * 2000-04-19 2002-01-10 Fischer Addison M. Headphone device with improved controls and/or removable memory
US6829721B2 (en) * 2001-02-05 2004-12-07 M-Systems Flash Disk Pioneers Ltd. Method for recording and storage of system information in multi-board solid-state storage systems
KR100921851B1 (ko) * 2001-06-28 2009-10-13 소니 가부시끼 가이샤 전자 장치, 정보 처리 장치, 어댑터 장치 및 정보 교환시스템
US20040039575A1 (en) * 2002-07-16 2004-02-26 Nextway Co., Ltd. Host processing device using external storage medium
JP3935139B2 (ja) 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置
WO2004057875A1 (en) * 2002-12-20 2004-07-08 Koninklijke Philips Electronics N.V. Hierarchical scheme for secure multimedia distribution
KR100403376B1 (en) 2003-04-04 2003-10-30 Telechips Inc Device for processing media using external storage
CA2536502A1 (en) 2003-08-29 2005-03-10 Tgbw Inc. Flash memory distribution of digital content
EP1524586A1 (en) * 2003-10-17 2005-04-20 Sony International (Europe) GmbH Transmitting information to a user's body
EP1545131B1 (en) * 2003-12-19 2007-07-18 STMicroelectronics Limited Semiconductor circuit for restricting data access
JP2005217842A (ja) * 2004-01-30 2005-08-11 Fujitsu Ltd データ圧縮方法、データ復元方法及びそのプログラム
CA2682814C (en) 2004-07-12 2011-11-08 Kabushiki Kaisha Toshiba Storage device and host apparatus
CN100437458C (zh) * 2004-07-12 2008-11-26 株式会社东芝 存储器件和主机装置
EP1617341A1 (en) * 2004-07-16 2006-01-18 International Business Machines Corporation File operation management device
JP2006085380A (ja) 2004-09-15 2006-03-30 Toshiba Corp ファイルストレージデバイス、プログラム、及び不揮発性半導体メモリの書込方法
US7409623B2 (en) * 2004-11-04 2008-08-05 Sigmatel, Inc. System and method of reading non-volatile computer memory
JP4548737B2 (ja) * 2005-01-24 2010-09-22 パナソニック株式会社 署名生成装置及び署名検証装置
JP2006285669A (ja) 2005-03-31 2006-10-19 Toshiba Corp ホスト機器
KR101229493B1 (ko) * 2005-10-26 2013-02-04 삼성전자주식회사 기록 방지 기능을 효과적으로 수행할 수 있는 정보 저장매체, 기록/재생 장치 및 기록/재생 방법
KR100877609B1 (ko) * 2007-01-29 2009-01-09 삼성전자주식회사 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
US8655463B2 (en) * 2007-05-18 2014-02-18 Sandisk Technologies Inc. Method for avoiding refreshing a database of metadata associated with digital media content
JP5319238B2 (ja) * 2008-10-29 2013-10-16 真二 栗本 情報処理システム、情報処理装置、情報処理方法、および情報処理プログラム
CN103138875B (zh) * 2011-11-28 2015-06-10 澜起科技(上海)有限公司 高速广播信道的校准方法
EP2804341B1 (en) * 2012-01-12 2019-04-24 Sony Corporation Information storage device, information processing system, information processing method, and program
KR101638025B1 (ko) * 2012-10-17 2016-07-20 소니 컴퓨터 엔터테인먼트 인코포레이티드 정보처리장치
US20140245021A1 (en) * 2013-02-27 2014-08-28 Kabushiki Kaisha Toshiba Storage system in which fictitious information is prevented
CN103596108B (zh) * 2013-11-04 2017-01-04 北京旋极信息技术股份有限公司 一种音频转接系统和装置
US11216209B2 (en) * 2019-03-26 2022-01-04 Western Digital Technologies, Inc. Secure storage using a removable bridge
CN111811728A (zh) * 2020-06-29 2020-10-23 江苏理工学院 一种监测系统
US11625297B2 (en) 2020-08-28 2023-04-11 Samsung Electronics Co., Ltd. Storage device and operating method thereof

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5172338B1 (en) * 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
FR2661019B1 (fr) * 1990-04-12 1992-10-09 Skorski Serge Livre ecran portatif.
EP0467208B1 (en) * 1990-07-11 1995-09-20 Hitachi, Ltd. Digital information system
US5887145A (en) * 1993-09-01 1999-03-23 Sandisk Corporation Removable mother/daughter peripheral card
AU1265195A (en) * 1993-12-06 1995-06-27 Telequip Corporation Secure computer memory card
US5491827A (en) * 1994-01-14 1996-02-13 Bull Hn Information Systems Inc. Secure application card for sharing application data and procedures among a plurality of microprocessors
JPH08101751A (ja) * 1994-09-30 1996-04-16 Mitsubishi Electric Corp Pcカード及びpcカードシステム
JPH08179986A (ja) * 1994-12-27 1996-07-12 Olympus Optical Co Ltd 情報処理装置
US5818030A (en) 1995-03-07 1998-10-06 Reyes; Rene A. Credit card system with key module
JPH08328962A (ja) * 1995-05-31 1996-12-13 Mitsubishi Electric Corp 端末機と、当該端末機に接続されるメモリカードからなるシステム
US5852290A (en) * 1995-08-04 1998-12-22 Thomson Consumer Electronics, Inc. Smart-card based access control system with improved security
US5650606A (en) 1995-08-07 1997-07-22 Magnetic Products International, Corp Accurate read/write head for preventing credit card alteration and counterfeiting of debit cards
US6289102B1 (en) 1995-10-09 2001-09-11 Matsushita Electric Industrial Co., Ltd. Apparatus and method for preventing unauthorized use of information recorded on an information recording medium
US5974161A (en) * 1996-03-01 1999-10-26 Hewlett-Packard Company Detachable card for capturing graphics
JPH10340575A (ja) * 1997-06-04 1998-12-22 Sony Corp 外部記憶装置及びその制御装置、データ送受信装置
JP3175648B2 (ja) * 1997-07-07 2001-06-11 ソニー株式会社 記憶装置及びデータの書込み方法
JP3119214B2 (ja) * 1997-09-30 2000-12-18 ソニー株式会社 記憶装置、データ処理システム並びにデータの書き込み及び読み出し方法
JP2914360B2 (ja) * 1997-09-30 1999-06-28 ソニー株式会社 外部記憶装置及びデータ処理方法

Also Published As

Publication number Publication date
EP1043729A3 (en) 2001-11-21
DE60001681D1 (de) 2003-04-24
KR100644736B1 (ko) 2006-11-13
DE60001681T2 (de) 2004-03-04
DE60017613D1 (de) 2005-02-24
EP1313108A2 (en) 2003-05-21
EP1313108B1 (en) 2005-01-19
EP1313108A3 (en) 2003-06-04
DE60017613T2 (de) 2005-12-29
EP1043729A2 (en) 2000-10-11
CN1272030A (zh) 2000-11-01
MY123413A (en) 2006-05-31
US6601140B1 (en) 2003-07-29
CN1164119C (zh) 2004-08-25
EP1043729B1 (en) 2003-03-19

Similar Documents

Publication Publication Date Title
KR100644736B1 (ko) 메모리 유닛, 데이터 처리 유닛 및 데이터 처리 방법
KR100710603B1 (ko) 메모리 카드용 보안 유닛
KR100730903B1 (ko) 향상된 호환성을 갖춘 보안형 메모리 장치
US8607069B2 (en) Data processing apparatus, data processing method, terminal unit, and transmission method of data processing apparatus
US6748485B1 (en) Recording medium, recording apparatus and recording/reproducing system for tracking use and transfer of data
US7082256B2 (en) Recording medium editing apparatus based on content supply source
US6404676B2 (en) Nonvolatile memory and nonvolatile memory reproducing apparatus
US6691149B1 (en) System for distributing music data files between a server and a client and returning the music data files back to the previous locations
US20060029230A1 (en) Recording apparatus, recording method, reproducing apparatus, and reproducing method
KR100729546B1 (ko) 편집 장치, 편집 방법 및 비휘발성 메모리
JP3882460B2 (ja) メモリ装置、データ処理装置、データ処理システムおよびデータ処理方法
JP3882459B2 (ja) メモリ装置、データ処理装置、データ処理システムおよびデータ処理方法
KR100727799B1 (ko) 재생 장치 및 재생 방법
AU2007202015A1 (en) Recording medium editing apparatus based on content supply source

Legal Events

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

Payment date: 20121029

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131025

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141024

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee