[go: up one dir, main page]

KR100936533B1 - Digital Content Encryption Method using Bad Pattern, Digital Content Recording / Playback Method Using the Same, and Digital Content Storage Media - Google Patents

Digital Content Encryption Method using Bad Pattern, Digital Content Recording / Playback Method Using the Same, and Digital Content Storage Media Download PDF

Info

Publication number
KR100936533B1
KR100936533B1 KR1020070081297A KR20070081297A KR100936533B1 KR 100936533 B1 KR100936533 B1 KR 100936533B1 KR 1020070081297 A KR1020070081297 A KR 1020070081297A KR 20070081297 A KR20070081297 A KR 20070081297A KR 100936533 B1 KR100936533 B1 KR 100936533B1
Authority
KR
South Korea
Prior art keywords
bad
area
bad pattern
digital content
drm
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020070081297A
Other languages
Korean (ko)
Other versions
KR20090003056A (en
Inventor
서원형
Original Assignee
슬림디스크 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 슬림디스크 주식회사 filed Critical 슬림디스크 주식회사
Publication of KR20090003056A publication Critical patent/KR20090003056A/en
Application granted granted Critical
Publication of KR100936533B1 publication Critical patent/KR100936533B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 배드패턴을 이용한 디지털 저작권 보호 방법 및 그를 이용한 디지털 컨텐츠 기록/재생 방법과 그의 디지털 컨텐츠 저장매체에 관한 것으로, 플래쉬 메모리(예로서, 낸드 플래쉬 메모리 등)와 같은 메모리 소자의 물리적 특성인 배드패턴(배드블록, 배드페이지, 배드비트 등)을 암호화 키로 활용하여 디지털 컨텐츠의 저작권을 보호할 수 있는, 디지털 저작권 보호 방법 및 그를 이용한 디지털 컨텐츠 기록/재생 방법과 그의 디지털 컨텐츠 저장매체와, 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 한다. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital copyright protection method using a bad pattern, a digital content recording / reproducing method using the same, and a digital content storage medium thereof, which are physical characteristics of a memory device such as a flash memory (for example, a NAND flash memory). Digital copyright protection method, digital content recording / reproducing method using the same, and digital content storage medium using the same (bad block, bad page, bad bit, etc.) as an encryption key to protect the copyright of digital content, the method To provide a computer readable recording medium having recorded thereon a program for realizing them.

이를 위하여, 본 발명은 디지털 저작권 보호(DRM) 방법에 있어서, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 단계; 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 정보를 바탕으로 배드패턴 DRM 테이블을 구성하는 단계; 및 상기 배드패턴 정보를 바탕으로 배드패턴 암호화 키를 생성하는 단계를 포함한다.To this end, the present invention provides a digital rights protection (DRM) method, the method comprising: checking the bad pattern for each unit area of the memory device constituting the digital content storage medium, and determining the bad pattern extraction area; Recording a code value of the determined bad pattern extraction area in a table selection code field of a card ID; Inspecting an area corresponding to an area code recorded in the table selection code field and constructing a bad pattern DRM table based on bad pattern information; And generating a bad pattern encryption key based on the bad pattern information.

디지털 컨텐츠, DRM, 배드패턴, 배드블록, 배드페이지, 메모리 소자, 물리적 특성 Digital Content, DRM, Bad Pattern, Bad Block, Bad Page, Memory Device, Physical Characteristics

Description

배드패턴을 이용한 디지털 컨텐츠 암호화 방법 및 이를 이용한 디지털 컨텐츠 기록/재생 방법과 디지털 컨텐츠 저장매체{DRM method using bad pattern, and digital contents recorder/player and method using that}Digital content encryption method using bad pattern, digital content recording / playback method and digital content storage medium {DRM method using bad pattern, and digital contents recorder / player and method using that}

본 발명은 배드패턴을 이용한 디지털 저작권 보호 방법 및 그를 이용한 디지털 컨텐츠 기록/재생 방법과 그의 디지털 컨텐츠 저장매체와, 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 보다 상세하게는 플래쉬 메모리(예로서, 낸드(NAND) 플래쉬 메모리 등)와 같은 메모리 소자의 물리적 특성인 배드패턴(배드블록, 배드페이지, 배드비트 등)을 암호화 키로 활용하여 디지털 컨텐츠의 저작권을 보호할 수 있는, 디지털 저작권 보호 방법 및 그를 이용한 디지털 컨텐츠 기록/재생 방법과 그의 디지털 컨텐츠 저장매체와, 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다. The present invention relates to a digital copyright protection method using a bad pattern, a digital content recording / reproducing method using the same, a digital content storage medium thereof, and a computer-readable recording medium having recorded thereon a program for realizing the methods. For example, it is possible to protect the copyright of digital content by utilizing bad patterns (bad blocks, bad pages, bad bits, etc.), which are physical characteristics of memory devices such as flash memories (for example, NAND flash memories) as encryption keys. The present invention relates to a digital copyright protection method, a digital content recording / reproducing method using the same, a digital content storage medium thereof, and a computer-readable recording medium having recorded thereon a program for implementing the above methods.

플래쉬 메모리(Flash Memory)란, 전원이 없는 상태에서도 메모리에 데이터가 계속 저장되어 질 수 있는 메모리를 말한다. 또한, 데이터의 저장/삭제가 자유롭다. 이런 플래쉬 메모리는 내부 방식에 따라 노어(NOR)형과 낸드(NAND)형으로 나누는데, 노어(NOR)형은 셀이 병렬로 연결된 구조를 가지고 있고, 낸드(NAND)형은 셀이 직렬로 연결된 구조를 가지고 있다. Flash memory refers to a memory in which data may be continuously stored in the memory even when there is no power supply. In addition, data storage / deletion is free. Such flash memory is divided into NOR type and NAND type according to the internal method. NOR type has a structure in which cells are connected in parallel, and NAND type has a structure in which cells are connected in series. Have

따라서 낸드(NAND) 플래쉬 메모리는 메모리 카드 중 SD 카드나 메모리 스틱(Memory Stick)에서 주로 쓰이고, 노어(NOR) 플래쉬 메모리는 MMC 카드나 컴팩트 플래쉬(Compact Flash) 메모리에 주로 쓰인다. Therefore, NAND flash memory is mainly used in SD cards or memory sticks of memory cards, and NOR flash memory is mainly used in MMC cards or compact flash memory.

이와 같이 플래시 메모리는 소비전력이 작고, 전원이 꺼지더라도 저장된 정보가 사라지지 않은 채 유지되는 특성을 지닌다. 곧 계속해서 전원이 공급되는 비휘발성 메모리로, D램과 달리 전원이 끊기더라도 저장된 정보를 그대로 보존할 수 있을 뿐 아니라, 정보의 입출력도 자유로워 디지털 텔레비전, 디지털 캠코더, 휴대전화, 디지털 카메라, 개인휴대단말기(PDA), 게임기, MP3 플레이어 등에 널리 이용되고 있다. As such, the flash memory has a small power consumption, and the stored information does not disappear even when the power is turned off. It is a non-volatile memory that is continuously supplied with power. Unlike DRAM, it can not only preserve the stored information but also freely input and output information. Digital TV, digital camcorder, mobile phone, digital camera, personal It is widely used in PDAs, game machines, MP3 players and the like.

그런데, 최근 들어 인터넷 인프라의 초고속화와 개인용 컴퓨터의 성능 향상 그리고 저장장치의 대용량화에 따라 더욱더 많은 불법 복제된 음원과 영상, 그리고 교육용 컨텐츠 등과 같은 디지털 컨텐츠들이 정당한 가치가 지불되지 않은 상태로 일반 사용자들에게 노출되어, 서로 공유되고 불법 사용되고 있는 상황이다. 이로 인하여 디지털 컨텐츠는 곧 무료, 공짜라는 의식이 일반 사용자들 사이에 굳게 자리 잡게 되었고, 이는 음반 미디어, 영상 미디어, 교육 미디어 시장의 위축을 가져오게 되었다.However, with the recent increase in the speed of the Internet infrastructure, the improvement of the performance of personal computers, and the increase in the capacity of storage devices, more and more digital contents such as illegally copied music, video, and educational contents have not been paid a fair value. It is a situation that is exposed to, shared with each other, and illegally used. As a result, digital content is soon becoming a free and free consciousness among the general users, which has led to a contraction of the music media, video media, and education media markets.

이러한 불법 사용의 확대로 디지털 컨텐츠 저작권 보호 문제가 심각하게 대두되고 있으나, 이미 무료 사용의 경험이 있고 방법을 아는 사용자들에게 있어서 불법 복제된 디지털 컨텐츠의 확산과 사용을 막고 정당한 저작권 가치를 지불하고 사용하도록 유도하는 것은 불가항력에 가까운 상황이다. 그러한 노력의 일환으로 최근 들어 네트워크를 통해서 디지털 컨텐츠를 제공하는 서비스가 유료 서비스로 전환되고 있지만, 이미 같은 내용의 디지털 컨텐츠가 인터넷상에서 불법 공짜 디지털 컨텐츠로 범람하고 있는 상황에서 네트워크 유료 서비스가 저작권자의 저작권을 보호하고 위축되어있는 오프라인 미디어 시장의 활성화에 미치는 영향력은 크지 못한 상황이다. 이는 동질의 디지털 컨텐츠를 유료 서비스로 이용할 것인가 아니면 불법 복제된 공짜 디지털 컨텐츠를 구하여 이용할 것인가라는 선택의 길목에서 많은 사용자들이 방법을 알고 불법 복제가 가능만하다면, 다소의 노력이 들어가더라도 불법 복제된 공짜 디지털 컨텐츠를 인터넷상에서 구하여 이용하기 때문이다.With the expansion of illegal use, the issue of copyright protection of digital contents is seriously raised, but for those who already have free usage and know how to prevent the spread and use of illegally copied digital contents, pay and use the right copyright value. It is a situation near force majeure. As part of such efforts, in recent years, services that provide digital contents through the network have been converted to paid services, but network paid services have been copyrighted by copyright owners in the situation where digital contents with the same contents are flooded with illegal free digital contents on the Internet. The impact on the protection and contraction of the shrinking offline media market is not significant. This means that if a lot of users know how to use pirated digital content as a paid service or obtain and use pirated free digital content, if it is possible to make piracy, even if a little effort is put into it, the pirated free This is because digital content is obtained and used on the Internet.

예를 들어, 특정 가수A가 자신의 1집을 CD 음반으로 출시했다고 가정하면, 그 가수A의 1집 음반에 수록되어있는 곡들은 CD가 매장에서 사용자에게 판매됨과 동시에, 무한 불법 복제가 가능하고 상호 간의 디지털 컨텐츠 공유가 가능한 인터넷 시장에 저작권 보호를 위한 아무런 보호 장비 없이 음원을 그대로 노출시키는 결과를 낳게 된다. 이렇게 CD 음반(음원 저장매체)을 통하여 자신의 음원이 불법 복제 시장에 노출된 후에는, 어떠한 유료 서비스나 국가 정책으로 사용자들로 하여금 정당한 저작권 사용료를 내고 디지털 컨텐츠 음원을 사용할 것을 유도한다 하더라도, 실효를 거두기란 어렵게 된다. For example, suppose that a singer A has released his first album as a CD record, the songs contained in that singer A's first album can be sold to users at the same time as the CD. This will result in the sound source being exposed without any protection device for copyright protection in the internet market where digital content sharing is possible. After a user's music is exposed to the illegal copy market through CD recording (sound storage media), even if any paid service or national policy encourages users to pay a fair royalty fee and use digital content music, It will be difficult to reap.

이와 같은 상황은 영상 저장매체인 DVD에서도 마찬가지이다. 지역 코드나 기타 방법으로 DRM(Digital Right Management)을 적용하였으나, 모두 풀려 현재 인터넷상에서는 불법 복제된 DVD 디지털 컨텐츠들이 정당한 저작권 사용료 지불 없이 사용자들로 하여금 사용되고 있다.The same situation applies to DVD, which is a video storage medium. Although DRM (Digital Rights Management) has been applied by region codes or other methods, all of them have been released and illegally copied DVD digital contents are now being used by users without just paying royalty.

즉, 현재 범용적으로 사용되고 있는 디지털 컨텐츠 저장매체인 CD나 DVD로는, 저작권자가 저장매체에 자신의 컨텐츠를 기록하여 출시함과 동시에, 불법 복제가 가능한 시장에 아무런 저작권 보호 장비 없이 자신의 컨텐츠를 불법 복제가 가능하도록 공개하는 것과 다를 바 없다.In other words, CD or DVD, a digital contents storage medium that is widely used at present, allows copyright holders to record and release their contents on a storage medium and illegally copy their contents without any copyright protection equipment in a market where illegal copying is possible. Is no different from making it public.

따라서, 현재의 기술분야에서는 CD나 DVD와 같은 저장매체들이 사용자들의 컴퓨터를 통한 불법 무단 복제와 고속화된 인터넷 인프라를 활용한 공유 및 무단 도용으로 인하여 CD나 DVD 등의 저장매체에 저장된 컨텐츠에 대한 권리 침해를 충분히 보호할 수 없으며, 해당 음반, 영상, 멀티미디어 교육 시장의 위축 그리고 이는 다시 창작 활동의 위축으로 이어지는 악순환의 연속인 상황에서 컨텐츠 저작권자들의 권리를 철저하게 보호할 수 있는 방안이 절실히 요구되며, 이러한 요구에 부응하고자 하는 것이 본 발명의 과제이다.Therefore, in the current technical field, the storage media such as CDs and DVDs have rights to contents stored on storage media such as CDs and DVDs due to illegal copying through users' computers and sharing and theft using high-speed Internet infrastructure. Infringement cannot be adequately protected, and there is an urgent need for a thorough protection of the rights of content owners in a vicious cycle of record music, video and multimedia education, which in turn leads to a decline in creative activities. It is a problem of the present invention to meet these demands.

그러므로, 본 발명은 플래쉬 메모리(예로서, 낸드 플래쉬 메모리 등)와 같은 메모리 소자의 물리적 특성인 배드패턴(배드블록, 배드페이지, 배드비트 등)을 암호화 키로 활용하여 디지털 컨텐츠의 저작권을 보호할 수 있는, 디지털 저작권 보호 방법 및 그를 이용한 디지털 컨텐츠 기록/재생 방법과 그의 디지털 컨텐츠 저장매체와, 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.Therefore, the present invention can protect the copyright of digital content by utilizing bad patterns (bad blocks, bad pages, bad bits, etc.), which are physical characteristics of memory devices such as flash memories (for example, NAND flash memories) as encryption keys. It is an object of the present invention to provide a digital copyright protection method, a digital content recording / reproducing method using the same, a digital content storage medium thereof, and a computer-readable recording medium having recorded thereon a program for realizing the above methods.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned above can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기 목적을 달성하기 위한 본 발명은, 디지털 저작권 보호(DRM) 방법에 있어서, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 단계; 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 정보를 바탕으로 배드패턴 DRM 테이블을 구성하는 단계; 및 상기 배드패턴 정보를 바탕으로 배드패턴 암호화 키를 생성하는 단계를 포함한다.According to an aspect of the present invention, there is provided a digital rights protection (DRM) method, the method comprising: inspecting a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determining a bad pattern extraction area; Recording a code value of the determined bad pattern extraction area in a table selection code field of a card ID; Inspecting an area corresponding to an area code recorded in the table selection code field and constructing a bad pattern DRM table based on bad pattern information; And generating a bad pattern encryption key based on the bad pattern information.

또한, 본 발명은, 디지털 저작권 보호(DRM) 방법에 있어서, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 단계; 및 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 단계를 포함한다.In addition, the present invention provides a digital rights protection (DRM) method, comprising: inspecting a bad pattern for each unit area of a memory device constituting a digital content storage medium and determining a bad pattern extraction area; Recording a code value of the determined bad pattern extraction area in a table selection code field of a card ID; And examining an area corresponding to the area code recorded in the table selection code field, and constructing a bad pattern DRM table based on the bad pattern table.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 저작권 보호(DRM) 방법에 있어서, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 단계; 및 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 암호화 키를 생성하는 단계를 포함한다.In addition, the present invention for achieving the above object, Digital copyright protection (DRM) method, comprising the steps of: extracting the physical characteristics of the digital content storage medium; And generating an encryption key using physical characteristics of the extracted digital content storage medium.

한편, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 기록 방법에 있 어서, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 단계; 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 디지털 저작권 보호(DRM) 테이블을 구성하는 단계; 및 상기 배드패턴 DRM 테이블을 암호화 키로 활용하여 디지털 컨텐츠를 저장매체에 기록하는 단계를 포함한다.On the other hand, the present invention for achieving the above object, in the digital content recording method, the step of inspecting the bad pattern for each unit area of the memory device constituting the digital content storage medium, and determining the bad pattern extraction area; Recording a code value of the determined bad pattern extraction area in a table selection code field of a card ID; Inspecting an area corresponding to an area code recorded in the table selection code field and constructing a bad pattern digital copyright protection (DRM) table based on the bad pattern table; And recording the digital content on a storage medium by using the bad pattern DRM table as an encryption key.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 기록 방법에 있어서, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 단계; 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 암호화 키를 생성하는 단계; 및 상기 생성한 암호화 키를 이용하여 디지털 컨텐츠를 상기 디지털 컨텐츠 저장매체에 기록하는 단계를 포함한다. The present invention also provides a digital content recording method comprising the steps of: extracting the physical characteristics of the digital content storage medium; Generating an encryption key using physical characteristics of the extracted digital content storage medium; And recording the digital content on the digital content storage medium by using the generated encryption key.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 기록 방법에 있어서, 데이터 저장 공간이 아닌 메모리 카드(디지털 컨텐츠 저장매체)의 특성을 기록하는 영역인 헤더 데이터 영역에, 사용된 메모리의 배드영역의 주소들을 기록하는 영역을 설정하여 기록하는 단계; 및 배드영역의 주소들을 조합하여 암호화 특성치를 추출한 후, 상기 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록하는 단계를 포함한다. In addition, in the digital content recording method, the present invention for achieving the above object is a bad area of a used memory in a header data area, which is an area for recording characteristics of a memory card (digital content storage medium), not a data storage space. Setting and recording an area for recording addresses of the; And extracting an encryption characteristic value by combining addresses of the bad region, and then encrypting the original content data with the encryption characteristic value and recording the content data in the normal region except the bad region of the memory.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 기록 방법에 있어서, 사용된 메모리의 배드영역을 이에 대응하는 여유영역의 정의된 위치에 배드 영역임을 마킹하고, 배드영역의 주소들을 조합하여 암호화 특성치를 추출하는 단계; 및 상기 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록하는 단계를 포함한다. In addition, the present invention for achieving the above object, in the digital content recording method, marking the bad area of the used memory at the defined position of the free area corresponding thereto, and encrypts by combining the addresses of the bad area Extracting feature values; And encrypting the original content data using the encryption characteristic value to record the content data in the normal area except the bad area of the memory.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 기록 방법에 있어서, 사용된 메모리의 배드영역을 이에 대응하는 여유영역의 정의된 위치에 배드영역임을 마킹하고, 메모리에 기록된 특정값들로 암호화 특성치를 추출하는 단계; 및 상기 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록하는 단계를 포함한다. In addition, the present invention for achieving the above object, in the digital content recording method, marking the bad area of the used memory at the defined position of the free area corresponding thereto, and the specified value recorded in the memory Extracting encryption characteristic values; And encrypting the original content data using the encryption characteristic value to record the content data in the normal area except the bad area of the memory.

한편, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 저장매체에 있어서, 배드패턴 추출 영역의 코드값이 카드 ID의 테이블 선택 코드 필드에 기록되고, '상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여 배드패턴 테이블을 바탕으로 구성된 디지털 저작권 보호(DRM) 암호화 테이블'을 암호화 키로 활용하여 디지털 컨텐츠가 기록되어 있다. On the other hand, in the present invention for achieving the above object, in the digital content storage medium, the code value of the bad pattern extraction area is recorded in the table selection code field of the card ID, and the 'field code recorded in the table selection code field'. Digital contents are recorded by using a digital copyright protection (DRM) encryption table based on a bad pattern table as an encryption key by examining a corresponding area.

한편, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 재생 방법에 있어서, 디지털 컨텐츠 저장매체 삽입 시, 카드 ID의 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 디지털 저작권 보호(DRM) 테이블을 구성하는 단계; 상기 배드패턴 DRM 테이블에서 실제 배드패턴 주소값을 갖는 패턴들이 실제 배드패턴인지를 검사하는 단계; 및 상기 검사 결과에 따라, 상기 배드패턴 DRM 테이블을 복호화 키로 활용하여 디지털 컨텐츠를 재생하는 단계를 포함한다.On the other hand, the present invention for achieving the above object, in the digital content playback method, when inserting the digital content storage medium, by checking the area corresponding to the area code recorded in the table selection code field of the card ID, the bad pattern table Constructing a bad pattern digital copyright protection (DRM) table based on the background; Checking whether patterns having actual bad pattern address values in the bad pattern DRM table are actual bad patterns; And reproducing digital content by using the bad pattern DRM table as a decryption key according to the inspection result.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 재생 방법에 있어서, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 단계; 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 복호화 키를 생성하는 단계; 및 상기 생성한 복호화 키를 이용하여 디지털 컨텐츠를 재생하는 단계를 포함한다.In addition, the present invention for achieving the above object, the digital content reproduction method, comprising the steps of: extracting the physical characteristics of the digital content storage medium; Generating a decryption key using physical characteristics of the extracted digital content storage medium; And playing the digital content using the generated decryption key.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 재생 방법에 있어서, 디지털 컨텐츠 저장매체 삽입 시, 헤더 데이터 영역에서 배드영역의 주소들을 읽어, 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치를 계산하는 단계; 및 메모리의 컨텐츠 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 상기 암호화 특성치로 원래의 컨텐츠 데이터를 복원하는 단계를 포함하되, 상기 암호화 특성치는, 사용되는 메모리마다 다른 배드영역의 주소와 같은 특이값들의 조합으로 계산됨으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능한 것을 특징으로 한다. In addition, the present invention for achieving the above object, in the digital content playback method, when inserting a digital content storage medium, the address of the bad area is read from the header data area, combined with the address of the bad area used to encrypt the content data Calculating an encryption characteristic value; And restoring original content data to the encryption characteristic value while sequentially reading the content data of the memory except the bad region, wherein the encryption characteristic value is unique, such as an address of a bad region different for each memory used. By calculating the combination of values, the complete copy is physically impossible unless the bad memory areas of the original memory and the memory used for copying all match.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 재생 방법에 있어서, 디지털 컨텐츠 저장매체 삽입 시, 메모리를 검사하여 배드영역의 주소들을 읽어, 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치를 계산하는 단계; 및 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 상기 암호화 특성치로 원래의 컨텐츠 데이터를 복원하는 단계를 포함하되, 상기 암호화 특성치는, 사용되는 메모리마다 다른 배드영역의 주소와 같은 특이값들의 조합으로 계산됨으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영 역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능한 것을 특징으로 한다. In addition, the present invention for achieving the above object, in the digital content playback method, when inserting the digital content storage medium, the memory is read and the addresses of the bad area, combined with the address of the bad area used to encrypt the content data Calculating an encryption characteristic value; And restoring original content data with the encryption characteristic value while sequentially reading data of the memory except the bad region, wherein the encryption characteristic value is a singular value such as an address of a bad region different for each memory used. Calculated by the combination of these two features, it is characterized in that the complete copy is physically impossible unless the bad memory areas of the original memory and the memory used for copying.

또한, 상기 목적을 달성하기 위한 본 발명은, 디지털 컨텐츠 재생 방법에 있어서, 디지털 컨텐츠 저장매체 삽입 시, 메모리를 검사하여 메모리에 기록된 특정값을 읽어, 특정값으로 사용된 암호화 특성치를 계산하는 단계; 및 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 상기 암호화 특성치로 원래의 컨텐츠 데이터를 복원하는 단계를 포함하되, 상기 암호화 특성치는, 사용되는 메모리에 기록된 특정값들의 조합으로 계산됨으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능한 것을 특징으로 한다. In addition, the present invention for achieving the above object, in the digital content playback method, when the digital content storage medium is inserted, reading the specific value recorded in the memory to calculate the encryption characteristic value used as a specific value ; And restoring original content data to the encryption characteristic value while sequentially reading data of the memory except the bad area, wherein the encryption characteristic value is calculated by a combination of specific values recorded in the memory to be used. In this case, a complete copy is physically impossible unless the bad memory areas of the original memory and the memory used for copying are identical.

한편, 상기 목적을 달성하기 위한 본 발명은, 프로세서를 구비한 디지털 저작권 보호(DRM) 장치에, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 기능; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 기능; 및 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In order to achieve the above object, the present invention provides a digital rights protection (DRM) device having a processor, which checks a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determines a bad pattern extraction area. Function; Writing a code value of the determined bad pattern extraction area into a table selection code field of a card ID; And an area corresponding to the area code recorded in the table selection code field, and providing a computer-readable recording medium having recorded thereon a program for realizing a function of configuring a bad pattern DRM table based on the bad pattern table. .

또한, 본 발명은, 프로세서를 구비한 디지털 저작권 보호(DRM) 장치에, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 기능; 및 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 암호화 키를 생성하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a digital rights protection (DRM) device having a processor, the function of extracting physical characteristics of a digital content storage medium; And a computer readable recording medium having recorded thereon a program for realizing a function of generating an encryption key using the extracted physical content of the digital content storage medium.

한편, 본 발명은, 프로세서를 구비한 디지털 컨텐츠 기록 장치에, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 기능; 상기 결정된 배드패턴 추출 영역의 코드값을 카드 ID의 테이블 선택 코드 필드에 기록하는 기능; 상기 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 디지털 저작권 보호(DRM) 테이블을 구성하는 기능; 및 상기 배드패턴 DRM 테이블을 암호화 키로 활용하여 디지털 컨텐츠를 저장매체에 기록하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention, the digital content recording device having a processor, the function of inspecting the bad pattern for each unit area of the memory element constituting the digital content storage medium, and determines the bad pattern extraction area; Writing a code value of the determined bad pattern extraction area into a table selection code field of a card ID; Inspecting an area corresponding to an area code recorded in the table selection code field and constructing a bad pattern digital copyright protection (DRM) table based on the bad pattern table; And a computer-readable recording medium having recorded thereon a program for realizing a function of recording digital content on a storage medium by using the bad pattern DRM table as an encryption key.

또한, 본 발명은, 프로세서를 구비한 디지털 컨텐츠 기록 장치에, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 기능; 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 암호화 키를 생성하는 기능; 및 상기 생성한 암호화 키를 이용하여 디지털 컨텐츠를 상기 디지털 컨텐츠 저장매체에 기록하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a digital content recording apparatus having a processor, the function of extracting physical characteristics of a digital content storage medium; Generating an encryption key using physical characteristics of the extracted digital content storage medium; And a computer readable recording medium having recorded thereon a program for realizing a function of recording digital content on the digital content storage medium using the generated encryption key.

한편, 본 발명은, 프로세서를 구비한 디지털 컨텐츠 재생 장치에, 디지털 컨텐츠 저장매체 삽입 시, 카드 ID의 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 디지털 저작권 보호(DRM) 테이블을 구성하는 기능; 상기 배드패턴 DRM 테이블에서 실제 배드패턴 주소값을 갖는 패턴들이 실제 배드패턴인지를 검사하는 기능; 및 상기 검사 결과에 따라, 상기 배드패턴 DRM 테이블을 복호화 키로 활용하여 디지털 컨텐츠를 재생하 는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention, when inserting the digital content storage medium in the digital content playback device equipped with a processor, by checking the area corresponding to the area code recorded in the table selection code field of the card ID, and based on the bad pattern table Configuring a pattern digital copyright protection (DRM) table; Checking whether patterns having an actual bad pattern address in the bad pattern DRM table are actual bad patterns; And a computer readable recording medium having recorded thereon a program for realizing a function of reproducing digital content by using the bad pattern DRM table as a decryption key according to the inspection result.

또한, 본 발명은, 프로세서를 구비한 디지털 컨텐츠 재생 장치에, 디지털 컨텐츠 저장매체의 물리적 특성을 추출하는 기능; 상기 추출한 디지털 컨텐츠 저장매체의 물리적 특성을 이용하여 복호화 키를 생성하는 기능; 및 상기 생성한 복호화 키를 이용하여 디지털 컨텐츠를 재생하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a digital content reproducing apparatus having a processor, the function of extracting physical characteristics of a digital content storage medium; Generating a decryption key using physical characteristics of the extracted digital content storage medium; And a computer readable recording medium having recorded thereon a program for realizing a function of reproducing digital content using the generated decryption key.

상기와 같은 본 발명은, 일 예로 낸드 플래쉬 메모리로 구성된 디지털 컨텐츠 미디어의 배드패턴(배드블록, 배드페이지, 배드비트 등)과 같은 물리적 특성을 암호화 인자로 활용하기 때문에, 각 디지털 컨텐츠 저장매체마다 각각 다른 고유한 DRM 암호화 테이블(배드패턴 DRM 테이블)을 제공할 수 있는 효과가 있다. 즉, 100장의 디지털 컨텐츠 저장매체가 있다면, 100장 모두 다른 배드패턴 DRM 테이블(DRM 암호화 테이블)에 의해서 암호화되어 있는 것이다.As described above, the present invention utilizes physical characteristics such as bad patterns (bad blocks, bad pages, bad bits, etc.) of digital content media composed of NAND flash memory as encryption factors. There is an effect that can provide another unique DRM encryption table (bad pattern DRM table). That is, if there are 100 digital content storage media, all 100 are encrypted by different bad pattern DRM tables (DRM encryption tables).

또한, 본 발명은, 디지털 컨텐츠 저장매체의 특정영역에 기 기록되어진 테이블을 사용하는 것이 아니라, 미디어 인증 과정에서 해당 저장매체의 물리적 특성인 배드패턴을 취득하여 배드패턴 DRM 테이블을 생성하고 이를 통해 디지털 컨텐츠를 암호화하기 때문에 저장매체의 논리적인 복제 의미가 상실된다. 이는 하기에서 보다 상세하게 설명될 미디어 인증부의 실제(Real) 배드패턴 검사 단계에서 검증될 수 있다. In addition, the present invention does not use a table previously recorded in a specific area of the digital content storage medium, but obtains a bad pattern DRM table by acquiring a bad pattern, which is a physical characteristic of the storage medium, in the process of media authentication. Because the content is encrypted, the logical copy meaning of the storage medium is lost. This may be verified in the real bad pattern inspection step of the media authenticator, which will be described in more detail below.

또한, 본 발명은, 디지털 컨텐츠 미디어 인증 과정에서 해당 저장매체의 물리적 특성인 배드패턴을 취득하여 배드패턴 DRM 테이블 생성하고 생성된 배드패턴 DRM 테이블을 근거로 실제(Real) 배드패턴을 검사하기 때문에 저장매체의 물리적인 복제 의미가 상실된다.Also, the present invention obtains a bad pattern, which is a physical characteristic of a storage medium, in a digital content media authentication process, generates a bad pattern DRM table, and stores the bad pattern based on the generated bad pattern DRM table. The physical copy meaning of the media is lost.

또한, 본 발명은, 상기와 같은 이유로 DRM이 적용된 디지털 컨텐츠 저장매체에 기록된 디지털 컨텐츠에 대한 복제가 사실상 불가하고 의미가 상실되므로 인해서, 기존 불법복제가 만연된 CD나 DVD와 같은 저장매체에 비해 디지털 컨텐츠에 대한 저작권을 충분히 보호할 수 있으며, 이로 인해 저작권자들에게는 정당한 보상을 제공할 수 있어 디지털 컨텐츠 창작 및 관련 기술의 발전을 도모할 수 있는 효과가 있다. In addition, the present invention, since the copy of the digital content recorded on the digital content storage medium to which the DRM is applied for the above reason is virtually impossible and loses meaning, compared to a storage medium such as a CD or DVD in which the illegal piracy is prevalent. It is possible to fully protect the copyright of digital content, which can provide the rightful compensation to the copyright holders, thereby promoting the development of digital content creation and related technologies.

상술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되어 있는 상세한 설명을 통하여 보다 명확해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.The above objects, features, and advantages will become more apparent from the detailed description given hereinafter with reference to the accompanying drawings, and accordingly, those skilled in the art to which the present invention pertains may share the technical idea of the present invention. It will be easy to implement. In addition, in describing the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 실시예에서는 설명의 편의를 위하여 낸드 플래쉬 메모리의 기본적인 구조와 함께, FAT(File Allocation Table)16이나 FAT32와 같은 공개된 파일 시스템(File System)이 아닌 읽기 전용(Read Only) 저장매체에 적합한 특화된 파일 시스템(File System)을 일 예로 들어 설명하기로 한다. 그러나 본 발명이 이에 한정되는 것이 아님을 미리 밝혀둔다.According to an exemplary embodiment of the present invention, for convenience of description, the NAND flash memory may be stored in a read only storage medium, not a public file system such as FAT (File Allocation Table) 16 or FAT32. A suitable specialized file system will be described as an example. However, it should be noted that the present invention is not limited thereto.

하기 파일 시스템(File System)의 구성 또한 디지털 컨텐츠 기록 시 이미 확정된 해당 저장매체의 배드패턴 DRM 테이블(DRM 암호화 테이블)에 의해 암호화됨을 특징으로 한다. 즉, 파일 시스템(File System)의 구조 중에서 해당 저장매체의 배드패턴 DRM 테이블(DRM 암호화 테이블)을 파악하기 위한 최소한의 영역을 제외한 모든 영역(Area)은 해당 DRM으로 암호화되어 일반적인 접근을 차단한다.The configuration of the following file system is also characterized by being encrypted by a bad pattern DRM table (DRM encryption table) of a corresponding storage medium which is already determined when recording digital content. That is, in the structure of the file system, all areas except the minimum area for identifying the bad pattern DRM table (DRM encryption table) of the storage medium are encrypted with the corresponding DRM to block general access.

일반적으로, 플래쉬 메모리의 물리 블록(Physical Block) 0번(이하, '제로 블록'이라 함)은 제조사가 배드블록이 아님을 보증한다. 따라서 제로블록에는 저장매체의 포맷(Format) 관련 정보와 미디어 ID(카드 ID) 등이 저장된다.In general, the physical block 0 of the flash memory (hereinafter referred to as 'zero block') guarantees that the manufacturer is not a bad block. Therefore, in the zero block, format related information of a storage medium, a media ID (card ID), and the like are stored.

이하에서는 배드비트 정보에 의해 배드비트가 있는 블록(즉, 배드블록)을 일 예로 들어 설명하기로 한다. 그러나 본 발명이 배드비트 정보에 의해 배드비트가 있는 페이지(즉, 배드페이지)에 대해서도 동일하게 적용 가능함에 유의하여야 한다. 따라서 배드블록에 대해서는 배드블록 DRM 테이블을 DRM 암호화 테이블로 활용하면 되고, 배드페이지에 대해서는 배드페이지 DRM 테이블을 DRM 암호화 테이블로 활용하면 된다. 이러한 배드블록 DRM 테이블 및 배드페이지 DRM 암호화 테이블을 통칭하여 '배드패턴 DRM 테이블(DRM 암호화 테이블)'이라 칭한다.Hereinafter, a block having bad bits (that is, a bad block) by bad bit information will be described as an example. However, it should be noted that the present invention is equally applicable to a page having bad bits (that is, bad page) by bad bit information. Therefore, the bad block DRM table may be used as the DRM encryption table for the bad block, and the bad page DRM table may be used as the DRM encryption table for the bad page. Such a bad block DRM table and a bad page DRM encryption table are collectively referred to as a 'bad pattern DRM table (DRM encryption table)'.

도 1을 참조하여 플래쉬 메모리의 제로 블록의 구성을 살펴보면 다음과 같다. The configuration of the zero block of the flash memory will now be described with reference to FIG. 1.

'제로블록의 페이지 번호0'의 마스터 부팅 레코더(MBR: Master Boot Recoder)에는 플래쉬 메모리의 구성과 파일 시스템(File System)에 관련된 정보들이 기록된다. In the Master Boot Recorder (MBR) of page number 0 of the zero block, information related to the configuration of the flash memory and the file system is recorded.

그리고 '제로블록의 페이지 번호1~5'에는 배드블록 마킹(Bad Block Marking) 정보가 기록되고, 특히 '제로블록의 페이지 번호9'에는 미디어 ID에 해당하는 카드(Card) ID가 저장된다. 이 카드(Card) ID는 도 2에 도시된 바와 같이 플래쉬 메모리로 구성된 디지털 컨텐츠 저장매체(메모리 카드)의 특정 정보들(예로서, 카드 버전(Card Version), DRM 테이블 선택 코드, 지역 코드, 제조사 코드, 저작권자 ID(Writer ID), 그리고 카드 시리얼 번호(Card Serial Number) 정보 등)로 구성되어 있다.Bad block marking information is recorded in page numbers 1 to 5 of the zero block, and a card ID corresponding to a media ID is stored in page number 9 of the zero block. This Card ID is used to identify specific information of the digital content storage medium (memory card) configured as flash memory as shown in FIG. 2 (eg, Card Version, DRM Table Selection Code, Area Code, Manufacturer, etc.). Code, copyright ID (Writer ID), and card serial number information).

