(57)【特許請求の範囲】
【請求項１】
データの読み出し及び書き換えが可能であって、ファイルデータが格納される第１記憶領域と、
データの読み出し及び未書き込み領域の追記書き込みが可能であって、前記ファイルデータから算出される改ざん検出用の第１算出値が格納される第２記憶領域と、
前記第１、第２記憶領域へのアクセス制御を行うコントローラとを具備し、前記コントローラは、
外部のホスト装置からのコマンドを受け、前記第１、第２記憶領域へのアクセスを行うフロントエンド部と、
前記第１算出値を前記ホスト装置に読み出すこと無く、前記第１算出値と前記ファイルデータから算出される改ざん検出用の第２算出値とが一致するか否かを判定し、その判定結果を前記ホスト装置に通知する改ざん検出通知部と、
前記判定結果が不一致の場合、不一致を示す前記第２算出値を前記第２記憶領域に追記する追記部と
を備える記憶装置。
【請求項２】
前記コントローラは、前記追記部により前記第２記憶領域に前記不一致を示す第２算出値が所定の回数以上に追記される場合、前記ホスト装置にエラーを出力し、そのエラー出力以降、前記ホスト装置からのコマンドの内容に関わらず、無効の判定を前記ホスト装置に出力する無効判定部を備える
請求項１に記載の記憶装置。
【請求項３】
データの読み出し及び書き換えが可能であって、ファイルデータが格納される第１記憶領域と、
データの読み出し及び未書き込み領域の追記書き込みが可能であって、前記ファイルデータから算出される改ざん検出用の第１算出値が格納される第２記憶領域と、
前記第１、第２記憶領域へのアクセス制御を行うコントローラとを具備し、前記コントローラは、
外部のホスト装置からのコマンドを受け、前記第１、第２記憶領域へのアクセスを行うフロントエンド部と、
前記第１算出値を前記ホスト装置に読み出すこと無く、前記第１算出値と前記ファイルデータから算出される改ざん検出用の第２算出値とが一致するか否かを判定し、その判定結果を前記ホスト装置に通知する改ざん検出通知部とを備え、
前記第２記憶領域は、互いに相補型のデータを記憶する２つのメモリにより構成される
記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、例えば格納されたファイルデータが改ざん行為を受けていない否かを判断する機能を備える記憶装置、及びそのような記憶装置にアクセスするホスト装置、並びにこれらを備える記憶システムに関する。
【背景技術】
【０００２】
従来のカメラによる写真撮影では、銀塩フィルムに画像そのものをダイレクトに保存する。従って、画像を修正して改ざんした場合であっても、銀塩フィルムにその痕跡が残るため、容易に改ざんを確認できた。しかしながら、デジタル・スチル・カメラ（以下、「ＤＳＣ」と称する）の場合、撮影データなどからなるファイルは、書き換え可能なメディアであるフラッシュメモリカード等に保存されることが一般的である。
【０００３】
ここで、ＤＳＣの特徴のひとつは、撮影後も撮影者が不要と判断した写真撮影のファイルを選択的に消去できることにある。またアーカイブ用の他のメディアにファイルを保存した後、フラッシュメモリカードに保存した写真のファイルを全消去し、新しいカードと同様に再利用することもできる。このため、フラッシュメモリカードは、フラッシュメモリに保存されたファイルを書き換える制御機能を備える。しかしながら、この機能を用いると、フラッシュメモリカードに保存された写真撮影のファイルに修整を加えたり、撮影日付や付随する撮影設定情報や位置情報などで部分的に修正を施したりして、改ざんした写真撮影のファイルに置き換えることも可能になる。この場合、ファイルとしての書式に書き換えた痕跡が無い限り、改ざんを見つけることは困難になる。
【０００４】
そのため、ＤＳＣによる写真撮影を、何らかの法的な証拠として用いたい場合においては、上記の問題は深刻となる。このため、保存したデータを書き換えられないようにするため、フラッシュメモリの代わりに、例えば、ワンタイム・プログラム・メモリ（以下、「ＯＴＰ」と称する）からなるメモリカード等を用いることが考えられる。もしくは、フラッシュメモリを用いるものの、フラッシュメモリを制御するバックエンド部を書き換え制御できない特殊仕様に変えて対応したメモリカード等を用いることも考えられる。なお、本開示に関連する先行技術文献情報としては、例えば、特許文献１がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００９−５２６３３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記のように、データの改ざんの検出が困難になるフラッシュメモリカードの欠点を補うために、ＯＴＰからなるメモリカードを用いる場合、フラッシュメモリほどの大容量化が難しく、撮影枚数が制限されるというデメリットがある。また、フラッシュメモリを用いるものの特殊な制御で書き換えできない様に施したメモリカードを用いる場合、コントローラのファームウエアの書き換えや、フラッシュメモリへのダイレクトにアクセスして直接データを書き換えることによる改ざんがなされるというリスクが残る。また、これらのメモリカードの場合、いずれも、デジタル化の本来のメリットのひとつである、不要なデータを自由に消去して再撮影できるというメリットが損なわれる。
【０００７】
そこで、本開示は、本来のデジタル化のメリットを損なうこと無く、安全にかつ容易に改ざんを検出させることが可能な記憶装置、ホスト装置、及びそれらを含む記憶システムを提供する。
【課題を解決するための手段】
【０００８】
以下の開示では、格納されたファイルそのものの改ざんを防止するのではなく、改ざんの有無を検出するためのデータを、撮影データを格納するフラッシュメモリとは異なる書き換えができないメモリに記録し、改ざんの有無を検出することが可能な記憶装置、ホスト装置、記憶システムを提案する。さらに、上記記憶装置等は、格納されたファイルから計算されるデータと比較することにより、改ざんの有無を通知する。
【０００９】
本開示における記憶装置は、データの読み出し及び書き換えが可能であって、ファイルデータが格納される第１記憶領域と、データの読み出し及び未書き込み領域の追記書き込みが可能であって、ファイルデータから算出される改ざん検出用の第１算出値が格納される第２記憶領域と、第１、第２記憶領域へのアクセス制御を行うコントローラとを具備し、コントローラは、外部のホスト装置からのコマンドを受け、第１、第２記憶領域へのアクセスを行うフロントエンド部と、第１算出値を前記ホスト装置に読み出すこと無く、第１算出値とファイルデータから算出される改ざん検出用の第２算出値とが一致するか否かを判定し、その判定結果を前記ホスト装置に通知する改ざん検出通知部とを備える。
【発明の効果】
【００１０】
本開示の記憶装置等によれば、再撮影できるという本来のデジタル化のメリットを損なうこと無く、安全にかつ容易に改ざんを検出させることが可能になる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係るメモリカードの構成例を示すブロック図。
【図２】実施の形態１に係るＤＳＣの構成例を示すブロック図。
【図３】実施の形態１に係る読み出し装置の構成例を示すブロック図。
【図４】実施の形態１に係る改ざんチェック動作を示すフロー図。
【図５】実施の形態１に係る第２パーティションに格納される情報のフォーマット例を示す図表。
【図６】実施の形態２に係るメモリカードの構成例を示すブロック図。
【図７】実施の形態３に係るメモリカードの構成例を示すブロック図。
【図７Ａ】実施の形態３に係る改ざん検出撮影専用ＤＳＣの構成例を示すブロック図。
【図８】実施の形態３に係るデータ書き込みシーケンスを示すタイミングチャート。
【図９】実施の形態４に係るメモリカードの構成例を示すブロック図。
【図１０】実施の形態５に係る第２パーティションを示すブロック図。
【図１１】図１０中の補完読出し器、補完書込み器の構成例を示す等価回路図。
【図１２】実施の形態５に係るフラグ補完器の動作を示す図表。
【発明を実施するための形態】
【００１２】
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
なお、発明者（ら）は、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。
【００１３】
［実施の形態１］
まず、実施の形態１について説明する。
＜１．構成＞  
１−１．メモリカード（記憶装置）
図１は、実施の形態１に係る改ざん検出が可能なメモリカード（記憶装置）１０の構成を示す。図示するように、実施の形態１に係る改ざん検出メモリカード１０は、第１パーティション１２０、第２パーティション１３０、及びコントローラ１１０を備える。
【００１４】
第１パーティション（第１記憶領域）１２０は、本実施の形態１の場合、フラッシュメモリにより構成される。フラッシュメモリは、図示しないがマトリックス状に配置される複数のフラッシュメモリ素子からなる不揮発性のメモリセルを有する。第１パーティション１２０には、ユーザにより撮像された写真データ等のファイルデータが格納される。第１パーティション１２０に格納されたファイルデータは、ＤＳＣ等の外部のホスト装置により、読み出し、消去等が可能である。
【００１５】
第２パーティション（第２記憶領域）１３０は、本実施の形態１の場合、ワンタイム・プログラム・メモリ（ＯＴＰ：One time program memory）により構成される。ＯＴＰとは、１回の書き込みのみ許容されるメモリをいう。そのため、ＯＴＰでは、例えば、ビット単位で、”０”状態から”１”状態への１回の書き込みは許される。しかし、それ以降の、”１”状態から”０”状態へ戻すように書き込むことは不可能である。なお、第１パーティション１２０は、第２パーティション１３０と異なるＬＳＩメモリチップで構成することができる。また、これに限られず、ＯＴＰを、第１パーティション１２０と同じメモリチップもしくは、他のフラッシュメモリチップで構成することも可能である。さらに、第２パーティション１３０には、第１パーティション１２０に格納されたファイルが改ざんされたか否かを検出するための数値、即ち改ざん検出用の算出値（改ざん検出用の第１算出値）が格納される。この改ざん検出用の算出値は、例えば、ファイルのデータから固定長のハッシュ値を算出すること等により生成される。詳細については、後述する。
【００１６】
コントローラ１１０は、外部のホスト装置よりコマンドを受け取り、データの書き込み、読み出しを制御し、データを受信し、これをホスト装置に送信する。加えて、コントローラ１１０は、改ざん検出用の算出値に関連する制御を行い、第１、第２パーティション１２０、１３０を制御する。コントローラ１１０は、フロントエンド部１１１、バックエンド部１１２、改ざん検出制御部１１３、改ざん検出通知部１１４、及び不一致検出追記部１１５を備える。
【００１７】
フロントエンド部１１１は、外部のホスト装置とのインターフェースを制御する。バックエンド部１１２は、第１パーティション１２０を制御する。改ざん検出制御部１１３は、上記改ざん検出用の算出値に関連し、第２パーティション１３０を制御する。改ざん検出通知部１１４は、第２パーティション１３０に格納される上記改ざん検出用算出値（改ざん検出用の第１算出値）を外部に読み出すこと無く、外部のホスト装置から与えられる改ざん検出用の第２算出値と、改ざん検出用の第１算出値とが一致するか否かを判定し、その判定結果を外部のホスト装置に通知する。不一致検出追記部１１５は、上記改ざん検出通知部１１４による判定結果が不一致の場合、不一致の改ざん検出用の第２算出値を、第２パーティション１３０に追記する。なお、上記関連の改ざん検出機能群１１４、１１５の詳細については、後述する。
【００１８】
１−２．改ざんチェックＤＳＣ（ホスト装置）
図２は、本実施の形態のメモリカード１０に対する改ざんチェックを可能とするＤＳＣの構造を示す図である。改ざんチェックＤＳＣ２０は、上記メモリカード１０のホスト装置である。図示するように、本実施の形態のＤＳＣ２０は、インターフェース回路２１０、改ざん検出用算出器２１１、全体制御部２２０、メモリ２３０、表示部２４０、及びカメラ部２５０から構成される。
【００１９】
インターフェース回路２１０は、メモリカード２０とのインターフェース処理を行う。改ざん検出用算出器２１１は、カメラ部２５０により写真撮影した画像ファイルのデータから、所定のアルゴリズムにより計算を行い、改ざん検出用の算出値を算出する。全体制御部２２０は、このＤＳＤ２０の全体を制御するマイコンからなる。メモリ２３０は、制御用記憶装置および写真データ等を一時的に保存する。表示部２４０は、撮影画像や各種の必要な情報を表示する。カメラ部２５０は、写真撮影を行う。
【００２０】
上記の構成において、カメラ部２５０において写真撮影で生成される写真データ等は、全体制御部２２０の制御により、メモリカード１０においてファイルデータとして、バックエンド部１１２を介して、第１パーティション１２０に格納される。つまり、ＤＳＣ２０は、写真撮影したファイルデータを、外部メモリとしてのメモリカード１０に格納できる。
【００２１】
上記ＤＳＣ２０と上記メモリカード１０とにより、ファイルの改ざんの有無を確認できる記録システムを構成する。即ち、本実施の形態１では、ＤＳＣ２０は、写真撮影したファイルデータをメモリカード１０に格納する際に、改ざん検出用算出器２１１で、写真撮影したファイルのデータから、改ざん検出用の算出値（第１算出値）を所定のアルゴリズムで計算する。そして、メモリカード１０へのデータ書き込み時に、全体制御部２２０は、専用のコマンドを発行し、その専用のコマンドと共に上記の改ざん検出用の算出値をメモリカード１０へ送信する。
【００２２】
メモリカード１０は、受信した専用コマンドにより、改ざん検出用算出値の第２パーティションへの書き込みを認識する。そのため、受信された改ざん検出用算出値は、フロントエンド部１１１及び改ざん検出制御部１１３を介して、第２パーティション１３０に格納される。詳細な動作、改ざん検出用算出値を格納する際のフォーマットの例については、後述する。なお、メモリカード１０に格納された写真撮影されたファイルデータは、従来のフラッシュメモリカードと同様に、従来のＤＳＣやパソコンなどで、読み出すことが可能である。
【００２３】
１−３．改ざんチェック読み出し装置（ホスト装置）
図３に本実施形態の読み出し装置の構造を示す。図示するチェック読み出し装置３０は、メモリカード１０が記憶するデータの改ざんの有無をチェックする機能を有するホスト装置である。ここで、改ざんの有無をチェックは、前述のＤＳＣ２０でも可能であるが、図３に示す専用の改ざんチェック用の読み出し装置３０を用いてチェックすることも可能である。
【００２４】
読み出し装置３０は、インターフェース回路３１０、改ざん検出用算出器３１１、全体制御部３２０、メモリ３３０、及び表示部３４０により構成される。インターフェース回路３１０を介してコマンドやデータ等を送信し、前述のメモリカード１０と通信する。改ざん検出用算出器３１１は、インターフェース回路３１０を介してメモリカード１０の第１パーティション１２０から読み出された写真撮影のファイルデータから、所定のアルゴリズムに従い、改ざん検出用算出値を算出する。全体制御部３２０は、マイコン等からなり、読み出し装置の全体を制御する。メモリ３３０は、制御用プログラムや写真データ等を一時に保存する。表示部３４０は、撮影画像や各種の必要な情報等を表示する。ＤＳＣ２０に代えて、読み出し装置３０と上記メモリカード１０と共に、ファイルの改ざんの有無を確認できる記録システムを構成することが可能である。
【００２５】
＜２．改ざんチェックのための仕掛けと動作＞  
次に、実施の形態１に係る改ざんチェックのための仕掛けと動作について説明する。ここでは、ＤＳＣ２０とメモリカード１０とを備える記録システムの構成における改ざんチェック動作を一例に挙げて説明する。
２−１．改ざんチェックのための仕掛け（ファイルデータ生成時）
ファイルデータ生成時（ファイルデータ書き込み時）に行われる改ざんチェックのための仕掛けについて、説明する。まず、改ざんチェックの対象となるファイルデータは、ＤＳＣ２０が備えるカメラ部２５０により撮影された画像データから生成される。そして、生成されたファイルデータは、ＤＳＣ２０からメモリカード１０へ転送され、メモリカード１０において、バックエンド部１１２を介して、第１パーティション１２０に書き込まれ、格納される。
【００２６】
ここで、ＤＳＣ２０が当該ファイルデータをメモリカード１０の第１パーティション１２０に書き込む際、当該ファイルデータは改ざん検出用算出器２１１を通過する。改ざん検出用算出器２１１は、所定のアルゴリズムを用いて、当該ファイルデータから改ざん検出用の第１算出値を算出する。算出された改ざん検出用の第１算出値は、ＤＳＣ２０からメモリカード１０へ転送され、メモリカード１０において改ざん検出制御部１１３を介して、第２パーティション１３０に書き込まれ、格納される。このようにして、メモリカード１０において、ファイルデータとともに改ざん検出用の第１算出値が記録される。
【００２７】
２−２．改ざんチェック動作（ファイルデータ読み出し時）
次に、図４に沿って、上述のようにしてメモリカード１０に書き込まれたファイルデータの改ざんの有無を確認する改ざんチェック動作について説明する。
（Step Ｓ１１（ファイルデータの読み出し））  
図４に示すように、まず、ＤＳＣ２０の全体制御部２２０は、メモリカード１０の第１パーティション１２０に格納されたファイルデータを、メモリカード１０から読み出す。読み出されたファイルデータは、メモリ２３０に一時的に保持される。
（Step Ｓ１２（改ざん検出用の第２算出値の算出））  
続いて、ＤＳＣ２０の改ざん検出用算出器２１１は、読み出したファイルデータから、所定のアルゴリズムを用いて、改ざん検出用の第２算出値を計算する。なお、改ざん検出用の第２算出値の計算は、ファイルデータ読み出しメモリ２３０に一時的に保持させる最中に、改ざん検出用算出器２１１で、改ざん検出用の第２算出値を計算しても良い。
（Step Ｓ１３（問い合わせデータの送信））  
ＤＳＣ２０の制御部２２０は、改ざんの有無をチェックするために、インターフェース回路２１０を介して、算出した改ざん検出用の第２算出値を問い合わせデータとして改ざん検出用の専用コマンドと共にメモリカード１０へ送信し、メモリカード１０への問い合わせを行う。
（Step Ｓ１４（改ざん検出用の第１、第２算出値の判定））  
メモリカード１０が改ざん検出用の専用コマンドを受信すると、メモリカード１０の改ざん検出通知部１１４は、第２パーティション１３０に格納され、ファイル名で管理された改ざん検出用の第１算出値と、ファイル名とともに送信された問い合わせデータ中の改ざん検出用の第２算出値とが一致するか否かをチェックする。具体的な判定については、図５において、後述する。
（Step Ｓ１５（判定結果の通知））  
メモリカード１０の改ざん検出通知部１１４は、上記ステップＳ１４でチェックした判定結果を、ホスト装置であるＤＳＣ２０に通知する。
（Step Ｓ１６（判定結果の利用））  
続いて、ＤＳＣ２０は、メモリカード１０から通知された上記一致／不一致の判定結果を受け取り、これにより、ファイルデータの改ざんの有無を確認する。
（Step Ｓ１７（不一致検出データの第２パーティションへの追記））  
続いて、上記ステップＳ１４の判定において不一致の結果が検出された場合、メモリカード１０が備える不一致検出追記器１１５は、不一致を示す情報として不一致検出データ（識別フラグ（Ｆ））を第２パーティション１３０に追記する。詳細は、図５において、後述する。
【００２８】
なお、図３に示した読み出し装置３０とメモリカード１０とを備える記憶システムの場合も、上記動作と実質的に同様である。但し、読み出し装置３０は、ＤＳＣ２０と比較してカメラ部２５０がなく、写真データ等のファイルデータを生成する機能を備えない点で、相違する。そのため、読み出し装置３０の場合、改ざん検出用算出器３１１は、メモリカード１０から読み出したファイルデータから改ざん検出用の第２算出値を算出する時のみ利用され、ファイルデータ生成時に算出される改ざん検出用の第１算出値を算出しない。
【００２９】
第２パーティションに格納される情報フォーマット
ここで、図５を用い、第２パーティション１３０に格納される情報のフォーマット例を説明する。図５に示す表１には、領域（ａ）に格納アドレス（０、１、２、３、、、）が格納される。領域（ｂ）にファイル名（ASCIIストリングス）が格納される。領域（ｃ）に識別フラグが格納される。領域（ｄ）に改ざん検出用の算出値が格納される。上記のように、領域（ｂ）、（ｄ）にファイル名と改ざん検出用の算出値とを関連付けて格納することで、写真撮影したファイルデータと、改ざん検出用の算出値とを関連付けている。
【００３０】
さらに、領域（ｃ）に、以下の３つの状態（１）、（２）、及び（３）に対応する識別フラグが格納される。
状態（１）は、格納情報が、ファイル生成時、つまり写真撮影した際に、第２パーティション１３０に格納された情報である。この場合には、識別フラグのコードが、例えば「Ｃ」（”１１００”）とされる。
【００３１】
状態（２）は、格納情報が、読み出し時の照合の際において、改ざん検出用の第１、第２算出値が不一致となった際に、第２パーティション１３０に追記された情報である。この読み出し時の照合で不一致の場合には、識別フラグのコードが、例えば「Ｆ」（”１１１１”）とされる。例えば、メモリカード１０の改ざん検出通知部１１４は、格納アドレス０と同一のファイル名（DSC_0011.JPG）において、第２パーティション１３０に格納された改ざん検出用の第１算出値（0x123456...）と、算出されたホスト装置からの問い合わせデータ中の改ざん検出用の第２算出値（0x223456...）とが一致するか否かをチェックする。このファイル名（DSC_0011.JPG）の場合、上記の通り、第１、第２算出値は、不一致となる。そのため、格納アドレス４において、ファイル名（DSC_0011.JPG）の識別フラグの状態（２）として、「Ｆ（0xF）」と追記される。
【００３２】
状態（３）は、格納情報が、未使用状態である。この未使用の場合は、未書き込み格納アドレスの識別フラグのコードとして、例えば「０」（”００００”）、即ち、未書き込みのコード（ヌルストリングス）にする。
【００３３】
ここで、第２パーティション１３０は、ＯＴＰから構成される。そのため、格納されたデータは、一度書き込まれると、その後の書き換えや消去ができず、追記しかできない。従って、データの改ざんが困難となり、格納されたデータを全て残すことができる。例えば、ファイルデータとしてファイル名DSC_0011.JPGが格納される場合、表１中のアドレス０に、識別フラグのコードが「０」から「Ｃ」（”００００”→”１１００”）として格納される。その後、上記ステップＳ１４の際に、同一のファイル名DSC_0011.JPGにおいて、算出値が不一致と判定されると、アドレス４に、識別フラグのコードが「Ｃ（0xC）」から「Ｆ（0xF）」（”１１００”→”１１１１”）として追記される。このように、第２パーティション１３０としてＯＴＰを用いることで、格納されたファイルデータは、書き換えや消去ができない。例えば、先の例で言うと、識別フラグのコードが「Ｆ」（”１１１１”）と追記されたアドレス４、５、６のファイル名DSC_0011.JPGのファイルデータは、ファイルコードの書き換えとして、「Ｆ」から「Ｃ」（”１１１１”→”１１００”）とすることは不可能である。
【００３４】
その一方で、ファイルデータの全てについて、第２パーティション１３０に追記すると、膨大な容量が必要となる。そのため、以降、メモリカード１０は改ざん検出システム用のメモリカードとしては使えなくなり、通常のフラッシュメモリカードとしての使い方の範囲、即ち、第１パーティション１２０によるファイルデータの格納のみでしか使用できない。
【００３５】
しかしながら、図５に示す表１からも明らかなように、実施の形態１に係る第２のパーティション１３０に格納される各情報は、全てのファイルデータについて追記することはなく、各領域（ａ）〜（ｄ）において必要な情報に区分けして格納される。そのため、第２のパーティション１３０に格納される各情報は、例えば、凡そ１００万バイト以上になる写真撮影情報に比べても、極めて小さく３２バイト程度に圧縮して格納させることができる。その結果、第２パーティション１３０のメモリサイズは、第１パーティション１２０のメモリサイズに比べ、例えば３万分の１以下程度とすることができる。従って、第２パーティション１３０をＯＴＰ素子で構成しても、充分な枚数の写真撮影が可能になる。さらには、撮影した写真を消去してリサイクルした場合での写真撮影もまかなうことができる（例えば、ファイル名に１１バイト、認識フラグに１バイト、改ざん検出用算出値に２０バイト）。
【００３６】
なお、代表的な改ざん検出用の第１、第２算出値の例としては、ハッシュ値がある。ハッシュ値は、データのサイズに関係なく、固定長のデータになる。代表的な例としては、１６０ビットの値である。データとしては、写真撮影したファイルそのもののみならず、ファイルを生成した日付情報や、ファイルのサイズ情報などを含めたものを扱うことができる。また、代表的な算出アルゴリズムとしてはＳＨＡ−１が挙げられる。
【００３７】
＜３．作用効果＞
上記実施の形態１に係る構成及び動作によれば、少なくとも以下の効果が得られる。
（１）本来のデジタル化のメリットを損なうこと無く、安全にかつ容易に改ざんを検出させることが可能である。
上記のように、実施の形態１に係る第２パーティション（第２記憶領域）１３０は、データの読み出し及び未書き込み領域の追記書き込みが可能であり、第２パーティション１３０には、少なくとも改ざん検出用の第１算出値が格納される。そのため、改ざん検出用の第１算出値が第２パーティション１３０に追記された場合であっても、図５に示した表１から明らかのように、第２のパーティション１３０に格納される各情報は、例えば、凡そ１００万バイト以上になる写真撮影情報に比べても、極めて小さく３２バイト程度に圧縮して格納させることができる。その結果、第２パーティション１３０のメモリサイズは、第１パーティション（第１記憶領域）１２０のメモリサイズに比べ、例えば３万分の１以下程度とすることができる。従って、第２パーティション１３０をＯＴＰで構成しても、充分な枚数の写真撮影が可能になり、デジタル化のメリットを損なうことが無い。
【００３８】
加えて、図４に示したステップＳ１４、Ｓ１５の説明から明らかなように、実施の形態１に係る改ざん検出通知部１１４は、第２パーティション１３０に格納され、例えばハッシュ値等から構成される改ざん検出用の第１算出値を、メモリカード１０の外部のホスト装置２０及び３０に読み出すことはない。さらに、改ざん検出通知部１１４は、ホスト装置２０及び３０がファイルデータから算出した改ざん検出用の第２算出値を、該当するファイル名とともに受け取り、該当する改ざん検出用の第１算出値とが一致するか否かを判定し、その判定結果を外部のホスト装置２０及び３０に通知する。
【００３９】
このように、比較的高いセキュリティ環境で漏洩を防ぐ必要のある、例えばハッシュ値等から構成される改ざん検出用の第１算出値そのものを、ホスト装置２０及び３０が直接読み出し、メモリカード１０の外部に露出させることがないので、安全にファイルデータの改ざんを検出することが可能となる。また、ホスト装置２０及び３０は、メモリカード１０から通知される結果を確認することで、容易にファイルデータの改ざんを検出することが可能である。なお、ホスト装置２０及び３０は、通知された判定結果を、必要に応じて利用すること（例えば、改ざんのおそれがある旨の表示等）が可能である。
【００４０】
［実施の形態２］
図６を用いて実施の形態２について説明する。この説明において、上記実施の形態１と重複する部分の説明については、省略する。
＜構成＞  
図６に示すように、実施の形態２に係るメモリカード１０は、コントローラ１１０が無効判定器１１６を更に備える点で、上記実施の形態１と相違する。無効判定器１１６は、ファイルに対する改ざん検出通知を行う際（上記ステップＳ１５）、問い合わせデータの内容に関わらず、無効の判定を外部のホスト装置２０及び３０に出力する。
【００４１】
＜改ざんチェック動作＞
実施の形態２に係るメモリカード１０は、ホスト装置から改ざん検出用の専用コマンドを受け、改ざん検出用の第１、第２算出値の一致チェックを行った際、不一致が検出された場合、不一致検出追記器１１５により、不一致検出データを第２パーティション１３０に追記する（ステップＳ１７）。
【００４２】
実施の形態２では、さらに、各ファイル名の不一致回数が所定の回数を超えていた場合は、識別フラグとして格納する上記状態（１）〜（３）に加えて、不一致検出追記部１１５が、領域（ｃ）に、無効の状態（４）を示すフラグ情報を追加し、第２パーティション１３０に格納する。例えば、所定の閾値回数が４回である場合、ファイル名DSC_0011.JPGの不一致回数が所定の４回を超えると、不一致検出追記部１１５が、領域（ｃ）に状態（４）として、無効の状態を示すフラグ情報「Ａ（0xA）」を追加し、第２パーティション１３０に格納する（図示せず）。
【００４３】
これにより、無効判定器１１６は、以降の改ざんチェック動作において、改ざん検出用専用コマンドを受けて、該当するファイルデータに対する改ざん検出通知を行う際（上記ステップＳ１５）に、所定の閾値回数を超えている場合、問い合わせデータの内容に関わらず、無効の判定を外部のホスト装置に出力する。実施の形態２のメモリカード１０の特有の形態は、以上である。その他の構成、動作については、実質的に上記第１の実施形態と同様であるため、詳細な説明については省略する。
【００４４】
＜作用効果＞  
実施の形態２によれば、少なくとも実施の形態１と同様の効果が得られる。さらに、実施の形態２に係るメモリカード１０は、コントローラ１１０が無効判定器１１６を更に備える。さらに、各ファイル名の不一致回数が所定の回数を超えていた場合は、不一致検出追記部１１５が、領域（ｃ）に、状態（４）として、無効の状態を示すフラグ情報を追加し、第２パーティション１３０に格納する。これにより、無効判定器１１６は、以降の改ざんチェック動作において、改ざん検出用専用コマンドを受けて、該当するファイルに対する改ざん検出通知を行う際（上記ステップＳ１５）に、問い合わせデータの内容に関わらず、無効の判定を外部のホスト装置２０及び３０に出力する。
このような無効の判定を行うことは、以下のような行為の防止に有効である。例えば、まず、ファイルデータを改ざん（例えば、写真データやタイムスタンプデータ等を改ざん）したにも関わらず、改ざん目的に影響を及ぼさない領域のデータ（例えば、写真データのフォーマット上、無意味なデータが詰まった領域のデータ等）を試行的に変化させる。そして、そのファイルデータでの改ざん検出用の第２算出値で幾度となくメモリカード１０に問い合わせ、改ざん検出用の第１算出値と同じになるまで試行させるという行為である。
【００４５】
［実施の形態３］
図７、図７Ａ、及び図８を用いて実施の形態３について説明する。この説明において、上記実施の形態１と重複する部分の説明については、省略する。
＜構成＞  
ここで、上記実施の形態１、２では、ホスト装置（ＤＳＣ２０、読み出し装置３０）側において、改ざん検出用の第１、第２算出値を算出する改ざん検出用の算出器２１１、３１１を設けている。すなわち、写真撮影したファイルデータをメモリカード１０に格納するときに、ＤＳＣ２０のホスト装置が備える改ざん検出用算出器２１１が、写真撮影したファイルデータをメモリカード１０に書き込むと同時に、改ざん検出用の第１算出値を算出する。そして、全体制御部２２０が専用のコマンドを発行し、その第１算出値を、メモリカード１０に送信する。もしくは、ホスト装置が改ざんチェックのために、メモリカード１０から写真撮影したファイルを読出すと同時に、ホスト装置が備える改ざん検出用算出器２１１及び３１１が、改ざん検出用の第２算出値を算出し、全体制御部２２０及び３３０が専用のコマンドを発行し、その第２算出値を、メモリカード１０に送信する。
【００４６】
これに対して、実施の形態３では、図７に示すように、改ざん検出用の算出器１１９及び算出保存器１１７をメモリカード１０側に設けている。このようなメモリカード１０に対しては、図７Ａに示すような改ざん検出撮影専用ＤＳＣ２０Ａで対応することができる。図７Ａに示す改ざん検出撮影専用ＤＳＣ２０Ａは、前述のＤＳＣ２０と比較して、ファイルデータの書き込み時に第１算出値を算出するための改ざん検出用算出器２１１を必要としない。ここで、改ざん検出撮影専用ＤＳＣ２０Ａとは、ＤＳＣの一形態であり、改ざん検出撮影専用の装置であって、写真再生時にはファイルデータの改ざん検出を行わないホスト装置をいう。そのため、後述するように、改ざん検出撮影専用ＤＳＣ２０Ａは、改ざん検出用の第１算出値をメモリカード１０に通知しない代わりに、専用の開始コマンドと終了コマンドとをメモリカード１０に発行する。
【００４７】
図７に示す改ざん検出用算出器１１９は、バックエンド部１１２に配置され、フロントエンド部１１１を介して、改ざん検出撮影専用ＤＳＣ２０Ａから発行される専用の改ざん検出用算出値に係る開始コマンドと終了コマンドとを受け、その間に受け取ったデータから改ざん検出用の第１算出値を計算する。算出保存器１１７は、改ざん検出用算出器１１９が算出した改ざん検出用の第１算出値を第２パーティション１３０に格納する。また、ステップＳ１５で不一致を通知した時のみ、ステップＳ１７で改ざん検出用算出器１１９が算出した改ざん検出用の第２算出値を第２パーティション１３０に格納する。このように、本実施の形態３では、メモリカード１０側に改ざん検出用算出器１１９を備え、メモリカード１０へのデータ書き込み時に、ホスト装置（図７Ａに示す改ざん検出撮影専用ＤＳＣ２０Ａ）が、メモリカード１０に第１算出値を通知する必要は無い。なお、当該改ざん検出撮影専用ＤＳＣ２０Ａにより撮影されたファイルデータに改ざんチェックを行う場合には、読み出し装置３０を用いる。
【００４８】
＜改ざんチェック動作＞  
次に、実施の形態３に係る改ざんチェック動作について説明する。まず、実施の形態１と同様に、改ざん検出撮影専用ＤＳＣ２０Ａが備えるカメラ部２５０により生成されたファイルデータは、ＤＳＣ２０からメモリカード１０へ転送され、メモリカード１０において、バックエンド部１１２を介して、第１パーティション１２０に書き込まれ、格納される。さらに、実施の形態３では、転送された当該ファイルデータは改ざん検出用算出器１１９を通過する。改ざん検出用算出器１１９は、所定のアルゴリズムを用いて、当該ファイルデータから改ざん検出用の第１算出値を計算する。次いで、算出された改ざん検出用の第１算出値は、改ざん検出用算出器１１９から算出用保存器１１７へ送信される。算出用保存器１１７は、改ざん検出用の第１算出値を第２パーティション１３０に書き込み、格納させる。
【００４９】
この時、図８に示すように、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、ファイルデータを書き込む際に、改ざん検出用の第１算出値をメモリカード１０に通知することなく、専用の開始コマンド、ライトコマンド、アドレス、データ、及び終了コマンドを順次メモリカード１０に発行する。図８に示すように、時刻ｔ１において、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、メモリカード１０がレディ状態で、改ざん検出用算出に関する専用の開始コマンド（ＣＯＭ）を発行する。これを受けて、メモリカード１０の改ざん検出用算出器１１９は、改ざん検出用の第１算出値の算出に移行する。
【００５０】
続いて、時刻ｔ２において、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、メモリカード１０に、ライトコマンド（ＷＦ）を発行する。時刻ｔ３において、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、メモリカード１０に、上記読み出したファイルデータのアドレス（ＡＤＤ）を送信する。時刻ｔ４において、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、メモリカード１０に、上記アドレスのファイルデータ（ＤＡＴＡ）を送信する。時刻ｔ５において、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、メモリカード１０に、終了コマンド（ＣＦ）を発行する。時刻ｔ６において、メモリカード１０は、以下の動作を行うためにビジィ状態（BUSY）となる。
【００５１】
また、改ざん検出用の第２算出値は、読み出し装置３０のホスト装置が発行する別の専用コマンド（図示せず）をメモリカード１０が受け、バックエンド部１１２を介して読み出し装置３０のホスト装置に通知される。これにより、読み出し装置３０のホスト装置は、上記ステップＳ１３以降の動作と同様の動作を行うことで、改ざんのチェックが可能となる。その他の構成、動作については、実質的に上記第１の実施形態と同様であるため、詳細な説明については省略する。
【００５２】
＜作用効果＞  
実施の形態３によれば、少なくとも実施の形態１と同様の効果が得られる。さらに、実施の形態３では、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置は、改ざん検出用算出器２１１を必要とせず、メモリカード１０側に改ざん検出用算出器１１９、及び算出保存器１１７を備える。そのため、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置の改ざん検出用算出器２１１が不要となり、改ざん検出撮影専用ＤＳＣ２０Ａのホスト装置の動作負荷を軽減できる点で有利である。このように、必要に応じて、実施の形態３を適用することが可能である。なお、必要に応じて、ホスト装置が改ざん検出用算出器２１１を備えることももちろん可能である。
このように、改ざん検出撮影専用ＤＳＣ２０Ａは、改ざん検出用算出器２１１を備えないため、写真撮影したファイルデータ生成時に、改ざん検出用の第１算出値をメモリカード１０に通知する必要がない、それは、撮影直後の撮影した写真データを確認のため再生する場合は、撮影者と同じ人が再生をするので、改ざんを疑う必要がほとんど無いと考えられるからである。従って、本実施の形態３に係るメモリカード１０と、改ざん検出撮影専用ＤＳＣ２０Ａとを備えるシステムによれば、改ざん検出撮影専用ＤＳＣ２０Ａは、既存のＤＳＣとほぼ同じ構成及び製造コストで実現できることなる。なお、改ざんチェックを行う場合は、上記のように読み出し装置３０を用いれば良い。
【００５３】
［実施の形態４］
実施の形態４について説明する。この説明において、上記実施の形態３と重複する部分の説明については、省略する。
＜構成＞  
図９に示すように、本例では、メモリカード１０のコントローラ１１０が、比較器１１８を更に備える点で、上記実施の形態３と相違する。比較器１１８は、ファイルデータを生成するときに改ざん検出用算出器１１９により計算され第２パーティションに格納された改ざん検出用の第１算出値と、ファイルデータを読み出すときに改ざん検出用算出器１１９により計算された改ざん検出用の第２算出値とを比較して、その比較結果をホスト装置に通知する。
【００５４】
＜改ざんチェック動作＞  
実施の形態４に係る改ざんチェック動作は、写真撮影したファイルをメモリカード１０の第１パーティション１２０から読み出す際（Ｓ１１）、ホスト装置が、専用の読み出しファイルの開始コマンドと、終了コマンドとを発行し、メモリカード１０に通知する（Ｓ１３）。このシーケンスは、上記図８に示したものと同様である。即ち、図８と同様に、読み出し時改ざん検出用算出に関する専用の開始コマンドを発行し、これを受けて、メモリカード１０の改ざん検出用算出器１１９は、改ざん検出用の第２算出値の算出に移行する。続いて、時刻ｔ２において、ホスト装置は、メモリカード１０に、リードコマンドを発行し、以下はファイルデータをメモリカード１０に書き込むときの動作と同様である。但し、実施の形態３と比較して、図８で示すライトコマンド（ＷＦ）がリードコマンドに換わる点と、データ（ＤＡＴＡ）の向き、つまりデータのメモリカード１０への入力がメモリカード１０から出力される点とが相違する。そして、ホスト装置２０及び３０は、上記ステップＳ１３以降の動作と同様の動作（ただし、ステップＳ１３の際に改ざん検出用の第２算出値は送信されない）を行うことで、改ざんのチェックが可能となる。この結果、ホスト装置２０及び３０が改ざん検出用の第２算出値を送信することなく、メモリカード１０は第２算出値を入手できる。
【００５５】
続いて、比較器１１８は、第２パーティション１３０に保存された改ざん検出用の第１算出値と、改ざん検出用の第２算出値との比較を行い、その比較結果をＤＳＣ２０もしくは、読み出し装置３０等のホスト装置に通知する。ここで、比較器１１８がホスト装置に通知する比較結果は、判定した結果のみであり、例えばファイルを生成した日付情報やファイルのサイズ情報などを含むハッシュ値等を含まない。そのため、秘匿性をより向上できる。上記のように、実施の形態４によれば、ＤＳＣ２０及び読み出し装置３０のホスト装置は、改ざん検出用算出器２１１及び３１１が不要となる。その他の構成、動作については、実質的に上記第３の実施形態と同様であるため、詳細な説明については省略する。
【００５６】
＜作用効果＞  
実施の形態４によれば、少なくとも実施の形態１と同様の効果が得られる。さらに、実施の形態４では、比較器１１８が、第２パーティション１３０に保存された改ざん検出用の第１、第２算出値の比較を行い、比較結果をホスト装置に通知する。このように、実施の形態４によれば、比較器１１８がホスト装置に通知する比較結果は、判定した結果のみであり、例えばファイルを生成した日付情報等を含むハッシュ値等を外部のホスト装置に通知することはない。そのため、実施の形態４によれば、ハッシュ値等により構成される第１及び第２算出値をホスト装置２０及び３０からメモリカード１０が受け取る必要がない。そのため、実施の形態４では、メモリカード１０とホスト装置２０及び３０とのインターフェースのバス上に、第１及び第２算出値のデータ値を露出させることがなく、従来と比較して、秘匿性をより向上できる。
【００５７】
［実施の形態５（コンプリメンタリ型第２パーティション）］
次に、実施の形態５について説明する。実施の形態５は、第２パーティション１３０が相互に補完型（コンプリメンタリ型）である例に関する。この説明において、上記実施の形態１と重複する部分の説明については、省略する。
＜構成＞  
ここで、上記のように、改ざん検出用算出値を格納するＯＴＰ素子から成る第２パーティション１３０は、ＯＴＰであるが故に、ビット単位で書込んだ情報を元に状態に書き戻したり、フラッシュメモリの様に消去動作で状態をリセットすることができない。ただし書き込んでいないビットとの組合せで、２進数を表す場合は、書き込んでいないビットのみを追加的に書き込み状態を変えることができる。例えば、書き込んでいないビットを「０」、書き込んだビットを「１」としたとき、２進数で”０１０１”、つまり１０進数で「５」の値が保存されているＯＴＰで、２つ目の「０」のビットのみを追加的に書き込むと、２進数で”０１１１”、つまり１０進数で「７」の値に変えることができる。そこで、実子の形態５では、この様なビット単位での改ざんを防ぐことを提案する。
【００５８】
図１０に示すように、実施の形態５は、第２パーティション１３０が、２つのコンプリメンタリ型の第２パーティション１３１、１３２（ＯＴＰ１、ＯＴＰ２）により構成される点で、上記実施の形態１と相違する。このように、実施の形態５では、第２パーティション１３０のメモリを、第２パーティションのメモリ１（以下、「ＯＴＰ１」と称する場合がある）と、第２パーティションのメモリ２（以下、「ＯＴＰ２」と称する場合がある）とに分ける。
【００５９】
ＯＴＰ１には、図５の表１に示した領域（ｂ）〜（ｄ）のファイル名、識別フラグ情報、改ざん検出用算出値を格納する。一方、ＯＴＰ２には、それらの値を反転させて得られるファイル名、識別フラグ情報、改ざん検出用算出値を格納する。このように、ＯＴＰ１とＯＴＰ２とは、コンプリメンタリの関係なデータを格納する。ＯＴＰ１、ＯＴＰ２に格納されたデータは、補完読出し器１４１Ａ、１４１Ｂを用いて、読み出され、簡単に改ざんが行われたかどうかをチェックすることができる。なお、補完読出し器１４１Ａ、１４１Ｂは、後述するように、ビット毎に排他的論理和をとるだけで容易に実現可能である。
【００６０】
さらに、ＯＴＰ１、ＯＴＰ２へのデータ書き込みは、補完書込み器１４２Ａ、１４２Ｂにて行われる。補完書込み器１４２Ａは、データＩＯ１４３Ａを介して入力される改ざん検出用算出値を、ＯＴＰ１、ＯＴＰ２へそれぞれデータ書き込みを行う。補完書込み器１４２Ｂは、データＩＯ１４３Ｂを介して入力されるファイル名のデータを、ＯＴＰ１、ＯＴＰ２へそれぞれデータ書き込みを行う。なお、補完書込み器１４２Ａ、１４２Ｂは、後述するように、ビット毎に簡単なロジックを付けることで容易に実現可能である。識別フラグは、必要に応じて、状態を変える必要があるので、フラグ補完器１４５を用いて、少し異なる動作を行わせる。フラグ補完器１４５の動作については、表２を用いて、後述する。
【００６１】
補完読み出し器１４１Ａ、補完書き込み器１４２Ａの構成例  
次に、図１１を用い、補完読み出し器、補完書き込み器の構成例について説明する。ここでは、補完読み出し器１４１Ａ、補完書き込み器１４２Ａを一例に挙げる。  
図１１に示すように、補完読み出し器１４１Ａは、排他的論理和回路１５１Ａにより構成される。排他的論理和回路１５１Ａは、入力にＯＴＰ１、ＯＴＰ２からの改ざん検出用算出値及びその反転データが与えられ、排他的論理和が計算された出力結果が出力される。そのため、入力データが一致する場合（改ざんが無い場合）には、”０”出力となる。また、ＯＴＰ２からの読み出しでデータも改ざん結果の出力としてコントローラ１１０へ出力される。
【００６２】
補完書き込み器１４２Ａは、バッファ回路１５２Ａにより構成される。バッファ回路１５２Ａは、入力される書込みデータから、ＯＴＰ１には改ざん検出用計算値を書き込み、ＯＴＰ２にはデータ反転させた改ざん検出用計算値を書き込む。
【００６３】
＜改ざんチェック動作＞  
上記構成において、実施の形態５に係る改ざんチェック動作は、例えば、図４に示すステップＳ１４の際において第１、第２改ざん検出用算出値の一致／不一致を判定する場合に、ファイル名、識別フラグ、改ざん検出用算出値の相補的なデータを利用する点で、実施の形態１と相違する。例えば、改ざん検出用算出値は、ＯＴＰ１、ＯＴＰ２から補完読み出し器１４１Ａにより読み出される相補的なデータが用いられる。ファイル名は、ＯＴＰ１、ＯＴＰ２から補完読み出し器１４１Ｂにより読み出される相補的なデータが用いられる。識別フラグは、ＯＴＰ１、ＯＴＰ２からフラグ補完器１４５により読み出される相補的なデータが用いられる。なお、識別フラグに関し、フラグ補完器１４５の動作については、次で詳しく説明する。
【００６４】
フラグ補完器１４５の動作  
次に、図１２に示す表２を用い、上記フラグ補完器１４５の動作について説明する。
図１２（ａ）に示すように、初期状態の場合、最初何も記録されていないときは、ＯＴＰ１、ＯＴＰ２ともに４ビットとも全て”０”（all 0）である。そのため、この状態のとき、読出し操作を行ったホスト装置等は、メモリカード１０に該当のデータがまだ格納されていないことを知ることができる。図１２（ｂ）に示すように、写真撮影されファイルデータが生成された場合は、ＤＳＣ２０等のホスト装置からのコマンドにより、ＯＴＰ１に２進数で”１１００”、ＯＴＰ２に補完的に”００１１”のデータが格納される。
【００６５】
次いで、図１２（ｃ）に示すように、保存されている写真に改ざんが無いかをチェックするために、上記ステップＳ１４において改ざん検出用の第１、第２算出値を読出した結果、これらのデータが一致しており、ファイルデータの改ざんがないと判定される場合には、ＯＴＰ１、ＯＴＰ２のデータを読み出すのみである。そのため、データ書き込みはなされないため、データに変化は生じない（データ状態が保持される）。一方、図１２（ｄ）に示すように、上記ステップＳ１４において改ざん検出用の第１、第２算出値と写真データを読み出し算出した結果、これらのデータとが一致せず、異常と判断された場合には、毎回計算しなくても済む様に、識別フラグそのものをビット単位で書き加え、データ状態を変更する（Ｓ１７）。具体的には、ＯＴＰ１に、”００１１”を書き加え、ＯＴＰ２に補完的に”１１００”を書き加える。ただし、ＯＴＰの特性故に、「１」は「０」に書き戻すことはできないため、ＯＴＰ１、ＯＴＰ２にはともに、”１１１１”のデータが保持される。そのため、これ以降、この格納アドレスの読出し操作を行ったホスト装置は、読み出した識別フラグデータの”１１１１”を確認することにより、本格納アドレスのデータは無効であることを知ることができる。
【００６６】
図１２（ｅ）に示すように、機器が何らかの改ざん行為を判断した場合も、同様に、ＯＴＰ１に”００１１”、ＯＴＰ２に”１１００”が書き加えられるため、本格納アドレスのデータを無効（”１１１１”を保持）にすることができる。なお、図１２（ｆ）に示すように、ＯＴＰ１、ＯＴＰ２のデータが上記以外の場合は、フラグ補完器１４５は、上記以外のデータが保持されるため、改ざん有りと判断できる。
【００６７】
＜作用効果＞  
実施の形態５によれば、少なくとも上記（１）と同様の効果が得られる。さらに、実施の形態５では、第２パーティション１３０は、２つのコンプリメンタリ型の第２パーティション１３１、１３２（ＯＴＰ１、ＯＴＰ２）により構成される。そのため、仮に、第２パーティション１３０に外部から直接改ざんが行われた場合であっても、２つのコンプリメンタリ型の第２パーティション１３１、１３２（ＯＴＰ１、ＯＴＰ２）から読み出したデータを利用することにより、容易にそれを検出できる。従って、セキュリティの精度を向上でき、信頼性の高いシステムを構築することができる点で、さらに有利である。
【００６８】
［その他の実施の形態］
上記各実施の形態１〜５では、第２パーティション１３０をＯＴＰで構成する場合を一例として説明した。しかしながら、上記の通り、フラッシュメモリを用いて、改ざん検出制御部１１３が、第２パーティション１３０を書き換えや消去ができない形態で制御して、同様の機能を実現させることもできる。また、各実施の形態では、写真撮影のファイルデータを一例に説明したが、写真撮影のファイルデータに限定されることはない。例えば、動画データなど一般的なその他のファイルデータに適用可能である。ただし、実施の形態３、４で説明した、メモリカード１０が専用の開始コマンドと終了コマンドを受けて、メモリカード１０内部で、改ざん検出用算出値を計算する例に関しては、ファイルの書き込み、読み出しが、ひとつのファイル分、連続して行われることを前提にしている。そのため、複数のファイルをオープンして、ランダムに読み書きする記録システムの場合は、その趣旨にそぐわない。
【００６９】
以上のように、実施の形態１〜５によれば、従来のＤＳＣと同様に、写真撮影を行ったり、不要なファイルを消去したりできることに加え、撮影されたファイルが改ざんを受けていないことを容易に確認できるため、より信頼性を向上できる。
【００７０】
また、本開示における技術の例示として、実施の形態１〜５を説明した。そのために、添付図面および詳細な説明を提供した。したがって、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、上記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
また、上述の実施の形態は、本開示における技術を例示するためのものであるから、特許請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
【産業上の利用可能性】
【００７１】
本開示は、例えばメモリカード及び記録システム等において記録されたファイルが改ざんされていないことを保証する必要のある分野でのアプリケーション等において適用可能である。
【符号の説明】
【００７２】
１０  改ざん検出メモリカード
１１０  コントローラ
１１１  フロントエンド部
１１２  バックエンド部
１１３  改ざん検出制御部
１１４  改ざん検出通知器
１１５  不一致検出追記器
１１６  無効判定器
１１７  算出保存器
１１８  算出値計算比較器
１２０  第１パーティション
１３０  第２パーティション
２０  改ざんチェック用のＤＳＣ
２１０  インターフェース回路
２１１  改ざん検出用算出器
２２０  全体制御部
２３０  メモリ
２４０  表示部
２５０  カメラ部
３０  改ざんチェック読み出し器
３１０  インターフェース回路
３１１  改ざん検出用算出器
３２０  全体制御部
３３０  メモリ
３４０  表示部
４０  フラッシュメモリカード
４１０  コントローラ
４１１  フロントエンド部
４１２  バックエンド部
４２０  フラッシュメモリ
【図１】
0005962918.tif 000002
【図２】
0005962918.tif 000003
【図３】
0005962918.tif 000004
【図４】
0005962918.tif 000005
【図５】
0005962918.tif 000006
【図６】
0005962918.tif 000007
【図７】
0005962918.tif 000008
【図７Ａ】
0005962918.tif 000009
【図８】
0005962918.tif 000010
【図９】
0005962918.tif 000011
【図１０】
0005962918.tif 000012
【図１１】
0005962918.tif 000013
【図１２】
0005962918.tif 000014