(58)【調査した分野】(Int.Cl.,DB名)
暗号化記録装置が保持する前記ブロック固有鍵の個数は、前記第二不揮発性メモリに含まれるブロックの個数以上であり、複数の前記ブロック固有鍵の各々の値は互いに異なる
請求項1記載の暗号化記録装置。
前記暗復号制御部は、前記データを暗号化して前記複数のブロックに書き込む際、前記複数のブロックに対応する前記複数のブロック固有鍵を、前記鍵管理情報から読み出して、前記データの暗号化に用いる
請求項1〜3のいずれか1項に記載の暗号化記録装置。
前記複数のブロック固有鍵のそれぞれは、(a)前記第二不揮発性メモリ内のアドレスに対応付けられており、(b)複数の前記暗号化記録装置が存在した場合、他の暗号化記録装置における前記アドレスに対応付けられた複数のブロック固有鍵とは値が異なる
請求項1〜4のいずれか1項に記載の暗号化記録装置。
前記メモリセルアレイは、前記初期状態から前記可変状態に変化させるような電気的ストレスが印加されたときに、前記初期状態から前記可変状態に変化するメモリセルと、初期状態のまま維持されるメモリセルとがランダムに発生する特性を有し、
前記複数のブロック固有鍵のそれぞれは、前記特性を利用して生成されている
請求項1〜9のいずれか1項に記載の暗号化記録装置。
【発明を実施するための形態】
【0010】
本願発明者らは、従来のメモリカード等の記録装置に関し、以下の問題が生じることを見出した。
【0011】
メモリカードには形状や仕様の違いにより様々な種類が存在するが、その中には著作権保護機能を備えたものも含まれる。この著作権保護機能を備えたメモリカードは、著作権を有するコンテンツファイルの不正コピーを防止し、安全に記録及び再生することが可能である。そのため、著作権保護機能を備えたメモリカードは、単純にデータを受け渡すための記録媒体として使用されるだけではなく、著作権を有するコンテンツファイルを取り扱うデジタルオーディオプレーヤ及びスマートフォンに使用される等、従来の記録媒体に比べ応用用途が広い。このことは、メモリカードの普及を促進する一因となっている。
【0012】
著作権保護機能を備えたメモリカードにおける著作権保護の仕組みの一例は、メモリカード内に2つの記録領域を備えることにより実現される(例えば、特許文献1参照)。
【0013】
このようなメモリカードは、秘匿領域と通常領域とを備えている。秘匿領域は、デジタルオーディオプレーヤ等のアクセス装置とメモリカードの間で互いの正当性を認証することによって初めてアクセス装置からアクセスすることが可能となる記録領域である。通常領域は、認証の成否に関わらずアクセス装置から自由にアクセスすることが可能な記録領域である。
【0014】
そして、当該メモリカードでは、通常領域に、暗号化したコンテンツファイル(以下、暗号化コンテンツファイル)を記録し、そのコンテンツファイルを復号するための鍵データ(以下、復号鍵)を秘匿領域に格納する。
【0015】
このように、メモリカード内の2つの記録領域(以下、単に「領域」と表示される場合もある。)に暗号化コンテンツファイルと復号鍵とを別々に格納することにより、互いの正当性を認証することができない不正なアクセス装置は秘匿領域に格納された復号鍵を入手できない。これにより、当該アクセス装置は、暗号化コンテンツファイルを復号できず、結果としてコンテンツファイルの使用を禁止することが可能となる。
【0016】
同様に、著作権保護の別の一例として、メモリカード内には暗号化コンテンツファイルのみを格納し、復号鍵はアクセス装置側に保持する形式も考えられる。
【0017】
この場合、アクセス装置はコンテンツファイルの再生または利用時には暗号化コンテンツファイルをメモリカードから読み出し、自装置内に保持している復号鍵を用いて復号することになる。
【0018】
そのため、暗号化コンテンツファイルを格納したメモリカードを紛失し、該当暗号化コンテンツファイルを利用する権利のない不正規なユーザが拾った場合でも、不正規なユーザが持つアクセス装置側には対応する復号鍵が存在しない。その結果、当該アクセス装置では、コンテンツファイルを再生または利用することができず、コンテンツの著作権が保護される。
【0019】
このように、一般に、暗号化コンテンツファイルは、当該暗号化コンテンツファイルを復号するための復号鍵と1対1に紐付けられて管理される。
【0020】
しかしながら、上記の技術には次のような問題点がある。
【0021】
暗号化コンテンツファイルを、対応する復号鍵と1対1に紐付けて管理する場合、コンテンツの追加及び削除時には、紐付けられた暗号化コンテンツファイルと復号鍵との組を追加、削除することにより実行されるため、管理が容易である。
【0022】
その一方で、上記の管理において、当該暗号化コンテンツファイルに格納されたデータが、全ユーザ、及び、個々のメモリカードで共通となるため、当該データはクラッキング等の不正な暗号解析の対象となり易い。
【0023】
本開示は、このような知見に基づいてなされたものであり、本願発明者らが鋭意検討した結果、セキュリティ強度の高い暗号化記録装置等についての着想を得た。
【0024】
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【0025】
なお、発明者らは、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって請求の範囲に記載の主題を限定することを意図するものではない。
【0026】
また、各図は模式図であり、必ずしも厳密に図示されたものではない。各図において、実質的に同一の構成に対しては同一の符号を付しており、重複する説明は省略または簡略化される場合がある。
【0027】
(実施の形態1)
図1は、実施の形態1における暗号化記録装置及びアクセス装置の構成を示す図である。
【0028】
図1には、本実施の形態における暗号化記録システムが有する暗号化記録装置2およびアクセス装置1それぞれの構成概要が図示されている。また、
図1では、アクセス装置1が、暗号化記録装置2内にコンテンツファイルを格納し、かつ、管理する場合が想定されている。
【0029】
本実施の形態におけるアクセス装置1は、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、ROM(Read Only Memory)13、不揮発性メモリ14、及び、インタフェース15を含む。
【0030】
ROM13にはアクセス装置1を制御するプログラムが格納されており、このプログラムはRAM12を一時記憶領域として使用し、CPU11上で動作する。
【0031】
インタフェース15は、暗号化記録装置2との接続部であり、例えば暗号化記録装置2がメモリカードの場合には、メモリカードスロット、及び、メモリカードへのアクセスコマンドを発行するコントローラLSI等に相当する。
【0032】
なお、SATA(Serial ATA(Advanced Technology Attachment))接続の内蔵ハードディスク等の機器内蔵デバイスが暗号化記録装置2として採用されてもよい。その場合、インタフェース15はSATAを制御するコントローラLSI等に相当する。すなわち、暗号化記録装置2はアクセス装置1の内蔵デバイスおよび外部デバイスのいずれの形態をとっても構わない。
【0033】
不揮発性メモリ14は、アクセス装置1内に存在する不揮発性メモリであり、フラッシュメモリ、ハードディスク、またはSSD等、不揮発に情報を保持できる情報記録媒体である。不揮発性メモリ14には、アクセス装置1が管理する種々の情報が格納される。
【0034】
本実施の形態では、不揮発性メモリ14に、暗号化コンテンツファイルと暗号化コンテンツファイルを復号するための鍵(以下、コンテンツ復号鍵)との組み合わせを管理するパスワード管理テーブル141が格納される。
【0035】
なお、コンテンツ復号鍵は、データ(本実施の形態における暗号化コンテンツファイル)に紐付けられた対応情報の一例である。また、パスワード管理テーブル141は、対応情報管理テーブルの一例である。
【0036】
ROM13は、暗号化コンテンツファイルを管理するアクセス制御部131を含む。具体的には、ROM13に格納されたプログラムがCPU11によって実行されることで、本実施の形態におけるアクセス制御部131の処理が実現される。
【0037】
本実施の形態におけるアクセス装置1は、アクセス制御部131がパスワード管理テーブル141を用いて、暗号化記録装置2に格納した暗号化コンテンツファイルを制御する。パスワード管理テーブル141の構成および制御方法の詳細については後述する。
【0038】
図1に示す暗号化記録装置2は、データ(本実施の形態における暗号化コンテンツファイル)を暗号化し、格納する記録装置である。暗号化記録装置2は、CPU21、RAM22、ROM23、インタフェース25、第一不揮発性メモリ24、及び、第二不揮発性メモリ26を含む。
【0039】
CPU21、RAM22、及びROM23の基本的な機能はアクセス装置1で説明したものとほぼ同様のものであるため、詳細な説明は割愛する。
【0040】
インタフェース25はアクセス装置1との接続部であり、例えば暗号化記録装置2がメモリカードの場合には、メモリカードへの信号入出力および電源供給等のための各種金属端子に相当する。
【0041】
第二不揮発性メモリ26は、FAT(File Allocation Table)等のファイルシステムにより管理されており、アクセス装置1が各種データと共に暗号化コンテンツファイルを暗号化データ261として格納する領域である。
【0042】
また、第一不揮発性メモリ24はアクセス装置1からは直接アクセスできない領域であり、本実施の形態の特徴的な構成要素である鍵管理テーブル241が格納される。
【0043】
ROM23は暗復号制御部231を含む。具体的には、ROM23に格納されたプログラムがCPU21によって実行されることで、本実施の形態における暗復号制御部231の処理が実現される。
【0044】
暗復号制御部231は、第二不揮発性メモリ26に含まれる領域をブロック単位で管理し、かつ、各々のブロックとブロック固有鍵との対応関係を第一不揮発性メモリ24に格納された鍵管理テーブル241で管理する。
【0045】
また、暗復号制御部231は、データの書き込み指示を外部のアクセス装置1から受信する際、当該データおよび当該データに紐付けられた対応情報を受信し、第二不揮発性メモリ26に含まれる1以上のブロックに対応付けられた1以上のブロック固有鍵のそれぞれを用いて当該データを暗号化して、当該1以上のブロックに書き込む。
【0046】
暗復号制御部231はさらに、当該対応情報が当該1以上のブロック固有鍵と対応付けられるように、当該対応情報を鍵管理テーブル241に格納する。
【0047】
より具体的には、本実施の形態では、暗復号制御部231が鍵管理テーブル241を用いて、第二不揮発性メモリ26内の領域について、ブロック単位で暗号化および復号の制御(暗復号制御)を行い、且つ、データをファイル単位で暗復号制御する。
【0048】
これにより、コンテンツファイルをファイル単位で暗復号制御するという利便性を維持しつつ、コンテンツファイルに含まれるデータがユーザ毎、及び個々の記録装置毎に異なるデータとして保持され得る。つまり、本開示における技術によれば、セキュリティ強度の高い暗号化記録装置(システム)を提供することができる。
【0049】
実施の形態1における暗号化記録システムでは、上述のように、コンテンツを暗復号する単位としてファイル単位の制御を行う。そのため、実施の形態1の詳細を説明する前に、ファイルシステムの構造について説明する。
【0050】
ここでは一例としてFATファイルシステムの説明を行うが、本実施の形態1に説明される特徴的な事項は、ファイルシステムの種別に限定されない。当該特徴的な事項は、UDF(Universal Disk Format)またはNTFS(NT File System)等、その他のファイルシステムにも適用することが可能である。
【0051】
図2にFATファイルシステムの構成を示す。FATファイルシステムではファイルアロケーションテーブル(FAT)内の管理単位のビット幅の違いにより、FAT12、FAT16、FAT32等の種類が存在する。しかし、これら異なる種類において、ファイルアロケーションテーブルによる領域管理方法はほぼ同じであり、以下ではFAT16を例に説明する。
【0052】
図2に示すようにアドレス空間の先頭には、領域割り当て単位及びファイルシステムが管理する領域の大きさ等、ファイルシステムの管理情報が格納される領域であるファイルシステム管理情報領域301が存在する。このファイルシステム管理情報領域301には、マスターブートレコード・パーティションテーブル303、パーティションブートセクタ304、FAT(305、306)、および、ルートディレクトリエントリ307と呼ばれる、ファイルシステムの各種の管理情報が含まれている。つまり、ファイルシステム管理情報領域301には、ユーザデータ領域302を管理するために必要な情報が各々格納されている。
【0053】
マスターブートレコード・パーティションテーブル303は、ファイルシステムが管理するアドレス空間上の領域を複数のパーティションと呼ばれる領域に分割して管理するための情報が格納される領域である。
【0054】
パーティションブートセクタ304は、パーティション内の領域管理単位の大きさなど、1つのパーティション内の管理情報が格納される領域である。
【0055】
FAT(305、306)は、ファイルに含まれるデータの格納位置に関する情報が格納される領域である。通常、同じ情報を持つ2つのFAT(305、306)が存在し、一方のFAT(305および306の一方)が破損したとしても他方のFAT(305および306の他方)によりファイルにアクセスできるよう二重化されている。
【0056】
ルートディレクトリエントリ307は、ルートディレクトリ直下に存在するファイル及びディレクトリの情報(ディレクトリエントリ)が格納される領域である。
【0057】
またFATファイルシステムでは、このファイルシステム管理情報領域301に引き続いてファイル本体のデータなどを格納するユーザデータ領域302が存在する。
【0058】
ユーザデータ領域302は、512バイトから32キロバイト(KB)程度の大きさを持つクラスタと呼ばれる管理単位毎に分割管理されている。各クラスタにはファイルに含まれるデータが格納されている。
【0059】
多くのデータを含むファイルは、複数のクラスタに跨って格納されており、各クラスタ間の繋がりは、FAT(305、306)に格納されたリンク情報により管理されている。また、ルートディレクトリ直下のディレクトリ内に存在するファイルおよびサブディレクトリの情報(ディレクトリエントリ)は、例えば、このユーザデータ領域302の一部に格納される。
【0060】
図3はFAT16のディレクトリエントリの構成を示す図である。1つのファイル及びディレクトリ毎に32バイトのディレクトリエントリ308が割り当てられ、ディレクトリエントリ308には、ファイル及びディレクトリに関する情報が格納されている。すなわち、1つのファイルまたはディレクトリが追加される度に32バイトのディレクトリエントリ308の情報が新規に作成され、ルートディレクトリエントリ307の領域、あるいはユーザデータ領域302に記録される。
【0061】
ディレクトリエントリ308の先頭8バイトにはファイルまたはディレクトリの名称が格納される。続く3バイトには拡張子が格納される。続く1バイトにはファイルまたはディレクトリの種別を識別するフラグ、または、ファイルまたはディレクトリがリードオンリーか否かを識別するフラグ等の属性情報が格納される。
【0062】
また、ディレクトリエントリ308には、ファイルまたはディレクトリの最終更新日時の情報、及び、ファイルまたはディレクトリデータの実体が格納されているクラスタの開始位置を示す開始クラスタ番号及びファイルサイズのバイト数等が格納される。
【0063】
このようにディレクトリエントリ308では、ファイルの先頭データを格納したクラスタの位置に関する情報しか保持しない。そのため、ファイルデータ(ファイルに含まれるデータ)が複数クラスタに跨って格納される場合には、その位置情報はFAT(305、306)に保持される。すなわち、ファイルを更新する場合にはファイルデータを書き込むと共に、ディレクトリエントリ308及びFAT(305、306)の情報も書き込む必要がある。
【0064】
図4はFAT16における1つのファイルの格納例を示す図である。
図4の(a)はディレクトリエントリ308の一例を示しており、この例では“FILE1.TXT”という名称の60000バイトのサイズを持つファイルが格納されていることを示している。また、このファイルのデータ本体がクラスタ番号“2”から始まる領域に格納されていることを示している。
【0065】
図4の(b)はFAT16におけるFAT(305、306)の一例を示している。FAT(305、306)先頭の4バイトはシグネチャとして固定の値が格納されている。先頭の4バイト以外の領域は、16ビット単位で各々ユーザデータ領域302内のクラスタに対応付けされている。
【0066】
例えば、FAT(305、306)先頭のシグネチャ直後の16ビットは、クラスタ番号“2”に、その直後の16ビットはクラスタ番号“3”に対応付けされており、以下昇順にクラスタ番号に対応付けされている。
【0067】
各々の16ビットに格納される値は、対応付けされたクラスタ番号の状態を示している。例えば“0x0000”の場合には、対応付けされたクラスタ番号の領域が空きクラスタであることを意味し、“0x0002”〜“0xFFF6”の場合には、対応付けされたクラスタ番号の領域にリンクされた次の領域のクラスタ番号を意味する。また、16ビットの領域に格納される値が“0xFFF8”〜“0xFFFF”の場合には、対応付けされたクラスタ番号の領域がリンク終端であることを意味する。
【0068】
すなわち
図4の(b)の例では、
図4の(c)に示すように、クラスタ番号“2”、“3”、“4”、“5”の領域が“FILE1.TXT”のデータ本体を格納していることを示している。
【0069】
このようにFATファイルシステムでは、ファイル名およびファイルサイズ等、ファイルに関する情報をディレクトリエントリ308に格納して管理すると共に、ファイルデータの格納先はFAT(305、306)で管理する。すなわち、ファイルデータを格納する処理は、FAT(305、306)により格納先領域を決定し、決定した領域に対してアドレスとサイズとを指定してデータの書き込み指示を情報記録装置に発行することにより実施される。このファイルデータ格納処理は、FATファイルシステムに限らず、その他のファイルシステムでも同様に実施される。
【0070】
実施の形態1では、暗号化コンテンツファイルのデータ格納先の管理は従来と同様にファイルシステムにより実施する。更に暗号化コンテンツファイルを復号するためのコンテンツ復号鍵は暗号化コンテンツファイルと1対1に紐付けて、アクセス装置1内で管理する。
【0071】
続いて、
図5を用いて実施の形態1におけるパスワード管理テーブル141について説明する。
【0072】
パスワード管理テーブル141は、暗号化コンテンツファイルと、コンテンツ復号鍵との対応を管理するテーブルであり、アクセス装置1の不揮発性メモリ14内に格納される。パスワード管理テーブル141には、ファイル名(暗号化コンテンツファイルの名称)と、対応するパスワード(コンテンツ復号鍵の一種)のリストが格納される。
【0073】
例えば、
図5の例では、“/AUDIO/TITLE1.MP3”という名称の暗号化コンテンツファイルを復号するための鍵として、パスワード“PASSWORD1”が紐付けて管理されている。本実施の形態では、ASCIIコードから構成されるパスワードにより認証して暗号化コンテンツファイルを復号する方式を例として説明する。
【0074】
このように、アクセス装置1では、1つの暗号化コンテンツファイルに対して、1つのパスワード(コンテンツ復号鍵)を管理する。これにより、暗号化コンテンツファイルの管理をシンプルにし、容易に暗号化コンテンツファイルの追加および削除を行うことが可能となる。
【0075】
続いて、
図6Aおよび
図6Bを用いて実施の形態1における鍵管理テーブル241について説明する。
【0076】
鍵管理テーブル241は、鍵管理情報の一例であり、本実施の形態では、アクセス装置1から入力されるパスワードとアドレス、及びそのアドレスに格納したデータを暗復号する際に使用した鍵であるブロック固有鍵の対応を管理するテーブルである。
【0077】
鍵管理テーブル241は、暗号化記録装置2内の第一不揮発性メモリ24に格納される。本実施の形態では、暗号化コンテンツファイルをアクセス装置1が暗号化記録装置2内に記録する際、暗号化記録装置2内にある第二不揮発性メモリ26に、暗号化コンテンツファイルのデータが格納される(
図6B参照)。
【0078】
その際、第二不揮発性メモリ26内の領域はブロック単位(本実施の形態では固定長ブロック単位)に分割して管理され、各々のブロック内のデータを互いに異なる固有の鍵(ブロック固有鍵)で暗復号できるように管理される。
【0079】
鍵管理テーブル241には、各々のブロックを暗復号するために使用するブロック固有鍵と、対応するアドレスとの組が記録される。例えば、
図6Aにおいてアドレス“0x0000”に存在するブロックの暗復号には、ブロック固有鍵“0x3FD2150B”が使用される。同様にアドレス“0x0001”に存在するブロックの暗復号には、ブロック固有鍵“0xBDF34D3A”が使用される。なお、「ブロックの暗復号」とは、当該ブロックに格納されたデータの暗号化または/および復号を意味する。
【0080】
更に鍵管理テーブル241では、各々のブロックと、パスワードとの対応も管理する。パスワードはアクセス装置1が暗号化コンテンツファイルのデータを格納する際に指定する情報であり、パスワード管理テーブル141に格納される情報と同一のものである。
【0081】
続いて、
図7を用いて実施の形態1における暗号化コンテンツファイルの格納処理手順について説明する。ここでは、アクセス装置1が外部のサーバ等から暗号化コンテンツファイルを入手し、当該暗号化コンテンツファイルを、暗号化記録装置2に格納するまでの処理について説明する。
【0082】
まず、アクセス装置1は、外部のサーバ等から暗号化コンテンツファイルと、暗号化コンテンツファイルを復号するためのパスワード(コンテンツ復号鍵)を入手する(S701)。この処理は、例えばスマートフォンが音楽コンテンツ配信サイトに接続してコンテンツの購入処理を行い、スマートフォンにコンテンツをダウンロードする処理に相当する。
【0083】
次に、アクセス装置1は、FAT(305、306)を参照して空き領域を検索し、暗号化コンテンツファイルを格納する領域を決定する(S702)。
【0084】
次に、アクセス装置1は、格納先のアドレスとサイズを指定すると共に、S701で取得したパスワードを指定して、暗号化コンテンツファイルのデータを、S702で決定した第二不揮発性メモリ26上の空き領域(1以上の空きブロック)に書き込む(S703)。この書き込み処理の詳細については後述する。
【0085】
次に、アクセス装置1は、S703で格納されたブロックごとのデータが、当該暗号化コンテンツファイルを構成するように、FAT(305、306)、ディレクトリエントリ308等のファイルシステム管理情報を更新し、第二不揮発性メモリ26に書き込む(S704)。
【0086】
最後に、アクセス装置1は、パスワード管理テーブル141に、格納した暗号化コンテンツファイルの名称と、パスワードとを登録する(S705)。
【0087】
このように、本実施の形態では、アクセス装置1が暗号化コンテンツファイルを暗号化記録装置2に格納する際、パスワードを指定して記録すると共に、アクセス装置1内のパスワード管理テーブル141に情報(ファイル名およびパスワード)を登録して管理する。
【0088】
続いて、
図8を用いて、実施の形態1における暗号化データ記録処理の一例について説明する。本処理は、
図7におけるS703の処理に相当する。
【0089】
S703で説明したように、アクセス装置1は暗号化コンテンツファイルのデータを第二不揮発性メモリ26に記録する際、格納先のアドレスとサイズと共に、パスワードを指定する。なお、この記録の際に、暗号化コンテンツファイルのデータは、暗復号制御部231により更に暗号化され、暗号化データとして第二不揮発性メモリ26に記録される。
【0090】
図8の例では、この書き込み指示の一例として、“Write(Addr=0x1000、Size=1、PW=“PASSWORD4”)”のように指示することを示している。この例では、“0x1000”のアドレスから始まる領域にサイズ“1”のデータを記録し、このデータにはパスワード“PASSWORD4”が紐付けられることを意味する。
【0091】
すなわちこの記録では、
図5のパスワード管理テーブル141に格納されている“/AUDIO/TITLE2.MP3”のデータを記録する例を示している。同様に、
図8の例ではこのデータの続きとして“0x1004”のアドレスから始まる領域にサイズ“2”のデータを記録し、更に“0x1007”のアドレスから始まる領域にサイズ“1”のデータを記録している。この際、いずれのデータも“/AUDIO/TITLE2.MP3”のデータであるため、パスワードは同じ“PASSWORD4”が指定されている。
【0092】
なお、サイズ“n”のデータとは、n個のブロックに対応するサイズのデータを意味する。
【0093】
この一連の記録処理により、当該暗号化コンテンツファイルのデータは、
図6Bに示す第二不揮発性メモリ26内のアドレス“0x1000”、“0x1004”、“0x1005”、及び“0x1007”の領域に、暗号化データ#4_1から暗号化データ#4_4として記録される。
【0094】
この際、
図6Aの鍵管理テーブル241内の各々のアドレスには同じパスワード“PASSWORD4”が格納される。更に、
図6Aの鍵管理テーブル241内の各々のアドレスに紐付けられているブロック固有鍵を用いて暗号化データ#4_1から暗号化データ#4_4のデータは暗号化されている。
【0095】
すなわち、暗号化データ#4_1はブロック固有鍵“0x103433DA”により、暗号化データ#4_2はブロック固有鍵“0x002FD7DC”により暗号化されており、以下同様に暗号化されている。
【0096】
これにより、一つの暗号化コンテンツファイル“/AUDIO/TITLE2.MP3”に含まれるデータは、各々異なるブロック固有鍵により暗号化され、第二不揮発性メモリ26に格納されることになる。
【0097】
そのため、例えば、同一の2つの暗号化コンテンツファイル(同一の2つのデータ)が、暗号化記録装置2に格納される場合、格納されるアドレス毎に異なるブロック暗号鍵が使用されるため、これら2つのデータの暗号結果が異なることになる。
【0098】
更に、ブロック固有鍵を、暗号化記録装置2毎に変更することにより、以下の効果が奏される。例えば、2つの暗号化記録装置2において、同じアドレスに同じ暗号化コンテンツファイル(同一のデータ)が格納された場合でも、2つの暗号化記録装置2それぞれの暗号結果が異なるようにすることができる。これにより、セキュリティ強度を更に高めることが可能となる。
【0099】
続いて、
図8を用いて、実施の形態1におけるファイルシステム管理情報更新処理の一例について説明する。本処理は、
図7におけるS704の処理に相当する。
【0100】
S704の処理では、S703の処理とは異なり、データ記録の際に有効なパスワードを指定するのではなく、無効なパスワードを指定する。
【0101】
図8の“FS管理情報更新(平文データ記録)”と記載された箇所では、ファイルシステム管理情報更新のためのWriteコマンドとして、パスワードの部分に“NULL”が記載されており、これは、無効なパスワードが指定されていることを意味する。
【0102】
無効なパスワードとしては、有効なASCII文字に含まれない“0x00”または“0xFF”等の値を指定してもよいし、パスワードの有効性を示す引数をパスワード引数とは別に設けて指定するようにしてもよい。
【0103】
無効なパスワードが指定されてデータが記録される場合、暗号化記録装置2は、入力されたデータを暗号化せずそのまま第二不揮発性メモリ26に記録する。
図6Bの例では、アドレス“0x0000”及び“0x0001”の領域に記録されたデータが暗号化されていない“平文データ”であり、鍵管理テーブル241にはパスワードが無効であることを示す“−”が格納されている。
【0104】
これにより、ファイルシステム管理情報は暗号化されずに第二不揮発性メモリ26に記録されるため、パスワードを指定することなく、全てのアクセス装置により読み出すことができ、正しくファイルシステム構造を解釈することが可能となる。
【0105】
続いて、
図8を用いて実施の形態1における暗号化データ読み出し処理の一例について説明する。
【0106】
図8の“暗号化データ読み出し(正常)”と記載された箇所では、アクセス装置1は、“暗号化データ記録”と記載された箇所と同じアドレス、サイズ、パスワードを引数としてデータの読み出し(Read)を指示している。
【0107】
暗号化記録装置2が読み出し指示を受信すると、暗復号制御部231は、鍵管理テーブル241を参照し、指定されたパスワードが鍵管理テーブル241内に格納されている情報(パスワード)と一致するか確認する。これらが一致する場合、暗復号制御部231は、第二不揮発性メモリ26内の該当アドレスから暗号化データを読み出し、鍵管理テーブル241に格納されているブロック固有鍵を用いて復号する。復号されたデータは、アクセス装置1に出力される。
【0108】
また、
図8の“暗号化データ読み出し(異常)”と記載された箇所のように、誤ったパスワードを指定した場合には、暗号化記録装置2はエラーを返してデータを出力しない。あるいは“0x00”もしくは“0xFF”等の固定データ、または、誤ったデータを返す等、正常に復号されたデータ以外のデータを出力する。
【0109】
以上説明したように、実施の形態1では、アクセス装置1が暗号化記録装置2に暗号化コンテンツファイルのデータを記録する際にパスワードを指定して記録すると共に、暗号化コンテンツファイルとパスワードの対応をパスワード管理テーブル141で管理する。
【0110】
更に暗号化記録装置2は、第二不揮発性メモリ26にデータを記録する際に、ブロック毎のアドレスに紐付いたブロック固有鍵を用いて暗号化して記録すると共に、アドレス、ブロック固有鍵、およびパスワードの対応を鍵管理テーブル241で管理する。
【0111】
これにより、アクセス装置1では複数の暗号化コンテンツファイルのそれぞれを、当該暗号化コンテンツファイルに対応する1つのパスワードで管理することができ、複数の暗号化コンテンツファイルの管理を容易化することができる。例えば、アクセス装置1では。暗号化コンテンツファイルの追加および削除を容易に実施することが可能となる。更に暗号化コンテンツファイルのデータは格納されるアドレス毎、及び、暗号化記録装置2毎に異なる結果となるため、セキュリティ強度を高めることが可能となる。
【0112】
なお、本出願に開示する技術について、上記の実施の形態1に基づいて説明してきたが、本開示における技術は上記の実施の形態1には限定されない。本開示における技術の趣旨を逸脱しない範囲で変更することができる。上記実施の形態1で記載された数値は一例であり、他の値を使用してもよい。
【0113】
また、上記実施の形態1では、暗号化コンテンツファイルはASCII形式のパスワードにより暗号化されている例について説明したが、必ずしもこの方式をとる必要はなく、その他の方式を用いて管理してもよい。
【0114】
例えば、ASCII形式のパスワードの代わりにバイナリ形式の秘密鍵を用いて暗号化コンテンツを暗号化する方式を用いてもよい。暗号化アルゴリズムも特定の方式に限定される必要はなく、3DES(Triple Data Encryption Standard)またはAES(Advanced Encryption Standard)等の一般に使用されている暗号化方式のいずれを用いてもよい。
【0115】
また、パスワードまたは秘密鍵のサイズ(長さ)にも制限はなく、任意の長さを使用して構わない。このことは、暗号化コンテンツファイルのパスワードにのみ適用されるのではなく、鍵管理テーブル241に格納されるブロック固有鍵にも適用される。すなわち、上記実施の形態1ではブロック固有鍵はバイナリ形式の4バイトの鍵である場合を例として説明したが、暗号化アルゴリズムおよび鍵長は任意のものを使用しても構わない。同様にASCII形式のパスワード等、その他の形式がブロック固有鍵に適用されても構わない。
【0116】
また、第二不揮発性メモリ26内の領域は、固定長ブロック単位で管理されるとした。しかしながら、第二不揮発性メモリ26内の領域が可変長ブロック単位で管理されてもよい。例えば、1つのデータが、K個(Kは1以上の可変の整数)のブロックに格納され、かつ、当該K個のブロックの開始アドレスおよびサイズ情報(長さ、ブロックの個数、または、終端アドレスなど)と、1つのブロック固有鍵とが鍵管理テーブル241において紐付けられていてもよい。
【0117】
また、上記実施の形態1では、アクセス装置1および暗号化記録装置2が扱うアドレスを単一の“アドレス”として表現したが、論理アドレスと物理アドレスの2種類のアドレスを用いてデータを管理してもよい。
【0118】
例えば、第二不揮発性メモリ26がNAND型フラッシュメモリであった場合、NAND型フラッシュメモリはデータを記録する際に上書きが出来ず、一旦消去処理を実施してからデータを記録する必要がある。そのため、例えば
図9に示すような、論理アドレスと物理アドレスとを相互に変換するアドレス変換テーブル401を用いてアドレス変換する必要がある。
【0119】
この場合、アクセス装置1はデータの格納位置を論理アドレスで管理し、第二不揮発性メモリ26上の領域は物理アドレスで管理することとなる。そのためアクセス装置1がWriteコマンドで指定するアドレス(Addr)は論理アドレスを意味し、暗号化記録装置2は、アドレス変換テーブル401を用いて当該論理アドレスを物理アドレスに変換する。
【0120】
例えば
図9の例では、論理アドレス“0x1000”は物理アドレス“0x1006”と対応付けられている。そのため、アクセス装置1が論理アドレス“0x1000に”書き込みを指示したデータは、実際には第二不揮発性メモリ26上の物理アドレス“0x1006”の領域に格納されることとなる。
【0121】
このように、暗号化記録装置2が、アドレス変換テーブル401を用いたアドレス変換処理を行うことにより、各物理アドレスに使用されるブロック固有鍵が、物理アドレスの論理アドレスに対する割り当てが変更される度に変化する。これにより、更にセキュリティ強度が高くなる。
【0122】
また、アドレス変換テーブル401を用いたアドレス変換処理を行うことにより、第一不揮発性メモリ24と第二不揮発性メモリ26を、一つの不揮発性メモリで構成することも可能となる。
【0123】
例えば、第二不揮発性メモリ26として使用する領域(第二領域)のみを論理アドレス空間としてアクセス装置1に開示し、第一不揮発性メモリ24として使用する領域(第一領域)を物理アドレスのみで管理する。これにより、第一及び第二領域を一つの不揮発性メモリ上で管理しつつ、鍵管理テーブル241をアクセス装置1がアクセスできないようにして秘匿することが可能となる。
【0124】
また、暗号化コンテンツファイルを第二不揮発性メモリ26から削除する際、アクセス装置1が暗号化記録装置2に対してパスワードのクリアを指示することにより、瞬時に暗号化データにアクセスできなくするようにしてもよい。
【0125】
例えば
図10に示す鍵管理テーブル241のように、アクセス装置1がパスワード“PASSWORD4”のクリアを指示した場合、鍵管理テーブル241上の“PASSWORD4”に該当するパスワードが全てクリアされ、“Deleted”の状態となる(アドレス“0x1000”、“0x1004”、“0x1005”、及び“0x1007”に対応するパスワード)。
【0126】
この“Deleted”に対応するアドレスに対する読み出し指示がアクセス装置1から出されても、暗号化記録装置2はデータを出力しない(あるいは無効データを出力する)。これにより、以後、該当暗号化データの読み出しができなくなり、アクセス装置1にとっては瞬時に暗号化データが削除されたことと同様の効果を生じさせることが可能となる。
【0127】
更に、上記パスワードをクリアする際、アドレスとブロック固有鍵との対応関係を変化させるようにしてもよい。例えば、アドレスとブロック固有鍵との対応関係を変化させるために、クリアが指定されたパスワードに該当する2つ以上のアドレスに紐付くブロック固有鍵を相互に交換することにより実現してもよい。
【0128】
しかしながら、この方法ではクリアが指定されたパスワードに該当するアドレスの数が少ないと十分にブロック固有鍵が交換されない可能性がある。そのため、例えば
図11に示すように、どのアドレスとも紐付いていない複数のブロック固有鍵を管理する予備ブロック固有鍵テーブル402を設けてもよい。つまり、上述のブロック固有鍵の交換に際し、鍵管理テーブル241に登録されたブロック固有鍵と、この予備ブロック固有鍵テーブル402内のブロック固有鍵とを交換するようにしてもよい。
【0129】
すなわち、暗号化記録装置2が保持するブロック固有鍵の個数は、第二不揮発性メモリ26に含まれるブロックの個数以上であり、複数のブロック固有鍵の各々の値は互いに異なる。これにより、例えば
図11に示すような、鍵管理テーブル241と、予備ブロック固有鍵テーブル402との間における、ブロック固有鍵の交換が可能となる。なお、予備ブロック固有鍵テーブル402は、第一不揮発性メモリ24等の、外部から秘匿された領域に保持される。
【0130】
また、上記実施の形態1では、コンテンツファイルはパスワードで暗号化された上に、更にブロック固有鍵で暗号化され、第二不揮発性メモリ26に格納される例について説明した。しかしながら、暗号化記録装置2に格納されるデータはこのように二重暗号化される必要はなく、ブロック固有鍵のみで暗号化してもよい。
【0131】
例えば、パスワードとして、暗号化コンテンツファイルを復号する鍵となる情報ではなく、平文のコンテンツファイルと1対1に紐付けられた単なるIDとしてアクセス装置1で管理されてもよい。つまり、データを識別する識別子が、当該データ紐付けられた対応情報として扱われてもよい。この場合、アクセス装置1は、平文のコンテンツファイルを、IDとしてのパスワードを指定して暗号化記録装置2に入力し、記録させるようにしてもよい。
【0132】
この場合、当該平文のコンテンツファイルを、暗号化記録装置2から読み出すためには当該IDが必要である(
図8の“暗号化データ読み出し(正常(異常))”を参照)。従って、当該IDをパスワード管理テーブル141に保持するアクセス装置1など、正当な装置のみが当該平文のコンテンツファイルを正常に読み出すこと(1以上のブロック固有鍵で復号されたデータを取得すること)ができる。
【0133】
また、例えば、指紋認証などの他の手法により、暗号化記録装置2に格納された暗号化データ(1以上のブロック固有鍵で暗号化されたデータ)を読み出そうとするユーザまたは装置の認証を行ってもよい。
【0134】
つまり、暗号化記録装置2に格納されるデータに紐付けられる対応情報は、当該データを特定(識別)する情報であればよく、当該データが既に暗号化されたデータである場合におけるパスワード(暗号/復号鍵)である必要はない。
【0135】
また、パスワードとしてユーザIDが採用されてもよい。すなわち、暗号化コンテンツファイルは全ユーザ共通の鍵で暗号化されている必要はなく、例えば、各ユーザに固有のユーザIDにより暗号化されたファイルであってもよい。
【0136】
また、暗号化記録装置2内にセキュアクロックを設け、鍵管理テーブル241内のパスワードを一定の期間で自動的に暗号化記録装置2がクリアするようにしてもよい。このようにすることで、レンタルコンテンツ等、一定期間で権利が消失する暗号化コンテンツファイルを容易に扱うことが可能となる。
【0137】
また、ブロック固有鍵は、第二不揮発性メモリ26内の、データの記憶に使用される領域の全てのブロック(アドレス)について、予め決定されていてもよく、データの記憶の時点で決定されてもよい。
【0138】
つまり、第二不揮発性メモリ26にデータが書き込まれるタイミングで、当該データが格納される1以上のブロックそれぞれについてブロック固有鍵が決定されてもよい。この場合、当該データの書き込みの際に、例えば互いに異なる複数のブロック固有鍵を含むマスター情報から、1以上のブロック固有鍵が読み出されて鍵管理テーブル241に登録されてもよい。なお、マスター情報は例えば第一不揮発性メモリ24等の、外部から秘匿された領域に保持される。
【0139】
また、マスター情報から読み出されてデータの暗号化に用いられたブロック固有鍵が、暗号化されたデータが格納されるブロックのアドレスに対応するブロック固有鍵として、鍵管理テーブル241に登録されてもよい。
【0140】
また、アドレス、ブロック固有鍵、およびパスワードの対応付けは、鍵管理テーブル241のような単一のテーブルではなく、複数のテーブル(複数の情報)によって実現されてもよい。
【0141】
例えば、アドレスとブロック固有鍵との対応関係を示す第一情報と、アドレスとファイル名との対応関係を示す第二情報と、ファイル名とパスワードとの対応関係を示す第三情報(例えば
図5に示すパスワード管理テーブル141)とによって、あるファイル名に対応するアドレス、ブロック固有鍵、およびパスワードのいずれかが特定されてもよい。
【0142】
この場合、第一情報、第二情報および第三情報の組み合わせにより、鍵管理情報(本実施の形態における鍵管理テーブル241に相当する情報)が構成される。
【0143】
ここで、例えば、ファイルシステムを暗号化記録装置2側で管理する場合を想定する。この場合、アクセス装置1からコンテンツファイルと書き込み指示とを受信したときに、暗号化記録装置2が、当該コンテンツファイルのデータを格納するアドレスを決定し、当該アドレスとファイル名との対応関係を示す第二情報を保持する。
【0144】
この構成において、アクセス装置1が、暗号化記録装置2から、コンテンツファイルの読み出しを行う場合、例えば、暗号化記録装置2では、第二情報が参照されることで、当該ファイル名に対応するアドレスが特定される。また、第一情報が参照されることで、当該アドレスに対応するブロック固有鍵が特定され、第三情報が参照されることで、当該アドレスに対応するパスワードが特定される。その結果、アクセス装置1から送信されるパスワードが、第三情報によって特定されたパスワードと一致した場合、第一情報によって特定されたブロック固有鍵で復号されたコンテンツファイルを、アクセス装置1に出力することができる。
【0145】
(実施の形態2)
実施の形態2として、第一不揮発性メモリ24として、ReRAM等の抵抗変化型メモリを使用する形態について説明する。
【0146】
上記実施の形態1で説明したように、第一不揮発性メモリ24には鍵管理テーブル241が格納される。鍵管理テーブル241の特徴として、第1に複数のブロック固有鍵が格納される点、第2に鍵管理テーブル241内におけるブロック固有鍵のランダム性の高く、かつ、暗号化記録装置2毎に値が異なる点、第3にアクセス装置1からブロック固有鍵が読み出せない点が挙げられる。
【0147】
抵抗変化型メモリはこれらの特徴全てを含むため、第一不揮発性メモリ24に使用する媒体として適している。以下、実施の形態2で使用する抵抗変化型メモリの詳細について、図面を用いて説明する。
【0148】
[装置構成]
図12は、実施の形態2における抵抗変化型メモリの概略構成の一例を示すブロック図である。
図13は、実施の形態2における抵抗変化型メモリが備えるメモリセルの概略構成の一例を示す断面図である。
図14は、実施の形態2における抵抗変化型メモリが備えるメモリセルの抵抗値範囲の一例を示すグラフである。
【0149】
なお、実施の形態2における暗号化記録システムの基本的な構成は、上記実施の形態1と同じである(
図1参照)。暗号化記録装置2が有する第一不揮発性メモリ24として抵抗変化型メモリ501が採用されている点に、実施の形態2の特徴を有する。
【0150】
図12に示す例では、実施の形態2における抵抗変化型メモリ501は、メモリセルアレイ502と、書き込み回路504と、読み出し回路505とを備えている。なお、書き込み回路504および読み出し回路505は、両方が省略されてもよいし、いずれか一方が省略されてもよい。
【0151】
メモリセルアレイ502は、複数のメモリセル503がアレイ状に配置された構成を有する。
【0152】
図13に示す例では、メモリセル503が備える抵抗変化素子510が、下地層514と、第1電極513と、抵抗変化層512と、第2電極511とを備えている。
【0153】
図14に例示するように、メモリセル503は、少なくとも可変状態と初期状態の2つの状態を備える。可変状態とは、互いに異なる複数の電気的信号が印加されることによって、抵抗値が複数の可変抵抗範囲の間を可逆的に遷移できる状態を意味する。また、初期状態とは、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある状態を意味する。
【0154】
そして、初期状態にあるメモリセル503は、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならない。例えば、フォーミングストレスは累積的なストレスであってもよい。その場合、ストレスの累積量が所定量を超えたときに、初期状態から可変状態に遷移する。
【0155】
メモリセルアレイ502が備える複数のメモリセル503は、可変状態のメモリセル503と、初期状態のメモリセルメモリセルと、を含む。本実施の形態のメモリセルアレイ502では、各メモリセル503が初期状態にあるか可変状態にあるかの違いを利用してデータを記録する。
【0156】
メモリセル503は、上述のように、製造後、フォーミングをしなければ抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する状態とならない。フォーミングとは、所定の電気的ストレスをメモリセルに印加して、メモリセルの抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する状態へと、メモリセルを変化させることを意味する。フォーミングのために印加される電気的ストレスは、例えば、所定の電圧と時間幅を有する電気的パルスである場合もあるし、複数の電気的パルスを組み合わせたものである場合もある。
【0157】
製造直後のメモリセル503の抵抗値が、初期抵抗値範囲に入る一方で可変抵抗値範囲に入ることがないように、初期抵抗値範囲および可変抵抗値範囲は設定されうる。可変状態に変化した後のメモリセル503の抵抗値が、可変抵抗値範囲に入る一方で初期抵抗値範囲には入ることがないように、初期抵抗値範囲および可変抵抗値範囲は設定されうる。抵抗変化素子の不揮発性記憶素子を備えるメモリセルが、初期抵抗値範囲等の設定についての特性を備え得ることは周知である。公知の様々な材料を用いて、当該特性を備えるメモリセル503を製造することができる。
【0158】
初期状態のメモリセル503は、可変状態に変化させるような電気的ストレスであるフォーミングストレスではない何らかの電気的ストレスを受けた状態を含む。
可変状態のメモリセル503は、製造直後の抵抗値から、フォーミングストレスではない何等かの電気的ストレスを受ける等して抵抗値が変化した状態を含む。
【0159】
本実施の形態の読み出し回路505は、選択されたメモリセル503が初期状態にあるか可変状態にあるかを判定することによって、記録されたデータを読み出すことができるように構成されている。
【0160】
図14に示した例における素子の構成は、第1電極513の材料がTaN(窒化タンタル)、第2電極511の材料がIr(イリジウム)、抵抗変化層512の材料がタンタル酸化物である。また、抵抗変化層512は、全体の厚さが50nm以下で、酸素濃度の異なる2層の積層構造を有する。
【0161】
抵抗変化層512の第1電極513に接する層が酸素濃度の低い層であって、組成をTaO
xとすると0<x<2.5である。抵抗変化層512の第2電極511に接する層が酸素濃度の高い層であって、組成をTaOyとするとy≧2.1であり、厚さが5.5nm程度である。第1電極513と抵抗変化層512との接触面および第2電極511と抵抗変化層512との接触面の面積が0.25μm
2以下である。
【0162】
フォーミングストレスは、電圧が+3.5V、パルス幅が5μSecのパルスを累積的に印加する。低抵抗化パルス(素子の抵抗値を第1抵抗値範囲から第2抵抗値範囲へと変化させるためのパルス:第2電気的信号)は、電圧が−2.4V、パルス幅が50nSecである。高抵抗化パルス(素子の抵抗値を第2抵抗値範囲から第1抵抗値範囲へと変化させるためのパルス:第1電気的信号)は、電圧が+1.8V、パルス幅が50nSecである。なお電圧は、第1電極513を基準として第2電極511に正の電圧を印加する場合を正とする。
【0163】
抵抗変化素子510の構成のその他の例として、第1電極513及び第2電極511の材料が白金(Pt)、抵抗変化層512の材料がハフニウム酸化物、抵抗変化層512の厚さが30nm、素子領域が直径3μmの円形、という構成が例示される。
【0164】
なお、抵抗変化層512がHfO
1.6の場合、初期抵抗値は数MΩ程度であり、高抵抗値範囲が1000〜3000Ω程度、低抵抗値範囲が100〜300Ω程度となる。この場合、フォーミングストレスは、例えば、電圧が2〜3V、パルス幅が100nSecのパルスを累積的に印加する。低抵抗化パルスは、電圧が+1.0V、パルス幅が100nSecであり、高抵抗化パルスは、電圧が−1.3V、パルス幅が100nSecである。
【0165】
図14に示す例では、初期抵抗値範囲の下限が、全ての可変抵抗値範囲の上限以上である。具体的には、初期抵抗値範囲の下限が、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上であってもよい。さらに具体的には、初期抵抗値範囲の下限は、2個の可変抵抗値範囲のうち抵抗値が最も大きい第1抵抗値範囲の上限に等しくてもよい。
【0166】
図14に示す例では、第1閾値は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である値である。具体的には、第1閾値は、初期抵抗値範囲の下限であり、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限である値であってもよい。さらに具体的には、第1閾値は、2個の可変抵抗値範囲のうち抵抗値が最も大きい第1抵抗値範囲の上限に等しくてもよい。なお、第1閾値と等しい値を有する抵抗値は、初期抵抗値範囲に属するものとしてもよいし、複数の可変抵抗値範囲のうち抵抗値が最も大きいものに属するものとしてもよい。
【0167】
図14に示す例では、第2閾値は、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上である値である。具体的には、第2閾値は、2個の可変抵抗値範囲のうち抵抗値が最も大きい第1抵抗値範囲の下限以下であり、かつ2個の可変抵抗値範囲のうち抵抗値が最も小さい第2抵抗値範囲の上限以上である値であってもよい。
【0168】
さらに具体的には、第2閾値は、第1抵抗値範囲の下限および第2抵抗値範囲の上限に等しくてもよい。なお、第2閾値と等しい値を有する抵抗値は、複数の可変抵抗値範囲のうち、第2閾値よりも大きな抵抗値を含む抵抗値範囲に属するものとしてもよいし、第2閾値よりも小さな抵抗値を含む抵抗値範囲に属するものとしてもよい。
【0169】
メモリセル503の構成によっては、製造直後のメモリセル503の抵抗値が、いずれの可変抵抗値範囲よりも小さい場合もある。すなわち、初期抵抗値範囲が可変抵抗値範囲よりも小さい場合がある。
【0170】
具体的には例えば、メモリセル503が鉄酸化物を抵抗変化層に用いた抵抗変化素子を備える場合に、上記特性が実現される。より具体的には、鉄酸化物において抵抗率は、Fe
3O
4、FeO、Fe
2O
3の順に高い。例えば、素子構造として第1電極513の材料がPt(白金)、第2電極511の材料がPt(白金)、抵抗変化層512の材料がFe
3O
4、抵抗変化層512全体の厚さが50nm以下としうる。
【0171】
第1電極513と抵抗変化層512との接触面および第2電極511と抵抗変化層512との接触面の面積を0.25μm
2以下とするとき、初期抵抗値は概ね200Ωと非常に低抵抗にある。この初期状態のメモリセル503に10μsecのパルス幅で第1電気的信号と同じ極性で電圧の絶対値が3.5Vのパルスを所定の回数を印加することによって、初期抵抗値よりも抵抗値の大きい状態(2K〜8KΩの高抵抗状態)に推移する。これは、第2電極511と抵抗変化層512の接触界面の酸化が進行し、Fe
2O
3の、絶縁状態にある抵抗層が形成されるためと考えられる。その後、当該メモリセル503では、電圧の絶対値が2.4Vの第2電気的信号の印加により300Ωから500Ωの第2抵抗値範囲と、第2電気的信号と極性の異なる電圧の絶対値が2.4Vの第1電気的信号の印加により2Kから8KΩの第1抵抗値範囲とを推移できるようになる。
【0172】
抵抗変化素子510の構成のその他の例として、第1電極513及び第2電極511の材料が白金(Pt)、抵抗変化層512の材料がハフニウム酸化物、抵抗変化層512の厚さが30nm、素子領域が直径3μmの円形、という構成が例示される。
【0173】
なお、抵抗変化層512がHfO
0.9であり、初期状態では抵抗変化しない場合に、電圧4V、パルス幅100μSecという長いパルス幅のパルスをフォーミングストレスとして与えることにより可変状態になる。可変状態のメモリセル503は、電圧が−1.3V、パルス幅が100nSecの低抵抗化パルスで低抵抗値範囲30〜90Ω程度に遷移し、電圧が+2.0V、パルス幅が100nSecの高抵抗化パルスで高抵抗値範囲100〜300Ω程度に推移する。
【0174】
かかる構成では、初期抵抗値範囲の上限が、全ての可変抵抗値範囲の下限以下であってもよい。具体的には、初期抵抗値範囲の上限が、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下であってもよい。さらに具体的には、初期抵抗値範囲の上限は、2個の可変抵抗値範囲のうち抵抗値が最も小さい第2抵抗値範囲の下限に等しくてもよい。
【0175】
第1閾値は、初期抵抗値範囲の上限以上であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限以下である値であってもよい。具体的には、第1閾値は、初期抵抗値範囲の上限であり、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの下限である値であってもよい。さらに具体的には、第1閾値は、2個の可変抵抗値範囲のうち抵抗値が最も小さい第2抵抗値範囲の下限に等しくてもよい。
【0176】
第2閾値は、複数の可変抵抗値範囲のうち抵抗値が最も小さいものの上限以上であり、かつ複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下である値であってもよい。具体的には、第2閾値は、2個の可変抵抗値のうち抵抗値が最も小さい第2抵抗値範囲の上限以上であり、かつ2個の可変抵抗値のうち抵抗値が最も大きい第1抵抗値範囲の下限以下である値であってもよい。さらに具体的には、第2閾値は、第1抵抗値範囲の下限および第2抵抗値範囲の上限に等しくてもよい。
【0177】
なお、隣接する抵抗値範囲は必ずしも上限と下限とが一致している必要はなく、隣接する抵抗値範囲同士の間に所定のマージンが設定されていてもよい。
【0178】
読み出し回路505は、選択されたメモリセル503の抵抗値が、第1閾値よりも大きいか否かを判定する第1読み出しモードと、選択されたメモリセル503の抵抗値が、第2閾値よりも大きいか否かを判定する第2読み出しモードとを選択的に実行することによって、記録されたデータを読み出すことができるように構成されていてもよい。
【0179】
記録されたデータは、第1種データと第2種データとを含み、第1種データは、各メモリセル503の抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第2種データは、各メモリセル503の抵抗値が初期抵抗値範囲にあるか否かの違いを利用せずに、各メモリセル503の抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。
【0180】
この場合において、メモリセルアレイ502が、第1書き込みアドレス領域と、第2書き込みアドレス領域とを備え、第1書き込みアドレス領域に第1種データが記録されており、第2書き込みアドレス領域に第2種データが記録されていてもよい。
【0181】
第1書き込みアドレス領域と、第2書き込みアドレス領域とは、必ずしも物理的な領域として分離していなくてもよい。例えば、各メモリセル503がアドレスごとに所定の規則によって第1書き込みアドレス領域と第2書き込みアドレス領域とに振り分けられていてもよい。
【0182】
第2書き込みアドレス領域は、例えば複数の可変状態のメモリセル503から構成される領域である。そのため、初期状態の複数のメモリセル503からなるメモリセルアレイ502(例えば、製造直後のメモリセルアレイ502)のうち、所定の領域に含まれる複数のメモリセル503に対して、フォーミングストレスを印加することによって、第2書き込みアドレス領域を形成できる。
【0183】
そのため、メモリセルアレイ502にフォーミングストレスを印加することにより、第1種データを記録することに加えて、第2種データを書き込むための第2書き込みアドレス領域を形成することもできる。
【0184】
また、メモリセルアレイ502を構成する複数のメモリセル503に選択的にフォーミングストレスを印加することによって、第1書き込みアドレス領域と第2書き込みアドレス領域とを設定できる。そのため、それらのアドレス領域の容量配分や配置を自由に選択することができる。また、第1書き込みアドレス領域の一部領域に対して、フォーミングストレスを印加することによって、当該一部領域を第2書き込みアドレス領域へと変更することができる。
【0185】
また、第1書き込みアドレス領域と、第2書き込みアドレス領域とが、同一のメモリセルアレイ502に配置されることにより、例えば第1書き込みアドレス領域と第2書き込みアドレス領域との間で情報を送受信する場合であっても、情報の秘匿性を高めることができる。
【0186】
図14に示す例では、具体的には例えば、第1種データは各メモリセル503の抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されており、第2種データは、各メモリセル503の抵抗値が第2抵抗値範囲にあるか否かの違いを利用して記録されていてもよい。
【0187】
図14に示す例では、可変抵抗値範囲の数は2であるが、可変抵抗値範囲の数は3以上であってもよい。すなわち、メモリセル503は多値メモリであってもよい。
【0188】
Nを3以上の整数とするとき、可変状態のメモリセル503は、異なる電気的信号が印加されることによってN−1個の可変抵抗値範囲の間を遷移するものであってもよい。この場合、メモリセルアレイ502において、各メモリセル503の抵抗値が、初期抵抗値範囲とN−1個の可変抵抗値範囲とから構成されたN個の抵抗値範囲のいずれに含まれるかの違いを利用して多値データが記録されていてもよい。
図14に示す例は、N=3の例である。Nは4以上の整数であってもよい。
【0189】
Nを3以上の整数とし、M1をN以下の正の整数とし、M2をN−1以下の正の整数とするとき、(a)第1種データは、各メモリセル503の抵抗値が初期抵抗値範囲を含む互いに重複しないM1個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、(b)第2種データは、各メモリセル503の抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、M2個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、かつ、(c)第1種データの記録に用いられるM1個の抵抗値範囲のうちの初期抵抗値範囲を含まないM1−1個の抵抗値範囲は、第2種データの記録に用いられるM2個の抵抗値範囲のいずれかと同一であってもよい。
【0190】
Nを3以上の整数とし、M1をN以下の正の整数とし、M2をN−1以下の正の整数とするとき、(a)第1種データは、各メモリセル503の抵抗値が初期抵抗値範囲を含む互いに重複しないM1個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、(b)第2種データは、各メモリセル503の抵抗値が初期抵抗値範囲を含まない、かつ互いに重複しない、M2個の抵抗値範囲のいずれに含まれるかの違いを利用して記録されており、かつ、(c´)第1種データの記録に用いられるM1個の抵抗値範囲のうちの初期抵抗値範囲を含まないM1−1個の抵抗値範囲の少なくともいずれかは、第2種データの記録に用いられるM2個の抵抗値範囲と異なっていてもよい。
【0191】
読み出し回路505は、M1−1個の閾値から構成される第1種閾値群を用いて、第1種データを読み出す第1読み出しモードと、M2−1個の閾値から構成される第2種閾値群を用いて、第2種データを読み出す第2読み出しモードとを選択的に実行してもよい。この場合において、第1種閾値群は、初期抵抗値範囲の下限以下であり、かつ、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの上限以上である第1閾値を含み、第2種閾値群に含まれる閾値は、いずれも、複数の可変抵抗値範囲のうち抵抗値が最も大きいものの下限以下であってもよい。
【0192】
図14に示す例では、第1種閾値群に属する閾値が第1閾値であり、第2種閾値群に属する閾値が第2閾値である。
【0193】
なお、
図14に示される抵抗変化素子において、初期抵抗値範囲を、例えば2×10
6Ω以上1.0×10
7Ω未満とし、可変抵抗値範囲を、5×10
4Ω以上2×10
6Ω未満、及び5×10
3Ω以上5×10
4Ω未満に設定できる。このとき、第1閾値は2×10
6Ωであり、第2閾値は5×10
4Ωである。
【0194】
[抵抗変化素子の構成]
抵抗変化素子510は、第1電極513と第2電極511との間に抵抗変化層512が介在する構成を有する。抵抗変化層512は、例えば金属酸化物、より詳細には例えば遷移金属酸化物で構成することができる。可変状態にあるメモリセル503の抵抗変化素子510は、第1電極513と第2電極511との間に電気的信号が印加されることによって、第1電極513と第2電極511との間の抵抗値が複数の可変抵抗値範囲の間を可逆的に遷移する性質を有する。
【0195】
初期状態にあるメモリセル503の抵抗変化素子510の抵抗変化層512は、第1電極513と第2電極511との間を絶縁していてもよい。絶縁とは、具体的には、抵抗値が2MΩ以上の状態と定義してもよい。
【0196】
抵抗変化素子510の抵抗変化層512は、絶縁体から構成された層を備えていてもよい。絶縁体とは、具体的には抵抗率が30Ω・m以上の材料とすることができる。抵抗変化素子510の抵抗変化層512が絶縁体から構成されることにより、初期状態のメモリセル503の抵抗特性を安定して維持することができる。
【0197】
初期状態の素子とは、抵抗変化素子を半導体プロセス等により製造した後、可変状態に変化させるような電気的ストレスであるフォーミングストレスが印加されない限り可変状態とならず、かつ、抵抗値が可変抵抗値範囲のいずれとも重複しない初期抵抗値範囲にある素子をいう。
【0198】
初期状態にある抵抗変化素子は、フォーミングストレスが印加されない限り、容易には可変状態に変化しない。このために、初期状態と可変状態との差異を利用して、安定してデータを保持することができる。また、電気的信号の印加によって抵抗値が変化する可変状態の抵抗変化素子と異なり、初期抵抗値範囲を、抵抗変化素子の材料、大きさ、形状、及び製造条件等によってある程度調整することができる。特に抵抗変化層512が積層構造である場合、酸素濃度の高い層の厚み、形成時の酸素濃度によって任意に調整可能である。
【0199】
初期抵抗値範囲は、例えば、初期状態にある素子に、可変状態にある素子の抵抗値を複数の可変抵抗値範囲の間で変化させる電気的信号、および、フォーミングストレスのいずれよりも小さな電圧を素子に印加して読み出したときに得られる抵抗値の範囲としうる。
【0200】
なお、フォーミングストレスは、メモリセル503に印加する電圧振幅の量、パルスの幅、および累積印加時間等で決定され、それぞれの値はメモリセルアレイ502内のメモリセル503毎に異なっている。なお、累積印加時間とは、例えば、抵抗状態が初期状態から可変状態に変化するまでに印加される電気的パルスのパルス幅の合計を意味する。このためフォーミングストレスとして最低限必要となる電気的ストレスを規定するパラメータの具体的な値は、対象となるメモリセル503毎に素子が可変状態へと変化するまでに印加された電気的ストレスの電圧、パルス幅、および累積印加時間等の値であって、絶対的な固定値ではなく所定のバラツキをもつ値である。
【0201】
なお、フォーミングストレスは、可変状態にあるメモリセルの抵抗値を複数の可変抵抗値範囲の間で可逆的に変化させるために印加される電気的信号よりも強いのが一般的である。具体的には、フォーミングストレスは、電圧の絶対値、パルス幅、および累積印加時間の少なくともいずれかにおいて、可変状態にあるメモリセルの抵抗値を変化させるために印加される電気的信号よりも大きいものとしうる。
【0202】
可変状態において、電圧およびパルス幅等は異なるが同極性の電気的信号を印加することにより抵抗値が変化するものをユニポーラ型抵抗変化素子とよぶ。より具体的には、例えば、第2電極511から第1電極513に電流が流れる向きに+2Vで1μsの幅の電気的信号(電気的パルス)を印加すると、抵抗変化素子の抵抗値が所定の高抵抗レベル(第1抵抗値範囲:HRレベルともいう)に変化する。同様に第2電極511から第1電極513に電流が流れる向きに+4Vで50nsの幅の電気的信号を印加すると、抵抗変化素子の抵抗値が所定の低抵抗レベル(第2抵抗値範囲:LRレベルともいう)に変化する。このような、同極性の電気的信号を印加することにより抵抗値が可逆的に変化するものを、ユニポーラ型抵抗変化素子という。
【0203】
一方、可変状態において、異なる極性の電気的信号を印加することで抵抗値が変化するものをバイポーラ型抵抗変化素子とよぶ。より具体的には第2電極511から第1電極513に電流が流れる向きに+2Vで50nsの幅の電気的信号を印加すると、抵抗変化素子の抵抗値が所定の高抵抗レベル(第1抵抗値範囲:HRレベルともいう)に変化する。逆に第1電極513から第2電極511に電流が流れる向きに+2Vで50nsの幅の電気的信号を印加すると、抵抗変化素子の抵抗値が所定の低抵抗レベル(第2抵抗値範囲:LRレベルともいう)に変化する。このような、逆極性の電気的信号を印加することにより抵抗値が可逆的に変化するものを、バイポーラ型抵抗変化素子という。
【0204】
当然であるが、バイポーラ型抵抗変化素子において、例えば動作を安定にするために、極性のみならず、HRレベルに変化させる場合(高抵抗化ともいう)に印加する電気的信号と、LRレベルに変化させる場合(低抵抗化ともいう)に印加する電気的信号とで、パルス幅や電圧の絶対値を異ならせてもよい。
【0205】
抵抗変化層512は金属酸化物から構成されてもよい。抵抗変化層512は、酸素不足型の金属酸化物から構成された層を備えてもよい。抵抗変化層512を構成する金属酸化物は、遷移金属酸化物およびアルミニウム酸化物の少なくともいずれか一方であってもよいし、タンタル酸化物、鉄酸化物、ハフニウム酸化物およびジルコニウム酸化物の少なくともいずれかであってもよい。
【0206】
ユニポーラ型抵抗変化素子の抵抗変化層の材料には、チタン(Ti)酸化物、ニッケル(Ni)酸化物、アルミニウム(Al)酸化物等を用いることができる。一方、バイポーラ型抵抗変化素子の抵抗変化層の材料には、タンタル(Ta)酸化物、ハフニウム(Hf)酸化物、アルミニウム(Al)酸化物、鉄(Fe)酸化物等を用いることができる。
【0207】
同じ材料の酸化物を用いた場合でも、電極材料との組合せおよび酸化物の積層構造等により、ユニポーラ型抵抗変化素子およびバイポーラ型抵抗変化素子の両方が得られる場合もある。なお、抵抗変化層の材料にタンタル酸化物を用いると、抵抗変化素子が良好な特性を示すので、以下で特に詳細に例示する。
【0208】
第1電極513および第2電極511の材料には、例えば、イリジウム(Ir)、白金(Pt)、タングステン(W)、銅(Cu)、アルミニウム(Al)、窒化チタン(TiN)、窒化タンタル(TaN)および窒化チタンアルミニウム(TiAlN)等を用いることができる。なお、
図13に示す例では、第1電極513が第2電極511に比べ大面積となっているが、これに限定されるものでない。例えば、第1電極513を配線の一部に適用するなど、半導体プロセスにあわせ適宜、最適な形状にされうる。下地層514も同様に半導体プロセスに応じて適宜に省略または変更されうる。
【0209】
抵抗変化層512は、第1電極513に接続する第1抵抗変化層と、第2電極511に接続する第2抵抗変化層の少なくとも2層を積層して構成されてもよい。
【0210】
第1抵抗変化層は、酸素不足型の第1金属酸化物で構成され、第2抵抗変化層は、第1金属酸化物よりも酸素不足度が小さい第2金属酸化物で構成されうる。第2抵抗変化層は、絶縁体から構成された層であってもよい。第2抵抗変化層中には、電気的パルスの印加に応じて酸素不足度が可逆的に変化する微小な局所領域が形成されている。局所領域は、酸素欠陥サイトから構成されるフィラメントを含むと考えられる。局所領域は、第2抵抗変化層を貫く導電パスであってもよい。絶縁体が金属酸化物から構成され、導電パスは、絶縁体よりも酸素含有率が低い酸素不足型の金属酸化物から構成されていてもよい。
【0211】
「酸素不足度」とは、金属酸化物において、その化学量論的組成(複数の化学量論的組成が存在する場合は、そのなかで最も抵抗値が高い化学量論的組成)の酸化物を構成する酸素の量に対し、不足している酸素の割合をいう。化学量論的組成の金属酸化物は、他の組成の金属酸化物と比べて、より安定でありかつより高い抵抗値を有している。
【0212】
例えば、金属がタンタル(Ta)の場合、上述の定義による化学量論的組成の酸化物はTa
2O
5であるので、TaO
2.5と表現できる。TaO
2.5の酸素不足度は0%であり、TaO
1.5の酸素不足度は、酸素不足度=(2.5−1.5)/2.5=40%となる。また、酸素過剰の金属酸化物は、酸素不足度が負の値となる。なお、本明細書中では、特に断りのない限り、酸素不足度は正の値、0、及び負の値も含むものとして説明する。
【0213】
酸素不足度の小さい酸化物は化学量論的組成の酸化物により近いため抵抗値が高く、酸素不足度の大きい酸化物は酸化物を構成する金属により近いため抵抗値が低い。
【0214】
「酸素含有率」とは、総原子数に占める酸素原子の比率である。例えば、Ta
2O
5の酸素含有率は、総原子数に占める酸素原子の比率(O/(Ta+O))であり、71.4atm%となる。したがって、酸素不足型のタンタル酸化物は、酸素含有率は0より大きく、71.4atm%より小さいことになる。例えば、第1金属酸化物を構成する金属と、第2金属酸化物を構成する金属とが同種である場合、酸素含有率は酸素不足度と対応関係にある。すなわち、第2金属酸化物の酸素含有率が第1金属酸化物の酸素含有率よりも大きいとき、第2金属酸化物の酸素不足度は第1金属酸化物の酸素不足度より小さい。
【0215】
抵抗変化層を構成する金属は、タンタル以外の金属を用いてもよい。抵抗変化層を構成する金属としては、遷移金属、およびアルミニウム(Al)の少なくともいずれかを用いることができる。遷移金属としては、タンタル(Ta)、チタン(Ti)、ハフニウム(Hf)、ジルコニウム(Zr)、ニオブ(Nb)、タングステン(W)、ニッケル(Ni)、鉄(Fe)等を用いることができる。遷移金属は複数の酸化状態をとることができるため、異なる抵抗状態を酸化還元反応により実現することが可能である。
【0216】
例えば、ハフニウム酸化物を用いる場合、第1金属酸化物の組成をHfO
xとした場合にxが0.9以上1.6以下であり、かつ、第2金属酸化物の組成をHfO
yとした場合にyがxの値よりも大である場合に、抵抗変化層の抵抗値を安定して高速に変化させることができる。この場合、第2金属酸化物の膜厚は、3〜4nmとしてもよい。
【0217】
また、ジルコニウム酸化物を用いる場合、第1金属酸化物の組成をZrO
xとした場合にxが0.9以上1.4以下であり、かつ、第2金属酸化物の組成をZrO
yとした場合にyがxの値よりも大である場合に、抵抗変化層の抵抗値を安定して高速に変化させることができる。この場合、第2金属酸化物の膜厚は、1〜5nmとしてもよい。
【0218】
第1金属酸化物を構成する第1金属と、第2金属酸化物を構成する第2金属とは、異なる金属を用いてもよい。この場合、第2金属酸化物は、第1金属酸化物よりも酸素不足度が小さい、つまり抵抗が高くてもよい。このような構成とすることにより、抵抗変化時に第1電極513と第2電極511との間に印加された電圧は、第2金属酸化物に、より多くの電圧が分配され、第2金属酸化物中で発生する酸化還元反応をより起こしやすくすることができる。
【0219】
また、第1抵抗変化層となる第1金属酸化物を構成する第1金属と、第2抵抗変化層となる第2金属酸化物を構成する第2金属とを、互いに異なる材料を用いる場合、第2金属の標準電極電位は、第1金属の標準電極電位より低くてもよい。標準電極電位は、その値が高いほど酸化しにくい特性を表す。これにより、標準電極電位が相対的に低い第2金属酸化物において、酸化還元反応が起こりやすくなる。なお、抵抗変化現象は、抵抗が高い第2金属酸化物中に形成された微小な局所領域中で酸化還元反応が起こってフィラメント(導電パス)が変化することにより、その抵抗値(酸素不足度)が変化することにより発現すると考えられる。
【0220】
例えば、第1金属酸化物に酸素不足型のタンタル酸化物(TaO
x)を用い、第2金属酸化物にチタン酸化物(TiO
2)を用いることにより、安定した抵抗変化動作が得られる。チタン(標準電極電位=−1.63eV)はタンタル(標準電極電位=−0.6eV)より標準電極電位が低い材料である。このように、第2金属酸化物に第1金属酸化物より標準電極電位が低い金属の酸化物を用いることにより、第2金属酸化物中でより酸化還元反応が発生しやすくなる。その他の組み合わせとして、高抵抗層となる第2金属酸化物にアルミニウム酸化物(Al
2O
3)を用いることができる。例えば、第1金属酸化物に酸素不足型のタンタル酸化物(TaO
x)を用い、第2金属酸化物にアルミニウム酸化物(Al
2O
3)を用いてもよい。
【0221】
積層構造の抵抗変化層における抵抗変化現象は、いずれも抵抗が高い第2金属酸化物中に形成された微小な局所領域中で酸化還元反応が起こって、局所領域中のフィラメント(導電パス)が変化することにより、その抵抗値が変化すると考えられる。
【0222】
つまり、第2金属酸化物に接続する第2電極511に、第1電極513を基準にして正の電圧を印加したとき、抵抗変化層中の酸素イオンが第2金属酸化物側に引き寄せられる。これによって、第2金属酸化物中に形成された微小な局所領域中で酸化反応が発生し、酸素不足度が減少する。その結果、局所領域中のフィラメントが繋がりにくくなり、抵抗値が増大すると考えられる。
【0223】
逆に、第2金属酸化物に接続する第2電極511に、第1電極513を基準にして負の電圧を印加したとき、第2金属酸化物中の酸素イオンが第1金属酸化物側に押しやられる。これによって、第2金属酸化物中に形成された微小な局所領域中で還元反応が発生し、酸素不足度が増加する。その結果、局所領域中のフィラメントが繋がりやすくなり、抵抗値が減少すると考えられる。
【0224】
図15は、パーコレーションモデル(percolation model)を用いて、抵抗変化層(例えば局所領域)中のフィラメントの形成をシミュレートした結果の一例を示す図である。ここでは、抵抗変化層中の酸素欠陥サイト(以下、単に「欠陥サイト」という)等が繋がることによりフィラメント(導電パス)が形成される場合を考えている。
【0225】
パーコレーションモデルとは、抵抗変化層中にランダムに分布した欠陥サイトに対して、欠陥サイト等の密度がある閾値を超えると欠陥サイト等の繋がりが形成される確率が増加するという理論に基づくモデルである。ここで「欠陥」とは、例えば、金属酸化物中で酸素が欠損していることを意味し、「欠陥サイトの密度」とは酸素不足度とも対応している。すなわち、酸素不足度が大きくなると、欠陥サイトの密度も大きくなる。
【0226】
図15に示されるシミュレーションでは、抵抗変化層の酸素イオンサイトを、格子状に仕切られた領域(サイト)として近似的に仮定し、確率的に形成される欠陥サイトによって形成されるフィラメントをシミュレーションで求めている。
【0227】
図15において、“0”が含まれているサイトは抵抗変化層中に形成される欠陥サイトを表している。他方、空白となっているサイトは酸素イオンが占有しているサイトを表しており、高抵抗な領域を意味している。また、矢符で示される欠陥サイトのクラスタ(上下、左右及び斜め方向に1個のサイトの範囲内で互いに接続された欠陥サイトの集合体)は、図中の上下方向に電圧が印加された場合に抵抗変化層内に形成されるフィラメント、すなわち電流が流れるパスを示している。
【0228】
図15に示されるように、抵抗変化層の下面と上面との間に電流を流すフィラメントは、ランダムに分布する欠陥サイトの内の上端から下端までを接続する欠陥サイトのクラスタで構成される。このパーコレーションモデルに基づくと、フィラメントの本数及び形状は確率的に形成されることになる。フィラメントの本数及び形状の分布は、抵抗変化層の抵抗値のばらつきとなる。
【0229】
フォーミング動作は、抵抗変化層の一部領域において金属酸化物内の欠陥サイトの密度を変化させ、フィラメントを形成する動作に対応する。具体的には、電気的ストレスを印加することによって、初期状態で疎であった欠陥サイト間を繋ぐようなフィラメントを形成する。
【0230】
金属酸化物から構成される抵抗変化層を有する抵抗変化素子を形成した場合、抵抗変化層内の欠陥サイトの配置はメモリセル毎にランダムに配置される。このため、仮に各メモリセルに一定の電気的ストレスを印加した場合であっても、フィラメント形成(欠陥の繋がり)の障壁となる欠陥サイト間の最大距離等がメモリセル毎にランダムにばらついているために、フォーミングが発生するストレス量がメモリセル毎にランダムにばらつくと考えられる。その結果、初期状態にある複数のメモリセルに所定の電気的ストレスを印加した場合に、フォーミングが完了するメモリセルがランダムに発生すると考えられる。
【0231】
なお、酸素欠陥サイト等が繋がることによってフィラメントパスが形成される材料であれば、フォーミングの発生(初期状態から可変状態への変化)は同様のメカニズムによって説明できると考えられる。そのため、例えば金属酸化物に含まれる金属材料が異なる場合であっても、同様に、フォーミングにより生じるフィラメントの本数及び形状は確率的に形成されると推察される。よって、初期状態のメモリセルに所定の電気的ストレスを印加した場合に、フォーミングが発生するか否かは、確率的に、すなわちランダムに、決定される。
【0232】
酸素不足度がより小さい第2金属酸化物に接続されている第2電極511は、例えば、白金(Pt)、イリジウム(Ir)、パラジウム(Pd)など、第2金属酸化物を構成する金属および第1電極513を構成する材料と比べて標準電極電位が高い材料で構成する。
【0233】
また、酸素不足度がより高い第1金属酸化物に接続されている第1電極513は、例えば、タングステン(W)、ニッケル(Ni)、タンタル(Ta)、チタン(Ti)、アルミニウム(Al)、窒化タンタル(TaN)、窒化チタン(TiN)など、第1金属酸化物を構成する金属と比べて標準電極電位が低い材料で構成してもよい。標準電極電位は、その値が高いほど酸化しにくい特性を表す。
【0234】
すなわち、第2電極511の標準電極電位V2、第2金属酸化物を構成する金属の標準電極電位Vr2、第1金属酸化物を構成する金属の標準電極電位Vr1、および、第1電極513の標準電極電位V1は、Vr2<V2、およびV1<V2なる関係を満足してもよい。さらには、V2>Vr2、およびVr1≧V1の関係を満足してもよい。
【0235】
上記の構成とすることにより、第2電極511と第2金属酸化物の界面近傍の第2金属酸化物中において、選択的に酸化還元反応が発生し、安定した抵抗変化現象が得られる。
【0236】
より好適には、抵抗変化層512は、TaO
x(但し、0≦x<2.5)で表される組成を有する第1抵抗変化層と、TaO
y(但し、x<y<2.5)で表される組成を有する第2抵抗変化層とが積層された積層構造を少なくとも有している。他の層、例えばタンタル酸化物以外の金属酸化物で構成される第3抵抗変化層等を適宜配置しうることは言うまでもない。
【0237】
ここで、TaO
xは、0.8≦x<1.9を満足してもよく、TaO
yは、2.1≦y<2.5を満足してもよい。第2タンタル含有層の厚みは、1nm以上8nm以下であってもよい。酸素不足度の異なる層を積層することにより、バイポーラ型における抵抗変化の方向が決定できる。例えば、第2抵抗変化層を第2電極511側に、第1抵抗変化層を第1電極513側に配置する。かかる構成によれば、第2電極511側から第1電極513側に電流を流す向きの電圧印加で高抵抗化し、逆向きに電流を流す向きの電圧印加で低抵抗化する。当然ながら第2抵抗変化層を第1電極513に接し、第1抵抗変化層を第2電極511に接するように構成すると、抵抗変化と電圧印加の向きの関係が逆転する。
【0238】
[抵抗変化素子の特性]
図16は、可変状態にあるバイポーラ型抵抗変化素子の特性の一例を示す図である。
図16の素子の構成は、第1電極513の材料がTaNであり、第2電極511の材料がIrである。また、抵抗変化層512の材料がTaO
x(但し、0<x<2.5)で表される組成を有する第1タンタル含有層と、TaO
y(但し、x<y)で表される組成を有する第2タンタル含有層とが積層された積層構造を少なくとも有して、第1タンタル含有層が第1電極513に接し、第2タンタル含有層が第2電極511に接している。
【0239】
より具体的には、TaO
xは、0.8≦x≦1.9を満足し、TaO
yは、2.1≦y≦2.5を満足するように製造されている。第2タンタル含有層の厚みは、8nm以下であり、抵抗変化層512全体の厚みは50nm以下である。各電極への接触面積は
図14の測定に用いた抵抗変化素子と等しい。
【0240】
図16の横軸は印加する電気的信号の電圧を示し、縦軸に電気的信号を印加した後の抵抗変化素子の抵抗値(抵抗値は読み出し電圧VRを印加したときの電流から算出)を示している。図中のスタートの位置から、正極性側に電圧レベルを徐々にあげて行くと、印加電圧が+1.1Vを超えたときから徐々に抵抗値が上昇し、印加電圧が+2.0Vでは約100kΩに達している。
【0241】
逆に負極性側に電圧レベルを徐々に下げて行き、−1.1Vを超えると約10kΩ程度に低抵抗化して、スタートの抵抗値に戻っていることがわかる。このとき抵抗変化層512は、第2抵抗変化層を第2電極511側に、第1抵抗変化層を第1電極513側に配置している。
【0242】
第2電極511から第1電極513に電流が流れるような電気的信号の印加を正極性印加と定義する。正極性印加では、抵抗変化素子510はHRレベルに変化する。また、逆向きに電流が流れる印加を負極性印加と定義する。負極性印加では、抵抗変化素子510はLRレベルに変化する。LRからHRに変化せしめる電圧レベルを高抵抗化電圧(VH)とし、HRからLRに変化せしめる電圧レベルを低抵抗化電圧(VL)とすると、
図16の場合では、その絶対値が|VH|=|VL|=2.0V程度あれば、共通の電源電圧を用いて十分に低抵抗状態と高抵抗状態を可逆的に推移できることがわかる。
【0243】
図17は、非特許文献(IEDMTechnicalDigest.13−15Dec.2004,p.587)に開示されている、可変状態にあるユニポーラ型抵抗変化素子の特性の一例を示す模式図である。
【0244】
当該論文に示される通り、NiO、TiO
2、HfO
2、ZrO
2から構成された抵抗変化層を有する抵抗変化素子がユニポーラ特性を示すこと、及び、それらの遷移金属酸化物から構成された抵抗変化層が、製造直後には絶縁体であって、かつフォーミングストレスを与えるプロセスによって導電パスが形成されて可変状態に遷移することが知られている。
【0245】
抵抗変化層の材料と電極の組合せ、および抵抗変化材料にドープする不純物の材料等によっては、正電圧側でも負電圧側でも対称的にユニポーラ型で抵抗変化する素子が得られる。
図17は、当該素子の特性を例示する。
【0246】
図17に示す例では、バイアス電圧の絶対値が0.5Vを超えると素子がリセット状態、つまりHRレベルへと推移し、バイアス電圧の絶対値1.0Vを超えると素子がセット状態、つまりLRレベルへと推移する。このような素子では、同じ極性で電圧の異なる電気的信号を印加することで、2個の抵抗状態の間を可逆的に遷移させることが可能である。
【0247】
しかし、
図17のような特性のユニポーラ型抵抗変化素子であれば、+0.5V以上+1V未満の正極性の電気的信号を印加することで高抵抗化させ、−1V以下(絶対値が1V以上)の負極性の電気的信号を印加することで低抵抗化させるように制御すれば、バイポーラ型抵抗変化素子として利用することもできる。本開示における技術では、バイポーラ型もユニポーラ型も、いずれのタイプでも使用可能である。
【0248】
抵抗変化素子は、印加する電気的信号の電圧(絶対値)、幅、および回数等の組合せにより、抵抗値が3以上の可変抵抗値範囲の間を可逆的に遷移する多値メモリとして利用されてもよい。例えば、抵抗変化層としてタンタル酸化物を用いた素子は、良好な特性を示し、多値メモリへ応用されうる。
【0249】
図18は、抵抗変化素子の抵抗変化特性の一例を示す図である。横軸にパルス(電気的信号)の印加回数、縦軸に電気的信号を印加した後の抵抗値を示している(前述と同様に、抵抗値は読み出し電圧VRを印加したときの電流から算出している)。三角点(
黒塗り△)で示したものは負極性のパルス(電気的信号)を印加した後の抵抗値を示す。四角点(
黒塗り□)は正極性のパルス(電気的信号)を印加した後の抵抗値を示す。
【0250】
図18の素子の構成は、第1電極513の材料が窒化タンタル(TaN)、第2電極511の材料が白金(Pt)、抵抗変化層512の材料が積層構造のタンタル酸化物、抵抗変化層512の厚さが50nm以下、第1電極513と抵抗変化層512との接触面および第2電極511と抵抗変化層512との接触面の面積が0.25μm
2以下である。
【0251】
抵抗変化層512をなす層のうち、第1電極513に接する層が酸素濃度の低い層であって、組成をTaO
xとすると0<x<2.5である。一方、第2電極511に接する層が酸素濃度の高い層であって、組成をTaO
yとするとy≧2.1であり、厚さが5.5nm程度である。
【0252】
図から分かるように、パルス電圧を1300mVから1500mVへと増加させていくと、正極性のパルスを印加した後の抵抗値は徐々に増加している。パルス電圧を1500mVに固定した場合、パルス幅を100nSec、1000nSec、2000nSecに変えて行くと、正極性のパルスを印加した後の抵抗値は徐々に増加している。
【0253】
パルス電圧を比較的小さな1200mVに固定して電圧パルスを複数回重ねて印加すると、パルス印加後の抵抗値は徐々に増加する。このような特性を利用すると、比較的小さな電圧パルスにより抵抗値を微調整することが可能なこともわかる。すなわち、
図18のような特性を有する抵抗変化素子は、抵抗値を3以上の可変抵抗値範囲に制御性よく設定することができる。
【0254】
図18の第2閾値で抵抗値を判定するセンスアンプを用いれば、+1300mV以上の正極性のパルスで書き込まれたメモリセル503は、全て第2閾値よりは抵抗値が大きいと判断され、2値データのうちゼロが出力される(閾値より抵抗値の大きなものはデジタルデータの0と定義した場合)。
【0255】
一方、負極性パルスの印加で書き込まれたメモリセル503と、+1200mV、100nsの正極性パルスで書き込まれたメモリセル503の抵抗値は、第2閾値より低いため、共に2値データのうち1が出力される(閾値より抵抗値の小さなデジタルデータの1と定義した場合)。なお、閾値の値と完全に一致する抵抗値を有するセルは、1に割り当てても良いし、ゼロに割り当ててもよい。
【0256】
さらに、
図18の第3閾値で抵抗値を判定するセンスアンプを用いれば、+1200mV以上の正極性のパルスで書き込まれたメモリセル503は、全て第3閾値よりは抵抗値が大きいと判断され、2値データのうちゼロが出力される。一方、負極性パルスの印加で書き込まれたメモリセル503の抵抗値のみが、第3閾値より低いため、2値データのうち1が出力される。
【0257】
このように2種類のセンスアンプの出力結果を組み合わせることで、
図18に示す素子を3値メモリとして使用することができる。
【0258】
このような抵抗変化素子(ReRAM素子)の抵抗変化は、第2電極511と第1電極513とを電気的に接続する導電パスが抵抗変化層512内に発生することによって発生することを断面解析によって観察した。このとき導電パスは直径30〜10nm以下であり、最先端の微細な半導体プロセスで作製される配線幅より更に小さいことを見出した。すなわち上記で説明した抵抗変化素子の特性は、リソグラフィーによる加工の限界とされる超微細半導体プロセスで製造されても同様な安定した抵抗変化の特性を維持できる。
【0259】
また、抵抗変化素子(ReRAM素子)の抵抗変化層を形成するプロセスには数百℃を超えるような高温熱処理が必要ない。このため、加熱プロセスによってC−MOS(Complementary−Metal Oxide Semiconductor)トランジスタへの特性を劣化させることがない。
【0260】
すなわち抵抗変化素子は、フラッシュメモリなどのフローティングゲート型トランジスタを用いるメモリ素子に比べ、半導体プロセスとの親和性が非常に優れ、製造プロセスの微細化が進んでも抵抗変化の信頼性が低下することがない特徴を有している。
【0261】
そのため、例えば、コントローラ等のロジック回路と抵抗変化素子とが同一チップ上に形成される場合であっても、ロジック回路の特性への影響を抑えつつ抵抗変化素子を形成することができる。また、ロジック回路とプロセスを共通化することにより、製造コストを低減することができる。
【0262】
[動作モードおよびコマンド]
実施の形態2において、暗号化記録装置2が備える第一不揮発性メモリ24として用いられる抵抗変化型メモリ501は、4以上の動作モードを有してもよい。この場合、抵抗変化型メモリ501は、外部から4以上のコマンドから選択される1のコマンドを受領し、該受領したコマンドに基づいて4以上の動作モードを選択的に実行してもよい。
【0263】
抵抗変化型メモリ501は、第1モードと第2モードとを択一的に実行してもよい。第一モードは、各メモリセル503が初期状態にあるか可変状態にあるかの違いを利用したデータの書き込みおよび読み出しを行う動作モードである。第2モードは、各メモリセル503の抵抗値が初期抵抗値範囲にあるか否かの違いを利用せず、各メモリセル503の抵抗値が少なくとも一つの可変抵抗値範囲にあるか否かの違いを利用したデータの書き込みおよび読み出しを行う動作モードである。
【0264】
例えば、
図14に示す例において、電気的な処理または信号を以下のように定義する。初期状態にあるメモリセル503を可変状態へと変化させるための電気的ストレスをフォーミングストレスとし、メモリセル503の抵抗値を第1抵抗値範囲から第2抵抗値範囲へと変化させるための電気的信号を低抵抗化パルスとし、メモリセル503の抵抗値を第2抵抗値範囲から第1抵抗値範囲へと変化させるための電気的信号を高抵抗化パルスとする。
【0265】
このとき、入力データ“1”に対して選択されたメモリセル503にフォーミングストレスを印加し、入力データ“0”に対して選択されたメモリセル503に電気的ストレスを印加しないように書き込み回路504を動作させるモードを特殊書き込みモード(第1書き込みモード)とする。特殊書き込みモードが実行されるように抵抗変化型メモリ501の外部から入力するコマンドを特殊書き込みコマンド(第1書き込みコマンド)とする。
【0266】
第1閾値を用いた判定によりデータを読み出すように読み出し回路505を動作させるモードを特殊読み出しモード(第1読み出しモード)とする。特殊読み出しモードが実行されるように抵抗変化型メモリ501の外部から入力するコマンドを特殊読み出しコマンド(第1読み出しコマンド)とする。
【0267】
入力データ“1”に対して選択されたメモリセル503に低抵抗化パルス(第2電気的信号)を印加し、入力データ“0”に対して選択されたメモリセル503に高抵抗化パルス(第1電気的信号)を印加するように書き込み回路504を動作させるモードを通常書き込みモード(第2書き込みモード)とする。通常書き込みモードが実行されるように抵抗変化型メモリ501の外部から入力するコマンドを通常書き込みコマンド(第2書き込みコマンド)とする。
【0268】
第2閾値を用いた判定によりデータを読み出すように読み出し回路505を動作させるモードを通常読み出しモード(第2読み出しモード)とする。通常読み出しモードが実行されるように抵抗変化型メモリ501の外部から入力するコマンドを通常読み出しコマンド(第2読み出しコマンド)とする。
【0269】
[データへのアクセス制限の具体例]
上記構成において、例えば、通常書き込みコマンドおよび通常読み出しコマンドは、抵抗変化型メモリ501のマニュアルなどで広く公開しておく一方で、特殊書き込みコマンドおよび特殊読み出しコマンドは抵抗変化型メモリ501の製造者のみが保有すること、すなわち秘匿することができる。
【0270】
この場合、例えば、抵抗変化型メモリ501の製造者は、特殊書き込みコマンドにより鍵管理テーブル241におけるアドレスとブロック固有鍵との複数の組を書き込み、暗号化記録装置2が鍵管理テーブル241を読み出す際に特殊読み込みコマンドを用いる。これにより、鍵管理テーブル241は、暗号化記録装置2内部からのみ読み書き可能な情報となり、鍵管理テーブル241の秘匿性をより向上させることが可能となる。
【0271】
なお、各アドレス(ブロック固有鍵)に対応するパスワード(
図6A参照)は、暗号化記録装置2が、通常書き込みコマンドにより抵抗変化型メモリ501に書き込む。この場合、パスワードが書き込まれるアドレスは、例えば、鍵管理テーブル241において各アドレスに対応して登録されたポインタ(特殊書き込みモードで書き込まれたポインタ)によって指定される。
【0272】
また、各アドレス(ブロック固有鍵)に対応するパスワードは、特殊書き込みコマンドによって鍵管理テーブル241に登録されてもよい。
【0273】
このようにセキュリティ強度の高い抵抗変化型メモリ501を、更に樹脂等により封止すれば、抵抗変化型メモリ501内部の配線にプローブをあてようとしても配線等が破損されてしまうため、電気抵抗を測定することで分析することも不可能である。そのため、特殊読み出しコマンドに相当するコマンドを漏洩しない限り、鍵管理テーブル241に不正にアクセスされることがない。
【0274】
従来技術で用いられているフラッシュメモリは、微細化が進むに従って、多値メモリとして用いた場合のデータ記録の信頼性が低下する。特に、コンテンツ復号鍵等の暗復号に使用する鍵データのビット列に誤りが発生すると、その鍵を用いて暗号化したデータが一切読み出すことができなくなり、場合によっては暗号化記録装置2本体にアクセスさえできないという非常に大きな被害が発生する。このため、これら鍵データは極めて信頼性の高い記録が求められる。
【0275】
これに対して、抵抗変化素子を用いたメモリセル503を備える抵抗変化型メモリ501は、微細化が進行した場合であっても、高い信頼性を保持することができる。特に、抵抗変化層中にフィラメントを形成して抵抗変化するタイプの抵抗変化素子の場合、フィラメントが形成される局所領域が素子サイズに比べて充分小さいため、素子サイズの微細化が進んでも抵抗変化特性への悪影響を低減できる。そのため、例えば上述の鍵データ等を高い信頼性で記憶することができる。
【0276】
また、暗号化および認証のいずれか少なくとも一方を実行するコントローラ回路と抵抗変化型メモリ501とが同一チップに形成される混載チップ構成としてもよい。これにより、暗号化および認証のいずれか少なくとも一方を実行するコントローラ回路と、抵抗変化型メモリ501との間で、鍵データを送受信する場合に、インタフェース上で信号波形を盗み読みされることにより鍵データが漏洩するリスクを低減できる。また、抵抗変化素子の特性上、物理解析により抵抗状態を判別することはほぼ不可能であり、物理的に鍵データが盗まれることはない。
【0277】
従来技術で用いられているフラッシュメモリをコントローラ回路と混載する場合、フラッシュメモリの製造プロセスはロジック回路に用いるC−MOSプロセスとは別な半導体プロセス工程が必要で、プロセスステップ数の増加に伴う製造コスト高を招いてしまう。さらにフラッシュメモリの製造プロセスでは高温熱処理が必要であるため、ロジック回路で用いるC−MOSプロセスの半導体特性に影響を与えトランジスタ特性の性能維持に多くの制約を与えてしまう。
【0278】
これに対して、抵抗変化素子を用いたメモリセル503からなるメモリアレイ502を備える抵抗変化型メモリ501は、製造工程に高温熱処理を必要とせず、C−MOSプロセスの半導体特性に影響を与えない。そのため、コントローラ回路と抵抗変化型メモリ501とが同一チップに形成される場合には、コントローラ回路等のロジック回路の特性を損なうことなく、あるいは、製造プロセスのコスト高を招くことなく、鍵データの秘匿性を高めることができる。
【0279】
上記の例では2個の特殊動作モードおよび特殊コマンドと2個の通常動作モードおよび通常コマンドとが設定されている場合を説明したが、動作モードおよびコマンドの数と組合せはこれに限定されるものでない。
【0280】
図18のように可変状態のメモリセル503の抵抗値に7段階のレベルを設定できる場合には、初期状態を含めた特殊書き込みモードでは8段階のレベルを利用した3ビットデータの書き込みが行われ、初期状態を含めない通常書き込みモードでは4段階のレベルを利用した2ビットデータの書き込みが行われてもよい。書き込みに用いる抵抗値レベルの組合せは、利用システムに応じて適宜に選択されうる。
【0281】
[フォーミングストレス印加による可変状態への変化のランダム性]
初期状態にある素子の抵抗値を初期抵抗値範囲から所定の可変抵抗値範囲へと変化せしめる行為をフォーミング工程(formingprocess)またはフォーミングライト(formingwrite)と呼ぶ。
【0282】
前述したように、通常書き込みモードにおいて“0”を記録するために高抵抗状態へ変化させるための電気的信号の電圧をVH、パルス幅をTPHとし、通常書き込みモードにおいて“1”を記録するために低抵抗状態へ変化させるための電気的信号の電圧をVL、パルス幅TPLとする。
【0283】
フォーミングライトに用いられる電気的ストレスの電圧をVF、パルス幅をTPFとする。このとき、|VF|>|VH|および|VF|>|VL|を条件1とし、TPF>TPHおよびTPF>TPLを条件2とすれば、条件1および条件2の少なくともいずれか一方を充足してもよい。つまり、通常書き込みモードでの書き込み条件ではフォーミング工程が実行できないという特徴を有していてもよい。
【0284】
パルス幅について見ると、TPF>TPHおよびTPF>TPLとしても、1回の印加では所定のフォーミング工程が完了しない場合には、フォーミング工程を完了するために複数回の電気的ストレスを印加してもよい。このとき、電気的ストレスの印加を繰り返してもよい。電気的ストレスの印加を繰り返す過程において、所定の増加量にて印加電圧を徐々に増加させてもよい。電気的ストレスの印加を繰り返す過程において、所定の増加量または増幅率でパルス幅を徐々に増加させてもよい。
【0285】
ここで、例えばメモリセルアレイ502内の全てのメモリセル503が初期状態にある場合に、全メモリセル503についてフォーミングを完了するためには、各メモリセル503について、規格化した累積印加時間にして10000単位の電気的ストレスを印加する必要があると想定する。
【0286】
このとき、例えば150単位の電気的ストレスを印加した段階で電気的ストレスの印加を中止すると、当然ながら全てのメモリセル503が可変状態に変化することはない。しかしながら、実験の結果、この場合においても、初期状態から可変状態へと変化するメモリセル503がメモリセルアレイ502内にランダムに発生しうることが判明した。
【0287】
すなわち、メモリセルアレイ502は、初期状態から可変状態に変化させるような電気的ストレスが印加されたときに、初期状態から可変状態に変化するメモリセル503と、初期状態のまま維持されるメモリセル503とがランダムに発生する特性を有しうる。
【0288】
この特性を利用し、初期状態から可変状態へと変化するメモリセル503がランダムに発生することにより生成されるデータを、例えばブロック固有鍵を含むデータ(第1種データ)として扱うことができる。
【0289】
図19は、規格化累積印加時間と、可変状態へ変化したメモリセル503の標準正規分布の偏差との関係をプロットした図である。素子の構成は、第1電極513の材料が窒化タンタル(TaN)、第2電極511の材料がイリジウム(Ir)、抵抗変化層512の材料が積層構造のタンタル酸化物、抵抗変化層512の厚さが50nm、第1電極513と抵抗変化層512との接触面および第2電極511と抵抗変化層512との接触面の面積が0.25μm
2以下である。
【0290】
抵抗変化層512をなす層のうち、第1電極513に接する層が酸素濃度の低い層であって、組成をTaO
xとすると0<x<2.5である。一方、第2電極511に接する層が酸素濃度の高い層であって、組成をTaO
yとするとy≧2.1であり、厚さが5.5nm程度である。
【0291】
フォーミングストレスは、電圧が3.5V、最短のパルス幅が10μSecである。メモリセル503の個数(メモリセルアレイ502の容量)は256キロビットである。なお、
図19の累積印加時間は最短パルス幅をもとに所定の係数をもつ規格化時間である。
【0292】
図に示すように、フォーミングが完了した累積ビット数の正規分布は累積印加時間に対してほぼ直線に分布している。このことから、初期状態から可変状態への変化が、極めてランダムに発生する現象であることが示される。このような、可変状態への変化のランダム性を用いることで、暗号化記録装置2ごとに、ユニークかつランダムなブロック固有鍵を作成することができる。
【0293】
図19において規格化累積印加時間が“150”に達した時点でフォーミング工程における電気的ストレス(フォーミングストレス)の印加を停止すると、可変状態に変化したメモリセル503と、可変状態に変化しなかったメモリセル503とが、ほぼ半数ずつとなる。可変状態に変化するメモリセル503のロケーションはランダムである。この場合、メモリセルアレイ502において一部のメモリセル503がランダムに選択されることで、データがランダムデータをなすように生成されてメモリセルアレイ502に記録されることになる。このように、メモリセルアレイ502に対するフォーミング工程を途中で停止することで書き込まれるデータ(第1種データ)は、装置ごとにランダムかつ固有なデータとなる。
【0294】
可変状態に変化したメモリセル503と、可変状態に変化しなかったメモリセル503とが素子毎にランダムかつ固有に発生する理由としては、抵抗変化素子のプロセスばらつきや形状ばらつきの他に、例えば、フォーミングが完了するメモリセル503がランダムに発生することが考えられる。
【0295】
上述のとおり、金属酸化物中の欠陥サイトはメモリセル503毎にランダムに配置され、フォーミングによってこれらの欠陥サイト間を繋いでフィラメントが形成される。そのため、仮に初期状態にある複数のメモリセル503に一定の電気的ストレスを印加した場合であっても、フォーミングが完了するメモリセル503は、統計的に(例えば標準正規分布様に)ばらついて発生すると考えられる。
【0296】
そのため、仮にフォーミング工程において複数のメモリセル503に対して一様なストレスを印加する場合であっても、確率的にフィラメントが形成される素子と形成されない素子とが発生するように、電気的ストレスを調整することができると考えられる。なお、酸素欠陥サイト等が繋がることによってフィラメントパスが形成される材料であれば、同様のメカニズムによって説明できると推察される。
【0297】
一般にランダムなブロック固有鍵を発生させるためには、装置内において所定の関数を用いて生成されるランダム値を用いる。しかしながら、関数および入力される初期値が同じであれば、演算回数に応じて同じ値が出力されてしまう。関数式と初期値が漏洩すれば、装置内で生成されるランダム値が予測され、例えば、それを元に生成される暗号化キーなどが推測されて、セキュリティ事故に発展する虞がある。
【0298】
ランダム値の生成を、抵抗変化素子に固有のランダムな現象である初期状態から可変状態への変化を用いて行えば、予測不可能な態様でランダム値を生成する方式が確立できる。つまり、複数のメモリセル503に対するフォーミング工程を途中で停止する(当該複数のメモリセル503の全てに対するフォーミングの完了の前にフォーミングストレスの印加を停止する)ことで書き込まれたランダムデータを、上述したランダム値を得るための関数の初期値に用いると、更にランダム性が増し有効である。
【0299】
例えば、抵抗変化型メモリ501のメモリセルアレイ502のうちの、複数のメモリセル503を含む所定の領域に対し、上記のようにフォーミング工程を途中で停止する処理を行う。これにより、当該所定の領域には、初期状態のままのメモリセル503と、可変状態に変化したメモリセル503とがランダムに存在する。
【0300】
この場合、例えば、特殊読み出しコマンドによって、初期状態のままのメモリセル503を“0とし、可変状態に変化したメモリセル503を“1”として読み出すことで、当該所定の領域から、複数のランダムな値(ビット列)が得られる。これら複数の値を、メモリセルアレイ502のうちの、通常領域に含まれる複数のブロックに対応するそれぞれに対応するブロック固有鍵として採用する。
【0301】
具体的には、当該所定の領域から読み出した所定の長さのビット列に示される値を、ブロック固有鍵として鍵管理テーブル241に登録する。または、鍵管理テーブル241に、当該所定の領域内のいずれかのアドレスを指定するポインタを登録することで、当該アドレスから読み出される所定の長さのビット列に示される値をブロック固有鍵として扱うことができる。なお、当該ポインタは、上記フォーミング工程の途中停止による複数のランダム値の生成の前に、鍵管理テーブル241に登録されていてもよい。
【0302】
このように、抵抗変化型メモリ501では、(i)選択されたメモリセル503のみにフォーミングストレスを印加することで、記録を指示されたデータを記録することができ、かつ、(ii)複数のメモリセル503に対するフォーミングストレスの印加を途中で停止することで、ランダムな値を示す複数のデータを生成(記録)することもできる。これら(i)および(ii)のいずれの場合であっても、抵抗変化型メモリ501に記録されるデータは、各メモリセル503の抵抗値が初期抵抗値範囲にあるか否かの違いを利用して記録されたデータ(第1種データ)である。
【0303】
以上説明したように、実施の形態2における抵抗変化型メモリ501は、以下の特徴を有する。
【0304】
(第1の特徴)
フォーミングのために印加される電気的ストレス(フォーミングストレス)を制御することにより、初期抵抗値範囲に設定されたメモリセル503の個数と、可変状態に設定されたメモリセル503の個数を適切な割合に設定することができる。これにより、特殊書き込みコマンドおよび特殊読み出しコマンドのそれぞれでアクセスする領域の大きさを調整し、複数のブロック固有鍵を生成および格納できるように構成することが可能である。
【0305】
(第2の特徴)
抵抗変化素子に固有のランダムな現象である初期状態から可変状態への変化を用いてランダム値の生成を行うことにより、予測不可能な態様でランダム値を生成することが可能である。これにより、例えば、より秘匿性の高い複数のブロック固有鍵の生成が可能である。
【0306】
(第3の特徴)
特殊書き込みコマンドにより抵抗変化型メモリ501にブロック固有鍵等の秘匿データを書き込み、暗号化記録装置2が該秘匿データを読み出す際に特殊読み込みコマンドを用いることができる。これにより、該秘匿データは暗号化記録装置2内部からのみ読み書き可能となり、アクセス装置1からは直接読み出すことはできない。
【0307】
すなわち、抵抗変化型メモリ501は、上記特徴により、ランダム性の高いブロック固有鍵を生成すると共に、ブロック固有鍵を安全に秘匿することが可能である。そのため、抵抗変化型メモリ501は、第一不揮発性メモリ24に使用することに適した不揮発性メモリである。
【0308】
以上のように、本開示における技術の例示として、実施の形態1および2を説明した。そのために、添付図面および詳細な説明を提供した。
【0309】
したがって、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、上記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
【0310】
また、本発明を上記の実施の形態1および2に基づいて説明してきたが、本発明は上記の実施の形態1および2に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。実施の形態1および2で記載された数値は一例であり、他の値を使用してもよい。また、実施の形態1において説明した種々の変形例を実施の形態2に適用しても構わない。