특히, 상기 카드(Card) ID(제로블록의 페이지 번호9) 중 DRM 테이블 선택 코드(Table Select Code) 필드에는, 저장매체의 물리적 특성인 배드패턴(배드블록, 배드페이지, 배드비트 등)을 활용한 DRM(Digital Right Management)을 구현함에 있어서, DRM 암호화 테이블(배드블록 DRM 테이블)로 사용하고자 하는 배드패턴(배드블록, 배드페이지, 배드비트 등)이 존재하는 영역(임계치 이상의 배드블록을 가지고 있는 영역 또는 가장 많은 수의 배드블록을 포함하고 있는 영역)의 코드(Area Code) 정보가 기록된다.In particular, in the DRM Table Select Code field of the Card ID (page number 9 of zero block), a bad pattern (bad block, bad page, bad bit, etc.), which is a physical characteristic of a storage medium, is used. In implementing one DRM (Digital Right Management), an area (bad block, bad page, bad bit, etc.) in which a bad pattern (bad block, bad page, bad bit, etc.) to be used as a DRM encryption table (bad block DRM table) exists exists Area Code information of the area or the area including the largest number of bad blocks is recorded.

이때, 플래쉬 메모리로 구성된 저장매체의 배드패턴 추출 영역은, 플래쉬 메모리 전체 블록을 대상으로 할 수도 있지만, 특정 영역만을 대상으로 할 수도 있다. 또한, 추출된 배드패턴을 이용한 DRM 암호화 테이블(배드블록 DRM 테이블)의 크기 역시 128바이트, 256바이트, 512바이트 등 여러 가지로 구성할 수 있다. In this case, the bad pattern extraction region of the storage medium configured as the flash memory may be an entire block of the flash memory, but may be a specific region only. In addition, the size of the DRM encryption table (bad block DRM table) using the extracted bad pattern may also be configured in various ways such as 128 bytes, 256 bytes, 512 bytes.

