(57)【要約】【課題】コンテンツデータの不正利用を抑制出来る記録装置、書き込み装置、読み出し装置、及び記録装置の制御方法を提供すること。【解決手段】実施形態に係る記録装置１は、データを記録可能なメモリ１１と、メモリ１１を第１領域３０と第２領域３１に分けてデータの記録を制御するコントローラ１０とを具備する。コントローラ１０は、第１領域３０に対しては、外部から与えられたデータにつき誤り符号訂正及び論理アドレスから物理アドレスへのアドレス変換を行うことなく、該データを書き込む。第２領域３１に対しては、外部から与えられたデータにつき誤り符号訂正及びアドレス変換を行った後、該データを書き込む。【選択図】図１
2012014416.tif 000002
【特許請求の範囲】
【請求項１】
データを記録可能なメモリと、
前記メモリを第１領域と第２領域に分けて前記データの記録を制御するコントローラと
を具備し、前記コントローラは、前記第１領域に対しては、外部から与えられたデータにつき誤り符号訂正及び論理アドレスから物理アドレスへのアドレス変換を行うことなく、該データを書き込み、
前記第２領域に対しては、前記外部から与えられたデータにつき前記誤り符号訂正及び前記アドレス変換を行った後、該データを書き込む
ことを特徴とする記録装置。
【請求項２】
データを記録可能なメモリと、
前記メモリを第１領域と第２領域に分けて前記データの記録を制御するコントローラと
を具備し、前記コントローラは、コンテンツデータ及び前記第１領域における書き込みまたは読み出しエラー情報を前記第２領域に書き込み、
前記エラー情報は、前記メモリへのアクセスの許可または不許可を判断するために使用される
ことを特徴とする記録装置。
【請求項３】
前記コントローラは、前記第１領域に対してはウェアレベリングを行わず、前記第２領域に対しては前記ウェアレベリングを行う、
ことを特徴とする請求項１または２記載の記録装置。
【請求項４】
前記メモリは、データを保持可能な複数のメモリセルを備え、
前記コントローラは、前記第１領域内の前記メモリセルの各々に対してはＭビット（Ｍは２以上の自然数）のデータを書き込み、前記第２領域内の前記メモリセルに対してＮビット（Ｎは１以上の自然数であり、Ｎ＜Ｍ）のデータを書き込む
ことを特徴とする請求項１または２記載の記録装置。
【請求項５】
前記メモリは、データを保持可能な複数のメモリセルを備え、
前記コントローラは、前記第１領域内の前記メモリセルに対して３値以上のデータを保持させ、前記第２領域内の前記メモリセルの各々に対しては２値データを保持させる
ことを特徴とする請求項１または２記載の記録装置。
【請求項６】
前記コントローラは、前記第１領域に対してはデータのランダマイズを行わず、前記第２領域に対しては前記ランダマイズを行う、
ことを特徴とする請求項１または２記載の記録装置。
【請求項７】
前記コントローラは、第１動作モード及び第２動作モードを備え、
前記第１動作モードにおいては、外部からの前記メモリの物理アドレスの入力を受け付け、該物理アドレスによって直接指定される領域にアクセスし、
前記第２動作モードにおいては、外部からの前記メモリの論理アドレスの入力を受け付け、該論理アドレスを物理アドレスに変換することによって指定される領域にアクセスする
ことを特徴とする請求項１記載の記録装置。
【請求項８】
データを提供する提供部と、
前記提供部から提供された前記データを、記録装置の第１領域に書き込み、書き込んだ前記データを読み出し、前記書き込んだデータと前記読み出したデータとを比較して、両者が異なるデータ位置に基づく情報を、前記記録装置の第２領域に書き込む処理部と
ことを特徴とする書き込み装置。
【請求項９】
前記処理部は、前記書き込み、前記読み出し、及び前記比較を複数回行い、両者の間で所定の回数以上データが異なる位置に基づいて前記情報を生成する
ことを特徴とする請求項８記載の書き込み装置。
【請求項１０】
前記処理部は、前記第１領域に対しては物理アドレスでアクセスし、前記第２領域に対しては論理アドレスでアクセスする
ことを特徴とする請求項８記載の書き込み装置。
【請求項１１】
前記処理部で生成された前記情報にデジタル署名を作成して付与する署名作成部を更に備え、
前記処理部は、前記デジタル署名の付与された前記情報を前記記録装置に書き込む
ことを特徴とする請求項８記載の書き込み装置。
【請求項１２】
前記デジタル署名には、前記署名の付与時における日付、時刻、周囲温度の少なくともいずれかが含まれる
ことを特徴とする請求項１１記載の書き込み装置。
【請求項１３】
データを提供する提供部と、
前記提供部から提供された前記データを記録装置の第１領域に書き込み、書き込んだ前記データを読み出し、前記書き込んだデータと前記読み出したデータとを比較して、両者が異なるデータ位置に基づく第１情報を生成する処理部と、
前記記録装置の第２領域から第２情報を読み出し、前記処理部で生成された前記第１情報と比較し、該比較結果に応じて前記記録装置が正規の記録装置であるか否かを判断する比較部と
を具備する読み出し装置。
【請求項１４】
前記処理部は、前記書き込み、前記読み出し、及び前記比較を複数回行い、両者の間で所定の回数以上データが異なる位置に基づいて前記第１情報を生成する
ことを特徴とする請求項１３記載の読み出し装置。
【請求項１５】
前記処理部は、前記第１領域に対しては物理アドレスでアクセスし、前記第２領域に対しては論理アドレスでアクセスする
ことを特徴とする請求項１３記載の読み出し装置。
【請求項１６】
前記第２情報に付与されたデジタル署名が正しいか否かを検証し、該検証結果に応じて前記記録装置が正規の記録装置であるか否かを判断する署名検証部を更に備える
ことを特徴とする請求項１３記載の読み出し装置。
【請求項１７】
前記第２情報は、前記第１領域におけるデータの書き込みまたは読み出しに失敗したデータ位置に基づく情報であり、且つ前記第１情報よりも前に生成された情報である
ことを特徴とする請求項１３記載の読み出し装置。
【請求項１８】
記録装置の第１領域にデータを書き込むことと、
前記書き込んだデータを読み出すことと、
前記書き込んだデータと前記読み出したデータとを比較して、両者が相違するデータ位置を検出することと、
前記検出されたデータ位置に基づいて第１情報を生成することと、
前記記録装置の第２領域に前記第１情報を書き込むことと
を具備することを特徴とする記録装置の制御方法。
【請求項１９】
記録装置の第１領域にデータを書き込むことと、
前記書き込んだデータを読み出すことと、
前記書き込んだデータと前記読み出したデータとを比較して、両者が相違するデータ位置を検出することと、
前記検出されたデータ位置に基づいて第１情報を生成することと、
前記記録装置の第２領域から第２情報を読み出すことと、
前記第１情報と前記第２情報とを比較し、この比較結果に基づいて、前記記録装置が正規の記録装置であるか否かを判断することと
具備することを特徴とする記録装置の制御方法。
【請求項２０】
前記データの書き込み、読み出し、及び前記データ位置の検出を複数回繰り返すこと
を更に備え、前記第１情報は、複数回にわたる前記データ位置の検出結果に基づいて生成される
ことを特徴とする請求項１８または１９記載の記録装置の制御方法。
【請求項２１】
前記データは、毎回、複数の同じメモリセルに対して書き込まれる
ことを特徴とする請求項２０記載の記録装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明の実施形態は、記録装置、書き込み装置、読み出し装置、及び記録装置の制御方法に関する。
【背景技術】
【０００２】
従来、ＳＤTMメモリカードのような記録メディアを活用したコンテンツ配信が知られている。このような配信システムにおいては、コンテンツの不正コピーを防止するためのコンテンツ保護技術が重要である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３４１１５６号公報
【特許文献２】米国特許出願公開第２００９／０２０４７７８号明細書
【特許文献３】米国特許第７，１６５，０６０号明細書
【非特許文献】
【０００４】
【非特許文献１】CPRM Specification for SD Memory Card 4C Entity, LLC、［online］、インターネット＜URL：http://www.4centity.com＞
【非特許文献２】Digital Signature Standard, FIPS186、［online］、インターネット＜URL：http://www.itl.nist.gov/fipspubs/index.htm＞
【非特許文献３】Advanced Access Content System (AACS) Introduction and Common Cryptographic Elements Book、［online］、インターネット＜URL：http://www.aacsla.com/specifications/AACS_Spec_Common_FINAL_0951.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
この発明は、コンテンツデータの不正利用を抑制出来る記録装置、書き込み装置、読み出し装置、及び記録装置の制御方法を提供する。
【課題を解決するための手段】
【０００６】
実施形態に係る記録装置は、データを記録可能なメモリと、前記メモリを第１領域と第２領域に分けて前記データの記録を制御するコントローラとを具備する。前記コントローラは、前記第１領域に対しては、外部から与えられたデータにつき誤り符号訂正及び論理アドレスから物理アドレスへのアドレス変換を行うことなく、該データを書き込む。前記第２領域に対しては、前記外部から与えられたデータにつき前記誤り符号訂正及び前記アドレス変換を行った後、該データを書き込む。
【図面の簡単な説明】
【０００７】
【図１】第１実施形態に係る記録装置及び書き込み装置のブロック図。
【図２】第１実施形態に係る記録装置及び読み出し装置のブロック図。
【図３】第１実施形態に係る書き込み装置の動作を示すフローチャート。
【図４】第１実施形態に係る読み出し装置の動作を示すフローチャート。
【図５】第１実施形態に係る書き込み方法の具体例を示す概念図。
【図６】第１実施形態に係る読み出し方法の具体例を示す概念図。
【図７】第１実施形態に係る記録装置のブロック図。
【図８】第２実施形態に係る記録装置のブロック図。
【図９】第２実施形態に係る記録装置のブロック図。
【図１０】第２実施形態に係る記録装置の制御方法を示す表。
【図１１】第２実施形態に係る記録装置のメモリ空間を示す概念図。
【図１２】第２実施形態に係る記録装置の動作を示すフローチャート。
【図１３】第３実施形態に係る記録装置および書き込み装置のブロック図。
【図１４】第３実施形態に係る記録装置および読み出し装置のブロック図。
【図１５】第４実施形態に係る記録装置のブロック図。
【図１６】第４実施形態に係るドライブ制御回路のブロック図。
【図１７】第４実施形態に係るプロセッサのブロック図。
【図１８】第４実施形態に係るパーソナルコンピュータの斜視外観図。
【図１９】第４実施形態に係るパーソナルコンピュータの内部構成のブロック図。
【発明を実施するための形態】
【０００８】
以下、実施形態を、図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００９】
実施形態に係る記録装置は、データを記録可能なメモリと、前記メモリを第１領域と第２領域に分けて前記データの記録を制御するコントローラとを具備する。前記コントローラは、前記第１領域に対しては、外部から与えられたデータにつき誤り符号訂正及び論理アドレスから物理アドレスへのアドレス変換を行うことなく、該データを書き込む。前記第２領域に対しては、前記外部から与えられたデータにつき前記誤り符号訂正及び前記アドレス変換を行った後、該データを書き込む。
【００１０】
［第１実施形態］  
第１実施形態に係る記録装置、書き込み装置、読み出し装置、及び記録装置の制御方法にいて説明する。以下では、記録装置としてＳＤメモリカード（以下、単にメモリカードと呼ぶ）を例に挙げて説明する。
【００１１】
１．メモリカードの構成について  
まず、本実施形態に係るメモリカードの構成について、図１を用いて簡単に説明する。詳細については、後述する第２実施形態で説明する。図１は、メモリカード及び書き込み装置のブロック図である。
【００１２】
図示するように、メモリカード１はメモリコントローラ１０及びＮＡＮＤ型フラッシュメモリ１１を備えている。メモリコントローラ１０及びＮＡＮＤ型フラッシュメモリ１１はそれぞれ異なる基板上に形成されても良いし、または同一基板上に形成されても良い。
【００１３】
メモリコントローラ１０は、メモリカード１が接続されるホスト機器（本実施形態では書き込み装置または読み出し装置）からのアクセスに応じて、ＮＡＮＤ型フラッシュメモリ１１にデータを書き込み、ＮＡＮＤ型フラッシュメモリ１１からデータを読み出し、またはＮＡＮＤ型フラッシュメモリ１１内のデータを消去するために必要な処理を実行する。
【００１４】
またメモリコントローラ１０は、第１認証処理部２０及び第２認証処理部２１を備える。第１認証処理部２０及び第２認証処理部２１は、ホスト機器との間で、当該メモリカード１の認証処理を実行する。この認証処理によって、ホスト機器はメモリカード１へのアクセスを許可される。
【００１５】
更にメモリコントローラ１０は、ＮＡＮＤ型フラッシュメモリ１１のメモリ領域を、少なくとも３つの領域に区分して管理する。この３つの領域は、特定領域３０、保護領域３１、及びユーザ領域３２である。メモリコントローラ１０は、ホスト機器が第１認証処理部２０における認証に成功した際に、特定領域３０へのアクセスを許可する。またメモリコントローラ１０は、ホスト機器が第２認証処理部２１における認証処理に成功した際に、保護領域３１へのアクセスを許可する。ユーザ領域３２に対するアクセスには、ホスト機器の認証処理は特に必要とされない。
【００１６】
保護領域３１には、記録装置固有情報（以下、単に固有情報と呼ぶ）が記録される。固有情報は、個々のメモリカード１におけるＮＡＮＤ型フラッシュメモリ１１に固有の情報であり、より具体的には、ＮＡＮＤ型フラッシュメモリ１１にデータを書き込んだ際にエラーが発生し易い場所に関する情報である。この固有情報は、メモリカード１の書き込み装置２によって生成されて、保護領域３１に記録される。特定領域３０は、固有情報を作成するために書き込み装置２によって使用される領域である。ユーザ領域３２は、正味のユーザデータが格納される領域であり、音楽や映画などの種々のコンテンツデータが記録される。このコンテンツデータを暗号化する暗号鍵のうちの１つがユーザ領域３２に記録されても良い。また別の暗号鍵が保護領域３１に記録されても良い。
【００１７】
２．書き込み装置２の構成について  
次に、本実施形態に係る書き込み装置２の構成について、引き続き図１を参照して説明する。書き込み装置２は、固有情報を生成してこれをメモリカード１に書き込み、また種々のコンテンツをメモリカード１に書き込む。
【００１８】
書き込み装置２は、種々のコンテンツを提供するＫｉｏｓｋ端末や、またはコンテンツの提供事業者などである。また、インターネット等で配信された映画等のコンテンツの録画再生機器であっても良い。図示するように書き込み装置２は、大まかには、ＣＰＵ４０、生成部４１、第１認証処理部４２、第２認証処理部４３、及びコンテンツ暗号部４４を備えている。
【００１９】
ＣＰＵ４０は、書き込み装置２全体の動作を制御する。そしてデータの書き込み時には書き込みコマンドを発行し、読み出し時には読み出しコマンドを発行する。
【００２０】
第１認証処理部４２は、メモリカード１におけるＮＡＮＤ型フラッシュメモリ１１の特定領域３０にアクセスする際に、コントローラ１０の第１認証処理部２０との間で認証処理を行う。
【００２１】
第２認証処理部４３は、メモリカード１におけるＮＡＮＤ型フラッシュメモリ１１の保護領域３１にアクセスする際に、コントローラ１０の第２認証処理部２１との間で認証処理を行う。
【００２２】
生成部４１は、ＣＰＵ４０の命令に従って固有情報を生成し、これをメモリカード１に書き込む。生成部４１は、署名生成部４５、エラー位置情報処理部４６（以下、単に処理部４６と呼ぶ）、及び書き込みデータ提供部４７（以下、単に提供部４７と呼ぶ）を備えている。提供部４７は、固有情報を生成する際にＮＡＮＤ型フラッシュメモリ１１の特定領域３０に書き込むべきデータを生成する。処理部４６は、提供部４７で生成されたデータを特定領域３０に書き込み、更に書き込んだデータを読み出す。そして、書き込んだデータと読み出したデータとの間の差異に基づいて固有情報を生成し、これを署名生成部４５に転送する。署名生成部４５は、外部から与えられる（または内部で生成される）署名生成鍵に基づき、固有情報に電子署名を付与する。そして署名生成部４５は、電子署名の付与された固有情報を、ＮＡＮＤ型フラッシュメモリ１１の保護領域３１に書き込む。
【００２３】
コンテンツ暗号部４４は、メモリカード１のユーザ領域３２に記録するコンテンツ（content）や、コンテンツ鍵の暗号化を行う。コンテンツ暗号部４４の処理には、参照によって本願明細書に組み込まれる特許文献１記載の方法を使用できる。その一例については、後に第３実施形態として説明する。
【００２４】
３．読み出し装置の構成について  
次に、本実施形態に係る読み出し装置の構成について、図２を参照して説明する。図２は読み出し装置及びメモリカード１のブロック図である。図２は、メモリカード及び読み出し装置のブロック図である。
【００２５】
読み出し装置は、例えばＫｉｏｓｋ端末やコンテンツの提供事業者から提供されたコンテンツを再生する装置である。また、映画等のコンテンツをインターネット等で配信するシステムにおいては、読み出し装置と書き込み装置とが同一の装置（または一体化された装置）であっても良い。図示するように読み出し装置３は、大まかには、ＣＰＵ５０、判定５１、第１認証処理部５２、第２認証処理部５３、及びコンテンツ復号部５４を備えている。
【００２６】
ＣＰＵ５０は、読み出し装置３全体の動作を制御する。そしてデータの書き込み時には書き込みコマンドを発行し、読み出し時には読み出しコマンドを発行する。
【００２７】
第１認証処理部５２は、メモリカード１におけるＮＡＮＤ型フラッシュメモリ１１の特定領域３０にアクセスする際に、コントローラ１０の第１認証処理部２０との間で認証処理を行う。
【００２８】
第２認証処理部５３は、メモリカード１におけるＮＡＮＤ型フラッシュメモリ１１の保護領域３１にアクセスする際に、コントローラ１０の第２認証処理部２１との間で認証処理を行う。
【００２９】
判定部５１は、ＣＰＵ５０の命令に従って記録装置固有情報（以下、単に固有情報と呼ぶ）を生成する。そして生成した固有情報と、書き込み装置２によってメモリカード１に書き込まれた固有情報とを用いて、メモリカード１が正規の記録メディアであるか否か、言い換えればメモリカード１がクローンメディアでないか否かを判定する。以下では、両者を区別するため、書き込み装置２によって生成された固有情報を第１固有情報と呼び、読み出し装置３によって生成された固有情報を第２固有情報と呼ぶことにする。図示するように判定部５１は、署名検証部５５、エラー位置情報処理部５６（以下、単に処理部５６と呼ぶ）、書き込みデータ提供部５７（以下、単に提供部５７と呼ぶ）、及び比較部５８を備えている。
【００３０】
提供部５７は、第２固有情報を生成する際にＮＡＮＤ型フラッシュメモリ１１の特定領域３０に書き込むべきデータを生成する。処理部５６は、提供部５７で生成されたデータを特定領域３０に書き込み、更に書き込んだデータを読み出す。そして、書き込んだデータと読み出したデータとの間の差異に基づいて第２固有情報を生成し、これを比較部５８に転送する。署名検証部５５は、ＮＡＮＤ型フラッシュメモリ１１の保護領域３１から第１固有情報を読み出す。そして署名検証部５５は、外部から与えられる（または内部で生成される）署名検証鍵に基づき、第１固有情報に付与されているデジタル署名が正しいか否かを検証し、その検証結果をＣＰＵ５０に出力する。比較部５８は、ＮＡＮＤ型フラッシュメモリ１１の保護領域３１から第１固有情報を読み出す。そして、この第１固有情報と、処理部５６から与えられる第２固有情報とを比較し、その比較結果に基づいてメモリカード１が正規の記録メディアであるか否かを判定する。そしてその判定結果をＣＰＵ５０に出力する。
【００３１】
コンテンツ復号部５４は、メモリカード１のユーザ領域３２からコンテンツやコンテンツ鍵を読み出す。そしてこれらの情報の復号化を行う。コンテンツ復号部５４の処理には、参照によって本願明細書に組み込まれる特許文献１記載の方法を使用できる。その一例については、後に第３実施形態として説明する。
【００３２】
４．書き込み装置２の動作について  
次に、第１固有情報の作成及びこれをメモリカード１に記録する際の書き込み装置２の動作について、図３を用いて説明する。図３は、書き込み装置２の動作を示すフローチャートである。
【００３３】
図示するように、まずＣＰＵ４０の命令に応答して、第１認証処理部４２がメモリカード１の第１認証処理部２０との間で認証処理を実行する（ステップＳ１０）。本認証処理には、例えば非特許文献１に開示の、デバイス（本実施形態の書き込み装置２）とＳＤメモリカードとの間で実施されるAuthentication処理が利用可能である。
【００３４】
このAuthentication処理について簡単に説明する。書き込み装置２とメモリカード１は、共にメディア固有鍵（Media Unique Key）と呼ばれる同じ秘密情報を持っている。そして書き込み装置２とメモリカード１は、互いにその都度生成される乱数を相手に渡して、受け取った値を所定の方式でメディア固有鍵に基づいて処理して相手に返す。そして返された値を検証して、正しく処理が行われたことが明らかになれば、相手が同じ秘密情報を持っていると判断する、つまり正当な通信相手であると判断する。なお非特許文献１では、メモリカード１に記録されたメディア鍵ブロック（Media Key Block）とメディアＩＤ（Media ID）をデバイスが読み出し、デバイスが持つデバイス鍵セット（Device Key Set）と共に所定の手続きを行うことでメディア固有鍵を作成し、これと同じ値がメモリカード内部にも保持されている。
【００３５】
また上記認証処理は、ＰＫＩ（Public Key Infrastructure）方式によって実行されても良い。ＰＫＩ方式によれば、機器が通信相手を正しい相手かどうかを認証する場合、次のようにして処理が行われる。すなわち、通信を行う際に、自身は、通信相手との間で、ある非対称暗号アルゴリズムの公開鍵、秘密鍵のペアを所有する。そして、相手方に対して、その都度発生させる乱数を送信する。すると相手方は、受信した乱数を秘密鍵で暗号処理し、暗号化した乱数と公開鍵を送り返す。これを受信すると、暗号化された乱数を公開鍵で復号する。その結果、復号した乱数が、自身の発生した乱数に一致する場合には、相手方を、秘密鍵を所有する相手だとみなす。つまり、正式な通信相手であると判断する。そしてこの処理は、お互いに行われる。一例としては、例えば非特許文献３に書かれるホストとドライブの間で実施される認証方式が利用可能である。
【００３６】
以上の方法で認証処理を行った後、提供部４７はＣＰＵ４０の命令に従って、書き込みデータを生成・準備する（ステップＳ１１）。このデータは、予め定められた特定のデータでも良いし、その都度乱数で発生させたデータであっても良い。そして提供部４７は、生成したデータを処理部４６に転送する。
【００３７】
次に処理部４６はＣＰＵ４０の命令に従って、受信したデータを、第１認証処理部４２、２０を介して、ＮＡＮＤ型フラッシュメモリ１１の特定領域３０に書き込む（ステップＳ１２）。この際、ＣＰＵ４０は特定領域３０への書き込みコマンドとアドレスとを発行する。
【００３８】
引き続き処理部４６はＣＰＵ４０の命令に従って、特定領域３０内のデータを読み出す（ステップＳ１３）。この際、ＣＰＵ４０は特定領域３０への読み出しコマンドとアドレスとを発行する。当然ながら、本ステップＳ１３で読み出されるデータは、直前のステップＳ１２で書き込まれたデータである。なお、ステップＳ１２とステップＳ１３の間で認証処理を行っても良い。
【００３９】
次に処理部４６はＣＰＵ４０の命令に従って、ステップＳ１３で読み出したデータと、ステップＳ１２で書き込んだデータとを比較する（ステップＳ１４）。そしてこの比較により処理部６６は、両者が一致しないデータ位置、つまりメモリカード１に正しく書き込まれなかった（及び／または正しく読み出せなかった）データの場所（エラー位置）を検出する。そしてその位置情報を、一時メモリ４６ａに記録する（ステップＳ１５）。一時メモリ４６ａは処理部４６の内部にあっても良いし外部にあっても良いし、またＤＲＡＭやＳＲＡＭ等の揮発性半導体メモリや、ＮＯＲ型フラッシュメモリ等の不揮発性半導体メモリであっても良い。
【００４０】
書き込み装置２は、以上のステップＳ１１〜Ｓ１５の処理を、所定の回数（ｎ回、ｎは２以上の自然数）繰り返す（ステップＳ１６）。そしてその度に、エラー位置を一時メモリ４６ａに追記する。これにより、ｎ回の書き込みの各々につき、エラー位置が一時メモリ４５ａに記録される。なお、特定領域３０への書き込みを繰り返す前に、ＣＰＵ４０は特定領域３０への消去コマンドとアドレスとを発行し、データを一旦消去してもよい。
【００４１】
その後、処理部４６はＣＰＵ４０の命令に従って、一時メモリ４６ａを参照して、ｎ回の書き込みのうちｍ回（Ｍは２以上の自然数）以上、書き込みに失敗したエラー位置を、第１固有情報とする（ステップＳ１７）。
【００４２】
更に署名生成部４５はＣＰＵ４０の命令に従って、第１固有情報の改変を防ぐために書き込み装置２に与えられたデジタル署名生成鍵でデジタル署名を作成し、これを第１固有情報に付与する（ステップＳ１８）。デジタル署名とは、特定の秘密情報を持つ者のみが作成できる、デジタル情報についての署名である。そして、他者はその署名が正しいことを検証できるが、署名の偽造はできないことを情報理論学的に行う一般的な方式であり、例えば非特許文献２で書かれる方式が利用可能である。電子署名は、暗号鍵と復号鍵が異なる非対称アルゴリズムに基づき、署名対象となるデータのダイジェスト値を暗号化したものを署名データとして扱う。そして電子署名は、検証時には署名データを復号鍵で復号し、署名対象のデータのダイジェスト値と一致する場合に正しい署名であることとする手法であり、非特許文献２にある手法が一般的である。
【００４３】
その後、署名生成部４５はＣＰＵ４０の命令に従って、ステップＳ１８で作成した署名を付与した第１固有情報を、ＮＡＮＤ型フラッシュメモリ１１の保護領域３１に書き込む（ステップＳ１９）。この際、ＣＰＵ４０は保護領域３１への書き込みコマンドとアドレスとを発行する。
【００４４】
なお、ステップ１９では保護領域３１にアクセスするので、ステップＳ１８とステップＳ１９との間で認証処理を行っても良い。この処理は第２認証処理部２１、４３で実行される。
【００４５】
以上のステップＳ１０〜Ｓ１９の処理により署名付き第１固有情報のメモリカード１への書き込みが完了すると、次に書き込み装置２はコンテンツのメモリカード１への書き込みを実行する。この書き込みは周知の方法を用いて実行可能である。
【００４６】
５．読み出し装置３の動作について  
次に、第１固有情報及び第２固有情報を用いてメモリカード１が正規の記録メディアであるか否かを判定する際の読み出し装置３の動作について、図４を用いて説明する。図４は、読み出し装置３の動作を示すフローチャートである。
【００４７】
図示するように、まずＣＰＵ５０の命令に応答して、第１認証処理部５２が、メモリカード１の第１認証処理部２０との間で認証処理を実行する（ステップＳ２０）。本認証処理には、図３で説明したステップＳ１０と同様の認証方式を適用出来る。
【００４８】
次に提供部５７は、ＣＰＵ５０の命令に従って、書き込みデータを生成・準備する（ステップＳ２１）。このデータは、予め定められた特定のデータでも良いし、その都度乱数で発生させたデータであっても良い。またこのデータは、書き込み装置２における提供部４７が生成するデータと同じであっても良いし異なっても良い。そして提供部５７は、生成したデータを処理部５６に転送する。
【００４９】
次に処理部５６は、受信したデータを、ＣＰＵ５０の命令に従って、第１認証処理部５２、２０を介して、ＮＡＮＤ型フラッシュメモリ１１の特定領域３０に書き込む（ステップＳ２２）。この際、ＣＰＵ５０は特定領域３０への書き込みコマンドとアドレスとを発行する。
【００５０】
引き続き処理部５６はＣＰＵ５０の命令に従って、特定領域３０内のデータを読み出す（ステップＳ２３）。この際、ＣＰＵ５０は特定領域３０への読み出しコマンドとアドレスとを発行する。当然ながら、本ステップＳ２３で読み出されるデータは、直前のステップＳ２２で書き込まれたデータである。なお、ステップＳ２２とステップＳ２３の間で認証処理を行っても良い。
【００５１】
次に処理部５６はＣＰＵ５０の命令に従って、ステップＳ２３で読み出したデータと、ステップＳ２２で書き込んだデータとを比較する（ステップＳ２４）。そしてこの比較により処理部５６は、両者が一致しないデータ位置、つまりメモリカード１に正しく書き込まれなかった（及び／または正しく読み出せなかった）データの場所（エラー位置）を検出する。そしてその位置情報を、一時メモリ５６ａに記録する（ステップＳ２５）。一時メモリ５６ａは処理部５６の内部にあっても良いし外部にあっても良いし、またＤＲＡＭやＳＲＡＭ等の揮発性半導体メモリや、ＮＯＲ型フラッシュメモリ等の不揮発性半導体メモリであっても良い。
【００５２】
読み出し装置３は、以上のステップＳ２１〜Ｓ２５の処理を、所定の回数（ｎ回、ｎは２以上の自然数）繰り返す（ステップＳ２６）。そしてその度に、エラー位置を一時メモリ５６ａに追記する。これにより、ｎ回の書き込みの各々につき、エラー位置が一時メモリ５５ａに記録される。このｎ及びｍは、書き込み装置２で使用されるｎ及びｍと同じであっても良いし異なっても良い。なお、特定領域３０への書き込みを繰り返す前に、ＣＰＵ５０は特定領域３０への消去コマンドとアドレスとを発行し、データを一旦消去してもよい。
【００５３】
その後、処理部５６はＣＰＵ５０の命令に従って、一時メモリ５６ａを参照して、ｎ回の書き込みのうちｍ回（ｍは２以上の自然数）以上、書き込みに失敗したエラー位置を、第２固有情報とする（ステップＳ２７）。ステップＳ２０〜Ｓ２７における具体的な処理内容は、書き込み装置２によって実行されるステップＳ１０〜Ｓ１７と同じである。
【００５４】
次に署名検証部５５及び比較部５８は、ＮＡＮＤ型フラッシュメモリ１１の保護領域３１から、第１固有情報を読み出す（ステップＳ２８）。この際、ＣＰＵ５０は保護領域３１への書き込みコマンドとアドレスとを発行する。ステップＳ２８では保護領域３１にアクセスするので、ステップＳ２７とステップＳ２８との間で認証処理を行っても良い。この処理は第２認証処理部２１、５３で実行される。
【００５５】
そして署名検証部５５は、ＣＰＵ５０の命令に従って、読み出した第１固有情報に付与されたデジタル署名を検証する。そして検証の結果、そのデジタル署名が正しくなければ、ＣＰＵ５０は処理を中断し、当該メモリカード１が不正な記録メディア、すなわちクローンカードであると判断する（ステップＳ２９）。この結果、読み出し装置３のメモリカード１へのアクセスは禁止される。
【００５６】
更に比較部５８はＣＰＵ５０の命令に従って、読み出した第１固有情報と、処理部５６から与えられる第２固有情報とを比較する。そして比較の結果、両者が同一でなければ、ＣＰＵ５０は処理を中断し、当該メモリカード１が不正な記録メディア、すなわち個ローンカードであると判断する（ステップＳ３０）。この結果、読み出し装置３のメモリカード１へのアクセスは禁止される。
【００５７】
そして読み出し装置３は、ステップＳ２９、３０の両方において、当該メモリカードが正規の記録メディアであると判断されると、その後、ＮＡＮＤ型フラッシュメモリ１１のユーザ領域３２に記録されたコンテンツの再生を開始する。この再生は、周知の方法を用いて実行可能である。
【００５８】
６．メモリカード１の検証方法の具体例について  
次に、上記図３及び図４で説明した動作の具体例について説明する。上記の通り、メモリカード１が正規の記録メディアであるか否かを検証するためには、第１固有情報及び第２固有情報が用いられる。これらの情報は、提供部４７、５７で生成された書き込みデータを用いて生成され、この書き込みデータは、これに限定されるものではないが、例えば１Ｍバイト程度のデータ量とされる。しかしながら以下では、説明の簡単化のため、及び理解の明確化のため、書き込みデータが１６ビットであり、また書き込み装置２及び読み出し装置３の双方においてｎ＝５、ｍ＝３である場合を例に説明する。
【００５９】
まず、書き込み装置２によって第１固有情報の記録処理が実行される。この処理につき、図５を用いて説明する。図５は、ステップＳ１１〜Ｓ１５の繰り返しの各々における、書き込みデータ、読み出しデータ、一時メモリ５６ａ内のデータ、及び第１固有情報を示す説明図である。なお図中の読み出しデータにおける下線は、書き込みデータと異なるビット位置を示す。
【００６０】
図示するように、１回目の書き込みにおいて、提供部４７の生成する書き込みデータが（0000_0000_0000_000）であり、これを特定領域３０に書き込んだ後に読み出した結果が（0000_0100_0000_0001）であったとする。すなわち、読み出しデータの先頭から６ビット目及び１６ビット目のビットが反転（エラー）している。従って、このエラー位置（６ビット目及び１６ビット目）が、一時メモリ４４ａに記録される。
【００６１】
次に２回目の書き込みにおいて、書き込みデータとして（1111_1111_1111_1111）が生成され、読み出した結果が（1111_1011_1011_1100）であったとする。従って、エラー位置（６ビット目、１０ビット目、１５ビット目、及び１６ビット目）が、一時メモリ４４ａに追記される。
【００６２】
次に３回目の書き込みにおいて、書き込みデータとして（1111_0000_0000_0000）が生成され、読み出した結果が（1101_0100_0000_0001）であったとする。従って、エラー位置（３ビット目、６ビット目、及び１６ビット目）が、一時メモリ４４ａに追記される。
【００６３】
以下、４回目及び５回目の書き込み及び読み出しの結果が図５の通りであったとする。すると、一時メモリ４４ａにおいて、ｍ＝３回以上ビット反転の生じたエラー位置は、６ビット目及び１６ビット目であることが分かる。従って処理部４６は、このエラー位置を第１固有情報として、保護領域３１に書き込む。
【００６４】
次に、読み出し装置３によって第２固有情報の生成と、第１固有情報と第２固有情報との比較処理が実行される。この処理につき、図６を用いて説明する。図６は、ステップＳ２１〜Ｓ２５の繰り返しの各々における、書き込みデータ、読み出しデータ、一時メモリ５６ａ内のデータ、及び第２固有情報を示す説明図である。図中の下線が示す意味は図５と同様である。
【００６５】
図示するように、書き込みデータのパターンは図５と同じであったとする。そして１回目の読み出しでは６ビット目と１６ビット目でビット反転が生じ、２回目の読み出しでは３ビット目、６ビット目、１０ビット目、及び１６ビット目でビット反転が生じ、以下図６の通りであったとする。
【００６６】
すると、一時メモリ５４ａにおいて、ｍ＝３回以上ビット反転の生じたエラー位置は、６ビット目及び１６ビット目であることが分かる。従って処理部５６は、このエラー位置を第２固有情報として、比較部５８に転送する。
【００６７】
比較部５８では、図５の第１固有情報と図６の第２固有情報とを比較する。すると、両者において、エラー位置は６ビット目及び１６ビット目で一致する。よって比較部５８は、当該メモリカードは正規の記録メディアであると判断する。
【００６８】
７．本実施形態に係る効果  
以上のように、本実施形態に係る記録装置及びその制御方法であると、コンテンツデータの不正利用を抑制出来る。本効果につき、以下説明する。
【００６９】
近年、情報化社会の発展に伴い、本、新聞、音楽又は動画などを電子化したコンテンツをユーザ端末に配信し、コンテンツを閲覧可能とするコンテンツ配信システムが広く用いられてきている。
【００７０】
但し、電子化したコンテンツ（以下、単にコンテンツという）は、容易に複製可能なため、著作権を無視する不正行為が生じ易い。このような不正行為からコンテンツを保護する観点から、コンテンツは、通常、暗号化鍵により、暗号化されて記録され、再生時に復号される。この種のコンテンツ保護技術には、ＣＰＲＭ（Content Protection for Recordable Media）がある。また、コンテンツ鍵が２種類の鍵で二重に暗号化された暗号化二重鍵方式が考えられている（例えば、特許文献１参照）。この種の暗号化二重鍵方式は、例えばＭＱｂｉｃ（登録商標）に用いられている。暗号化鍵のうち、記録媒体に固有の鍵、例えばメディア固有鍵は、記憶媒体の秘匿領域にセキュアに記憶され、外部からは一切アクセスが不可能にされている。このため、例えば暗号化コンテンツ鍵データのみが不正にコピーされたとしても、不正コピー者は、メディア固有鍵がなければ、コンテンツデータを利用することができない。
【００７１】
しかし、このようなメディア固有鍵が何らかの手法により不正に読み出され、不正カード製造業者に渡されると、正規のカードをコピーしたクローンカードが出回る結果となり、コンテンツデータが不正に利用されることが起こり得る。
【００７２】
この点、本実施形態に係るメモリカードであると、記録装置固有情報を用いてメモリカードが正規の記録装置であるか否かを判断している。従って、例えメディア固有鍵が不正に読み出された場合であっても、コンテンツにアクセスされることを防止出来る。そのため、クローンカードが出回ることを抑制し、コンテンツデータを効果的に保護出来る。
【００７３】
この記録装置固有情報は、ＮＡＮＤ型フラッシュメモリに対してデータを書き込んだ後にこれを読み出した結果、書き込みデータと読み出しデータとが不一致となる頻度の高いビット位置を示す情報である。つまり、ＮＡＮＤ型フラッシュメモリ１１が形成されたメモリチップ内において、特に性能悪いメモリセルの位置を示す情報である。メモリチップ内における性能の悪いメモリセルの位置は、当然ながらメモリチップ毎に異なる。従って記録装置固有情報も、個々のＮＡＮＤ型フラッシュメモリ１１に特有の情報となる。
【００７４】
そして、例えばコンテンツの書き込み時等において、第１固有情報を生成してこれをメモリカードに書き込む。その後、コンテンツの再生時において、第２固有情報を生成して、これを第１固有情報と比較し、一致すれば、メモリカードを正規の記録装置として扱う。
【００７５】
例えば図７のようなケースを考える。図７は、正規のメモリカード１−１と不正コピーされたメモリカード１−２を示す。
【００７６】
メモリカード１−１では、ユーザ領域３２−１にコンテンツ９０が記録され、コントローラ１０−１にはメディア固有鍵９２が保持されている。また保護領域３１−１には第１固有情報９１が保持され、その情報内容は、メモリカード１−１の特定領域３０−１におけるエラー位置と一致している。
【００７７】
そして、何らかの手法によって、コンテンツ９０、メディア固有鍵９２、及び第１固有情報９１がメモリカード１−２に不正にコピーされたと仮定する。このメモリカード１−２内のコンテンツ９０を再生する際には、メモリカード１−２の特定領域３０−２を使用して第２固有情報９３が作成される。すると、特定領域３０−１と特定領域３０−２とでは、メモリセルの特性分布は異なる。よって当然、第２固有情報９３は第１固有情報９１と異なることになる。その結果、メモリカード１−２は不正なカードであると判断され、コンテンツ９０の再生が妨げられる。
【００７８】
また本実施形態では、第１固有情報及び第２固有情報を生成する際に、特定領域３０への書き込み及び読み出しを複数回にわたって行っている。これにより、本実施形態に係る手法をより効果的なものとすることが出来る。すなわち、１度だけの書き込み及び読み出しで第１固有情報及び第２固有情報を生成した場合、両者が完全に一致する可能性は非常に低いと考えられ、正規の記録メディアであるにもかかわらず不正コピー品と判定されるおそれがある。しかし複数回行い、このうちある一定回数以上エラーとなった位置のみを使うことで、あまりエラーとなりにくいビット位置を第１固有情報及び第２固有情報から排除することが出来る。
【００７９】
また、第１固有情報及び第２固有情報を、エラーとなるデータ位置（ビット位置）により生成することで、上記手法の使い勝手を向上出来る。書き込み及び／または読み出しに失敗する領域としては、不良なメモリセル数が多く、使用を禁止されたメモリブロック（いわゆるバッドブロック）を使用することが考えられる。しかし、当然ながらＮＡＮＤ型フラッシュメモリとしては、バッドブロックは少ない方が望ましい。またバッドブロックが非常に少ない、またはバッドブロックの存在しない製品も存在する。このような場合、バッドブロックを用いて第１固有情報及び第２固有情報を作成すると、それは全く内容の無い情報となり、デジタル署名もまた意味をなさない。これに対してビット単位などの小さいデータ単位で見れば、エラーはほぼ確実に複数個、存在する。よって、本実施形態に係る方法を用いることが望ましい。
【００８０】
更に、第１固有情報９１に電子署名を付与することも、コンテンツ保護に寄与する。このようにしてクローンカードの流布を防止し、コンテンツを効果的に保護出来る。
【００８１】
８．変形例  
なお、上記実施形態では、第１固有情報と第２固有情報とが完全に一致する場合を例に説明したが、完全一致でなくても良い。すなわち、予め定められたある一定の割合で一致した場合には正規品であると判断するようにしても良い。つまり、第１固有情報におけるエラー位置の数と第２固有情報におけるエラー位置の数とを比較した際に、両者が一致する割合が、第１固有情報または第２固有情報におけるエラー位置の総数の一定の割合である際に、正規品と判断するようにしても良い。
【００８２】
例えば図５及び図６を用いて説明した例において、一致率が５０％で良いとすれば、第２固有情報として６ビット目または１６ビット目のいずれか一方のみが含まれる場合であっても、正規なメモリカードと判断される。しかしながら、より高度なコンテンツ保護という観点からは、要求される一致率を高くすることが望ましい。
【００８３】
特に、メモリカード１に書き込んだデータは、時間と共に変化するおそれがある。従って、一致率を１００％未満とすることで、本実施形態に係るシステムの使い勝手を向上出来る。
【００８４】
また、一致率だけでなく、第１固有情報と第２固有情報とに含まれるエラー位置につき、相関関係を考慮しても良い。すなわち、例えば複数のエラー位置同士の間での相関関係を検証しておき、第１固有情報と第２固有情報との間でエラー位置が一致しなかったとしても、エラー位置同士の間で予め検証された相関関係が一定以上認められれば、正規なメモリカードと判断しても良い。
【００８５】
例えば、第２固有情報におけるエラー位置の個数は、第１固有情報におけるエラー位置の個数よりも増えることが一般的と考えられる。これは特定領域３０への書き込み／消去を繰り返すたびにメモリセルの特性が劣化するためである。この時、その増加個数が一定数以下である場合や、増加率が第１固有情報における個数に対する一定割合以下である場合には、正規品と判断するようにしても良い。
【００８６】
更に、上記実施形態では、固有情報が、データ中でビット反転が生じたビット位置である例を挙げて説明した。しかしながら、ビット位置に限らず、それを表現できる情報であれば限定されるものではない。固有情報は例えば、アドレスによって表現されても良い。このアドレスは、エラーが発生した領域の物理アドレスである。そしてこのアドレスは、書き込み装置２及び読み出し装置３によりアクセス可能な最小メモリ領域（例えばクラスタ）を指定するアドレスである。
【００８７】
［第２実施形態］  
次に、第２実施形態に係る記録装置、書き込み装置、読み出し装置、及びその制御方法について説明する。本実施形態は、上記第１実施形態におけるＳＤメモリカード１の詳細に関するものである。従って、書き込み装置２及び読み出し装置３についての詳細な説明は省略する。
【００８８】
１．メモリカードの構成について  
まず、メモリカード１の全体構成について、図８を用いて説明する。図８は、本実施形態に係るメモリカード１のブロック図である。
【００８９】
メモリカード１は、ホスト機器４にバスインターフェース５を介して接続可能とされている。そしてメモリカード１は、ホスト機器４に接続された時に電源供給を受けて動作し、ホスト機器４からのアクセスに応じた処理を行う。ホスト機器４は、第１実施形態で説明した書き込み装置２や読み出し装置３に相当する。
【００９０】
メモリカード１は、大まかには前述のメモリコントローラ１０、ＮＡＮＤ型フラッシュメモリ１１、及びデータバス１２を備えている。そしてメモリコントローラ１０とＮＡＮＤ型フラッシュメモリ１１は、データバス１２によって互いに通信可能に接続されている。
【００９１】
１．１  メモリコントローラ１０の構成について  
次に、上記メモリコントローラ１０の構成の詳細について、引き続き図８を参照して説明する。図示するようにメモリコントローラ１０は、ＳＤカードインターフェース７０、ＭＰＵ７１、ＣＰＲＭ（Copy Protection for Prerecorded Media）回路７２、ＲＯＭ７３、ＲＡＭ７４、及びＮＡＮＤインターフェース７５を備えている。これらは同一の半導体基板上に形成され、内部バス７６によって通信可能に接続されている。
【００９２】
ＳＤカードインターフェース７０は、バスインターフェース５（ＳＤカードバス）によってホスト機器４に接続可能とされ、ホスト機器４との間の通信を司る。ＮＡＮＤインターフェース７５は、データバス１２によってＮＡＮＤ型フラッシュメモリ１１と接続されており、ＮＡＮＤ型フラッシュメモリ１１との間の通信を司る。
【００９３】
ＭＰＵ７１は、メモリカード１全体の動作を制御する。ＭＰＵ７１は、例えばメモリカード１が電源供給を受けたときに、ＲＯＭ７３に格納されているファームウェア（制御プログラム）をＲＡＭ７４上に読み出して所定の処理を実行することにより、各種のテーブルをＲＡＭ７４上に作成する。またＭＰＵ７１は、ホスト機器４から書き込みコマンド、読み出しコマンド、消去コマンドを受け取り、ＮＡＮＤ型フラッシュメモリ１１に対して所定の処理を実行したり、データ転送処理を制御したりする。ＭＰＵ７１が有する具体的な機能の幾つかについては、後に詳細に説明する。
【００９４】
ＲＯＭ７３は、ＭＰＵ７１により制御される制御プログラムなどを格納する。ＲＡＭ７４は、ＭＰＵ７１の作業エリアとして使用され、制御プログラムや各種のテーブル（表）を記憶する。
【００９５】
ＣＰＲＭ回路７２は、メモリカード１における著作権保護機能を司る。すなわち、ＮＡＮＤ型フラッシュメモリ１１内において秘匿されるべき情報に対してホスト機器４からアクセスが為された場合に、当該アクセスを許可するか否かを決定する。
【００９６】
１．２  ＮＡＮＤ型フラッシュメモリ１１の構成について  
次に、ＮＡＮＤ型フラッシュメモリ１１の構成について、引き続き図８を参照して説明する。図示するようにＮＡＮＤ型フラッシュメモリ１１は、メモリセルアレイ８０、ロウデコーダ８１、ページバッファ８２、及びＮＡＮＤインターフェース８３を備えている。
【００９７】
メモリセルアレイ８０は、複数のメモリブロックＢＬＫを含んでいる。メモリブロックＢＬＫの各々は、データを保持可能なメモリセルの集合である。メモリセルの各々はマトリクス状に配置され、同一行にある複数個のメモリセルは同一のワード線に接続されている。そして、同一のワード線に接続された複数のメモリセルに対しては一括してデータが書き込まれ、また一括してデータが読み出される。この単位はページと呼ばれる。メモリセルの各々は、１ビット（２値モード）または２ビット（４値モード）のデータを保持出来る。またデータの消去はメモリブロックＢＬＫ単位で行われる。
【００９８】
ＮＡＮＤインターフェース８３は、データバス１２を介したメモリコントローラ１０のＮＡＮＤインターフェース７５との間の通信を司る。そしてメモリコントローラ１０から与えられたロウアドレスをロウデコーダ８１へ転送し、書き込みデータをページバッファ８２へ転送する。またページバッファ８２から転送された読み出しデータをメモリコントローラ１０へ送信する。
【００９９】
ロウデコーダ８１は、ＮＡＮＤインターフェース８３から与えられるロウアドレスをデコードする。そしてデコード結果に従って、メモリセルアレイ３０中におけるいずれかのメモリブロックＢＬＫのロウ方向を選択する。すなわちいずれかのページを選択する。
【０１００】
ページバッファ８２は、メモリセルアレイ８０へのデータ入出力を行い、データを一時的に保持する。ページバッファ８２とメモリセルアレイ８０との間のデータの入出力はページ単位で行われる。ページバッファ８２は、データの書き込み時には、ＮＡＮＤインターフェース８３から与えられる書き込みデータを一時的に保持し、これをメモリセルに書き込む。またデータの読み出し時には、読み出しデータを一時的に保持し、これをＮＡＮＤインターフェース８３に転送する。
【０１０１】
１．３  メモリコントローラ１０の機能について  
第１実施形態で説明した通りメモリコントローラ１０は、上記ＮＡＮＤ型フラッシュメモリ１１のメモリ領域を、複数の領域、すなわち特定領域３０、保護領域３１、及びユーザ領域に区別して管理する。以下ではこの区別された領域に対してアクセスを行うための、メモリコントローラ１０の特にＭＰＵ７１の有する機能について、図９を用いて説明する。図９はメモリカード１の機能ブロック図であり、ＭＰＵ２１の有する機能と、上記区別された領域を示している。
【０１０２】
図示するようにメモリコントローラ１０のＭＰＵ７１は、第１実施形態で説明した第１認証処理部２０及び第２認証処理部２１の他に、書き込み制御部２２、論理アドレス−物理アドレス変換処理部（以下Ｌ２Ｐ処理部と呼ぶ）２３、誤り訂正符号処理部（以下ＥＣＣ処理部と呼ぶ）２４、ウェアレベリング制御部２５、及びランダマイズ制御部２６を含む。なおＭＰＵ７１は、ソフトウェアの実行によりこれらの機能を実現しても良いし、またはＭＰＵ７１とは別個のハードウェアまたはソフトウェアで実現されても良い。第１認証処理部２０及び第２認証処理部２１は第１実施形態の通りであるので、説明は省略する。
【０１０３】
Ｌ２Ｐ処理部２３は、ホスト機器４から与えられた論理アドレスを物理アドレスに変換（これをＬ２Ｐ処理と呼ぶ）する。
【０１０４】
ＥＣＣ処理部２４は、データについてのＥＣＣ処理を行う。すなわち、データの書き込み時には、ホスト機器４から与えられたデータにつきＥＣＣ処理を行ってパリティを生成し、これをデータに付加する。データの読み出し時には、ＮＡＮＤ型フラッシュメモリ１１から読み出されたデータに基づいてシンドロームを生成し、これによりデータの誤り位置を検出し、誤りデータを訂正する。
【０１０５】
ウェアレベリング制御部２５は、ＮＡＮＤ型フラッシュメモリ１１に対してウェアレベリング処理を実行する。ウェアレベリングとは、メモリブロックＢＬＫ毎の書き換え回数を管理して、特定のメモリブロックＢＬＫにデータのアクセスが集中しないようする処理である。例えばあるメモリブロックＢＬＫ１にデータを書き込む際に、当該メモリブロックＢＬＫ１の書き込み頻度が高い場合には、書き込み頻度の低い別のメモリブロックＢＬＫ２にこのデータを書き込むと共に、メモリブロックＢＬＫ１に既に書き込まれていたデータをメモリブロックＢＬＫ２にコピーする。
【０１０６】
ランダマイズ制御部２６は、データの書き込み時には、ホスト機器４から与えられたデータのランダム化を行う。これにより、データ内において“１”または“０”が連続しないようにする。ランダム化は、例えば疑似乱数発生器で発生させた疑似乱数との排他的論理和等によって行われる。またデータの読み出し時には、ＮＡＮＤ型フラッシュメモリ１１から与えられる読み出しデータを復号化する。
【０１０７】
書き込み制御部２２は、上記Ｌ２Ｐ処理部２３、ＥＣＣ処理部２４、ウェアレベリング制御部２５、及びランダマイズ制御部２６を制御する。そして、データの書き込みの際には、ＮＡＮＤインターフェースで定義された書き込みコマンドを発生し、この書き込みコマンドと共に、書き込むべき領域の物理アドレスと書き込みデータとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。他方、読み出し時には、ＮＡＮＤインターフェースで定義された読み出しコマンドを発生し、この書き込みコマンドと、読み出すべき領域の物理アドレスとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。
【０１０８】
上記構成においてメモリコントローラ１０は、ホスト機器４による特定領域３０に対するアクセスについては、第１認証処理部２０で認証処理を行う。そしてＬ２Ｐ処理部２３、ＥＣＣ処理部２４、ウェアレベリング制御部２５、及びランダマイズ制御部２６は処理を行わない。すなわち、特定領域３０について、Ｌ２Ｐ処理、ＥＣＣ処理、ウェアレベリング、及びデータのランダム化は行われない。言い換えれば、ホスト機器４から特定領域３０へのアクセスは物理アドレスを用いて行われる。更に別の言い方をすれば、メモリカード１は、ホスト機器４から受信したアドレスを、論理アドレスでは無く物理アドレスとして取り扱う。そして書き込み制御部２２は、データの書き込み時には、この物理アドレスと、ホスト機器４から与えられたそのままのデータと、ＮＡＮＤインターフェースで規定された書き込みコマンドとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。この際、書き込み制御部２２は、４値モードでデータを書き込む。またデータの読み出し時には、物理アドレスと書き込みコマンドとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。
【０１０９】
またメモリコントローラ１０は、ホスト機器４による保護領域３１に対するアクセスについては、第２認証処理部２１で認証処理を行う。そして書き込み制御部２２の制御に従って、Ｌ２Ｐ処理部２３、ＥＣＣ処理部２４、ウェアレベリング制御部２４、及びランダマイズ制御部２６は処理を実行する。すなわち、Ｌ２Ｐ処理、ＥＣＣ処理、ウェアレベリング、及びデータのランダム化が実行される。なお、場合によってはＥＣＣ処理、ウェアレベリング、及びデータのランダム化の少なくともいずれかが省略されるケースがあっても良い。そして書き込み制御部２２は、データの書き込み時には、Ｌ２Ｐ処理部２３で得られた物理アドレスと、必要に応じてパリティが付加されランダム化されたデータと、書き込みコマンドとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。この際、書き込み制御部２２は、２値モードでデータを書き込む。またデータの読み出し時には、物理アドレスと書き込みコマンドとを、ＮＡＮＤ型フラッシュメモリ１１に出力する。
【０１１０】
ユーザ領域３２に対するアクセスについては、第２認証処理部２１での認証処理が不要になる以外は、上記保護領域３１に対するアクセスと同様である。
【０１１１】
以上をまとめると、図１０のようになる。図１０は、特定領域３０とその他の領域（保護領域３１及びユーザ領域３２）との間のメモリコントローラ１０による制御の差異を示す表である。
【０１１２】
図示するように特定領域３０に対しては、認証処理を行い、Ｌ２Ｐ処理を行わず、ＥＣＣ処理を行わず、ウェアレベリングを行わず、ランダマイズを行わず、４値モードで制御する。他方、その他の領域３１、３２に対しては、認証処理を必要に応じて行い、Ｌ２Ｐ処理を行い、ＥＣＣ処理を行い、ウェアレベリングを行い、ランダマイズを行い、２値モードで制御する。
【０１１３】
なお書き込みモードについては、特定領域３０内のメモリセルに保持させるデータ量が、その他の領域３１、３２内のメモリセルに保持させるデータ量よりも大きければ良い。例えば特定領域３０内のメモリセルには３値以上のデータを保持させ、その他の領域３１、３２内のメモリセルには２値データを保持させるようにしても良い。つまり、特定領域３０についてはＭビットモード（Ｍは２以上の自然数）で制御し、その他の領域３１、３２についてはＮビットモード（Ｎは１以上の自然数であり、Ｎ＜Ｍ）で制御しても良い。
【０１１４】
なお、ホスト機器４から特定領域３０にアクセスするためのコマンド（ＳＤインターフェース上で定義されるコマンド）は、その他の領域３１、３２とは異なるコマンドで行っても良い。これによりメモリコントローラ１０は、当該アクセスが特定領域３０に対するアクセスであることを容易に認識出来る。勿論、コマンドが同じであっても、アドレスによってアクセス対象領域を判別することが出来る。
【０１１５】
１．４  ＮＡＮＤ型フラッシュメモリ１１のメモリ空間について  
図１１は、ＮＡＮＤ型フラッシュメモリ１１のメモリ空間の概念図であり、ＮＡＮＤ型フラッシュメモリ１１に保持される情報を示している。
【０１１６】
図示するようにＮＡＮＤ型フラッシュメモリ１１には、ブートセクタ、ＦＡＴ１、ＦＡＴ２、ルートディレクトリエントリ、第１固有情報、及びユーザデータを記憶する。またある領域が、特定領域３０として確保され、前述の通りこの領域には第１固有情報及び第２固有情報を生成するためのデータが書き込まれる。
【０１１７】
ブートセクタ、ＦＡＴ１、ＦＡＴ２、及びルートディレクトリエントリは、ＮＡＮＤ型フラッシュメモリ１１に記録されているファイル（データ）を管理するための管理情報であり、図１１では一例としてＦＡＴ（File Allocation Table）ファイルシステムの例を示している。ユーザデータには、音楽や映画などのコンテンツや、これらのコンテンツを暗号化／復号化するための暗号鍵が含まれる。
【０１１８】
このうち、前述の通り、第１固有情報は保護領域３１に書き込まれる。ＦＡＴ１、ＦＡＴ２、ルートディレクトリエントリ、及びユーザデータは、ユーザ領域４２に書き込まれる。
【０１１９】
そして特定領域３０に対するアクセスでは、Ｌ２Ｐ処理もウェアレベリングも行われない。つまり、特定領域３０に割り当てられるメモリブロックＢＬＫは固定されている（例えばＢＬＫ１１〜ＢＬＫ１４）。よって、特定領域３０にデータを書き込む場合には、必ずメモリブロックＢＬＫ１１〜ＢＬＫ１４のいずれかにデータが書き込まれ、その書き込まれる場所はホスト機器４によって直接的に選択される。言い換えれば、第１固有情報及び第２固有情報を作成するために行われる複数回の書き込み及び読み出しは、毎回、複数の同じメモリセルに対して実行される。
【０１２０】
これに対してその他の領域に割り当てられるメモリブロックＢＬＫは固定されておらず、データの更新時やウェアレベリングにより、データの書き込まれるメモリブロックＢＬＫは常に変化する。すなわち、論理アドレス自体は不変であっても、物理アドレスは刻々と変化する。
【０１２１】
２．メモリカード１の動作について  
次に、第１固有情報の作成及び記録時におけるメモリカード１の動作について、図１２を用いて以下説明する。図１２は、メモリコントローラ１０の特にＭＰＵ７１の動作を示すフローチャートである。
【０１２２】
図示するように、まず書き込み装置２の要求に応じて、第１認証処理部２１が認証処理を実行する（図３のステップＳ１０、図１２のステップＳ４０）。認証に失敗すれば、メモリコントローラ１０は、書き込み装置２によるメモリカード１へのアクセスを禁止する。
【０１２３】
認証に成功すると、メモリカード１は、書き込み装置２から書き込みコマンド、データ、及びアドレス（物理アドレス）を受信する（ステップＳ４１）。そしてメモリコントローラ１０は、受信したデータを、受信したアドレスに対応する領域、すなわち特定領域３０に書き込む（ステップＳ４２）。前述の通り、Ｌ２Ｐ処理、ＥＣＣ処理、ウェアレベリング、及びランダマイズ処理（書き込みデータのランダム化）は行われない。
【０１２４】
引き続きメモリカード１は、書き込み装置２から読み出しコマンド及びアドレス（物理アドレス）を受信する（ステップＳ４３）。そしてメモリコントローラ１０は、受信したアドレスに対応する領域、すなわち特定領域３０からデータを読み出す（ステップＳ４４）。前述の通り、Ｌ２Ｐ処理、ＥＣＣ処理、及びランダマイズ処理（読み出されたランダム化データを元に戻す処理：復号処理）は行われない。
【０１２５】
以上の書き込み及び読み出しは、所定の回数（ｎ回）、繰り返される（ステップＳ４５）。なお、特定領域３０への書き込みを繰り返す前に、メモリコントローラ１０が特定領域３０への消去コマンドとアドレスとを発行し、データを一旦消去する。また、書き込み装置２のＣＰＵ４０が特定領域３０への消去コマンドとアドレスとを発行し、データを一旦消去してもよい。以上の処理の結果、書き込み装置２において第１固有情報が生成される。
【０１２６】
その後、メモリカード１に第１固有情報が書き込まれる。すなわち、まず書き込み装置２の要求に応じて、第２認証処理部２１が書き込み装置２との間の認証処理を実行する（ステップＳ４６）。認証に失敗すれば、以降、書き込み装置２のメモリカード１へのアクセスは禁止される。
【０１２７】
認証に成功すると、メモリカード１は、ホスト機器２から書き込みコマンド、データ（第１固有情報）、及びアドレス（論理アドレス）を受信する（ステップＳ４７）。そしてコントローラ１０は、受信したデータを、受信したアドレスに対応する領域、すなわち保護領域３１に書き込む（ステップＳ４８）。この際には、Ｌ２Ｐ処理、ＥＣＣ処理、ウェアレベリング、及びランダム化が実行される。
【０１２８】
以上の処理の後、種々のコンテンツがメモリカード１に記録される。
【０１２９】
読み出し装置３によりアクセスされた際の処理もほぼ同様である。すなわち、ステップＳ４０〜Ｓ４６の処理の後、読み出しコマンド及びアドレス（論理アドレス）を受信する。そして、第１固有情報を保護領域３１から読み出して、これを読み出し装置３へ出力する。
【０１３０】
３．本実施形態に係る効果
本実施形態に係るメモリカードであると、固有情報を効果的に作成出来ると共に、固有情報が不正にコピーされることを抑制出来る。
【０１３１】
まず本実施形態に係るメモリカードであると、特定領域３０に対するアクセス時には、Ｌ２Ｐ処理を行わず、また特定領域３０に対してはウェアレベリングを行わない。つまり、特定領域３０に対するメモリブロックＢＬＫの割り当ては固定である。従って、第１固有情報を生成する際と第２固有情報を生成する際との間で、データの書き込み／読み出し対象となるメモリセルは、常時同じである。よって、本実施形態に係るメモリカードの検証方法、すなわち第１固有情報と第２固有情報との比較によりメモリカードを検証する方法、の信頼性を向上出来る。
【０１３２】
また、第１固有情報を作成する点にのみ着目すれば、多くのビットでエラーが生じることが望ましい。もしいずれのビットにおいてもエラーが生じなければ、電子署名する対象が無くなってしまうからである。この点、本実施形態に係るメモリカード１であると、特定領域３０に対しては、ＥＣＣ処理及び／またはランダマイズを実行しない。また、特定領域３０内のメモリセルに対しては、ユーザ領域３２や保護領域３１内のメモリセルよりも大きいビット数のデータを書き込む。そのため、特定領域３０におけるエラー発生率を高めることが出来、記録装置固有情報を効果的に作成出来る。
【０１３３】
なお、特定領域３０におけるエラー発生率を高める方法として、その他の手法を用いても良い。例えば、特定領域３０内のメモリセルに接続されるワード線ＷＬに印加する電圧を、その他の領域３１、３２に比べて変化させる等の方法を用いても良い。具体的には、読み出し対象のワード線に印加する読み出し電圧を通常よりも高い値にシフトさせても良い。あるいは、読み出し電圧は変化させず、書き込み時のベリファイ電圧を通常よりも低い値にシフトさせても良い。
【０１３４】
また、特定領域３０におけるエラー発生率を高める方法として、特定領域３０内のメモリセルに対して、エラー発生率が高いと考えられるデータパターンを書き込んでも良い。本実施形態に係るメモリカードであると、特定領域３０についてはランダマイズを実行しないため、任意のデータパターンを直接メモリセルに書き込むことが可能である。あるいは、特定領域３０を構成するブロックにおいて、エラー発生率の高いワード線が存在する場合は、これら一部のワード線のみを使用することとしても良い。
【０１３５】
［第３実施形態］  
次に、第３実施形態に係る読み出し装置及びその制御方法につき説明する。本実施形態は、上記第１、第２実施形態におけるコンテンツの暗号化及び復号化の例を示すものである。
【０１３６】
１．暗号化方法  
まず、暗号化方法について、図１３を用いて説明する。図１３は、メモリカード１及び書き込み装置２のブロック図であり、特に暗号化に必要な情報及び処理の流れを示す図である。
【０１３７】
図示するように、書き込み装置２は、予め設定されたデバイス鍵Ｋdを有し、またメモリカード１は鍵管理情報ＭＫＢ（Media Key Block）を有する。書き込み装置２は、メモリカード１からＭＫＢを読み出し、自身の有するデバイス鍵Ｋdを用いてＭＫＢ処理を行い、これによりメディア鍵Ｋmを得る（ステップＳ５０）
次に書き込み装置２は、メモリカード１からメディア識別子ＩＤmを読み出し、このメディア識別子ＩＤmとメディア鍵Ｋmを用いてハッシュ処理を行う（ステップＳ５１）。このハッシュ処理の結果、書き込み装置２はメディア固有鍵Ｋmuを得る。以上の処理は、例えばＣＰＵ４０において実行される。
【０１３８】
その後、書き込み装置２は、得られたメディア固有鍵Ｋmuに基づいて、メモリカード１との間で認証処理及び鍵交換を実行する。これは、例えば第２認証処理部４３、２１で実行される。この認証及び鍵交換により、書き込み装置２はメモリカード１との間でセッション鍵Ｋsを共有する。なお、本処理は、書き込み装置２内のメディア固有鍵Ｋmuと、メモリカード１内に保持されるメディア固有鍵Ｋmuとが一致するときに成功し、セッション鍵Ｋsが共有される。
【０１３９】
次に書き込み装置２は、メディア固有鍵Ｋmuを用いてユーザ鍵Ｋuを暗号化し（ステップＳ５２）、セッション鍵Ｋsを用いた暗号通信により、メモリカード１の保護領域３１に書き込む。図１３では、メディア固有鍵Ｋmuで暗号化されたユーザ鍵ＫuをＥｎｃ（Ｋmu、Ｋu）と表記している。この暗号化は、図１のコンテンツ暗号部４４におけるいずれかの暗号部（図示せず）によって行われる。
【０１４０】
更に書き込み装置２は、ユーザ鍵Ｋuを用いてコンテンツ鍵Ｋcを暗号化（ステップＳ５３）し、メモリカード１のユーザ領域３２に書き込む。図１３では、ユーザ鍵Ｋuで暗号化されたコンテンツ鍵ＫcをＥｎｃ（Ｋu、Ｋc）と表記している。この暗号化は、例えば第１暗号部４８で実行される。
【０１４１】
更に書き込み装置２は、コンテンツ鍵Ｋcを用いてコンテンツを暗号化（ステップＳ５４）し、メモリカード１のユーザ領域３２に書き込む。図１３では、コンテンツ鍵Ｋcで暗号化されたコンテンツをＥｎｃ（Ｋu、content）と表記している。この暗号化は、例えば第２暗号部４９で実行される。
【０１４２】
２．復号化方法  
次に復号化方法について、図１４を用いて説明する。図１４は、メモリカード１及び読み出し装置３のブロック図であり、特に復号化に必要な情報及び処理の流れを示す図である。
【０１４３】
図示するように、読み出し装置３は、暗号化時と同じようにしてメモリカードとの間で認証処理及び鍵交換を実行する。ここまでの処理は、ＣＰＵ５０及び第２認証処理部５３により実行される。
【０１４４】
次に読み出し装置３は、暗号化されたユーザ鍵Ｅｎｃ（Ｋmu、Ｋu）をメモリカード１の保護領域３１から読み出し、自身の保持するメディア固有鍵Ｋmuを用いて復号化し（ステップＳ５５）、ユーザ鍵Ｋuを得る。この復号化は、図２のコンテンツ復号部５４におけるいずれかの復号部（図示せず）によって行われる。
【０１４５】
更に読み出し装置３は、暗号化されたコンテンツ鍵Ｅｎｃ（Ｋu、Ｋc）をメモリカード１のユーザ領域３２から読み出し、ユーザ鍵Ｋuを用いて復号化し（ステップＳ５６）、コンテンツ鍵Ｋcを得る。この復号化は、例えば第１復号部５９で実行される。
【０１４６】
そして読み出し装置３は、暗号化されたコンテンツＥｎｃ（Ｋc、Content）をメモリカード１のユーザ領域３２から読み出し、コンテンツ鍵Ｋcを用いて復号化し（ステップＳ５７）、コンテンツを得る。この復号化は、例えば第１復号部６０で実行される。
【０１４７】
３．本実施形態に係る効果  
コンテンツの暗号化及び復号化には、上記のような方法を用いることが出来る。しかしながら、本実施形態に限らず、種々の方法を採用しても良い。
【０１４８】
また、メモリカード１内のメディア識別子ＩＤmを、第１固有情報に基づいて作成しても良い。すなわち、第１の実施形態で説明した図３の処理の後、生成した第１固有情報に基づいて、既にメモリカード１の保持するメディアＩＤmを加工する、または第１固有情報に基づいて新たに作成し直すようにしても良い。または、第１固有情報をメディア識別子ＩＤmそのものとしても良い。これにより、コンテンツの保護を更に強化することが出来る。
【０１４９】
また、書き込み装置で書き込み装置毎に割り振られる値や時刻、連番を連結させた値等をデジタル署名内に記録させ、その値をメディア識別子として利用しても良い。書き込み装置側でメディア識別子が他のメディアの値と偶然一致するような状況を避けるなどの管理が可能となる。
【０１５０】
［第４実施形態］  
次に、第４実施形態に係る記録装置につき説明する。本実施形態は、上記第１乃至第３実施形態において、記録装置としてＳＳＤ（Solid State Drive）に適用したものである。
【０１５１】
図１５は、ＳＳＤ１００の構成を示すブロック図である。図示するようにＳＳＤ１００は、データ保存用の複数のＮＡＮＤ型フラッシュメモリ（ＮＡＮＤメモリ）１０、データ転送用又は作業領域用のＤＲＡＭ１０１、これらを制御するドライブ制御回路１０２、及び電源回路１０３を備えている。ドライブ制御回路１０２は、ＳＳＤ１００の外部に設けられる状態表示用ＬＥＤを制御するための制御信号を出力する。なお、ＤＲＡＭ１０１に代えて、ＦｅＲＡＭ（ferroelectric random access memory）を用いてもよい。
【０１５２】
ＳＳＤ１００は、ＡＴＡインターフェース（ＡＴＡ  Ｉ／Ｆ）を介して、パーソナルコンピュータ等のホスト装置との間でデータを送受信する。また、ＳＳＤ１００は、ＲＳ２３２Ｃインターフェース（ＲＳ２３２Ｃ  Ｉ／Ｆ）を介して、デバッグ用機器との間でデータを送受信する。
【０１５３】
電源回路１０３は、外部電源を受け、この外部電源を用いて複数の内部電源を生成する。これらの内部電源は、ＳＳＤ１００内の各部に供給される。また、電源回路１０３は、外部電源の立ち上がりを検知して、パワーオンリセット信号を生成する。パワーオンリセット信号は、ドライブ制御回路１０２に送られる。
【０１５４】
図１６は、ドライブ制御回路１０２の構成を示すブロック図である。ドライブ制御回路１０２は、データアクセス用バス１０４、第１の回路制御用バス１０５、及び第２の回路制御用バス１０６を備えている。
【０１５５】
第１の回路制御用バス１０５には、ドライブ制御回路１０２全体を制御するプロセッサ１０７が接続されている。また、第１の回路制御用バス１０５には、各管理プログラム（ＦＷ：firmware）のブート用プログラムが格納されたブートＲＯＭ１０８がＲＯＭコントローラ１０９を介して接続されている。また、第１の回路制御用バス１０５には、電源回路１０３からのパワーオンリセット信号を受けて、リセット信号及びクロック信号を各部に供給するクロックコントローラ１１０が接続されている。
【０１５６】
第２の回路制御用バス１０６は、第１の回路制御用バス１０５に接続されている。第２の回路制御用バス１０６には、状態表示用ＬＥＤにステータス表示用信号を供給するパラレルＩＯ（ＰＩＯ）回路１１１、ＲＳ２３２Ｃインターフェースを制御するシリアルＩＯ（ＳＩＯ）回路１１２が接続されている。
【０１５７】
ＡＴＡインターフェースコントローラ（ＡＴＡコントローラ）１１３、第１のＥＣＣ（Error Check and Correct）回路１１４、ＮＡＮＤコントローラ１１５、及びＤＲＡＭコントローラ１１９は、データアクセス用バス１０４と第１の回路制御用バス１０５との両方に接続されている。ＡＴＡコントローラ１１３は、ＡＴＡインターフェースを介してホスト装置との間でデータを送受信する。データアクセス用バス１０４には、データ作業領域として使用されるＳＲＡＭ１２０がＳＲＡＭコントローラ１２１を介して接続されている。
【０１５８】
ＮＡＮＤコントローラ１１５は、４つのＮＡＮＤメモリ１０とのインターフェース処理を行うＮＡＮＤインターフェース回路（ＮＡＮＤ  Ｉ／Ｆ）１１８、第２のＥＣＣ回路１１７、及びＮＡＮＤメモリ−ＤＲＡＭ間のアクセス制御を行うＤＭＡ転送制御用ＤＭＡコントローラ１１６を備えている。
【０１５９】
図１７は、プロセッサ１０７の構成を示すブロック図である。プロセッサ１０７は、データ管理部１２２、ＡＴＡコマンド処理部１２３、セキュリティ管理部１２４、ブートローダ１２５、初期化管理部１２６、デバッグサポート部１２７を備えている。
【０１６０】
データ管理部１２２は、ＮＡＮＤコントローラ１１５、第１のＥＣＣ回路１１４を介して、ＮＡＮＤメモリ−ＤＲＡＭ間のデータ転送、ＮＡＮＤチップに関する各種機能を制御する。
【０１６１】
ＡＴＡコマンド処理部１２３は、ＡＴＡコントローラ１１３、及びＤＲＡＭコントローラ１１９を介して、データ管理部１２２と協働してデータ転送処理を行う。セキュリティ管理部１２４は、データ管理部１２２及びＡＴＡコマンド処理部１２３と協働して各種のセキュリティ情報を管理する。セキュリティ管理部１２４は、例えば、第２実施形態で説明した第１認証処理部２０、第２認証処理部２１が司る処理を実行する。
【０１６２】
ブートローダ１２５は、パワーオン時、各管理プログラム（ＦＷ）をＮＡＮＤメモリ１０からＳＲＡＭ１２０にロードする。初期化管理部１２６は、ドライブ制御回路１０２内の各コントローラ／回路の初期化を行う。デバッグサポート部１２７は、外部からＲＳ２３２Ｃインターフェースを介して供給されたデバッグ用データを処理する。
【０１６３】
図１８は、ＳＳＤ１００を搭載したポータブルコンピュータ２００の一例を示す斜視図である。ポータブルコンピュータ２００は、本体２０１、及び表示ユニット２０２を備えている。表示ユニット２０２は、ディスプレイハウジング２０３と、このディスプレイハウジング２０３に収容された表示装置２０４とを備えている。
【０１６４】
本体２０１は、筐体２０５と、キーボード２０６と、ポインティングデバイスであるタッチパッド２０７とを備えている。筐体２０５内部には、メイン回路基板、ＯＤＤ（optical disk device）ユニット、カードスロット、及びＳＳＤ１００等が収容されている。
【０１６５】
カードスロットは、筐体２０５の周壁に隣接して設けられている。周壁には、カードスロットに対向する開口部２０８が設けられている。ユーザは、この開口部２０８を通じて筐体２０５の外部から追加デバイスをカードスロットに挿抜することが可能である。
【０１６６】
ＳＳＤ１００は、従来のＨＤＤの置き換えとして、ポータブルコンピュータ２００内部に実装された状態として使用してもよいし、ポータブルコンピュータ２００が備えるカードスロットに挿入した状態で、追加デバイスとして使用してもよい。あるいは、ＵＳＢタイプの外付けデバイスとして使用しても良い。また、第１実施形態で説明した書き込み装置２及び読み出し装置３は、ポータブルコンピュータ２００に含まれる構成であっても良い。ポータブルコンピュータ２００は、インターネット等で配信された映画等のコンテンツの録画再生機器となり得る。
【０１６７】
図１９は、ＳＳＤ１００を搭載したポータブルコンピュータ２００のシステム構成例を示す図である。ポータブルコンピュータ２００は、ＣＰＵ３０１、ノースブリッジ３０２、メインメモリ３０３、ビデオコントローラ３０４、オーディオコントローラ３０５、サウスブリッジ３０６、ＢＩＯＳ−ＲＯＭ３０７、ＳＳＤ１００、ＯＤＤユニット３０８、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）３０９、及びネットワークコントローラ３１０等を備えている。
【０１６８】
ＣＰＵ３０１は、ポータブルコンピュータ２００の動作を制御するために設けられたプロセッサであり、ＳＳＤ１００から主メモリ３０３にロードされるオペレーティングシステム（ＯＳ）を実行する。更に、ＯＤＤユニット３０８が、装填された光ディスクに対して読み出し処理及び書き込み処理の少なくとも１つの処理の実行を可能にした場合に、ＣＰＵ３０１は、それらの処理の実行をする。
【０１６９】
また、ＣＰＵ３０１は、ＢＩＯＳ−ＲＯＭ３０７に格納されたシステムＢＩＯＳ（Basic Input Output System）も実行する。尚、システムＢＩＯＳは、ポータブルコンピュータ２００内のハードウェア制御のためのプログラムである。
【０１７０】
ノースブリッジ３０２は、ＣＰＵ３０１のローカルバスとサウスブリッジ３０６との間を接続するブリッジデバイスである。ノースブリッジ３０２には、メインメモリ３０３をアクセス制御するメモリコントローラも内蔵されている。
【０１７１】
また、ノースブリッジ３０２は、ＡＧＰ（Accelerated Graphics Port）バス等を介してビデオコントローラ３０４との通信、及びオーディオコントローラ３０５との通信を実行する機能も有している。
【０１７２】
メインメモリ３０３は、プログラムやデータを一時的に記憶し、ＣＰＵ３０１のワークエリアとして機能する。メインメモリ３０３は、例えばＤＲＡＭから構成される。
【０１７３】
ビデオコントローラ３０４は、ポータブルコンピュータ２００のディスプレイモニタとして使用される表示ユニット（ＬＣＤ）２０２を制御するビデオ再生コントローラである。
【０１７４】
オーディオコントローラ３０５は、ポータブルコンピュータ２００のスピーカ３１１を制御するオーディオ再生コントローラである。
【０１７５】
サウスブリッジ３０６は、ＬＰＣ（Low Pin Count）バス上の各デバイス、及びＰＣＩ（Peripheral Component Interconnect）バス上の各デバイスを制御する。また、サウスブリッジ３０６は、各種ソフトウェア及びデータを格納する記憶装置であるＳＳＤ１００を、ＡＴＡインターフェースを介して制御する。
【０１７６】
ポータブルコンピュータ２００は、セクタ単位でＳＳＤ１００へのアクセスを行う。ＡＴＡインターフェースを介して、書き込みコマンド、読み出しコマンド、フラッシュコマンド等がＳＳＤ１００に入力される。
【０１７７】
また、サウスブリッジ３０６は、ＢＩＯＳ−ＲＯＭ３０７、及びＯＤＤユニット３０８をアクセス制御するための機能も有している。
【０１７８】
ＥＣ／ＫＢＣ３０９は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）２０６及びタッチパッド２０７を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。
【０１７９】
このＥＣ／ＫＢＣ３０９は、ユーザによるパワーボタン３１２の操作に応じてポータブルコンピュータ２００の電源をＯＮ／ＯＦＦする機能を有している。ネットワークコントローラ３１０は、例えばインターネット等の外部ネットワークとの通信を実行する通信装置である。
【０１８０】
以上の構成において、図１５に示すＮＡＮＤ型フラッシュメモリ１０の少なくともいずれかに、特定領域３０（及び保護領域３１）が設けられる。そして書き込み装置２及び読み出し装置３は、ＳＳＤの特定領域３０（及び保護領域３１）にアクセスして、ＳＳＤが正規の記録メディアであるか否かを判定する。
【０１８１】
また、上記第１乃至第３実施形態はＳＳＤだけでなく、例えばハードディスクやＤＶＤ等、その他の記録メディアにも適用可能である。
【０１８２】
［変形例など］  
以上のように、第１乃至第４実施形態に係る記録装置は、データを記録可能なメモリ１１と、メモリ１１を第１領域３０と第２領域３１に分けてデータの記録を制御するコントローラ１０とを具備する。そしてコントローラ１０は、第１領域３０に対しては、外部から与えられたデータにつき誤り符号訂正及び論理アドレスから物理アドレスへのアドレス変換を行うことなく、該データを書き込む。また第２領域３１に対しては、前記外部から与えられたデータにつき前記誤り符号訂正及び前記アドレス変換を行った後、該データを書き込む。
【０１８３】
また、第１乃至第４実施形態に係る書き込み装置２は、データを提供する提供部４７と、処理部４６とを備える。処理部４６は、提供部４７から提供されたデータを、記録装置１の第１領域３０に書き込み、書き込んだデータを読み出し、書き込んだデータと読み出したデータとを比較して、両者が異なるデータ位置に基づく情報（第１固有情報）を、記録装置１の第２領域３１に書き込む。
【０１８４】
また、第１乃至第４実施形態に係る読み出し装置３は、データを提供する提供部５７と、処理部５６と、比較部５８とを備える。処理部５６は、提供部５７から提供されたデータを記録装置１の第１領域３０に書き込み、書き込んだデータを読み出し、書き込んだデータと読み出したデータとを比較して、両者が異なるデータ位置に基づく第１情報（第２固有情報）を生成する。比較部は、記録装置１の第２領域３１から第２情報（第１固有情報）を読み出し、前記処理部５６で生成された第１情報（第２固有情報）と比較し、該比較結果に応じて記録装置１が正規の記録装置であるか否かを判断する。
【０１８５】
以上の構成により、コンテンツデータの不正利用を抑制出来る。但し、実施形態は上記説明したものに限らず、種々の変形が可能である。
【０１８６】
記録装置１に関しては、前述の通り、ＳＤメモリカードに限らず、その他のデータ記憶可能な記録媒体であって良く、半導体メモリはＮＡＮＤフラッシュメモリに限らず、ＮＯＲ型フラッシュメモリや、その他の半導体メモリを有するものであっても良い。またカードに限らず、磁気記録媒体や光学的な記録媒体など、広範に適用可能である。
【０１８７】
また、第１固有情報及び第２固有情報を生成する際には、在る程度の数のエラーが発生することが望ましい。従って、特定領域３０に対する書き込みまたは読み出し方法は、保護領域３１及びユーザ領域３２に比べて、よりエラーの発生し易い方法を用いることが望ましい。この例として、上記実施形態ではウェアレベリング、ＥＣＣ処理、またはランダマイズを行わないことを説明したが、別の方法を適用しても良い。例えば、フラッシュメモリであればメモリセルのゲート（ワード線）に印加する電圧を、保護領域３１及びユーザ領域３２に比べて特定領域３０において大きくするようにしても良い。これにより、特定領域３０におけるメモリセルへのストレスを大きく出来る。また、“１”または“０”が連続するようなデータを書き込むことによってもエラー発生率を高めることが出来る。従って、全ビット“１”、または全ビット“０”のデータを用いても良いし、あるいは一定数以上、“１”が連続する、または“０”が連続するようなデータを用いても良い。
【０１８８】
また上記実施形態では、書き込み装置２の例としてＫｉｏｓｋ端末、コンテンツ提供事業者、またはコンテンツ再生機器である場合を例に説明したが、その他の機器であっても良い。例えばメモリカード１の製造業者側の機器であっても良い。この場合、製造業者が第１固有情報をメモリカード１に書き込んで、これを販売する。または、コンテンツ提供事業者によって作られた団体側の機器であっても良く、この場合、メモリカード１を購入したユーザには、インターネット等を介して第１固有情報が書き込まれても良い。書き込み装置２がコンテンツを提供せずに第１固有情報のみを提供する機器である場合には、コンテンツ暗号部４４は不要である。
【０１８９】
また読み出し装置３の例としては、コンテンツ再生機器を例に挙げて説明した。しかし、その他の機器であっても良い。コンテンツ再生機器でない場合には、復号部５４は不要である。
【０１９０】
更に、第１固有情報に付与されるデジタル署名には、第１固有情報生成時の時刻、日付、または周囲温度の少なくともいずれかを含めても良い。例えば時刻または日付が含まれる場合であって、且つデジタル署名に含まれる時刻または日付から一定以上、時間が経過している際には、署名検証部５５は、第１固有情報と第２固有情報との比較結果にかかわらず、不正コピーをより確実に排除したい時期を過ぎたものとしてコンテンツの再生を許可しても良い。
【０１９１】
また、デジタル署名に温度情報を含める場合には、第１固有情報が複数の温度で生成されても良い。例えば高温で作成された第１固有情報と、低温で作成された第１固有情報の２つの第１固有情報が特定領域３０に記録されても良い。そして読み出し装置３での検証時には、現在温度に近いいずれか一方の第１固有情報を用いるようにしても良い。場合によっては、読み出し装置３での検証時には、まずデジタル署名内の温度を確認し、周囲をその温度に設定した状態で図４の処理を行っても良い。デジタル署名に温度情報を含める場合には、書き込み装置２及び読み出し装置３に温度センサを設ける必要がある。しかし、書き込み装置２及び読み出し装置３自身が温度センサを有していなくても、別の機器から温度情報を受け取るようにしても良い。例えば第４実施形態で説明したＳＳＤは、内部に温度センサを有している。従って、図３及び図４の処理時において、ＳＳＤで計測された温度が書き込み装置２及び読み出し装置３に出力されるようにしても良い。
【０１９２】
更にデジタル署名には、特定領域３０へのデータの書き込みに使用した電圧、例えばワード線電圧の情報を含めても良い。この場合、読み出し装置３においては、まずデジタル署名からワード線電圧を確認し、このワード線電圧を用いて特定領域３０への書き込みを実行しても良い。
【０１９３】
また第３実施形態では、第１固有情報をメディア識別子ＩＤmとしても使う場合を説明した。しかし、他にも個々のメモリカード１に固有の情報として、種々の用途に使用することが出来る。更に第１固有情報及び第２固有情報に含まれる内容は、エラー位置そのものである必要はなく、エラー位置に基づいたメモリカード１固有の情報であれば良い。
【０１９４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１９５】
１…メモリカード、２…書き込み装置、３…読み出し装置、４…ホスト機器、５…バスインターフェース、１０…メモリコントローラ、１１…ＮＡＮＤ型フラッシュメモリ、１２…データバス、２０、２１、４２、４３、５２、５３…認証処理部、３０…特定領域、３１…保護領域、３２…ユーザ領域、４０、５０…ＣＰＵ、４１、５１…生成部、４４、４８、４９…暗号部、４５…署名生成部、４６、５６…エラー位置情報処理部、４７、５７…書き込みデータ提供部、５４、５９、６０…復号部、５５…署名検証部、５８…比較部、７０…ＳＤカードインターフェース、７１…ＭＰＵ、７２…ＣＰＲＭ回路、７３…ＲＯＭ、７４…ＲＡＭ、７５、８３…ＮＡＮＤインターフェース、８０…メモリセルアレイ、８１…ロウデコーダ、８２…ページバッファ
【図１】
2012014416.tif 000003
【図２】
2012014416.tif 000004
【図３】
2012014416.tif 000005
【図４】
2012014416.tif 000006
【図５】
2012014416.tif 000007
【図６】
2012014416.tif 000008
【図７】
2012014416.tif 000009
【図８】
2012014416.tif 000010
【図９】
2012014416.tif 000011
【図１０】
2012014416.tif 000012
【図１１】
2012014416.tif 000013
【図１２】
2012014416.tif 000014
【図１３】
2012014416.tif 000015
【図１４】
2012014416.tif 000016
【図１５】
2012014416.tif 000017
【図１６】
2012014416.tif 000018
【図１７】
2012014416.tif 000019
【図１８】
2012014416.tif 000020
【図１９】
2012014416.tif 000021