"ページ単位でアクセスが可能な記憶装置に対し、当該記憶装置に記憶されるデータを、ストリーム暗号により暗号化して書き込み又は復号化して読み出しを行うデータ暗号化処理装置であって、暗号化または復号化時における前記擬似乱数の生成にブロック暗号のカウンタモードを使用し、前記ページは、夫々、ブロック長が前記ブロック暗号のブロック長と同一の複数のページブロックに分割され、前記分割されたページブロック単位で前記ブロック暗号のカウンタモードによる暗号化または復号化が行われるものであり、書き込まれ、または、読み出される前記データの前記ページ内における位置が、前記ページブロックのページブロック番号により特定され、前記擬似乱数を生成するための初期値として、書き込みまたは読み出し対象の前記ページのページ番号と前記ページブロック番号との関数で求まる値を用いることを特徴とするデータ暗号化装置。前記擬似乱数を生成するための初期値として、書き込みまたは読み出し対象の前記ページのページ番号と前記ページブロック番号、及び、前記データ暗号化装置毎に異なるオフセット値との関数で求まる値を用いることを特徴とする請求項1に記載のデータ暗号化装置。前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接して得られるプレ初期値に、前記オフセット値を加算した値として表されることを特徴とする請求項2に記載のデータ暗号化装置。前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接して得られるプレ初期値と、前記オフセット値との排他的論理和で表されることを特徴とする請求項2に記載のデータ暗号化装置。前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接した値として表されることを特徴とする請求項1に記載のデータ暗号化装置。前記ブロック暗号の暗号化アルゴリズムとしてAESを使用することを特徴とする請求項1~5の何れか一項に記載のデータ暗号化装置。前記記憶装置、及び、請求項1~6の何れか一項に記載のデータ暗号化装置を搭載してなるメモリカード。一般的な用途として、ファイルの暗号等にはブロック暗号が、通信の暗号化など大量のデータの暗号化にはストリーム暗号が使用されている。ここで、ページアクセスによりデータの書き込み、読み出しが行われるストレージデバイス記憶装置において暗号化装置を組み込み、データの暗号化を行うには、ページ毎にブロック暗号を用いて暗号化すればよい。しかし、ブロック暗号ではブロック長に相当するサイズのデータが揃ってからの暗号化処理となり、データへのアクセスが間欠動作になる。一方、ストリーム暗号を用いる場合、初期値IVの生成以外はオーバーヘッドがないため高速なアクセスが可能になるが、常にデータの先頭からアクセスする必要があり、任意のページからのアクセスができない。上記のストリーム暗号において任意の場所からアクセスできない課題に対し、特許文献1では、挿入情報識別情報と初期値IVの値をデータ列の中に埋め込むことにより、任意の位置からのアクセスを可能にしている。しかし、ストレージデバイスのページ毎に初期値IVを設定すると、ページをまたいで連続アクセスする場合に、その都度初期値IVの設定をし直すことによりオーバーヘッドが発生する。また、この挿入情報は冗長であり無駄なデータを保持することになる。本発明は、上記の状況に鑑み、機密情報を含むデータの暗号化された書き込みおよび読み出しにおいて、任意のページへの高速アクセスを可能とするデータ暗号化装置、並びに、上記データ暗号化装置を搭載したメモリカードを提供することを目的とする。上記目的を達成するための本発明に係るデータ暗号化装置は、ページ単位でアクセスが可能な記憶装置に対し、当該記憶装置に記憶されるデータを、ストリーム暗号により暗号化して書き込み又は復号化して読み出しを行うデータ暗号化処理装置であって、暗号化または復号化時における前記擬似乱数の生成にブロック暗号のカウンタモードを使用し、前記ページは、夫々、ブロック長が前記ブロック暗号のブロック長と同一の複数のページブロックに分割され、前記分割されたページブロック単位で前記ブロック暗号のカウンタモードによる暗号化または復号化が行われるものであり、書き込まれ、または、読み出される前記データの前記ページ内における位置が、前記ページブロックのページブロック番号により特定され、前記擬似乱数を生成するための初期値として、書き込みまたは読み出し対象の前記ページのページ番号と前記ページブロック番号との関数で求まる値を用いることを第1の特徴とする。上記第1の特徴のデータ暗号化装置に依れば、暗号方式としてストリーム暗号を使用しつつ、その擬似乱数列の生成にブロック暗号のCTRカウンタモードを用いることにより、高速アクセスが可能なデータ暗号化装置が実現される。また、ページ番号とページブロック番号により初期値を定めることができるため、任意のページへのページをまたいだアクセスが可能となる。上記第1の特徴のデータ暗号化装置は、更に、前記擬似乱数を生成するための初期値として、書き込みまたは読み出し対象の前記ページのページ番号と前記ページブロック番号に加えて、前記データ暗号化装置毎に異なるオフセット値との関数で求まる値を用いることを第2の特徴とする。上記第2の特徴のデータ暗号化装置に依れば、初期値をオフセット値の関数とすることにより、暗号化装置毎に初期値が異なるためセキュリティの強度を上げることができる。以下に上記初期値の関数形の例を示す。例えば、前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接した値として表されることが好ましい。このとき、ページ番号をnPG、ページブロック番号をmBLK、及び、1ページ当りのページブロック数をMとして、初期値IVは、IVnPG,mBLK=nPGMmBLKで表される。この場合、初期値IVは、ページをまたぐ連続アクセスであっても、IVを1ずつ増加させてくだけでよいため、カウンタと同じ動作になる。更に、上記IVがオフセット値offsetの関数でもある場合には、前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接して得られるプレ初期値に、前記オフセット値を加算した値として表されることがより好ましい。このとき、初期値IVは、IVnPG,mBLK,offset=nPGMmBLKoffsetで表される。或いは、プレ初期値とオフセット値を加算する代わりに、プレ初期値とオフセット値の排他的論理和をとったものを初期値IVとしてもよい。即ち、前記初期値が、前記ページブロック番号の上位ビット側に前記ページ番号を連接して得られるプレ初期値と、前記オフセット値との排他的論理和で表されていてもよい。上記第1または第2の特徴のデータ暗号化装置は、前記ブロック暗号の暗号化アルゴリズムとしてAESAdvancedEncryptionStandardを使用することが好ましい。AES暗号を用いて擬似乱数列を生成することにより、セキュリティの高い暗号装置を実現できる。また、本発明は、前記記憶装置、及び、上記第1または第2の特徴のデータ暗号化装置を搭載したメモリカードであり、上記特徴のデータ暗号化装置を、PC、デジタルカメラ、及び、携帯電話等の電子機器に着脱可能なメモリカードに搭載することで、セキュリティが高く、且つ、ランダムページアクセスと高速な読み出しを両立したメモリカードを実現できる。従って、本発明に依れば、任意のページへの高速アクセスが可能なデータ暗号化装置、並びに、上記データ暗号化装置を搭載したメモリカードを提供することができる。第1実施形態本発明の一実施形態に係るデータ暗号化装置1以降、適宜本発明装置1と称するの構成例を図1に示す。図1は本発明装置1の回路構成を示すブロック図であり、ブロック暗号のCTRカウンタモードをデータの暗号化に用いる構成となっている。図1に示すように、本発明装置1は、初期値生成回路11、擬似乱数生成回路12、及び、排他的論理和回路13を備える。更に、本発明装置1は、ページ単位でアクセスが可能な記憶装置14図示せずとデータの送受信を行い、当該記憶装置に対し、暗号化された読み出しデータの復号化処理ないし保存されるべきデータの暗号化処理を行う。尚、記憶装置14に保存されるデータの読み出し及び書き込み動作は、制御回路15図示せずにより制御され、読み出し動作では、本発明装置1は、制御回路15を介して所定の読み出し対象アドレスのデータ暗号文を受信するとそれを復号化し、平文データに変換する。一方、書き込み動作では、本発明装置1は、保存されるべきデータ平文を暗号化し、当該暗号文を記憶装置14の所定の書き込み対象アドレスへ書き込むために制御回路15に送信する。従って、本発明装置1と記憶装置との接続は、PC等の電子機器に着脱可能なメモリカードのように、電気的な接続であってもよいし、有線あるいは無線LAN経由でネットワーク接続されていても構わない。以下において、データを暗号化して記憶装置の所定のアドレスに書き込む場合の本発明装置1の動作について説明する。初期値生成回路11は、アクセスするページのページ番号nPG、及び、ページブロック番号mBLKに基づき、nPGとmBLKの関数として初期値IVnPG,mBLKを設定すると、擬似乱数生成回路12は、当該IVnPG,mBLKに基づいて、ブロック暗号のカウンタモードにより擬似乱数を生成する。当該擬似乱数のサイズは、使用されるブロック暗号のブロック長Lに等しい。また、IVnPG,mBLKが、使用されるブロック暗号のカウンタモードにおけるカウント値に相当する。ここで、当該ブロック暗号のブロック長の長さのブロック単位でデータの暗号化ないし復号化が行われるため、各ページを当該ブロック長Lの長さの複数のブロックに分割し、当該分割された各ブロックをページブロックと呼ぶ。ページ内において、分割された各ページブロックは、ページブロック番号により順序付けされ、これにより、ページ内における各ページブロックの位置が、ページブロック番号mBLKにより特定される。排他的論理和回路13は、擬似乱数生成回路12が生成した擬似乱数と平文との排他的論理和XORを取り、暗号文を出力する。当該暗号文が、ページ番号nPG、及び、ページブロック番号mBLKによって特定される記憶装置の所定のアドレスに、制御回路を介して書き込まれる。次の連続した書き込みでは、更に、初期値生成回路11は、ページブロック番号mBLKを1加算して求められる初期値IVnPG,mBLK1を設定し、擬似乱数生成回路12は、当該IVnPG,mBLK1に基づいて擬似乱数を生成する。そして、排他的論理和回路13が、当該擬似乱数と平文との排他的論理和XORを取り、暗号文を出力する。図2にページとページブロックとの関係を示す。ページサイズをNとすると、各ページにおいて、分割されたページブロックの総数Mは、M=N/Lとなる。例えばページ0からアクセスした場合、ページ0へのアクセスの間、ページブロック番号を示すカウント値が0~M-1まで順次1加算される。ページ0、ページブロック番号M-1へのアクセス後、次の連続したアクセスでは、ページブロック番号を示すカウント値がリセットされ、ページブロック番号が0に戻る代わりにページ番号を示すカウント値が1だけ加算され、ページ1に属するページブロックへのアクセスが開始される。従って、IVnPG,M=IVnPG1,0となっている。図3において、初期値を設定するための関数IVnPG,mBLKの一例を示す。図3に示す例では、初期値IVはページ番号nPGとページブロック番号mBLKを示す2進数を連接して設定される。具体的には、IVnPG,mBLK=nPGMmBLKとなっている。これにより、ページ0、ページブロック番号M-1へのアクセス後、次の連続したアクセスでは、ページ1、ページブロック番号0のアクセスを開始することになるが、この場合においても、初期値IVを1だけ加算するだけで足りる。つまり、初期値IVはこれまでの暗号文作成回数を示すカウント値と等価であり、ページをまたぐアクセスであっても、連続した書き込みでは初期値IVを順次1加算していくことで暗号文作成を継続することが可能となる。これにより、連続アクセスしてもランダムアクセスしても一意の初期値IVが設定される。更に、上述の通り、初期値IVはこれまでの暗号文作成回数を示すカウント値を示すため、初期値生成回路11の構成としては、一のカウンタが利用できる。また、書き込み途中でエラー等が生じた場合には、最初から書き込み動作をやり直す必要はなく、エラーが生じたページ番号nPGとページブロック番号mBLKに戻って、カウンタの初期値をIVnPG,mBLKにセットして暗号文の生成をやり直すことができ、エラーが生じたページ番号nPGとページブロック番号から書き込み動作をやり直すことができる。例えばメモリカードとしてのSDカードに本発明装置1を搭載し、PCパーソナルコンピュータ等で作成されたデータを暗号化して当該SDカードに保存する場合を考える。SDカードの1ページ当りのメモリサイズは512バイト4096ビットである。一方、暗号化アルゴリズムとして、ブロック長が128ビットのAESを用いるとする。従って、1ページ当り32ページブロックを有する。この場合、図4に示すように、初期値IV128ビットの設定例として、下位5ビットであるビット0~ビット4をページブロック番号に割り当て、上位ビットであるビット5~ビット127をページ番号に割り当てるとよい。第2実施形態本発明の一実施形態に係るデータ暗号化装置2以降、適宜本発明装置2と称するの構成例を図5に示す。本発明装置2では、ページ番号nPGとページブロック番号mBLKに加えて、任意のオフセット値offsetとの関数として、擬似乱数の初期値IVが、初期値生成回路16により設定される。本発明装置2における初期値IVの設定例を図6に示す。図6に示す例では、ページ番号nPG、ページブロック番号mBLKから設定される値プレ初期値に、更にオフセット値offsetを加算して初期値IVを生成している。この場合、初期値IVは、具体的にはIVnPG,mBLK,offset=nPGMmBLKoffsetとなる。このオフセット値をデータ暗号化装置1毎に変えることにより、同じ暗号鍵でも異なる擬似乱数列を生成することができ、異なる暗号文が生成される。これにより、異なるデータ暗号化装置2により制御される記憶装置間において、記憶装置内のデータのデッドコピーを防ぐことができる。図7にオフセット値offsetを入力とする初期値生成回路16の他の例を示す。図6に示す初期値生成回路16は、プレ初期値生成回路カウンタ17と排他的論理和回路18からなり、ページ番号nPG、ページブロック番号mBLKに基づきプレ初期値生成回路17により設定されるプレ初期値Pre-IVと、オフセット値offsetとの排他的論理和により初期値IVnPG,mBLK,offsetを生成する。図3において、初期値生成回路11が、初期値IVをページ番号nPGとページブロック番号mBLKの関数として設定したのと同様に、図7では、プレ初期値生成回路17が、プレ初期値Pre-IVをページ番号nPGとページブロック番号mBLKの関数として設定することで、プレ初期値IVはこれまでの暗号文作成回数を示すカウント値と等価であり、ページをまたぐアクセスであっても、連続した書き込みではプレ初期値Pre-IVを順次1加算していくことで暗号文作成を継続することが可能となる。更に、プレ初期値Pre-IVとオフセット値offsetとの排他的論理和により初期値IVを生成することで、データ暗号化装置毎にオフセット値を変えることでデータのデッドコピーを防止し、セキュリティの強度を上げることができる。以上、本発明装置1または2がデータを暗号化して記憶装置に保存する場合を詳細に説明した。暗号化して保存されたデータを復号化して読み出す場合も、暗号文と平文の関係が逆になるだけであり、同じ構成が利用できる。即ち、初期値生成回路1116がページ番号とページブロック番号に基づき暗号化時と同じ初期値IVを生成することができるため、擬似乱数生成回路12が当該暗号化時と同じ初期値IVを用いて擬似乱数を生成し、排他的論理和回路13が当該擬似乱数と暗号文との排他的論理和をとることにより平文を復元できる。以上、本発明の一実施形態について詳細に説明したが、これは本発明の好適な実施形態の一例である。本発明の実施形態はこれらに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形実施が可能である。以下に、別実施形態について説明する。1上記実施形態では、初期値IVの設定例として、上位ビットをページ番号に割り当て、下位ビットをページブロック番号に割り当てる場合を例示したが、本発明はこれに限られるものではない。例えば、逆に上位ビットをページブロック番号に割り当て、下位ビットをページ番号に割り当ててもよいし、下位の奇数ビットをページブロック番号に割り当ててもよい。或いは、ページブロック番号あるいはページ番号に相当するビットを反転させたものを初期値IVとして設定してもよい。ページ番号、及びページブロック番号の関数として初期値IVを一意に定まることのできる限りにおいて、本発明を用可能である。"