다만, 설명의 편의를 위해, 본 실시예에서는 DRM 암호화 테이블의 크기를 256바이트로 하고, DRM 암호화 테이블의 구성을 위한 배드패턴 추출 영역을 플래쉬 메모리 전체 영역이 아닌 특정 영역을 기준으로 하여 일 예를 들어 설명하기로 한다. 그러나 본 발명이 이에 한정되는 것이 아님을 미리 밝혀둔다. For convenience of description, in this embodiment, the size of the DRM encryption table is set to 256 bytes, and the bad pattern extraction area for configuring the DRM encryption table is based on a specific area instead of the entire flash memory area. Will be explained. However, it should be noted that the present invention is not limited thereto.

상기에서, '특정 영역'이라 함은, 예로서 플래쉬 메모리 전체 블록을 2048 블록 단위로 나누어 처리할 수 있음을 의미한다. 즉, 도 3에 도시된 바와 같이 DRM 암호화 테이블(배드블록 DRM 테이블) 구성을 위한 배드패턴 추출 영역은 플래쉬 메모리 전체 블록에서 2048 블록 배수 단위로 각각 영역(Area)을 설정하고, 그 중에 특정 기준에 적합한 영역(Area)을 DRM 암호화 테이블(배드블록 DRM 테이블) 구성을 위한 배드패턴 추출 영역으로 결정한다. In the above description, the term 'specific area' means that the entire block of the flash memory may be divided and processed in units of 2048 blocks. That is, as shown in FIG. 3, the bad pattern extraction area for configuring the DRM encryption table (bad block DRM table) is set in areas of 2048 blocks in all blocks of the flash memory, and among them, the area is set to a specific reference. A suitable area is determined as a bad pattern extraction area for constructing a DRM encryption table (bad block DRM table).

여기서, 특정 기준이라 함은, 256바이트의 DRM 암호화 테이블(배드블록 DRM 테이블)을 구성하는데 적합한 영역(Area)인지를 판단하는 기준이다. 예를 들면, 임계치(예로서, 128개) 이상의 배드블록을 포함하는 영역(Area)이 존재한다면, 해당 영역이 배드패턴 추출 영역으로 결정된다. 그러나 만약 128개 이상의 배드블록을 포함하는 영역(Area)이 없다면, 다수의 영역(2048 블록 배수 단위로 설정된 영역들) 중 가장 많은 수의 배드블록을 포함하고 있는 영역(Area)이 DRM 암호화 테이 블(배드블록 DRM 테이블) 구성을 위한 배드패턴 추출 영역이 된다.Here, the specific criterion is a criterion for determining whether the area is suitable for forming a 256-byte DRM encryption table (bad block DRM table). For example, if there is an area including a bad block having a threshold value (eg, 128) or more, the area is determined as the bad pattern extraction area. However, if there is no area including more than 128 bad blocks, the area containing the largest number of bad blocks among the plurality of areas (areas set in units of 2048 blocks) is the DRM encryption table. It becomes a bad pattern extraction area for (bad block DRM table) construction.

상기의 배드패턴 추출 영역은 디지털 컨텐츠 저장매체(메모리 카드) 생산 시 메모리 카드를 포맷(Format)하면서 생성된 배드블록 테이블(Bad Block Table)을 바탕으로 결정되며, 이때 결정된 해당 영역의 영역코드(Area Code) 값은 도 2에 도시된 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록된다.The bad pattern extraction area is determined based on a bad block table generated while formatting a memory card when a digital content storage medium (memory card) is produced, and the area code of the corresponding area is determined. Code value is recorded in the DRM Table Select Code field of the Card ID shown in FIG. 2.

도 4 는 본 발명의 실시예에 따라 디지털 저작권 보호를 위한 배드블록 DRM 테이블 구성 방법의 일 예를 보여주는 흐름도로서, 상기에서 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록된 영역코드(Area Code)에 해당하는 영역(Area)을 검사하여 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성하는 절차를 나타낸다. 4 is a flowchart illustrating an example of a method for configuring a bad block DRM table for digital copyright protection according to an embodiment of the present invention, and is recorded in the DRM Table Select Code field of a card ID. The procedure of configuring a bad block DRM table (DRM encryption table) by inspecting an area corresponding to an area code is shown.

전술한 바와 같이, 배드블록 DRM 테이블(DRM 암호화 테이블)의 구성 절차를 살펴보면, 플래쉬 메모리 전체 블록에서 블록 배수 단위(예로서, 2048 블록 배수 단위)로 영역을 설정하고, 이 영역들 중 배드블록 테이블을 바탕으로 특정 기준(예로서 배드블록을 임계치(예로서, 128개) 이상 가지고 있는 영역 또는 배드블록을 많이 가지고 있는 영역)에 부합하는 배드패턴 추출 영역을 결정하여, 해당 영역의 코드(Area Code) 값을 카드(Card) ID의 DRM 테이블 선택 코드 필드에 기록하게 된다. As described above, referring to the configuration procedure of the bad block DRM table (DRM encryption table), an area is set in a block multiply unit (for example, a 2048 block multiply unit) in the entire block of flash memory, and the bad block table among these areas is selected. Based on this, a bad pattern extraction area corresponding to a specific criterion (eg, an area having a bad block more than a threshold value (eg, 128) or a lot of bad blocks) is determined, and a code of the corresponding area is determined. ) Value is recorded in the DRM table selection code field of the Card ID.

이후, 이와 같이 결정된 배드패턴 추출 영역(즉, 영역코드(Area Code)에 해당하는 영역(Area))을 검사하여(401) 배드블록 DRM 테이블(DRM 암호화 테이블)을 도 5 또는 도 7과 같이 구성할 수 있다(402~406). 여기서, 도 5는 128개가 넘는 배 드블록을 갖고 있는 영역1(블록0 ~ 블록2047)의 배드블록 테이블을 바탕으로 생성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)이고, 도 7은 128개 이하의 배드블록을 갖고 있는 영역2(블록2048 ~ 블록4095)의 배드블록 테이블(도 6 참조)에 패딩 데이터를 첨부하여 생성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)이다. Thereafter, the bad pattern extraction area (that is, the area corresponding to the area code) is examined (401), and the bad block DRM table (DRM encryption table) is configured as shown in FIG. 5 or 7. You can do it (402-406). 5 is a 256-byte bad block DRM table (DRM encryption table) generated based on the bad block table of region 1 (blocks 0 to 2047) having more than 128 bad blocks, and FIG. It is a 256-byte bad block DRM table (DRM encryption table) generated by attaching padding data to the bad block table (see FIG. 6) of area 2 (blocks 2048 to 4095) each having fewer than two bad blocks.

이를 구체적으로 살펴보면, 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록, 만약 검사 대상 영역(영역코드에 해당하는 영역)이 128개 이상의 충분한 배드블록을 가지고 있다면(402), 128개(256바이트) 이상의 배드블록을 가진 영역(예로서, 블록0 ~ 블록2047 영역1)의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 5 참조]을 작성한다(403). Specifically, if the area to be inspected (the area corresponding to the area code) has more than 128 sufficient bad blocks so that a 256-byte bad block DRM table (DRM encryption table) can be formed (402), 128 A 256-byte bad block DRM table (DRM) consisting of 128 real bad block addresses based on the bad block table of an area having more than 256 (256 byte) bad blocks (e.g., block 0 to block 2047, area 1). Encryption table) (refer to FIG. 5) (403).

도 5는 128개가 넘는 배드블록을 가진 영역1(블록0 ~ 블록2047)의 배드블록 테이블을 기준으로 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 작성한 것이다. 즉, 영역1에 128개(256바이트) 이상의 실제(Real) 배드블록이 존재하여, 배드블록 주소만으로도 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한 것이다. 이 경우에는 도 7과 같은 패딩(Padding) 작업이 필요 없게 된다.FIG. 5 shows a 256-byte bad block DRM table (DRM encryption table) based on the bad block table of area 1 (blocks 0 to 2047) having more than 128 bad blocks. In other words, there are 128 (256 bytes) or more real bad blocks in the area 1, and a 256-byte bad block DRM table (DRM encryption table) is formed using only the bad block address. In this case, padding as shown in FIG. 7 is not required.

한편, 해당 영역(검사 대상 영역(영역코드에 해당하는 영역))이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면(402), 하기와 같은 적당한 방법으로 패딩(Padding) 작업을 실시하여(404,405) 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참 조]을 작성한다(406). 이 경우, 배드블록 DRM 테이블(DRM 암호화 테이블)은 18개(36바이트)의 실제 배드블록 주소와 110개(220바이트)의 패딩 데이터로 구성된다. On the other hand, if the corresponding region (the region to be inspected (the region corresponding to the region code)) does not contain enough bad blocks to constitute a 256-byte bad block DRM table (DRM encryption table) (402), Padding is performed in an appropriate manner (404, 405) to create a 256-byte bad block DRM table (DRM encryption table) (see Fig. 7) (406). In this case, the bad block DRM table (DRM encryption table) is composed of 18 (36 bytes) actual bad block addresses and 110 (220 bytes) padding data.

여기서, 패딩(Padding)하는 방법에는 여러 가지 방식이 존재할 수 있지만, 본 실시예에서는 카드(Card) ID의 카드 시리얼 번호 필드(Card Serial Number Filed)(16바이트)를 활용하여 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. 일 예로, 기존의 실제(Real) 배드블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같은 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. 즉, 도 6의 '128개 이하의 배드블록을 갖고 있는 영역2의 배드블록 테이블'에서 실제 배드블록 테이블 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합 연산하여, 128개 이하의 배드블록을 갖고 있는 영역2(블록2048 ~ 블록4095)의 배드블록 테이블(즉, 도 6에서는 18개(36바이트)의 실제 배드블록 주소를 갖는 배드블록 테이블임)에 패딩 데이터(즉, 배드블록 테이블 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 값)를 첨부한 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 생성한다. 이 경우, 배드블록 DRM 테이블(DRM 암호화 테이블)은 36바이트의 실제 배드블록 주소와 220바이트의 패딩 데이터(0x09, 0x10, 0x0B, 0x17,...)로 구성된다.Here, there may be various methods of padding, but in this embodiment, a bad block DRM table (DRM) is utilized by using a card serial number filed (16 bytes) of a card ID. Encryption table). For example, using a padding value generated by sequentially ORing an existing real bad block table value and a card serial number value to each other using 256 bytes as shown in FIG. 7. Configure the bad block DRM table (DRM encryption table). That is, in the 'bad block table of area 2 having 128 or less bad blocks' in FIG. 6, the exclusive bad block table value and the card serial number value are sequentially ORed together to have 128 or less bad blocks. Padding data (i.e., bad block table values and card serials) in the bad block table in area 2 (blocks 2048 to 4095) (i.e., the bad block table with 18 (36 bytes) actual bad block addresses in FIG. 6). A 256-byte bad block DRM table (DRM encryption table) (see FIG. 7) to which the number value is sequentially generated is generated by exclusive OR. In this case, the bad block DRM table (DRM encryption table) is composed of an actual bad block address of 36 bytes and padding data ( 0x09, 0x10, 0x0B, 0x17, ... ) of 220 bytes.

도 6은 영역2(블록2048 ~ 블록4095)에서 128개 이하의 배드블록(예로서, 18개(36바이트)의 실제 배드블록)을 기준으로 작성된 배드블록 테이블이다. 즉, 영역 2에 0x0812 ~ 0x0CFE까지 18개(36바이트)의 배드블록만이 존재하는 경우, 이의 배드블록 테이블을 예시한 것이다. FIG. 6 is a bad block table created based on 128 bad blocks (for example, 18 (36 bytes) actual bad blocks) in area 2 (blocks 2048 to 4095). That is, when only 18 (36 bytes) bad blocks exist in the region 2 from 0x0812 to 0x0CFE, the bad block table is illustrated.

도 6의 18개(36바이트)의 실제 배드블록 주소를 포함하여 구성된 배드블록 테이블을 바탕으로 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 만들기 위해서는, 패딩(Padding) 작업을 실시해야 하는데, 만약 카드 시리얼 번호(Card Serial Number)가 "0x01020304050607080900010203040506"이라고 가정하면 배드블록 테이블 값들에 카드 시리얼 번호(Card Serial Number)를 순차적으로 배타적 논리합(XOR) 연산을 통해 얻은 패딩(Padding) 값은 '0x09', '0x10', '0x0B', '0x17', ...과 같다.In order to create a 256-byte bad block DRM table (DRM encryption table) based on the bad block table including 18 (36 bytes) real bad block addresses of FIG. 6, padding should be performed. If the card serial number is "0x01020304050607080900010203040506", the padding value obtained through the XOR operation of the card serial number sequentially in the bad block table values is '0x09'. , '0x10', '0x0B', '0x17', ...

따라서 18개(36바이트)의 실제 배드블록 주소를 포함하여 구성된 배드블록 테이블(도 6 참조)에 패딩 데이터(즉, 배드블록 테이블 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 값)를 첨부하여 도 7과 같이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. Therefore, padding data (i.e., a bad block table value and a card serial number value are sequentially generated by performing an XOR operation on a bad block table (see FIG. 6) including 18 real bad block addresses. Attached) to form a 256-byte bad block DRM table (DRM encryption table) as shown in FIG.

상기와 같은 방법으로 형성된 배드블록 DRM 테이블(DRM 암호화 테이블)은 해당 저장매체(메모리 소자로 구성된 메모리 카드)가 가질 수 있는 물리적 특성(배드패턴)에 따라서 결정되는 확률적으로 유일한 고유 인자가 된다.The bad block DRM table (DRM encryption table) formed by the above method is a probability uniquely unique factor that is determined according to the physical characteristics (bad pattern) that the storage medium (memory card composed of memory elements) may have.

도 8 은 본 발명의 실시예에 따라 디지털 컨텐츠 기록 방법의 일 예를 보여주는 흐름도로서, 디지털 컨텐츠 저장매체를 생산하는 절차를 보여준다. 8 is a flowchart illustrating an example of a method for recording digital content according to an embodiment of the present invention, and shows a procedure of producing a digital content storage medium.

먼저, 디지털 컨텐츠 저장매체(메모리 소자로 구성된 메모리 카드)의 플래쉬 메모리(예로서, 낸드 플래쉬 메모리)를 로우 포맷하여(801), 0xAA55 라이 팅(Writing)으로 비트 단위 배드페이지(배드비트가 있는 페이지), 배드블록(배드비트가 속하는 블록)을 검사하고 배드비트가 있는 페이지 또는 블록은 배드페이지 또는 배드블록으로 마킹한다(802). 즉, 초기화(포매팅) 시에 발견된 배드비트 정보에 의해 배드비트가 있는 블록은 배드블록으로 마킹하고, 초기화 시에 발견된 배드비트 정보에 의해 배드비트가 있는 페이지는 배드페이지로 마킹한다. First, the flash memory (e.g., NAND flash memory) of the digital content storage medium (memory card composed of memory elements) is low-formatted (801), and bit-by-bit bad pages (pages with bad bits) are written by 0xAA55 writing. In step 802, the bad block (block to which the bad bit belongs) is checked and the page or block having the bad bit is marked as a bad page or bad block (802). That is, a block having bad bits is marked as a bad block by bad bit information found at initialization (formatting), and a page having bad bits is marked as bad page by bad bit information found at initialization.

이후, 해당 배드블록을 배드블록 테이블에 기록한다(803). 이때, 배드블록 테이블은 플래쉬 메모리 전체 블록을 2048 블록 배수 단위로 나눈 영역(Area)별로 구비할 수 있다. Thereafter, the bad block is recorded in the bad block table (803). In this case, the bad block table may include the entire flash memory block for each area divided by 2048 block multiples.

다음으로, 플래쉬 메모리를 로우 포맷한 후 기록된 배드블록 테이블을 참조하여 특정 조건(기준)을 만족하는 영역(Area)을 결정한 후, 해당 영역의 영역코드(Area Code) 값을 카드(Card) ID(제로블록의 페이지 번호9)의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록한다(804). 예로서, 플래쉬 메모리 전체 블록을 2048 블록 단위로 나누어 영역(Area)을 설정하고, 그 중에 특정 조건(기준)에 적합한 영역(Area)을 DRM 암호화 테이블(배드블록 DRM 테이블) 구성을 위한 배드패턴 추출 영역으로 결정한 후, 결정된 영역의 영역코드 값을 카드 ID의 DRM 테이블 선택 코드 필드에 기록한다. Next, after determining the area that satisfies a specific condition (reference) by referring to the recorded bad block table after low-formatting the flash memory, the area code value of the corresponding area is determined by the card ID. The data is recorded in the DRM Table Select Code field of (Page Number 9 of Zero Block) (804). For example, an area is set by dividing an entire block of flash memory into 2048 block units, and a bad pattern extraction for configuring a DRM encryption table (bad block DRM table) is performed. After determining the area, the area code value of the determined area is recorded in the DRM table selection code field of the card ID.

여기서, 특정 조건(기준)이라 함은, 256바이트의 DRM 암호화 테이블(배드블록 DRM 테이블)을 구성하는데 적합한 영역(Area)인지를 판단하는 기준이다. 예를 들면, 임계치(예로서, 128개) 이상의 배드블록을 포함하는 영역(Area) 또는 가장 많은 수의 배드블록을 포함하고 있는 영역(Area)이 배드패턴 추출 영역으로 결정될 수 있다. 이때, 배드패턴 추출 영역의 결정은, 우선 임계치(예로서, 128개) 이상의 배드블록을 포함하는 영역이 존재하는지를 확인해보고, 만약 해당 영역이 존재하지 않으면 다수의 영역(2048 블록 배수 단위로 설정된 영역들) 중 가장 많은 수의 배드블록을 포함하고 있는 영역을 배드패턴 추출 영역으로 결정하는 방식으로, 영역 결정의 우선순위를 둘 수 있는 것이다. Here, the specific condition (reference) is a criterion for determining whether or not it is an area suitable for forming a 256-byte DRM encryption table (bad block DRM table). For example, an area including a bad block having a threshold value (for example, 128 or more) or an area including the largest number of bad blocks may be determined as the bad pattern extraction area. At this time, the determination of the bad pattern extraction area first checks whether there is an area including a bad block having a threshold value (for example, 128 or more). By determining the area including the largest number of bad blocks as the bad pattern extraction area, the area decision can be prioritized.

이와 같이 배드패턴 추출 영역으로 결정된 해당 영역의 영역 코드(Area Code) 값을 도 2에 도시된 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록한다(804).The area code value of the corresponding area determined as the bad pattern extraction area is recorded in the DRM Table Select Code field of the Card ID shown in FIG. 2 (804).

이후, 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록, 만약 검사 대상 영역(영역코드에 해당하는 영역)이 128개 이상의 충분한 배드블록을 가지고 있다면(805), 128개(256바이트) 이상의 배드블록을 가진 영역의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 5 참조]을 작성한다(806). 이는 예를 들면 영역1(블록0 ~ 블록2047)에 128개(256바이트) 이상의 실제(Real) 배드블록이 존재하기 때문에, 실제(Real) 배드블록의 주소만으로도 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있는 것이다. Thereafter, if the area to be inspected (the area corresponding to the area code) has more than 128 sufficient bad blocks (805), 128 (256) to form a 256-byte bad block DRM table (DRM encryption table). A 256-byte bad block DRM table (DRM encryption table) (refer to FIG. 5) consisting of 128 real bad block addresses is created based on the bad block table of the area having a bad block of bytes or more (806). For example, since there are 128 (256 bytes) or more real bad blocks in area 1 (blocks 0 to 2047), even if the address of a real bad block is 256 bytes, the bad block DRM table (DRM) Encryption table).

한편, 해당 영역(검사 대상 영역(영역코드에 해당하는 영역))이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면(805), 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 작성한다(807). 즉, 실제(Real) 배드 블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. On the other hand, if the region (the region to be inspected (the region corresponding to the region code)) does not contain enough bad blocks to constitute a 256-byte bad block DRM table (DRM encryption table), padding (805). 2) A 256-byte bad block DRM table (DRM encryption table) (see Fig. 7) is created (807). That is, a 256-byte bad block DRM as shown in FIG. 7 using a padding value generated by sequentially performing an exclusive OR operation on a real bad block table value and a card serial number value. Configure a table (DRM encryption table).

일 예로, 도 6의 '128개 이하의 배드블록을 갖고 있는 영역2의 배드블록 테이블'에서 실제 배드블록 테이블 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합 연산하여, 영역2(블록2048 ~ 블록4095)의 배드블록 테이블(즉, 도 6에서는 18개(36바이트)의 실제(Real) 배드블록 주소를 갖는 배드블록 테이블임)에 패딩 데이터[즉, 배드블록 테이블 값과 카드 시리얼 번호 값(예로서, '0x01020304050607080900010203040506')을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 값]를 첨부한 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 생성함으로써, 36바이트의 실제(Real) 배드블록 주소와 220바이트의 패딩 데이터(0x09, 0x10, 0x0B, 0x17,...)로 구성된 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. For example, in the 'bad block table of area 2 having 128 or less bad blocks' in FIG. 6, an exclusive logical OR operation is performed on the real bad block table value and the card serial number value sequentially, thereby obtaining area 2 (block 2048 to block 4095). Padding data (i.e., the bad block table value and the card serial number value (e.g., a bad block table with 18 (36 bytes) of real bad block addresses in FIG. 6)). 36 bytes of Real Block by generating a 256-byte bad block DRM table (DRM encryption table) (see FIG. 7) attached to the value [0x01020304050607080900010203040506]). A bad block DRM table (DRM encryption table) consisting of a bad block address and 220 bytes of padding data ( 0x09, 0x10, 0x0B, 0x17, ... ) is constructed.

이후, 플래쉬 메모리를 로우 포맷하면서 추출되어 제로블록에 기록되었던 배드블록 테이블을 삭제한 후(808), 작성된 배드블록 DRM 테이블(DRM 암호화 테이블)을 암호화 키로 활용하여 메모리 소자(예로서, 낸드 플래쉬 메모리)로 구성된 디지털 컨텐츠 저장매체에 디지털 컨텐츠를 기록한다(809).Subsequently, after deleting the bad block table that has been extracted and written to the zero block while formatting the flash memory in low format (808), the created bad block DRM table (DRM encryption table) is used as an encryption key to store a memory device (eg, NAND flash memory). In operation 809, the digital content is recorded on the digital content storage medium.

도 9 는 본 발명의 실시예에 따라 디지털 컨텐츠 재생을 위한 인증 과정의 일예를 보여주는 흐름도로서, 디지털 컨텐츠 저장매체를 재생하는 절차를 보여준다. 9 is a flowchart illustrating an example of an authentication process for reproducing digital content according to an embodiment of the present invention, and illustrates a procedure of reproducing a digital content storage medium.

먼저, 디지털 컨텐츠 제공 장치(미디어 재생 장치)에 메모리 소자(예로서, 낸드 플래쉬 메모리)로 구성된 디지털 컨텐츠 저장장치를 삽입하면(901), 디지털 컨텐츠 제공 장치(미디어 재생 장치)는 카드 ID(제로블록의 페이지 번호9) 정보를 읽어 들여 인증 과정을 시작하게 된다(902). 이때, 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code) 필드에는, DRM 복호화 테이블(배드블록 DRM 테이블)로 사용하고자 하는 배드패턴(배드블록, 배드페이지, 배드비트 등)이 존재하는 영역(임계치 이상의 배드블록을 가지고 있는 영역 또는 가장 많은 수의 배드블록을 포함하고 있는 영역)의 코드(Area Code) 정보가 기록되어 있기 때문에, 미디어 재생 시 카드 ID의 정보를 판단하게 된다. First, when a digital content storage device composed of a memory element (for example, a NAND flash memory) is inserted into a digital content providing device (media playback device) (901), the digital content providing device (media playback device) generates a card ID (zero block). Page number 9) of the information is read and the authentication process is started (902). At this time, in the DRM table select code field of the card ID, an area in which bad patterns (bad blocks, bad pages, bad bits, etc.) to be used as a DRM decoding table (bad block DRM table) exist. Since Area Code information is recorded (an area having a bad block or above a threshold value or an area including the largest number of bad blocks), the card ID information is judged at the time of media playback.

따라서 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code)에 해당하는 영역(Area)을 검사하여(903) 배드블록 DRM 테이블(DRM 복호화 테이블)을 구성한다(904). Accordingly, an area corresponding to the DRM table select code of the card ID is examined (903) to configure a bad block DRM table (DRM decryption table) (904).

예로서, DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 128개 이상의 충분한 배드블록을 가지고 있다면, 128개(256바이트) 이상의 배드블록을 가진 영역의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)[도 5 참조]을 구성한다. For example, if the area corresponding to the area code recorded in the DRM table selection code has more than 128 sufficient bad blocks, 128 actual (based on the bad block table of the area having 128 (256 bytes) or more bad blocks are provided. Real) A 256-byte bad block DRM table (DRM decoding table) composed of a bad block address is configured.

그러나 DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면, 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)[도 7 참조]을 구성한다. 즉, 실제(Real) 배드블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같은 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)을 구성한다. However, if the area corresponding to the area code recorded in the DRM table selection code does not contain enough bad blocks to constitute a 256-byte bad block DRM table (DRM decryption table), then a padding operation is performed. A bad block DRM table (DRM decoding table) (see FIG. 7) of bytes is constructed. That is, the 256-byte bad block DRM as shown in FIG. 7 using a padding value generated by sequentially performing an exclusive OR operation on a real bad block table value and a card serial number value. A table (DRM decryption table) is constructed.

이후, 이와 같이 구성된 배드블록 DRM 테이블(DRM 복호화 테이블)에서 패딩(Padding) 값이 아닌 실제 배드블록 테이블(Table) 값에 해당하는 블록들이 실제(Real) 배드블록인지를 확인한다(905). 예를 들면, 36바이트의 실제(Real) 배드블록 주소와 220바이트의 패딩 데이터(0x09, 0x10, 0x0B, 0x17,...)로 구성된 도 7의 배드블록 DRM 테이블(DRM 복호화 테이블)에서 실제 배드블록 주소값을 갖는 블록들이 실제(Real) 배드블록인지를 확인한다. Thereafter, in the bad block DRM table (DRM decoding table) configured as described above, it is checked whether blocks corresponding to actual bad block table values, not padding values, are real bad blocks (905). For example, the actual bad block in the bad block DRM table (DRM decryption table) of FIG. 7 composed of 36 bytes of real bad block addresses and 220 bytes of padding data (0x09, 0x10, 0x0B, 0x17, ...). Check that the blocks with block address values are real bad blocks.

실제 배드블록인지를 확인하는 과정을 살펴보면, 예로서 실제(Real) 배드블록 테이블에서 무작위로 10개 내외의 배드블록을 선택하여 실제(Real) 배드블록인지를 검사한다(906). 이때, WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드블록인지를 확인한다(907). Looking at the process of checking whether it is a real bad block, for example, randomly selecting about 10 bad blocks from a real bad block table and checking whether it is a real bad block (906). In this case, the write protect pin is disabled and the 0xAA55 and 0x55AA are written to the corresponding page of the real bad block to determine whether it is an actual bad block (907).

상기 확인 결과(907), 실제 배드블록임이 확인되면, 같은 방법으로 적당한 수(예로서, 10개 내외)의 실제(Real) 배드블록을 추가로 검사한다(906). 마찬가지로, 추가로 선택된 배드블록에 대해서도, WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드블록인지를 확인하는 과정(907)을 거친다. As a result of the check 907, if it is confirmed that the actual bad block, an additional number of real bad blocks are additionally checked (for example, about 10) in the same manner (906). Similarly, for the additionally selected badblock, disable the write protect pin and write 0xAA55 and 0x55AA to the corresponding page of the real badblock to determine if it is a real badblock. Confirmation process (907).

이와 같이 추가로 시행된 실제(Real) 배드블록 검사에서도 모두 통과가 되었 다면(즉, 미디어 사용 인증이 통과되면), 디지털 컨텐츠 미디어의 사용(Play or Read)이 허가된다(908). If all of these additional real badblock checks have passed (i.e., if the media use authorization has passed), then the use of digital content media (Play or Read) is permitted (908).

따라서 미디어 사용 인증이 통과되면, 생성된 배드블록 DRM 테이블(DRM 복호화 테이블)을 활용하여 디지털 컨텐츠 데이터를 복호화하면서 사용자에게 전달한다(909).Therefore, if the media use authentication passes, the digital content data is decrypted using the generated bad block DRM table (DRM decryption table) and transmitted to the user (909).

그러나 미디어 사용 인증에 실패하면, 이러한 인증 실패 사실을 사용자에게 알려 해당 디지털 컨텐츠 저장매체의 확인을 요청한다(910). However, if the media use authentication fails, the user is notified of the authentication failure and a request for confirmation of the corresponding digital content storage medium (910).

상기에서, 실제(Real) 배드블록인지를 확인하는 과정에서 검사대상 실제(Real) 배드블록을 몇 개로 할 것인지, 또는 생성된 배드블록 DRM 테이블(DRM 암/복호화 테이블)을 활용하여 디지털 컨텐츠 암호화와 복호화에 있어서 디지털 컨텐츠 전체에 대하여 암호화 및 복호화를 적용할 것인지, 아니면 특정 영역에만 암호화 및 복호화를 적용할 것인지에 대한 조건은 여러 가지가 있을 수 있으나, 본 실시예에서는 실제(Real) 배드블록 테이블의 마지막 배드블록 주소의 마지막 하위 4비트(bits)에 해당하는 값을 기준으로 응용하는 경우를 일 예로 들어 설명하기로 한다.In the above, the number of real bad blocks to be inspected in the process of confirming whether they are real bad blocks or digital content encryption using a generated bad block DRM table (DRM encryption / decryption table) In decryption, there may be various conditions for applying encryption and decryption to the entire digital content or only applying specific encryption and decryption to a specific area. However, in the present embodiment, the end of the real bad block table is different. An example of application based on a value corresponding to the last lower 4 bits of the bad block address will be described.

가령, 배드블록 테이블이 도 6과 같다면(즉, 도 6의 배드블록 테이블은 18개(36바이트)의 실제(Real) 배드블록 주소를 갖는 배드블록 테이블임), 마지막 배드블록 주소는 '0xFE'가 되고 여기서 하위 4비트(bits) 값은 '0x0E(=십진수 14)'이므로 '십진수 14'를 기준으로 하여 상기 조건들을 결정한다.For example, if the badblock table is the same as in FIG. 6 (that is, the badblock table of FIG. 6 is a badblock table having 18 (36 bytes) of real badblock addresses), the last badblock address is '0xFE'. Since the lower 4 bits value is '0x0E (= decimal 14)', the conditions are determined based on 'decimal 14'.

즉, 실제(Real) 배드블록 확인은 14의 배수에 해당되는 배드블록들을 검사한 다. 만일, 검사 대상이 되는 배드블록이 5개 이상이 되지 않을 경우에는 추가로 첫 번째 배드블록부터 순차 검사대상에 포함시켜 총 검사대상 배드블록이 최소 5개를 유지하도록 한다.That is, the real bad block check examines bad blocks corresponding to multiples of 14. If there are not more than five bad blocks to be examined, the first bad block is additionally included in the sequential inspection target to maintain at least five total bad blocks.

마찬가지로, 상기 조건을 기준으로 설명하면, 디지털 컨텐츠 데이터의 암호화 또한 블록 주소가 14의 배수에 해당하는 블록들에 대하여 수행된다. 복호화 또한 같은 기준과 조건으로 진행된다.Similarly, when described based on the above conditions, encryption of digital content data is also performed on blocks whose block addresses correspond to multiples of fourteen. Decoding also proceeds with the same criteria and conditions.

상술한 바와 같은 본 발명의 방법은 DRM이 적용되는 시스템의 전체적인 성능과 기타 조건들을 감안하여 여러 분야에 응용하여 적용할 수 있다. 일 예로, 비대칭 암호화 시스템에 적용할 수 있을 것이다. The method of the present invention as described above can be applied to various fields in consideration of the overall performance and other conditions of the system to which the DRM is applied. For example, it may be applied to an asymmetric encryption system.

그 적용 예를 살펴보면, 전술한 바와 같이 우선 배드패턴을 활용하여 배드패턴 DRM 테이블(DRM 암호화 테이블)을 생성한다. 이 배드배턴 DRM 테이블(DRM 암호화 테이블)을 변환 인자로 하는 해쉬 함수(Hash Function)를 통하여 시이드 키(Seed Key)를 생성한 후, 이를 PKI 알고리즘(RSA, ECC 등)을 통해서 공개키(Public Key)와 개인키(Private Key)를 생성하여 기존의 여러 분야에서 활용되고 있는 PKI 솔루션에 응용할 수도 있다. 이는 각각의 디지털 컨텐츠 저장매체의 배드패턴이 개인키(Private Key) 생성에 대한 원인 인자가 되며, 개인키(Private Key)의 내용을 논리적으로 어떠한 방법으로라도 기록할 필요가 없게 됨으로써 상기의 일 예를 활용한 비대칭 암호화 시스템의 보안성이 더욱 강화된다고 할 수 있다. 즉, 서버에서 상기의 공개키(Public Key)로 암호화된 컨텐츠 데이터를 클라이언트에서 내려받아서, 디지털 컨텐츠 데이터에서 추출된 상기의 개인키(Private Key)를 이용하여 복호화할 수 있다.Referring to the application example, as described above, a bad pattern DRM table (DRM encryption table) is first generated using the bad pattern. After generating a seed key through a hash function that uses the bad baton DRM table (DRM encryption table) as a conversion factor, the public key (Public Key (RSA, ECC, etc.)) is generated. Key and Private Key can also be created and applied to PKI solutions that are used in many existing fields. This is because the bad pattern of each digital content storage medium is a causal factor for the generation of a private key, and the contents of the private key do not need to be recorded in any logical way. It can be said that the security of the asymmetric encryption system used is further enhanced. That is, the server can download content data encrypted with the public key from the client and decrypt the content data using the private key extracted from the digital content data.

상기와 같이 각각의 디지털 컨텐츠들이 기록되어있는 디지털 컨텐츠 저장매체(메모리 카드)를 구성하고 있는 메모리 소자의 물리적 특성(배드블록, 배드페이지, 배드비트 등)을 암호화 키로 활용하게 되면, 각각의 디지털 컨텐츠 저장매체마다 모두 다른 배드블록 DRM 테이블(DRM 암호화 테이블)을 갖게 된다. 이는 논리적인 특정 알고리즘이나 암호화 테이블을 이용한 기존의 DRM이 특정 알고리즘이나 암호화 테이블이 공개되면서 DRM으로서의 가치를 상실하게 되는 약점을 극복할 수 있다.As described above, if the physical characteristics (bad block, bad page, bad bit, etc.) of the memory device constituting the digital content storage medium (memory card) in which the respective digital contents are recorded are utilized as encryption keys, Each storage medium has a different bad block DRM table (DRM encryption table). This can overcome the weakness that the existing DRM using a logical algorithm or encryption table loses its value as a DRM as a specific algorithm or encryption table is released.

설령, 디지털 컨텐츠 저장매체를 구성하고 있는 메모리 소자(예로서, 낸드 플래쉬 메모리)를 불법 복제의 목적으로 어떠한 방법으로든지 디지털 복제하거나 혹은 물리적인 방법으로 메모리 덤프와 같은 방법을 통하여 원본과 똑같은 디지털 컨텐츠 저장매체를 복제한다 하더라도, 복제된 디지털 컨텐츠 저장매체는 유효하지 않게 된다. 왜냐하면, 물리적으로 원본과 똑같은 디지털 컨텐츠 저장매체를 복제하더라도 저장매체를 구성하고 있는 메모리 소자(예로서, 낸드 플래쉬 메모리)의 물리적 특성인 배드패턴(배드블록, 배드페이지, 배드비트 등) 등은 복제되지 않기 때문이다. 즉, 플래쉬 메모리 블록의 스패어 영역(Area)에 배드블록이나 배드페이지 마킹까지 복제를 하였다고 하더라도, 이는 물리적으로 실제 배드블록이나 배드페이지가 될 수 없고, 따라서 복제된 디지털 컨텐츠 저장매체(배드패턴까지는 복제되지 않음)는 사용(재생) 시 디지털 컨텐츠 미디어 인증 과정의 실제(Real) 배드블록을 검사하는 과정에서 인증에 실패하여 유효하지 않은 저장매체로 판정될 것이다. For example, digitally copying the memory elements constituting the digital content storage medium (for example, NAND flash memory) by digital copying in any way for the purpose of illegal copying, or by physical dumping, such as memory dumping. Even if the medium is copied, the copied digital content storage medium is not valid. Because, even if the physical content of the same digital content storage medium is duplicated, the bad patterns (bad blocks, bad pages, bad bits, etc.) that are physical characteristics of the memory elements (for example, NAND flash memory) constituting the storage medium are duplicated. Because it is not. In other words, even if the bad block or bad page marking is duplicated in the spare area of the flash memory block, this cannot be physically a bad block or bad page, and thus a duplicated digital content storage medium (up to bad patterns). (Not duplicated) will be determined to be an invalid storage medium because the authentication failed during the inspection of the real bad block of the digital content media authentication process during use (playback).

이는 기존의 CD나 DVD와 같은 저장매체들이 일반 사용자들의 불법 복제에 무한 노출됨으로써 디지털 컨텐츠 저작권자에게 수익의 매체이며 또한 동시에 자신의 디지털 컨텐츠가 이러한 저장매체를 통하여 무제한 복제되어 나가는 매개체가 되어버린 양면성에 반해서, 본 발명은 상기와 같은 이유로 저작권자의 디지털 컨텐츠를 충분하게 보호할 수 있게 된다. This is because the existing media such as CDs and DVDs are exposed to the illegal copying of general users, which is a medium of profit for digital contents copyright holders, and at the same time, their digital contents have become a medium for unlimited copying through such media. On the contrary, the present invention can sufficiently protect the copyright holder's digital content for the above reasons.

한편, 플래쉬 메모리를 통째로 카피하여 불법복제하는 것을 막을 수 있는 방법의 다른 예로, 메모리마다 서로 다른 배드영역(블록, 페이지, 서브페이지, 위치)을 이용한 암호화/복호화 방법이 있을 수 있다. Meanwhile, another example of a method of preventing illegal copying by copying a whole flash memory may include an encryption / decryption method using different bad areas (blocks, pages, subpages, and locations) for each memory.

일 예로, 데이터 저장 공간이 아닌 메모리 카드(디지털 컨텐츠 저장매체)의 특성을 기록하는 영역인 헤더 데이터 영역 등에, 사용된 메모리의 배드영역(블록, 페이지, 서브페이지, 위치)의 주소들을 기록하게 하는 영역을 설정하여 기록하고, 배드영역의 주소들을 조합하여 암호화 특성치(예로서, 배드블록 DRM 테이블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 추출한 후, 이러한 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록한다. For example, it is possible to record the addresses of bad areas (blocks, pages, subpages, locations) of used memory in a header data area, which is an area for recording characteristics of a memory card (digital content storage medium), not a data storage space. Set and record the area, extract the encryption characteristic value (for example, the encryption characteristic value based on the bad block DRM table (DRM encryption table)) by combining the addresses of the bad region, and then encrypt the original content data with the encryption characteristic value. The content data is recorded in the normal area except the bad area of the memory.

이후, 재생장치에서는 이러한 메모리 카드 삽입 시, 헤더 데이터 영역에서 배드영역의 주소들을 읽어, 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치(예로서, 배드블록 DRM 테이블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 계산하고, 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 이러한 암호화 특성치로 원래의 컨텐츠 데이터를 복원한다. 이 때, 사용되는 메모리마다 다른 배드영역의 주소와 같은 특이값들의 조합으로 암호화 특성치를 계산함으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능하다. When the memory card is inserted, the playback apparatus reads the addresses of the bad areas from the header data area, combines the addresses of the bad areas, and uses encryption feature values (for example, a bad block DRM table (DRM encryption table)). And encrypts the data in memory sequentially without the bad area, restoring the original content data. At this time, the encryption characteristic value is calculated using a combination of singular values such as addresses of different bad areas for each memory used, so that a complete copy is not physically possible unless the bad areas of the memory and the original memory used for copying all match.

다른 예로, 사용된 메모리의 배드영역(블록, 페이지, 서브페이지, 위치)을 이에 대응하는 여유영역의 정의된 위치에 배드영역임을 마킹하고, 배드영역의 주소들을 조합하여 암호화 특성치(예로서, 배드블록 DRM 테이블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 추출한 후, 이러한 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록한다. As another example, the bad area (block, page, subpage, location) of the used memory is marked as a bad area at a defined location of a corresponding free area, and the encryption characteristic value (for example, bad) is combined by combining addresses of the bad area. After extracting the encryption feature value based on the block DRM table (DRM encryption table), the original content data is encrypted using the encryption feature value, and the content data is recorded in the normal area except the bad area of the memory.

이후, 재생장치에서는 이러한 메모리 카드 삽입 시, 메모리를 검사하여 배드영역의 주소들을 읽어, 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치(예로서, 배드블록 DRM 테이블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 계산하고, 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 이러한 암호화 특성치로 원래의 컨텐츠 데이터를 복원한다. 이때, 사용되는 메모리마다 다른 배드영역의 주소와 같은 특이값들의 조합으로 암호화 특성치를 계산함으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능하다. When the memory card is inserted, the playback apparatus checks the memory, reads the addresses of the bad areas, and combines the addresses of the bad areas to combine the encryption characteristic values (for example, the bad block DRM table (DRM encryption table)). And encrypts the data in memory sequentially without the bad area, restoring the original content data. At this time, by calculating the encryption characteristic value with a combination of singular values, such as the address of a different bad area for each memory used, a complete copy is not physically possible unless the bad memory areas of the main memory and the memory used for copying coincide.

또 다른 예로, 사용된 메모리의 배드영역(블록, 페이지, 서브페이지, 위치)을 이에 대응하는 여유영역의 정의된 위치에 배드영역임을 마킹하고, 메모리에 기록된 특정값(예로서, 일련번호 등)들로 암호화 특성치(예로서, 배드블록 DRM 테이 블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 추출한 후, 이러한 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록한다. In another example, a bad area (block, page, subpage, location) of a used memory is marked as a bad area at a defined location of a corresponding free area, and a specific value (for example, a serial number, etc.) recorded in the memory is marked. After extracting the encryption feature values (e.g., the encryption feature values based on the bad block DRM table (DRM encryption table)), the original content data is encrypted using these encryption feature values, and the contents are stored in the normal area except the bad area of memory. Record the data.

이후, 재생장치에서는 이러한 메모리 카드 삽입 시, 메모리를 검사하여 메모리에 기록된 특정값을 읽어, 특정값으로 사용된 암호화 특성치(예로서, 배드블록 DRM 테이블(DRM 암호화 테이블)을 바탕으로 한 암호화 특성치)를 계산하고, 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 이러한 암호화 특성치로 원래의 컨텐츠 데이터를 복원한다. 이때, 사용되는 메모리에 기록된 특정값들의 조합으로 암호화 특성치를 계산함으로써, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능하다. Thereafter, when the memory card is inserted, the playback apparatus checks the memory and reads the specific value recorded in the memory, and uses the encryption characteristic value (for example, the encryption characteristic value based on the bad block DRM table (DRM encryption table)). ), And sequentially read the data in the memory excluding the bad area, and restore the original content data with this encryption characteristic value. At this time, by calculating the encryption characteristic value using a combination of specific values recorded in the memory used, a complete copy is not physically possible unless the bad areas of the memory used for copying and the original memory all match.

상기에서, 지적재산권이 보장된 메모리 카드를 복제하기 위해 이 메모리의 배드영역을 읽어 들여, 복제하고자 하는 메모리 카드의 정상영역을 배드영역으로 동일하게 마킹하여 동일 암호화 특성치를 만들어 내어 복제가 되는 것을 막기 위해, 재생장치는 메모리 카드 삽입 시, 배드영역이 물리적으로 만들어진 것인지, 또는 복제를 위해 단순 마킹한 것인지를 배드영역에 데이터를 쓰고/읽는 과정을 통해 확인하여, 단순 마킹한 것으로 판단되면 '불법복제 메모리 카드'로 분류하여 기록된 디지털 컨텐츠 데이터를 재생하지 않는다. 이와 같이, 배드영역의 진위를 판별하여 불법복제 메모리 카드를 구분할 수 있다. In the above, in order to copy the memory card of which the intellectual property is guaranteed, the bad area of the memory is read, and the normal area of the memory card to be copied is identically marked as the bad area, thereby creating the same encryption characteristic value to prevent duplication. To do this, the playback apparatus checks whether or not the bad area is physically created or simply marked for duplication by inserting / reading data into the bad area when the memory card is inserted. Memory card 'recorded digital content data is not played back. In this way, the authenticity of the bad area can be discriminated to distinguish illegal copy memory cards.

도 10 은 본 발명의 실시예에 따라 디지털 저작권 보호를 위한 배드패턴 DRM 테이블 구성 장치의 일 예를 보여주는 구성도이다. 설명의 편의를 위해, 배드블록 DRM 테이블(DRM 암호화 테이블)을 생성하는 장치의 동작을 중심으로 살펴보기로 한다. 10 is a block diagram illustrating an example of an apparatus for constructing a bad pattern DRM table for digital copyright protection according to an embodiment of the present invention. For convenience of description, the operation of the apparatus for generating the bad block DRM table (DRM encryption table) will be described.

배드패턴 검출부(101)는 플래쉬 메모리 전체 블록(/배드페이지)에서 블록(/배드페이지) 배수 단위(예로서, 2048 블록 배수 단위)로 영역을 설정하고, 각 영역에서 배드블록(/배드페이지)을 검출한다. The bad pattern detection unit 101 sets an area in a block (/ bad page) multiple unit (for example, a 2048 block multiple unit) from an entire block of flash memory (/ bad page), and in each area, a bad block (/ bad page). Is detected.

실제 배드패턴 검사부(102)에서는 특정 기준(예로서, 배드블록(/배드페이지)을 임계치 이상 가지고 있는 영역 또는 배드블록(/배드페이지)을 많이 가지고 있는 영역)에 부합하는 배드패턴 추출 영역을 결정하여, 해당 영역의 코드(Area Code) 값을 카드 ID의 DRM 테이블 선택 코드 필드에 기록한다. 이때, 카드 ID의 DRM 테이블 선택 코드 필드에 기록된 영역코드 값은, 예로서 플래쉬 메모리 전체 블록을 2048 블록 단위로 나누어 설정된 영역 중에서, 특정 조건에 부합하는 배드패턴 추출 영역의 코드(Area Code) 값이다. 이때, 특정 조건은, 예를 들면 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성하는데 적합한 영역(Area)인지를 판단하는 기준으로, 임계치(예로서, 128개) 이상의 배드블록(/배드페이지)을 포함하는 영역(Area) 또는 가장 많은 수의 배드블록(/배드페이지)을 포함하고 있는 영역(Area)이 배드패턴 추출 영역으로 결정될 수 있다. The actual bad pattern inspection unit 102 determines a bad pattern extraction region corresponding to a specific criterion (eg, an area having a bad block (/ bad page) above a threshold or an area having many bad blocks (/ bad page)). Then, the area code value of the corresponding area is recorded in the DRM table selection code field of the card ID. At this time, the area code value recorded in the DRM table selection code field of the card ID is, for example, an area code value of the bad pattern extraction area that satisfies a specific condition, among the areas set by dividing the entire flash memory block by 2048 blocks. to be. In this case, the specific condition is, for example, a criterion for determining whether or not a bad block (/ bad page) DRM table (DRM encryption table) is a suitable area (Area). An area including the / bad page or an area including the largest number of bad blocks (/ bad page) may be determined as the bad pattern extraction area.

배드패턴 테이블 작성부(103)에서는 카드 ID의 DRM 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역의 배드블록(/배드페이지)의 주소를 배드블록(/배드페이지) 테이블에 기록하게 된다. The bad pattern table creating unit 103 records the address of the bad block (/ bad page) of the area corresponding to the area code recorded in the DRM table selection code field of the card ID in the bad block (/ bad page) table.

배드패턴 DRM 테이블 연산부(104)에서는 카드 ID의 DRM 테이블 선택 코드 필 드에 기록된 영역코드에 해당하는 영역을 검사한다. 즉, 영역코드에 해당하는 영역이 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록(/배드페이지)을 가지고 있는지를 검사한다. The bad pattern DRM table operation unit 104 checks an area corresponding to the area code recorded in the DRM table selection code field of the card ID. That is, it is checked whether the area corresponding to the area code has enough bad blocks (/ bad pages) to form a bad block (/ bad page) DRM table (DRM encryption table).

배드패턴 DRM 테이블 생성부(105)는 카드 ID의 DRM 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역의 배드패턴 테이블(배드블록 테이블/배드페이지 테이블)을 바탕으로 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성한다. The bad pattern DRM table generating unit 105 determines a bad block (/ bad page) based on the bad pattern table (bad block table / bad page table) of the area corresponding to the area code recorded in the DRM table selection code field of the card ID. Configure a DRM table (DRM encryption table).

예를 들면, 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록, 만약 영역코드에 해당하는 영역이 128개 이상의 충분한 배드블록을 가지고 있다면, 128개(256바이트) 이상의 배드블록을 가진 영역(예로서, 블록0 ~ 블록2047 영역1)의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 5 참조]을 작성한다. For example, if the area corresponding to the area code has enough bad blocks of 128 or more, 128 or more (256 bytes) bad blocks can be configured to form a 256-byte bad block DRM table (DRM encryption table). Based on the bad block table of the region (for example, block 0 to block 2047 region 1), a 256-byte bad block DRM table (DRM encryption table) composed of 128 real bad block addresses (see FIG. 5). Write.

또한, 영역코드에 해당하는 영역이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면, 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 작성한다. 예로서, 도 7의 배드블록 DRM 테이블(DRM 암호화 테이블)은 18개(36바이트)의 실제 배드블록 주소와 110개(220바이트)의 패딩 데이터로 구성된 것이다. 이때, 패딩(Padding)하는 방법의 일예로, 실제(Real) 배드블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리 합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있다. In addition, if the area corresponding to the area code does not include enough bad blocks to form a 256-byte bad block DRM table (DRM encryption table), a padding operation is performed to perform a 256-byte bad block DRM table. (DRM Encryption Table) [See Fig. 7]. For example, the bad block DRM table (DRM encryption table) of FIG. 7 is composed of 18 (36 bytes) actual bad block addresses and 110 (220 bytes) padding data. In this case, as an example of a padding method, a padding value generated by sequentially performing an exclusive logical sum (XOR) operation of a real bad block table value and a card serial number value is used. As shown in FIG. 7, a 256-byte bad block DRM table (DRM encryption table) may be configured.

도 11 은 본 발명의 실시예에 따라 디지털 컨텐츠 기록 장치의 일 예를 보여주는 구성도이다. 11 is a block diagram showing an example of a digital content recording apparatus according to an embodiment of the present invention.

배드패턴 검사 및 마킹부(111)는 저장매체(메모리 소자로 구성된 메모리 카드)의 플래쉬 메모리(예로서, 낸드 플래쉬 메모리)를 로우 포맷하여, 0xAA55 라이팅(Writing)으로 비트 단위 배드페이지(배드비트가 있는 페이지), 또는 배드블록(배드비트가 속하는 블록)을 검사하고 배드비트가 있는 페이지 또는 블록은 배드페이지 또는 배드블록으로 마킹한다. The bad pattern inspection and marking unit 111 low-formats the flash memory (for example, NAND flash memory) of the storage medium (memory card composed of memory elements), and writes a bit page (bad bit) to 0xAA55 writing. Page) or the bad block (block to which the bad bit belongs) and the page or block with the bad bit is marked as a bad page or bad block.

패드패턴 영역 선정부(112)는 플래쉬 메모리를 로우 포맷한 후 기록된 배드블록(/배드페이지) 테이블을 참조하여 특정 조건(기준)을 만족하는 영역(Area)을 결정하고, 미디어 정보 기록부(113)는 해당 영역의 영역코드(Area Code) 값을 카드(Card) ID(제로블록의 페이지 번호9)의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록한다. The pad pattern area selection unit 112 determines the area that satisfies a specific condition (reference) by referring to the bad block (/ bad page) table recorded after the row memory is formatted in a row, and the media information recording unit 113. ) Records the Area Code value of the corresponding area in the DRM Table Select Code field of the Card ID (page number 9 of the zero block).

예로서, 플래쉬 메모리 전체 블록을 2048 블록 단위로 나누어 영역(Area)을 설정하고, 그 중에 특정 조건(기준)에 적합한 영역(Area)을 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블) 구성을 위한 배드패턴 추출 영역으로 결정한 후, 결정된 영역의 영역코드 값을 카드 ID의 DRM 테이블 선택 코드 필드에 기록한다. 이때, 특정 조건(기준)이라 함은, 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성하는데 적합한 영역(Area)인지를 판단하는 기준이다. 예를 들면, 임 계치(예로서, 128개) 이상의 배드블록(/배드페이지)을 포함하는 영역(Area) 또는 가장 많은 수의 배드블록(/배드페이지)을 포함하고 있는 영역(Area)이 배드패턴 추출 영역으로 결정될 수 있다. 이때, 배드패턴 추출 영역의 결정은, 우선 임계치(예로서, 128개) 이상의 배드블록(/배드페이지)을 포함하는 영역이 존재하는지를 확인해보고, 만약 해당 영역이 존재하지 않으면 다수의 영역(2048 블록 배수 단위로 설정된 영역들) 중 가장 많은 수의 배드블록(/배드페이지)을 포함하고 있는 영역을 배드패턴 추출 영역으로 결정한다. 이와 같이 배드패턴 추출 영역으로 결정된 해당 영역의 영역 코드(Area Code) 값을 도 2에 도시된 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code) 필드에 기록한다.As an example, an area is set by dividing the entire block of flash memory by 2048 block units, and a bad block (/ bad page) DRM table (DRM encryption table) is configured among the areas suitable for a specific condition (reference). After determining as the bad pattern extraction area for, the area code value of the determined area is recorded in the DRM table selection code field of the card ID. In this case, the specific condition (reference) is a criterion for determining whether or not the area is suitable for forming a bad block (/ bad page) DRM table (DRM encryption table). For example, an area including a threshold (eg, 128) or more bad blocks (/ bad pages) or an area containing the largest number of bad blocks (/ bad pages) is bad. The pattern extraction region may be determined. At this time, the determination of the bad pattern extraction area first checks whether there is an area including a bad block (/ bad page) having a threshold value (for example, 128 or more), and if the area does not exist, a plurality of areas (2048 blocks). An area including the largest number of bad blocks (/ bad page) among areas set in units of multiples is determined as a bad pattern extraction area. The area code value of the corresponding area determined as the bad pattern extraction area is recorded in the DRM Table Select Code field of the Card ID shown in FIG. 2.

배드패턴 DRM 테이블 생성부(114)는 카드 ID의 DRM 테이블 선택 코드 필드에 기록된 영역코드에 해당하는 영역의 배드패턴 테이블(배드블록 테이블/배드페이지 테이블)을 바탕으로 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성한다. 예를 들면, 영역코드에 해당하는 영역이 128개 이상의 충분한 배드블록을 가지고 있다면, 128개(256바이트) 이상의 배드블록을 가진 영역(예로서, 블록0 ~ 블록2047 영역1)의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 5 참조]을 작성하고, 영역코드에 해당하는 영역이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면, 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 작성한다. The bad pattern DRM table generating unit 114 generates a bad block (/ bad page) based on the bad pattern table (bad block table / bad page table) of the area corresponding to the area code recorded in the DRM table selection code field of the card ID. Configure a DRM table (DRM encryption table). For example, if the area corresponding to the area code has more than 128 sufficient bad blocks, the bad block table of the area having more than 128 (256 bytes) bad blocks (for example, block 0 to block 2047 area 1) is used. Based on this, create a 256-byte bad block DRM table (DRM encryption table) [see Fig. 5] consisting of 128 real bad block addresses, and the area corresponding to the area code is a 256-byte bad block DRM table (DRM). If there are not enough bad blocks to constitute an encryption table), padding is performed to create a 256-byte bad block DRM table (DRM encryption table) (see Fig. 7).

컨텐츠 암호화 기록부(115)는 배드패턴 DRM 테이블 생성부(114)에서 생성된 배드패턴 DRM 테이블(DRM 암호화 테이블)을 암호화 키로 활용하여 메모리 소자(예로서, 낸드 플래쉬 메모리)로 구성된 디지털 컨텐츠 저장매체에 디지털 컨텐츠를 기록한다.The content encryption recording unit 115 utilizes the bad pattern DRM table (DRM encryption table) generated by the bad pattern DRM table generating unit 114 as an encryption key and stores the digital content storage medium composed of memory elements (eg, NAND flash memory). Record digital content.

도 12 는 본 발명의 실시예에 따라 디지털 컨텐츠 재생 장치의 일 예를 보여주는 구성도이다.12 is a block diagram showing an example of a digital content reproduction apparatus according to an embodiment of the present invention.

미디어 정보 수집부(121)는 디지털 컨텐츠 제공 장치(미디어 재생 장치)에 메모리 소자(예로서, 낸드 플래쉬 메모리)로 구성된 디지털 컨텐츠 저장장치를 삽입하면, 카드 ID(제로블록의 페이지 번호9) 정보를 읽어 들인다. 이때, 카드 ID의 DRM 테이블 선택 코드 필드에는, 배드패턴 DRM 테이블(DRM 복호화 테이블)로 사용하고자 하는 배드패턴(배드블록, 배드페이지, 배드비트 등)이 존재하는 영역(임계치 이상의 배드블록(/배드페이지)을 가지고 있는 영역 또는 가장 많은 수의 배드블록(/배드페이지)을 포함하고 있는 영역)의 코드(Area Code) 정보가 기록되어 있기 때문에, 미디어 재생 시 카드 ID의 정보를 수집하게 된다. When the media information collecting unit 121 inserts a digital content storage device composed of a memory element (for example, a NAND flash memory) into a digital content providing device (media playback device), the media information collecting unit 121 stores information on a card ID (page number 9 of zero block). Read At this time, in the DRM table selection code field of the card ID, an area where a bad pattern (bad block, bad page, bad bit, etc.) to be used as a bad pattern DRM table (DRM decoding table) is present (bad block (/ bad of threshold value or more) Area Code information of the area having the page) or the area containing the largest number of bad blocks (/ bad page) is recorded, so that the card ID information is collected during media playback.

배드패턴 DRM 테이블 생성부(122)에서는 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code)에 해당하는 영역(Area)의 배드패턴 테이블(배드블록 테이블/배드페이지 테이블)을 바탕으로 배드블록(/배드페이지) DRM 테이블(DRM 복호화 테이블)을 구성한다. 예를 들면, DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 128개 이상의 충분한 배드블록을 가지고 있다면, 128개(256바이트) 이상의 배드블록을 가진 영역의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배 드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)[도 5 참조]을 구성하고, DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면, 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)[도 7 참조]을 구성한다. 즉, 실제(Real) 배드블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같은 256바이트의 배드블록 DRM 테이블(DRM 복호화 테이블)을 구성한다. The bad pattern DRM table generating unit 122 uses a bad block based on a bad pattern table (bad block table / bad page table) in an area corresponding to a DRM table selection code of a card ID. (/ Bad page) Configures a DRM table (DRM decryption table). For example, if the area corresponding to the area code recorded in the DRM table selection code has more than 128 sufficient bad blocks, 128 actual blocks are based on the bad block table of the area having more than 128 (256 bytes) bad blocks. (Real) constitute a 256-byte bad block DRM table (DRM decoding table) [see FIG. 5] composed of a bad block address, and the area corresponding to the area code recorded in the DRM table selection code is a 256-byte bad block DRM. If there are not enough bad blocks to constitute a table (DRM decryption table), padding is performed to form a 256-byte bad block DRM table (DRM decryption table) (see FIG. 7). That is, the 256-byte bad block DRM as shown in FIG. 7 using a padding value generated by sequentially performing an exclusive OR operation on a real bad block table value and a card serial number value. A table (DRM decryption table) is constructed.

미디어 인증부(123)에서는 배드패턴 DRM 테이블 생성부(122)에서 생성된 배드블록(/배드페이지) DRM 테이블(DRM 복호화 테이블)에서 패딩(Padding) 값이 아닌 실제 배드블록(/배드페이지) 테이블(Table) 값에 해당하는 블록(/페이지)들이 실제(Real) 배드블록(/배드페이지)인지를 확인한다. 예를 들면, 36바이트의 실제(Real) 배드블록 주소와 220바이트의 패딩 데이터(0x09, 0x10, 0x0B, 0x17,...)로 구성된 도 7의 배드블록 DRM 테이블(DRM 복호화 테이블)에서 실제 배드블록 주소값을 갖는 블록들이 실제(Real) 배드블록인지를 확인한다. In the media authenticator 123, the actual bad block (/ bad page) table is not a padding value in the bad block (/ bad page) DRM table (DRM decryption table) generated by the bad pattern DRM table generator 122. Check if the blocks (/ pages) corresponding to the (Table) value are real bad blocks (/ bad pages). For example, the actual bad block in the bad block DRM table (DRM decryption table) of FIG. 7 composed of a 36-byte real bad block address and 220 bytes of padding data ( 0x09, 0x10, 0x0B, 0x17, ... ). Check that the blocks with block address values are real bad blocks.

여기서, 실제(Real) 배드블록(/배드페이지)인지를 확인하기 위해서는, 예를 들면 실제(Real) 배드블록(/배드페이지) 테이블에서 무작위로 10개 내외의 배드블록(/배드페이지)을 선택하여 실제(Real) 배드블록(/배드페이지)인지를 검사한다. 이때, WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록(/배드페이지)의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배 드블록(/배드페이지)인지를 확인한다. 이때, 확인 결과, 실제 배드블록(/배드페이지)임이 확인되면, 같은 방법으로 적당한 수(예로서, 10개 내외)의 실제(Real) 배드블록(/배드페이지)을 추가로 검사하여, 추가로 선택된 배드블록(/배드페이지)에 대해서도 WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록(/배드페이지)의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드블록(/배드페이지)인지를 확인한다. Here, to check whether it is a real bad block (/ bad page), for example, randomly select about 10 bad blocks (/ bad page) from the real bad block (/ bad page) table. To check if it is a real bad block (/ bad page). At this time, disable the WP (Write Protect) pin and write 0xAA55 and 0x55AA to the corresponding page of the real bad block (/ bad page) to write the actual bad block (/ bad page). Check At this time, if it is confirmed that the actual bad block (/ bad page), in the same way by additionally checking the appropriate number of real bad blocks (/ bad page), and additionally, Disable the WP (Write Protect) pin for the selected bad block (/ bad page) and write 0xAA55 and 0x55AA to the corresponding page of the real bad block (/ bad page). Check if it is an actual bad block (/ bad page).

컨텐츠 복호화 및 재생부(124)에서는 미디어 인증부(123)의 인증 결과를 토대로 디지털 컨텐츠 미디어의 사용(Play or Read)을 허가한다. 즉, 미디어 사용 인증이 통과되면, 생성된 배드블록(/배드페이지) DRM 테이블(DRM 복호화 테이블)을 활용하여 디지털 컨텐츠 데이터를 복호화하면서 사용자에게 전달하거나, 미디어 사용 인증에 실패하면, 이러한 인증 실패 사실을 사용자에게 알려 해당 디지털 컨텐츠 저장매체의 확인을 요청한다. The content decryption and playback unit 124 permits the use of digital content media (Play or Read) based on the authentication result of the media authentication unit 123. That is, if the media use authentication is passed, the generated bad block (/ bad page) DRM table (DRM decryption table) is utilized to decrypt the digital content data to the user and deliver it to the user, or if the media use authentication fails, the authentication fails. Notify the user of the request for confirmation of the corresponding digital content storage medium.

도 13 은 본 발명이 적용되는 비대칭 암호화 시스템의 키(Key) 생성 장치의 일 예를 보여주는 구성도이다.13 is a block diagram showing an example of a key generation device of an asymmetric encryption system to which the present invention is applied.

배드패턴 검출부(131)는 플래쉬 메모리 전체 블록(/배드페이지)에서 블록(/배드페이지) 배수 단위(예로서, 2048 블록 배수 단위)로 영역을 설정하고, 각 영역에서 배드블록(/배드페이지)을 검출한다. The bad pattern detection unit 131 sets an area in a block (/ bad page) multiple unit (for example, 2048 block multiple unit) from an entire block of flash memory (/ bad page), and in each area, a bad block (/ bad page) Is detected.

배드패턴 DRM 테이블 생성부(132)에서는 카드(Card) ID의 DRM 테이블 선택 코드(Table Select Code)에 해당하는 영역(Area)의 배드패턴 테이블(배드블록 테이블/배드페이지 테이블)을 바탕으로 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)을 구성한다. 예를 들면, DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 128개 이상의 충분한 배드블록을 가지고 있다면, 128개(256바이트) 이상의 배드블록을 가진 영역의 배드블록 테이블을 바탕으로 128개의 실제(Real) 배드블록 주소로 구성된 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 5 참조]을 구성하고, DRM 테이블 선택 코드에 기록된 영역코드에 해당하는 영역이 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성할 수 있도록 충분한 배드블록을 포함하고 있지 않다면, 패딩(Padding) 작업을 실시하여 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)[도 7 참조]을 구성한다. 즉, 실제(Real) 배드블록 테이블 값과 카드 시리얼 번호(Card Serial Number) 값을 순차적으로 배타적 논리합(XOR) 연산하여 생성된 패딩(Padding) 값을 이용하여 도 7과 같은 256바이트의 배드블록 DRM 테이블(DRM 암호화 테이블)을 구성한다. The bad pattern DRM table generating unit 132 determines a bad block based on a bad pattern table (bad block table / bad page table) in an area corresponding to a DRM table select code of a card ID. (/ Bad page) Configures a DRM table (DRM encryption table). For example, if the area corresponding to the area code recorded in the DRM table selection code has more than 128 sufficient bad blocks, 128 actual blocks are based on the bad block table of the area having more than 128 (256 bytes) bad blocks. (Real) Configure a 256-byte bad block DRM table (DRM encryption table) [see FIG. 5] composed of a bad block address, and the area corresponding to the area code recorded in the DRM table selection code is a 256-byte bad block DRM table. If there are not enough bad blocks to constitute (DRM encryption table), padding is performed to form a 256-byte bad block DRM table (DRM encryption table) (see Fig. 7). That is, the 256-byte bad block DRM as shown in FIG. 7 using a padding value generated by sequentially performing an exclusive OR operation on a real bad block table value and a card serial number value. Configure a table (DRM encryption table).

미디어 인증부(133)에서는 배드패턴 DRM 테이블 생성부(132)에서 생성된 배드블록(/배드페이지) DRM 테이블(DRM 암호화 테이블)에서 패딩(Padding) 값이 아닌 실제 배드블록(/배드페이지) 테이블(Table) 값에 해당하는 블록(/페이지)들이 실제(Real) 배드블록(/배드페이지)인지를 확인한다. 예를 들면, 36바이트의 실제(Real) 배드블록 주소와 220바이트의 패딩 데이터(0x09, 0x10, 0x0B, 0x17,...)로 구성된 도 7의 배드블록 DRM 테이블(DRM 암호화 테이블)에서 실제 배드블록 주소값을 갖는 블록들이 실제(Real) 배드블록인지를 확인한다. In the media authentication unit 133, the actual bad block (/ bad page) table is not padding value in the bad block (/ bad page) DRM table (DRM encryption table) generated by the bad pattern DRM table generation unit 132. Check if the blocks (/ pages) corresponding to the (Table) value are real bad blocks (/ bad pages). For example, the actual bad block in the bad block DRM table (DRM encryption table) of FIG. 7 composed of 36 bytes of real bad block addresses and 220 bytes of padding data ( 0x09, 0x10, 0x0B, 0x17, ... ). Check that the blocks with block address values are real bad blocks.

여기서, 실제(Real) 배드블록(/배드페이지)인지를 확인하기 위해서는, 예를 들면 실제(Real) 배드블록(/배드페이지) 테이블에서 무작위로 10개 내외의 배드블 록(/배드페이지)을 선택하여 실제(Real) 배드블록(/배드페이지)인지를 검사한다. 이때, WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록(/배드페이지)의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드블록(/배드페이지)인지를 확인한다. 이때, 확인 결과, 실제 배드블록(/배드페이지)임이 확인되면, 같은 방법으로 적당한 수(예로서, 10개 내외)의 실제(Real) 배드블록(/배드페이지)을 추가로 검사하여, 추가로 선택된 배드블록(/배드페이지)에 대해서도 WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드블록(/배드페이지)의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드블록(/배드페이지)인지를 확인한다. Here, in order to check whether it is a real bad block (/ bad page), for example, a random bad block (/ bad page) of about 10 randomly is selected from a real bad block (/ bad page) table. Select to check if it is a real bad block (/ bad page). At this time, disable the WP (Write Protect) pin and write 0xAA55 and 0x55AA to the corresponding page of the real bad block (/ bad page) to write the actual bad block (/ bad page). Check if it is. At this time, if it is confirmed that the actual bad block (/ bad page), in the same way by additionally checking the appropriate number of real bad blocks (/ bad page), and additionally, Disable the WP (Write Protect) pin for the selected bad block (/ bad page) and write 0xAA55 and 0x55AA to the corresponding page of the real bad block (/ bad page). Check if it is an actual bad block (/ bad page).

시드키 생성부(134)에서는 배드배턴 DRM 테이블(DRM 암호화 테이블)을 변환 인자로 하는 해쉬 함수(Hash Function)를 통하여 시드 키(Seed Key)를 생성한다. The seed key generation unit 134 generates a seed key through a hash function using a bad baton DRM table (DRM encryption table) as a conversion factor.

비대칭 암호화키 생성부(135)는 시드키 생성부(134)에서 생성된 시드키를 PKI 알고리즘(RSA, ECC 등)을 통해서 공개키(Public Key)와 개인키(Private Key)로 생성한다. The asymmetric encryption key generator 135 generates the seed key generated by the seed key generator 134 as a public key and a private key through a PKI algorithm (RSA, ECC, etc.).

상기 공개키(Public Key)는 디지털 컨텐츠 데이터를 암호화하는데 사용되고, 상기 개인키(Private Key)는 디지털 컨텐츠 데이터를 복호화하는데 사용될 수 있다.The public key may be used to encrypt digital content data, and the private key may be used to decrypt digital content data.

한편, 전술한 바와 같은 본 발명의 방법은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당해 분야의 컴 퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체(ASIC, 씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크, OTP(One Time Programable) 등의 정보저장매체)에 저장되고, 컴퓨터에 의하여 판독되고 실행됨으로써 본 발명의 방법을 구현한다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.On the other hand, the method of the present invention as described above can be written in a computer program. And code and code segments constituting the program can be easily inferred by computer programmers in the art. In addition, the created program is stored in a computer-readable recording medium (ASIC, CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, information storage medium such as OTP (One Time Programable)), Read and executed to implement the method of the present invention. The recording medium may include any type of computer readable recording medium.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

본 발명은 배드패턴을 이용한 디지털 저작권 보호(DRM) 기술 및 그를 이용한 디지털 컨텐츠 기록/재생 기술과 그의 디지털 컨텐츠 저장매체 기술 등에 이용될 수 있다.The present invention can be used for digital copyright protection (DRM) technology using a bad pattern, digital content recording / reproducing technology using the same, and digital content storage medium technology thereof.

도 1 은 본 발명에 이용되는 디지털 컨텐츠 저장매체의 구성 예시도, 1 is an exemplary configuration diagram of a digital content storage medium used in the present invention;

도 2 는 상기 도 1의 카드 ID에 대한 일예를 보여주는 설명도,2 is an explanatory diagram showing an example of the card ID of FIG. 1;

도 3 은 본 발명의 실시예에 따라 디지털 컨텐츠 저장매체 전체 블록을 2048 블록으로 나누었을 때 배드패턴 추출 영역의 일 예를 보여주는 설명도, 3 is an explanatory diagram showing an example of a bad pattern extraction area when a whole block of digital content storage medium is divided into 2048 blocks according to an embodiment of the present invention;

도 4 는 본 발명의 실시예에 따라 디지털 저작권 보호를 위한 배드블록 DRM 테이블 구성 방법의 일 예를 보여주는 흐름도, 4 is a flowchart illustrating an example of a method for configuring a bad block DRM table for digital copyright protection according to an embodiment of the present invention;

도 5 는 본 발명의 실시예에 따라 128개가 넘는 배드블록을 가진 영역1(Area 1)의 배드블록 테이블에서 생성된 256 바이트의 배드블록 DRM 테이블의 일 예를 보여주는 설명도,5 is an explanatory diagram illustrating an example of a 256-byte bad block DRM table generated in a bad block table of area 1 having more than 128 bad blocks according to an embodiment of the present invention;

도 6 은 본 발명에 이용되는 128개 이하의 배드블록을 가진 영역2(Area 2)의 배드블록 테이블의 일 예를 보여주는 설명도,FIG. 6 is an explanatory diagram showing an example of a bad block table of area 2 having up to 128 bad blocks used in the present invention; FIG.

도 7 은 본 발명의 실시예에 따라 상기 도 6의 128개 이하의 배드블록을 가진 영역2의 배드블록 테이블에 패딩 데이터를 첨부하여 생성된 256 바이트의 배드블록 DRM 테이블의 다른 예를 보여주는 설명도,FIG. 7 is an explanatory diagram showing another example of a 256-byte bad block DRM table generated by attaching padding data to a bad block table of region 2 having 128 or less bad blocks according to an embodiment of the present invention; FIG. ,

도 8 은 본 발명의 실시예에 따라 디지털 컨텐츠 기록 방법의 일 예를 보여주는 흐름도, 8 is a flowchart showing an example of a digital content recording method according to an embodiment of the present invention;

도 9 는 본 발명의 실시예에 따라 디지털 컨텐츠 재생을 위한 인증 과정의 일예를 보여주는 흐름도,9 is a flowchart illustrating an example of an authentication process for playing digital content according to an embodiment of the present invention;

도 10 은 본 발명의 실시예에 따라 디지털 저작권 보호를 위한 배드패턴 DRM 테이블 구성 장치의 일 예를 보여주는 구성도, 10 is a block diagram illustrating an example of an apparatus for constructing a bad pattern DRM table for digital copyright protection according to an embodiment of the present invention;

도 11 은 본 발명의 실시예에 따라 디지털 컨텐츠 기록 장치의 일 예를 보여주는 구성도, 11 is a block diagram showing an example of a digital content recording apparatus according to an embodiment of the present invention;

도 12 는 본 발명의 실시예에 따라 디지털 컨텐츠 재생 장치의 일 예를 보여주는 구성도, 12 is a block diagram showing an example of a digital content reproduction apparatus according to an embodiment of the present invention;

도 13 은 본 발명이 적용되는 비대칭 암호화 시스템의 키(Key) 생성 장치의 일 예를 보여주는 구성도이다.13 is a block diagram showing an example of a key generation device of an asymmetric encryption system to which the present invention is applied.

* 도면의 주요 부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawing

101 : 배드패턴 검출부 102 : 실제 배드패턴 검사부101: bad pattern detection unit 102: actual bad pattern inspection unit

103 : 배드패턴 테이블 작성부 104 : 배드패턴 DRM 테이블 연산부103: bad pattern table creation unit 104: bad pattern DRM table operation unit

105 : 배드패턴 DRM 테이블 생성부 111 : 배드패턴 검사 및 마킹부105: bad pattern DRM table generation unit 111: bad pattern inspection and marking unit

112 : 배드패턴 영역 선정부 113 : 미디어 정보 기록부112: bad pattern area selection unit 113: media information recording unit

114 : 배드패턴 DRM 테이블 생성부 115 : 컨텐츠 암호화 기록부114: bad pattern DRM table generation unit 115: content encryption recording unit

121 : 미디어 정보 수집부 122 : 배드패턴 DRM 테이블 생성부121: Media information collecting unit 122: Bad pattern DRM table generation unit

123 : 미디어 인증부 124 : 컨텐츠 복호화 및 재생부123: media authentication unit 124: content decryption and playback unit

131 : 배드패턴 검출부 132 : 배드패턴 DRM 테이블 생성부131: bad pattern detection unit 132: bad pattern DRM table generation unit

133 : 미디어 인증부 134 : 시드키 생성부133: media authentication unit 134: seed key generation unit

135 : 비대칭 암호화키 생성부 136 : 공개키 공유부135: asymmetric encryption key generation unit 136: public key sharing unit

137 : 개인키 활용부137: private key utilization unit

Claims (41)

디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; Inspecting a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determining a bad pattern extraction area; 상기 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 단계;Inspecting the bad pattern extraction region to construct a bad pattern DRM table based on a bad pattern table; 상기 배드패턴 DRM 테이블을 암호화 키로 하여 디지털 컨텐츠를 암호화하는 단계;를 포함하는 디지털 컨텐츠 암호화 방법. And encrypting the digital content using the bad pattern DRM table as an encryption key. 제1항에 있어서, The method of claim 1, 상기 배드패턴 테이블은 상기 디지털 컨텐츠 저장매체의 메모리 포맷(Format) 시 생성되되, 메모리 소자가 가질 수 있는 물리적 특성인 단위 영역별 배드패턴의 주소값으로 구성되어 있는 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. The bad pattern table is generated when a memory format of the digital content storage medium is formatted, and digital content encryption method, characterized in that composed of the address value of the bad pattern for each unit area which is a physical characteristic that the memory device can have. 제2항에 있어서, The method of claim 2, 상기 배드패턴 DRM 테이블은 상기 배드패턴 테이블만으로 구성되는 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. The bad pattern DRM table is digital content encryption method, characterized in that consisting of only the bad pattern table. 제2항에 있어서, The method of claim 2, 상기 배드패턴 DRM 테이블은 카드 ID의 카드 시리얼 번호 필드를 활용하여 구성되되, 상기 배드패턴 테이블의 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합 연산하여 생성된 값들을 패딩하여 구성되는 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. The bad pattern DRM table is configured by using a card serial number field of a card ID, and digitally configured to pad the values generated by sequentially performing an exclusive OR operation on the value of the bad pattern table and the card serial number value. Content encryption method. 제1항에 있어서, The method of claim 1, 상기 배드패턴은 배드블록, 배드페이지, 또는 배드비트 정보 중 어느 하나인 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. The bad pattern is a digital content encryption method, characterized in that any one of the bad block, bad page, or bad bit information. 제1항에 있어서, The method of claim 1, 상기 배드패턴 추출 영역은 메모리 전체 블록을 대상으로 하거나, 128개 이상의 배드블록을 포함하는 영역, 또는 가장 많은 수의 배드패턴을 포함하고 있는 영역 중 어느 하나인 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. The bad pattern extracting region may be any one of an entire memory block, an area including 128 or more bad blocks, or an area including a maximum number of bad patterns. 제1항에 있어서, The method of claim 1, 상기 메모리 소자의 단위 영역은 2048 블록 배수 단위로 설정된 영역인 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. And a unit area of the memory device is an area set in units of 2048 block multiples. 삭제delete 제1항에 있어서, The method of claim 1, 상기 배드패턴 DRM 테이블의 크기는 256 바이트인 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. And the size of the bad pattern DRM table is 256 bytes. 제1항에 있어서, The method of claim 1, 상기 메모리 소자는 낸드(NAND) 플래쉬 메모리인 것을 특징으로 하는 디지털 컨텐츠 암호화 방법. And the memory device is a NAND flash memory. 삭제delete 삭제delete 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 단계; Inspecting a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determining a bad pattern extraction area; 상기 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 단계;Inspecting the bad pattern extraction region to construct a bad pattern DRM table based on a bad pattern table; 상기 배드패턴 DRM 테이블을 배드패턴 암호화 키로 하여 디지털 컨텐츠를 저장매체에 기록하는 단계;를 포함하는 디지털 컨텐츠 기록 방법. And recording the digital content on a storage medium using the bad pattern DRM table as a bad pattern encryption key. 제13항에 있어서, The method of claim 13, 상기 배드패턴 테이블은 상기 디지털 컨텐츠 저장매체의 메모리 포맷(Format) 시 생성되되, 메모리 소자가 가질 수 있는 물리적 특성인 단위 영역별 배드패턴의 주소값으로 구성되어 있는 것을 특징으로 하는 디지털 컨텐츠 기록 방법. The bad pattern table is generated during a memory format of the digital content storage medium, and the digital content recording method comprises an address value of a bad pattern for each unit area, which is a physical property of a memory device. 제14항에 있어서, The method of claim 14, 상기 배드패턴 DRM 테이블은 상기 배드패턴 테이블만으로 구성되는 것을 특징으로 하는 디지털 컨텐츠 기록 방법. And the bad pattern DRM table comprises only the bad pattern table. 제14항에 있어서, The method of claim 14, 상기 배드패턴 DRM 테이블은 카드 ID의 카드 시리얼 번호 필드를 활용하여 구성되되, 상기 배드패턴 테이블의 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합 연산하여 생성된 값들을 패딩하여 구성되는 것을 특징으로 하는 디지털 컨텐츠 기록 방법. The bad pattern DRM table is configured by using a card serial number field of a card ID, and digitally configured to pad the values generated by sequentially performing an exclusive OR operation on the value of the bad pattern table and the card serial number value. How to record content. 제13항에 있어서, The method of claim 13, 상기 배드패턴은 배드블록, 배드페이지, 또는 배드비트 정보 중 어느 하나인 것을 특징으로 하는 디지털 컨텐츠 기록 방법. And the bad pattern is any one of a bad block, a bad page, and bad bit information. 제13항에 있어서, The method of claim 13, 상기 배드패턴 추출 영역은 메모리 전체 블록을 대상으로 하거나, 128개 이상의 배드블록을 포함하는 영역 또는 가장 많은 수의 배드패턴을 포함하고 있는 영역 중 어느 하나인 것을 특징으로 하는 디지털 컨텐츠 기록 방법.And the bad pattern extraction area is one of an entire memory block, an area including 128 or more bad blocks, or an area including a maximum number of bad patterns. 삭제delete 사용된 메모리의 배드패턴을 검사하여, 데이터 저장 공간이 아닌 메모리 카드(디지털 컨텐츠 저장매체)의 특성을 기록하는 영역인 헤더 데이터 영역에, 배드패턴 추출 영역을 결정하여 상기 추출 영역의 영역 코드를 기록하는 단계;Examine the bad pattern of the used memory, determine the bad pattern extraction area in the header data area, which is an area for recording the characteristics of the memory card (digital content storage medium) and not the data storage space, and record the area code of the extraction area. Making; 상기 영역 코드에 해당하는 배드패턴의 주소들을 조합하여 암호화 특성치를 추출하는 단계; 및Extracting an encryption characteristic value by combining addresses of the bad pattern corresponding to the area code; And 상기 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록하는 단계;를 포함하는 디지털 컨텐츠 기록 방법. And encrypting the original content data using the encryption characteristic value and recording the content data in a normal area excluding the bad area of the memory. 사용된 메모리의 배드패턴을 검사하여, 이에 대응하는 여유영역의 정의된 위치에 배드패턴임을 마킹하는 단계;Inspecting a bad pattern of the used memory and marking the bad pattern at a defined position of a free area corresponding thereto; 배드패턴 추출 영역을 결정하는 단계;Determining a bad pattern extraction region; 상기 배드패턴 추출 영역을 검사하고, 배드패턴으로 마킹된 영역의 주소를 조합하여 암호화 특성치를 추출하는 단계; 및 Inspecting the bad pattern extraction region and extracting an encryption characteristic value by combining addresses of the region marked with the bad pattern; And 상기 암호화 특성치로 원래 컨텐츠 데이터를 암호화하여 메모리의 배드영역을 제외한 정상 영역에 컨텐츠 데이터들을 기록하는 단계;를 포함하는 디지털 컨텐츠 기록 방법. And encrypting the original content data using the encryption characteristic value and recording the content data in a normal area excluding the bad area of the memory. 삭제delete 삭제delete 삭제delete 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하여 결정된 배드패턴 추출 영역을 검사하여 획득한 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하고, 이를 암호화 키로 활용하여 암호화 된 디지털 컨텐츠를 재생하는 디지털 컨텐츠 재생 방법으로서,A bad pattern DRM table is constructed based on a bad pattern table obtained by examining a bad pattern extraction area determined by examining a bad pattern for each unit area of a memory device constituting a digital content storage medium. A digital content reproduction method of playing content, 디지털 컨텐츠 저장매체 삽입 시, 상기 결정된 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 단계; When the digital content storage medium is inserted, inspecting the determined bad pattern extraction region to construct a bad pattern DRM table based on a bad pattern table; 상기 배드패턴 DRM 테이블에서 실제 배드패턴 주소값을 갖는 패턴들이 실제 배드패턴인지를 검사하는 단계; 및 Checking whether patterns having actual bad pattern address values in the bad pattern DRM table are actual bad patterns; And 상기 검사 결과에 따라, 상기 배드패턴 DRM 테이블을 복호화 키로 활용하여 디지털 컨텐츠를 재생하는 단계;를 포함하는 디지털 컨텐츠 재생 방법. And reproducing digital content by using the bad pattern DRM table as a decryption key according to the inspection result. 제25항에 있어서,The method of claim 25, 상기 배드패턴 테이블은 상기 디지털 컨텐츠 저장매체의 메모리 포맷(Format) 시 생성되되, 메모리 소자가 가질 수 있는 물리적 특성인 단위 영역별 배드패턴의 주소값으로 구성되어 있는 것을 특징으로 하는 디지털 컨텐츠 재생 방법. The bad pattern table is generated when a format of the memory of the digital content storage medium, the digital content playback method characterized in that composed of the address value of the bad pattern for each unit area, which is a physical property that the memory device can have. 제26항에 있어서, The method of claim 26, 상기 배드패턴 DRM 테이블은 상기 배드패턴 테이블만으로 구성되는 것을 특징으로 하는 디지털 컨텐츠 재생 방법. The bad pattern DRM table comprises only the bad pattern table. 제26항에 있어서, The method of claim 26, 상기 배드패턴 DRM 테이블은 카드 ID의 카드 시리얼 번호 필드를 활용하여 구성되되, 상기 배드패턴 테이블의 값과 카드 시리얼 번호 값을 순차적으로 배타적 논리합 연산하여 생성된 값들을 패딩하여 구성되는 것을 특징으로 하는 디지털 컨텐츠 재생 방법. The bad pattern DRM table is configured by using a card serial number field of a card ID, and digitally configured to pad the values generated by sequentially performing an exclusive OR operation on the value of the bad pattern table and the card serial number value. How to play content. 제25항에 있어서, The method of claim 25, 상기 배드패턴은 배드블록, 배드페이지, 또는 배드비트 정보 중 어느 하나인 것을 특징으로 하는 디지털 컨텐츠 재생 방법. And the bad pattern is one of a bad block, a bad page, and bad bit information. 제25항에 있어서, The method of claim 25, 상기 배드패턴 DRM 테이블에서 실제 배드패턴 주소값을 갖는 패턴들이 실제 배드패턴인지를 검사하는 과정은, The process of checking whether the patterns having actual bad pattern address values in the bad pattern DRM table are actual bad patterns, WP(Write Protect) 핀(Pin)을 디스에이블(Disable)하고 실제(Real) 배드패턴의 해당 페이지에 0xAA55와 0x55AA를 라이팅(Writing)하여 실제 배드패턴인지를 검사하는 것을 특징으로 하는 디지털 컨텐츠 재생 방법. Disabling the write protect pin and writing 0xAA55 and 0x55AA on the corresponding page of the real bad pattern to check whether it is a real bad pattern . 삭제delete 사용된 메모리의 배드패턴을 검사하여, 데이터 저장 공간이 아닌 메모리 카드(디지털 컨텐츠 저장매체)의 특성을 기록하는 영역인 헤더 데이터 영역에, 배드패턴 추출 영역을 결정하여 영역 코드를 기록하고, 상기 영역 코드에 해당하는 배드패턴의 주소들을 조합하여 암호화 특성치를 추출한 후, 상기 암호화 특성치로 암호화되어 메모리의 배드영역을 제외한 정상 영역에 기록된 컨텐츠 데이터들을 재생하는 방법으로서,Examine the bad pattern of the used memory, determine the bad pattern extraction area in the header data area, which is an area for recording the characteristics of the memory card (digital content storage medium) rather than the data storage space, and record the area code by recording the area code. A method of reproducing content data encrypted by combining addresses of a bad pattern corresponding to a code, and then encrypted by the encryption property value and reproducing content data recorded in a normal area except a bad area of a memory. 디지털 컨텐츠 저장매체 삽입 시, 헤더 데이터 영역에서 배드영역의 주소들을 읽고, 상기 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치를 계산하는 단계; 및When the digital content storage medium is inserted, reading the addresses of the bad area from the header data area and combining the addresses of the bad area to calculate an encryption characteristic value used for content data encryption; And 메모리의 컨텐츠 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 상기 암호화 특성치로 원래의 컨텐츠 데이터를 복원하는 단계를 포함하되, Restoring the original content data to the encryption characteristic value while sequentially reading the content data of the memory except the bad area, 상기 암호화 특성치는, 사용되는 메모리마다 각각 다른 배드영역의 주소와 같은 특이값들의 조합으로 계산되어, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능한 것을 특징으로 하는 디지털 컨텐츠 재생 방법. The encryption characteristic value is calculated by a combination of singular values, such as addresses of different bad areas, for each memory used, so that complete duplication is not physically possible unless the bad areas of the original memory and the memory used for copying are all identical. Digital content playback method. 사용된 메모리의 배드패턴을 검사하여, 이에 대응하는 여유영역의 정의된 위치에 배드패턴임을 마킹하고, 배드패턴 추출 영역을 결정하며, 상기 배드패턴 추출 영역을 검사하고, 배드패턴으로 마킹된 영역의 주소를 조합하여 암호화 특성치를 추출한 후, 상기 암호화 특성치로 암호화되어 메모리의 배드영역을 제외한 정상 영역에 기록된 컨텐츠 데이터들을 재생하는 방법으로서,Examining the bad pattern of the used memory, marking that the bad pattern in the defined position of the free area corresponding to it, determine the bad pattern extraction area, examine the bad pattern extraction area, the area of the area marked with the bad pattern A method of reproducing content data encrypted by combining an address and then encrypted with the encryption property value and recorded in the normal area excluding the bad area of the memory, the method comprising: 디지털 컨텐츠 저장매체 삽입 시, 메모리를 검사하여 배드영역의 주소들을 읽어, 배드영역의 주소를 조합하여 컨텐츠 데이터 암호화에 사용된 암호화 특성치를 계산하는 단계; 및 When the digital content storage medium is inserted, checking the memory to read addresses of the bad area, and combining the addresses of the bad area to calculate an encryption characteristic value used to encrypt the content data; And 메모리의 데이터를 배드영역을 제외하고 순차적으로 읽어들이면서, 상기 암호화 특성치로 원래의 컨텐츠 데이터를 복원하는 단계를 포함하되,Restoring original content data to the encryption characteristic value while sequentially reading data of a memory except a bad area, 상기 암호화 특성치는, 사용되는 메모리마다 각각 다른 배드영역의 주소와 같은 특이값들의 조합으로 계산되어, 복제하는데 사용하는 메모리와 원본 메모리의 배드영역들이 전부 일치하지 않는 한 완전한 복제가 물리적으로 불가능한 것을 특징으로 하는 디지털 컨텐츠 재생 방법. The encryption characteristic value is calculated by a combination of singular values, such as addresses of different bad areas, for each memory used, so that complete duplication is not physically possible unless the bad areas of the original memory and the memory used for copying are all identical. Digital content playback method. 삭제delete 제32항 또는 제33항에 있어서, 34. The method of claim 32 or 33, 상기 디지털 컨텐츠 저장매체 삽입 시, 상기 배드영역이 물리적으로 만들어진 것인지 또는 복제를 위해 단순 마킹한 것인지를 배드영역에 데이터를 쓰고/읽는 과정을 통해 확인하는 것을 특징으로 하는 디지털 컨텐츠 재생 방법. When the digital content storage medium is inserted, whether or not the bad area is physically created or simply marked for duplication is confirmed by writing / reading data in the bad area. 프로세서를 구비한 디지털 저작권 보호(DRM) 장치에, In a digital rights protection (DRM) device with a processor, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 기능; Checking a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determining a bad pattern extraction area; 상기 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 기능; 및Inspecting the bad pattern extraction region and configuring a bad pattern DRM table based on a bad pattern table; And 상기 배드패턴 DRM 테이블을 암호화 키로 하여 디지털 컨텐츠를 암호화하는 기능;을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing a function of encrypting digital content using the bad pattern DRM table as an encryption key. 삭제delete 프로세서를 구비한 디지털 컨텐츠 기록 장치에, In a digital content recording device having a processor, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하고, 배드패턴 추출 영역을 결정하는 기능; Checking a bad pattern for each unit area of a memory device constituting a digital content storage medium, and determining a bad pattern extraction area; 상기 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하는 기능; 및Inspecting the bad pattern extraction region and configuring a bad pattern DRM table based on a bad pattern table; And 상기 배드패턴 DRM 테이블을 암호화 키로 하여 디지털 컨텐츠를 암호화하고 저장매체에 기록하는 기능;을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.And encrypting the digital content using the bad pattern DRM table as an encryption key and recording the data on a storage medium. 삭제delete 프로세서를 구비한 디지털 컨텐츠 재생 장치에, In a digital content playback device having a processor, 디지털 컨텐츠 저장매체를 구성하는 메모리 소자의 단위 영역별 배드패턴을 검사하여 결정된 배드패턴 추출 영역을 검사하여 획득한 배드패턴 테이블을 바탕으로 배드패턴 DRM 테이블을 구성하고, 이를 암호화 키로 활용하여 암호화 된 디지털 컨텐츠가 기록된 디지털 컨텐츠 저장매체 삽입 시, 상기 배드패턴 추출 영역을 검사하여, 배드패턴 테이블을 바탕으로 배드패턴 디지털 저작권 보호(DRM) 테이블을 구성하는 기능; A bad pattern DRM table is constructed based on a bad pattern table obtained by examining a bad pattern extraction area determined by examining a bad pattern for each unit area of a memory device constituting a digital content storage medium. A function of inspecting the bad pattern extraction area and constructing a bad pattern digital copyright protection (DRM) table based on a bad pattern table when inserting a digital content storage medium in which content is recorded; 상기 배드패턴 DRM 테이블에서 실제 배드패턴 주소값을 갖는 패턴들이 실제 배드패턴인지를 검사하는 기능; 및 Checking whether patterns having an actual bad pattern address in the bad pattern DRM table are actual bad patterns; And 상기 검사 결과에 따라, 상기 배드패턴 DRM 테이블을 복호화 키로 활용하여 디지털 컨텐츠를 재생하는 기능;을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.And reproducing digital contents by using the bad pattern DRM table as a decryption key according to the inspection result. 삭제delete
KR1020070081297A 2006-11-07 2007-08-13 Digital Content Encryption Method using Bad Pattern, Digital Content Recording / Playback Method Using the Same, and Digital Content Storage Media Expired - Fee Related KR100936533B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060109642 2006-11-07
KR20060109642 2006-11-07

Publications (2)

Publication Number Publication Date
KR20090003056A KR20090003056A (en) 2009-01-09
KR100936533B1 true KR100936533B1 (en) 2010-01-13

Family

ID=40485947

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070081297A Expired - Fee Related KR100936533B1 (en) 2006-11-07 2007-08-13 Digital Content Encryption Method using Bad Pattern, Digital Content Recording / Playback Method Using the Same, and Digital Content Storage Media

Country Status (1)

Country Link
KR (1) KR100936533B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9916093B2 (en) 2015-07-22 2018-03-13 Samsung Electronics Co., Ltd. Nonvolatile memory device and storage device for storing bad block management information with high reliability

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020042817A (en) * 2000-06-29 2002-06-07 모리시타 요이찌 Copyright protective device and method
KR20030093532A (en) * 2002-06-03 2003-12-11 주식회사 마크애니 Method and apparatus for protecting digital documents
KR20050065431A (en) * 2003-12-25 2005-06-29 마쯔시다덴기산교 가부시키가이샤 Information processing apparatus and a rom image generation apparatus for the apparatus
KR20070063132A (en) * 2005-12-14 2007-06-19 주식회사 팬택앤큐리텔 Bad block management device and bad block management method of mobile communication terminal

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020042817A (en) * 2000-06-29 2002-06-07 모리시타 요이찌 Copyright protective device and method
KR20030093532A (en) * 2002-06-03 2003-12-11 주식회사 마크애니 Method and apparatus for protecting digital documents
KR20050065431A (en) * 2003-12-25 2005-06-29 마쯔시다덴기산교 가부시키가이샤 Information processing apparatus and a rom image generation apparatus for the apparatus
KR20070063132A (en) * 2005-12-14 2007-06-19 주식회사 팬택앤큐리텔 Bad block management device and bad block management method of mobile communication terminal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9916093B2 (en) 2015-07-22 2018-03-13 Samsung Electronics Co., Ltd. Nonvolatile memory device and storage device for storing bad block management information with high reliability

Also Published As

Publication number Publication date
KR20090003056A (en) 2009-01-09

Similar Documents

Publication Publication Date Title
CN1331125C (en) Method for controlling use and copying of digital content distributed on removable media
EP1061514B1 (en) Mutual authentication method, recording apparatus, reproducing apparatus, and recording medium
US20070162982A1 (en) Method and system for providing copy-protection on a storage medium and storage medium for use in such a system
RU2494447C2 (en) Method to code memory stick and assembly for its realisation
JP4592804B2 (en) Key management device and key management system
JP4683092B2 (en) Information processing apparatus, data processing method, and program
JP2002539557A (en) Copy protection of storage media by randomizing location and key for write access
JP2010205376A (en) Information processor, data recording system, information processing method, and program
JP2000228060A (en) Data recording/reproducing device using portable storage medium
EP1428213A2 (en) Method and system for protecting data
KR100936533B1 (en) Digital Content Encryption Method using Bad Pattern, Digital Content Recording / Playback Method Using the Same, and Digital Content Storage Media
US20040010691A1 (en) Method for authenticating digital content in frames having a minimum of one bit per frame reserved for such use
JP2000163882A (en) Digital work recording medium and recording apparatus, reproducing apparatus, and deleting apparatus for accessing the recording medium
TWI305350B (en)
KR20020006693A (en) Protecting content from illicit reproduction by proof of existence of a complete data set
KR20080107970A (en) Smart card with flash memory and digital contents protection method using smart card reader and reader
WO2009064131A2 (en) Smart card with flash memory and memory reader of smart card and drm method using the reader
JP4059196B2 (en) Program, recording medium, computer, and control method
JP4144471B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
Xu et al. Content protection and usage control for digital music
WO2009088114A1 (en) Drm method using bad pattern, and digital contents recorder/player and method using that
BRPI0621719A2 (en) method for protecting digital content using memory card encryption and decryption
CN101183340A (en) Method for preventing illegal copy and related hardware storage device
JP4734391B2 (en) Content management method, content management apparatus, recording medium, and mutual authentication method
JP2006197303A (en) Key recording medium and reproducing apparatus

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20130106

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20130106

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000