JP2017521795A - 重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイス - Google Patents

重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイス Download PDF

Info

Publication number
JP2017521795A
JP2017521795A JP2017502687A JP2017502687A JP2017521795A JP 2017521795 A JP2017521795 A JP 2017521795A JP 2017502687 A JP2017502687 A JP 2017502687A JP 2017502687 A JP2017502687 A JP 2017502687A JP 2017521795 A JP2017521795 A JP 2017521795A
Authority
JP
Japan
Prior art keywords
flash memory
key
data
host system
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017502687A
Other languages
English (en)
Other versions
JP6585153B2 (ja
Inventor
センター、ジェフリー・ビー.
Original Assignee
ビーエイイー・システムズ・インフォメーション・アンド・エレクトロニック・システムズ・インテグレイション・インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ビーエイイー・システムズ・インフォメーション・アンド・エレクトロニック・システムズ・インテグレイション・インコーポレーテッド filed Critical ビーエイイー・システムズ・インフォメーション・アンド・エレクトロニック・システムズ・インテグレイション・インコーポレーテッド
Publication of JP2017521795A publication Critical patent/JP2017521795A/ja
Application granted granted Critical
Publication of JP6585153B2 publication Critical patent/JP6585153B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

データを暗号化し、ホストシステムと関連付けられた不揮発性フラッシュメモリにデータを記憶するためのフラッシュメモリを用いたプロセスおよびデバイスが記載される。デバイスは、ホストシステムとのインターフェイスのために、フラッシュメモリ、暗号化エンジン、鍵記憶部、SRAMを、および、関連する制御回路を含む。電源が投入されたとき、デバイスは、まず、有効な暗号化鍵が鍵記憶部に保持されているかどうかを決定する。有効な鍵が記憶部に保持されている場合、フラッシュメモリ内の暗号化されたデータがエンジンによって復号され、ホストシステムによる使用のためにSRAMに記憶される準備ができたとき、または、ホストシステムから発せられ、SRAMに記憶されたデータがエンジンによって暗号化され、フラッシュメモリにプログラムされる準備ができたとき、プログラムフラグが設定される。デバイスは、データがメモリに静止している間は暗号化されていなければならない任意のホストシステムの中に組み込まれ得る。

Description

関連出願
この出願は、「Self−encrypting Flash Memory」と題する、2014年7月16日に出願された米国仮特許出願第62/025,052の優先権を主張し、その内容が参照によってこの中に組み込まれる。
本発明は、概括的に、フラッシュメモリに関し、特に、重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイスに関する。
フラッシュメモリは、電気的消去可能プログラマブル読み取り専用メモリ(electronically erasable programmable read only memories:EEPROM(登録商標))から開発されたもので、一般的に、それらが存在するシステムの中のプロセッサによるアクセスおよび使用のためのプログラムや他の不揮発性データを記憶するために使用される。フラッシュメモリは、メモリ内に埋め込まれた個々のメモリセルの内部特性に応じて、NANDまたはNOR型のいずれであってもよい。フラッシュメモリに記憶されたデータの全てまたは選択されたブロックは、電気的に消去され、再プログラムされ得る。http://en.wikipedia.org/Flash_memory、および、その中で引用された文献を参照する。
フラッシュメモリに記憶されるべきデータが占有または機密扱いである場合、データは、メモリに静止している間は暗号化されている必要があり得る。例えば、DFARS(国防省調達規則) 252.204−7012(2013年11月18日)において米国国防省(Department of Defense:DoD)によって課せられた現在の耐タンパ(anti-tamper:AT)要件に準拠するために、請負業者は、機密扱いを受けていない管理された技術情報(controlled technical information:CTI)を危うくされることから保護するために適切なセキュリティを提供する必要がある。CTIは、引用された文献において、情報のアクセス、使用、複製、修正、遂行、表示、リリース、開示、または、拡散に関する管理の対象である軍事または宇宙用途をもった技術的な情報として定義される。また、国防総省令第5200.44(2012年11月5日)を参照する。
他の専有の用途は、重要なまたは機密扱いのソフトウェアやデータが、ホストシステムのメモリに記憶される前に暗号化されることを必要とし得る。メモリ内の記憶のためにそのようなソフトウェアやデータを暗号化するために、外部の暗号化エンジンと関連するプロセッサがシステムに追加されなければならない。即ち、システムにもともと埋め込まれたものの外部のハードウェアおよびソフトウェアが、暗号化のために必要とされる。複数のエンクロージャに含まれていてもよいこれらの追加のコンポーネントは、フラッシュメモリと該メモリにアクセスするホストシステムプロセッサとの間に課される必要があり、従って、暗号化プロセスの全体を複雑にし、遅くする。
自己暗号化ソリッドステートディスクドライブは、例えば、米国、カリフォルニア州、アリソビエホのMicrosemi社から市販されている。しかし、これらのデバイスは、組み込みシステムの一部ではなく、それらは、動作するために、追加のバス(例えば、SATA、または、USB)とソフトウェアドライバを必要とする。しかし、知られている限り、組み込みシステムの一部であって、特別なバスやドライバなしで自己暗号化機能を特徴とするフラッシュメモリは、以前に提供または開示されていない。
従って、外部の暗号化エンジンや追加のハードウェアとソフトウェアを必要とせずに、メモリに記憶された情報またはデータが、メモリ内に静止している間には暗号化された形態に保たれるように構成された、組み込み可能なフラッシュメモリを用いたデバイスに対する要求がある。
本発明に従って、ホストシステムがメモリにデータを書き込み、メモリからデータを読み出すような、ホストシステムに関連付けられたフラッシュメモリ内の記憶のための機密扱いのプログラムまたは他のデータを暗号化する方法は、フラッシュメモリと、ホストシステムから発せられたデータを暗号化し、メモリに暗号化されたデータを書き込むため、および、ホストシステムによるアクセスのためにメモリに記憶されたデータを復号するための暗号化エンジンと、ホストシステムからエンジンにデータを供給するため、および、ホストシステムによるアクセスのためにエンジンから復号されたデータを受け取るためのスタティックランダムアクセスメモリ(static random access memory:SRAM)と、ユーザまたは暗号化エンジンのいずれかによって供給された暗号化鍵を保持するための鍵記憶部とを含むフラッシュメモリを用いたデバイスを提供することを含む。電源が投入されると、デバイスは、まず、有効な暗号化鍵が鍵記憶部に保持されているかどうかを決定する。保持されている場合で、プログラムフラグが設定されている場合、フラッシュメモリ内の暗号化されたデータは、エンジンによって復号され、ホストシステムによるアクセスのためにSRAMに記憶され、ホストシステムから発せられ、SRAMに記憶されたデータは、エンジンによって暗号化され、フラッシュメモリに記憶される。
本発明の他の態様によれば、機密扱いの情報またはデータを記憶するためのフラッシュメモリを用いたデバイスは、フラッシュメモリと、ホストシステムから発するデータを暗号化し、フラッシュメモリに暗号化されたデータを記憶するため、および、メモリに記憶された暗号化されたデータを復号するための暗号化エンジンと、所望される場合、暗号化鍵を作成するための関連付けられた乱数発生器とを含む。鍵記憶部は、暗号化エンジンによって作成されるか、ユーザによって鍵記憶部に入力されるかのいずれかの暗号化鍵を保持する。スタティックランダムアクセスメモリ(SRAM)は、ホストシステムから発するデータを暗号化エンジンに供給し、ホストシステムによるアクセスのためにエンジンからの復号されたデータを受け取る。デバイスの制御回路は、まず、有効な鍵が鍵記憶部に保持されているかどうかを決定するように構成される。保持されている場合、次に、該回路は、フラッシュメモリ内の暗号化されたデータが暗号化エンジンによる復号のための準備ができていることか、または、フラッシュメモリがエンジンからの暗号化されたデータでプログラムされる準備ができていることかのいずれかを示すように、プログラムフラグが設定されているかどうかを決定する。
本発明のより良い理解のために、添付の図面と添付の特許請求の範囲と併せて、以下の記載への参照がなされる。
図1は、本発明のフラッシュメモリを用いたデバイスの概略ブロック図である。 図2は、図1のメモリデバイスの動作を示すフロー図である。
詳細な説明
図1は、本発明に従った、データ静止時の保護を確実にするために暗号化機能を用いるフラッシュメモリを用いたデバイス10を示す。デバイス10は、静止時の間に暗号化されているべく、ホストシステム内のプロセッサによるアクセスのためにメモリに記憶された場合、データを必要とする既存のまたは将来のホストシステムで使用され得る。この中で使用される場合、「データ」の用語は、情報が重要かまたは機密扱いにされているか否かにかかわらず、プロセッサによるアクセスのためにメモリに記憶することができる任意の情報を広く指す。
メモリデバイス10は、従来のNANDまたはNOR型フラッシュメモリ12と、メモリ12の対応するポートに接続される入力および出力(I/O)ポートをもった暗号化エンジン14を含む。基本的に、エンジン14は、乱数発生器14aを含み、ホストシステムプロセッサから発するデータを暗号化するため、メモリ12に暗号化されたデータを書き込むため、および、ホストシステムプロセッサによって呼び出されたとき、メモリ12に記憶されたデータを復号するために、既知の方法で構成される。エンジン14は、好ましくは、連邦情報処理標準(Federal Information Processing Standards:FIPS)公報 197(2001年11月)、および、NIST(米国立国標準技術研究所)特別公報 800−90A(2012年1月)と800−38A(2001年)(これらの全ての関連する内容が参照により組み込まれる)から詳細が得られる、256ビットのAdvanced Encryption Standard(AES)を実装する。エンジン14は、また、メモリ12に記憶されるのであろう情報のために、所望または必要であれば、他の既知の暗号化鍵を実装するように構成されてもよい。
メモリデバイス10は、また、ホストシステムとのインターフェイスをするために、スタティックランダムアクセスメモリ(SRAM)16を含む。ホストシステムプロセッサがSARAM16からの読み取り、および、SRAM16に書き込むから、デバイス10は、読み取り/書き込み動作について、典型的なフラッシュメモリより高速に応答する。加えて、デバイス10は、図1に示されたように、暗号化エンジン14に接続されるバッテリバックアップされた鍵記憶部18と、鍵記憶部18におよびSRAM16に接続された制御回路20を含む。鍵記憶部18と制御回路20とに関連した端子またはピンが以下に記載される。鍵記憶部18および制御回路20の更なる詳細は、この技術に習熟した者には明らかである。
鍵選択22 − ユーザが供給した暗号鍵または自己生成され暗号鍵のいずれかを記憶部が受容するように、制御回路20の端子またはピン22は、鍵記憶部18を制御するために与えられる。例えば、ピン22が「high」に設定される場合、暗号鍵はユーザによって提供される。ピン22が「low」である場合、鍵は乱数発生器14aを介して生成される。ユーザは、操作の彼または彼女の構想に基づいて、この決定をなす。ユーザが供給した鍵は、タンパ企て信号がピン24上で制御回路20に入力された(下記参照)後、フラッシュメモリ12に存在する暗号化されたデータが回復されることを可能にする。しかし、ユーザが供給する鍵は、ユーザに、管理をし、権限を付与された職員の間での鍵の配布に責任をもつことを要求する。内部で生成された鍵は、ユーザに、鍵配布を管理することを要求しないが、タンパ企て信号が回路20に入力されると、フラッシュメモリ12上に存在するすべてのデータが回復できなくなる。いずれの場合にも、ユーザが供給したか自己生成されたかにかかわらず、タンパイベントの信号がない限り、新しい鍵は、フラッシュメモリ12が暗号化されたデータで再プログラムされることを可能にする。
鍵バス26 − これは、ユーザが供給する暗号鍵を鍵記憶部18に入力するためのシリアルバスである。例えば、鍵選択ピン22が「high」に設定されている場合、バス26はアクティブであり、ユーザが供給する鍵が鍵記憶部18の中にバス26を介して入力される。しかし、鍵選択ピン22が「low」に設定されている場合は、バス26が非動作になっている。いかなる状況においても、暗号鍵は、バス26または他の方法を介してデバイス10から読み出されることはあり得ない。
タンパ24 − タンパ企て信号がピン24上で制御回路20に入力されると、信号が検出されたときに主電源が存在するならば、制御回路20は、SRAM16に記憶された全ての情報と鍵記憶部18に保持された全ての鍵を消去するように構成される。タンパ企てが信号されたときに主電源が存在しないならば、SRAMは何のデータも保有していないので、回路20は、鍵記憶部18によってその時保持されている鍵(もしあれば)を消去するための動作だけをする。
Vbat28 − バックアップバッテリからの電圧が鍵記憶部18のピン28に与えられている場合、鍵記憶部18に保持されている任意の鍵は、主電源が失われた場合に保存される。主電源が存在する場合、鍵は、通常、鍵記憶部に保持されているから、フラッシュメモリを用いたデバイス10の動作や安定性に影響を与えることなく、主電源が存在している限り、バッテリは交換可能である。主電源とバックアップバッテリからのピン28上の電圧の両方がなくなった場合、鍵記憶部18は、暗号鍵を保持しなくなる。
<動作>
図2のフロー図に示されるように、電源投入またはリセットに応じて、制御回路20は、鍵記憶部18が有効な鍵(例えば、全て1または全てゼロでない)が含まれているかどうかを決定するよう構成される。有効な鍵が見つけられた場合、回路20は、フラッシュメモリが暗号化されたデータでプログラムされていることを示すプログラムフラグを検索する。プログラムフラグが設定されている場合、回路20は、エンジン14に、フラッシュメモリ12に記憶されたデータを復号させ、SRAM16に復号されたデータを書き込ませる。プログラムフラグ設定されていない場合、回路20は、フラッシュメモリ12がエンジン14によって復号されるべきデータでプログラムされていることを示すよう、プログラムフラグが設定されるのを待つ。有効な鍵が決定されているかぎり、フラッシュメモリを用いたデバイス10は動作し続ける。
制御回路20が、鍵記憶部18は有効な鍵を含んでいないと決定した場合、プログラムフラグは(以前に設定されているならば)クリアされ、鍵選択ピン22の状態が読み取られる。ピンが、例えば、「high」にされていた場合、回路20は、ユーザによって鍵記憶部18に供給される有効な鍵を待つ。ひとたび有効な鍵がロードされると、回路は、鍵が存在する場合について上述したように応答するよう構成される。例えば、タンパ企ての後、「有効」だが、不適当であったり、正しくなかったりした鍵がロードされた場合、暗号化エンジン14は、フラッシュメモリ12からの暗号化されたデータを処理し得るが、エンジン14は、不適当な鍵を使用しているとき、理解できるかまたは使用可能なデータを得られないことを注記する。
ピン22が、例えば、「low」にされ、有効な鍵が鍵記憶部18に保持されていないことを示す場合、回路20は、乱数発生器14aによって提供される鍵を生成するよう構成される。ひとたび有効な鍵が生成されると、回路20は、フラッシュメモリ12が暗号化されたデータでプログラムされるのを待ち、プログラムフラグがセットされる。電源が除去され、その後復元された場合、デバイス10がプログラムフラグによって示された状態に戻るように、プログラムフラグは、好ましくは、不揮発性である。
ユーザによって、または、自己生成されたかどうかにかかわらず、有効な鍵が鍵記憶部18に入力された後にのみ設定され得るプログラムフラグを読み取ることにより、制御回路20は、フラッシュメモリ12のプログラムされている状態とプログラムされていない状態との間を区別するように動作するよう構成される。電源投入され、記憶部18に保持された有効な鍵を有している時、プログラムフラグが設定されている場合に、不揮発性のフラッシュメモリ12に存在する任意のデータが復号され、フラグが設定されていない場合に、フラッシュメモリ12のプログラミングが許容される。
動作中に、フラッシュメモリ12に書き込まれるべき、ホストシステムプロセッサから発する任意のデータは、メモリ12にデータを記憶する前に、エンジン14によって暗号化される。ホストシステムからのデータがメモリデバイス10のSRAM16に最初に書き込まれるので(デバイス10の動作では、全ての読み取りと書き込みはSRAM16を介する)、追加のデータを暗号化して、フラッシュメモリに書き込む処理は、アクセス時間に影響を与えない。
本発明のフラッシュメモリを用いたデバイス10は、システムの観点から、標準的なフラッシュデバイスと同様に動作することが理解される。従って、ホストシステムへ、および、ホストシステムからの典型的なアドレス、データ、および、制御信号(図1の下部を参照)は、ここでは詳細に記載されない。そして、ホストシステムプロセッサが、実際に、SRAM16からの読み取り/SRAM16への書き込みをするから、メモリデバイス10は、読み取り/書き込み動作に、典型的なフラッシュメモリより高速に応答する。
メモリデバイス10は、バッテリバックアップおよびタンパ標示が利用可能である任意のホストシステムで動作し得る。また、それは、鍵無し(独自のキーを生成する)で、または、ユーザが供給する鍵を用いて動作し得る。いずれの場合も、鍵が外部から読み取られることはできない。重要なことは、デバイス10が、個別の暗号化ステップの必要性を回避し、フラッシュメモリ12に記憶されたデータが、常に、それが組み込まれるホストシステムからの介在なしで、静止時に暗号化されていることを確実にする。外部のハードウェアまたはソフトウェアは、暗号化機能を達成するために必要とされない。
本発明のある実施形態がこの中に記載され、示されているが、様々な修正、追加、および、変更が、本発明の真意および範囲から逸脱することなくなされ得ることが、本技術に習熟した者によって理解される。従って、本発明は、添付の特許請求の範囲内にあるそのような修正、追加、および、変更の全てを包含する。

Claims (11)

  1. ホストシステムのフラッシュメモリにおける不揮発性の記憶のためにプログラムおよび他のデータを暗号化する方法であって、前記ホストシステム内のプロセッサは、前記フラッシュメモリにデータを書き込み、前記フラッシュメモリからデータを読み取るようにプログラムされ、
    フラッシュメモリを用いたデバイスであって、フラッシュメモリと、前記ホストシステムから発するデータを暗号化し、前記フラッシュメモリに暗号化された前記データを書き込むために、および、前記ホストシステムによるアクセスのために前記フラッシュメモリに記憶されたデータを復号するために、前記フラッシュメモリに接続された暗号化エンジンと、前記ホストシステムから前記暗号化エンジンに前記データを供給するために、および、前記ホストシステムによるアクセスのために前記暗号化エンジンから復号された前記データを受け取るために前記暗号化エンジンに接続されたスタティックランダムアクセスメモリ(SRAM)と、ユーザまたは前記暗号化エンジンのいずれかによって供給された暗号化鍵を保持するための鍵記憶部と、前記フラッシュメモリを用いたデバイスのコンポーネントの動作を制御するための制御回路とを含む前記フラッシュメモリを用いたデバイスを提供することと、
    有効な暗号化鍵が前記鍵記憶部に保持されているかどうかを決定することと、
    有効な鍵が前記鍵記憶部に保持されている場合、次に、前記フラッシュメモリに記憶された任意の暗号化されたデータが復号される準備ができていることを示すように、プログラムフラグが設定されているかどうかを決定することと、
    前記プログラムフラグが設定されている場合、前記ホストシステムの動作に従って、前記フラッシュメモリにデータを書き込むことと、前記フラッシュメモリからデータを読み取ることとを含む第1の状態に遷移することと、
    前記プログラムフラグが設定されていない場合、前記プログラムフラグが設定されるのを待つことを含む第2の状態に遷移することと、
    を備える方法。
  2. 前記第1の状態は、前記暗号化エンジンによる使用のために、前記SRAMに前記データを記憶し、前記データを暗号化し、前記フラッシュメモリに暗号化された前記データを記憶することによって、前記ホストシステムにより前記フラッシュメモリを用いたデバイスに与えられるデータを受け入れることを含む、請求項1に記載の方法。
  3. 有効な鍵が記憶部に保持されていない場合、前記制御回路に入力される鍵選択の状態に従って、(a)暗号化鍵を生成することと、前記第2の状態に遷移することとを含む第3の状態に遷移すること、または、(b)有効な鍵がユーザによって入力されるのを待つことを含む第4の状態に遷移することと、のいずれかをするように前記鍵記憶部を構成することを含む、請求項1に記載の方法。
  4. 前記暗号化エンジンによって生成されるか、ユーザによって入力されるかにかかわらず、前記鍵記憶部の揮発性の鍵記憶メモリ領域に、前記暗号化鍵を記憶することと、
    前記SRAMと前記フラッシュメモリの動作領域から前記鍵記憶メモリ領域を安全に分離することと、
    を含む、請求項1に記載の方法。
  5. 主電源またはバックアップバッテリのいずれかから、前記鍵記憶メモリ領域を含む、前記フラッシュメモリを用いたデバイスに電源供給することを含む、請求項4に記載の方法。
  6. 重要なまたは機密扱いの情報またはデータを記憶するためのフラッシュメモリを用いたデバイスであって、
    フラッシュメモリと、
    ホストシステムのプロセッサから発するデータを暗号化し、前記フラッシュメモリに暗号化された前記データを記憶するために、および、前記フラッシュメモリに記憶された暗号化されたデータを復号するために、前記フラッシュメモリに接続された暗号化エンジンと、
    前記暗号化エンジンに関連付けられ、所望されたときに暗号化鍵を生成するために構成された乱数発生器と、
    鍵記憶部であって、前記暗号化エンジンによって生成されたか、ユーザによって前記鍵記憶部に入力されたかのいずれかである暗号化鍵を保持するために、前記暗号化エンジンに接続される鍵記憶部と、
    前記ホストシステムから発する前記データを前記暗号化エンジンに供給するために、および、前記ホストシステムによるアクセスのために前記暗号化エンジンから復号された前記データを受け取り、記憶するために、前記暗号化エンジンに接続されたスタティックランダムアクセスメモリ(SRAM)と、
    前記鍵記憶部と前記SRAMに接続される制御回路と、ここにおいて、前記制御回路は、鍵選択とタンパ企てに対応する入力信号に応答して、前記フラッシュメモリを用いたデバイスの動作を制御するために、および、前記フラッシュメモリにおける暗号化されたデータが前記暗号化エンジンによる復号のための準備ができているときに、および、前記フラッシュメモリが前記暗号化エンジンからの暗号化されたデータでプログラムされる準備ができているときに、プログラムフラグを設定するために、構成される、
    フラッシュメモリを用いたデバイス。
  7. 前記鍵記憶部は、前記SRAMと前記フラッシュメモリの動作領域から安全に分離される揮発性の鍵記憶メモリ領域を含む、請求項6に記載のフラッシュメモリを用いたデバイス。
  8. 前記鍵記憶メモリ領域に電力を供給するための主電源とバックアップバッテリを含む、請求項7に記載のフラッシュメモリを用いたデバイス。
  9. 前記制御回路は、(a)有効な暗号化鍵が前記鍵記憶部に保持されているかどうかを決定すること、(b)有効な鍵が前記鍵記憶部に保持されている場合、次に、前記プログラムフラグが設定されているかどうかを決定すること、(c)前記プログラムフラグが設定されている場合、前記ホストシステムの動作に応答して、前記フラッシュメモリにデータを書き込むことと、前記フラッシュメモリからデータを読み取ることを含む第1の状態に遷移すること、および、(d)前記プログラムフラグが設定されていない場合、前記プログラムフラグが設定されるのを待つことを含む第2の状態に遷移すること、のために動作する、請求項7に記載のフラッシュメモリを用いたデバイス。
  10. 前記第1の状態にあるとき、前記フラッシュメモリを用いたデバイスが、(a)前記SRAMに前記データを記憶することによって、前記ホストシステムにより前記フラッシュメモリを用いたデバイスに与えられたデータを受け入れ、(b)前記データを暗号化し、および、(c)前記フラッシュメモリに暗号化された前記データを記憶する、ように、前記制御回路が構成される、請求項9に記載のフラッシュメモリを用いたデバイス。
  11. 有効な暗号化鍵が前記鍵記憶部に保持されていない場合、前記フラッシュメモリを用いたデバイスが、前記制御回路に入力される鍵選択信号に従って、(a)前記暗号化エンジンが鍵を生成し、その後、前記フラッシュメモリを用いたデバイスが前記第2の状態に遷移する第3の状態に遷移するか、または、(b)前記フラッシュメモリを用いたデバイスが、有効な鍵がユーザによって入力されるのを待つ第4の状態に遷移するか、のいずれかを行うように、前記制御回路が構成される、請求項9に記載のフラッシュメモリを用いたデバイス。
JP2017502687A 2014-07-16 2015-05-19 重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイス Active JP6585153B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201462025052P 2014-07-16 2014-07-16
US62/025,052 2014-07-16
PCT/US2015/031586 WO2016010625A1 (en) 2014-07-16 2015-05-19 Flash memory device for storing sensitive information and other data

Publications (2)

Publication Number Publication Date
JP2017521795A true JP2017521795A (ja) 2017-08-03
JP6585153B2 JP6585153B2 (ja) 2019-10-02

Family

ID=55078899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017502687A Active JP6585153B2 (ja) 2014-07-16 2015-05-19 重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイス

Country Status (6)

Country Link
US (1) US10025728B2 (ja)
EP (1) EP3170087B1 (ja)
JP (1) JP6585153B2 (ja)
AU (1) AU2015290223B2 (ja)
CA (1) CA2955144C (ja)
WO (1) WO2016010625A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020529758A (ja) * 2017-08-08 2020-10-08 シー−スカイ マイクロシステムズ カンパニー,リミテッド 記憶データの暗号化及び復号の機器及び方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10476846B2 (en) * 2016-08-05 2019-11-12 The Boeing Company Data-at-rest (DAR) encryption for integrated storage media
US10979223B2 (en) * 2017-01-31 2021-04-13 Pure Storage, Inc. Separate encryption for a solid-state drive
GB201709499D0 (en) 2017-06-15 2017-08-02 Microsoft Technology Licensing Llc Memory management in non-volatile memory
KR102602696B1 (ko) * 2017-10-13 2023-11-16 삼성전자주식회사 암호화 장치 및 복호화 장치, 이들의 동작방법
CN112703703B (zh) * 2018-07-17 2024-04-12 J·B·坎特 用于存储敏感信息和其它数据的闪存设备
US11204714B2 (en) 2018-10-23 2021-12-21 Microsoft Technology Licensing, Llc Hybrid use of non-volatile memory as storage device and cache
TWI722496B (zh) * 2019-06-20 2021-03-21 慧榮科技股份有限公司 使用者資料的加解密方法及裝置
WO2021040721A1 (en) * 2019-08-29 2021-03-04 Google Llc Securing external data storage for a secure element integrated on a system-on-chip
US11221666B2 (en) * 2019-12-19 2022-01-11 Bae Systems Information And Electronic Systems Integration Inc. Externally powered cold key load
LU102287B1 (en) * 2020-12-15 2022-06-15 Microsoft Technology Licensing Llc Data security when tiering volatile and non-volatile byte-addressable memory

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040066274A1 (en) * 2002-10-07 2004-04-08 Doug Bailey Tamper detection and secure power failure recovery circuit
JP2004152123A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd 半導体集積回路装置、並びにプログラム引き渡し方法及びそのシステム
JP2008148095A (ja) * 2006-12-12 2008-06-26 Buffalo Inc 記憶装置及び利用者認証方法
JP2008310950A (ja) * 2008-07-07 2008-12-25 Renesas Technology Corp 半導体処理装置及びicカード
JP2010238216A (ja) * 2009-03-13 2010-10-21 Fujitsu Ltd 記憶装置、および記憶装置へのアクセスを制御するためのプログラム
US20120005488A1 (en) * 2006-09-11 2012-01-05 Samsung Electronics Co., Ltd. Encryption processor of memory card and method for writing and reading data using the same
US20140047246A1 (en) * 2012-08-07 2014-02-13 Samsung Electronics Co., Ltd. Flash memory device including key control logic and encryption key storing method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100397316B1 (ko) * 1998-01-21 2003-09-06 비.유.지., 인크. 기억 장치, 암호화ㆍ복호화 장치 및 불휘발성 메모리의액세스 방법
US7814337B2 (en) * 2000-01-06 2010-10-12 Super Talent Electronics, Inc. Secure flash-memory card reader with host-encrypted data on a flash-controller-mastered bus parallel to a local CPU bus carrying encrypted hashed password and user ID
JP2001175606A (ja) * 1999-12-20 2001-06-29 Sony Corp データ処理装置、データ処理機器およびその方法
US7817799B2 (en) * 2006-09-07 2010-10-19 International Business Machines Corporation Maintaining encryption key integrity
WO2013126422A1 (en) * 2012-02-21 2013-08-29 Microchip Technology Incorporated Cryptographic transmission system using key encryption key

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040066274A1 (en) * 2002-10-07 2004-04-08 Doug Bailey Tamper detection and secure power failure recovery circuit
JP2004152123A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd 半導体集積回路装置、並びにプログラム引き渡し方法及びそのシステム
US20120005488A1 (en) * 2006-09-11 2012-01-05 Samsung Electronics Co., Ltd. Encryption processor of memory card and method for writing and reading data using the same
JP2008148095A (ja) * 2006-12-12 2008-06-26 Buffalo Inc 記憶装置及び利用者認証方法
JP2008310950A (ja) * 2008-07-07 2008-12-25 Renesas Technology Corp 半導体処理装置及びicカード
JP2010238216A (ja) * 2009-03-13 2010-10-21 Fujitsu Ltd 記憶装置、および記憶装置へのアクセスを制御するためのプログラム
US20140047246A1 (en) * 2012-08-07 2014-02-13 Samsung Electronics Co., Ltd. Flash memory device including key control logic and encryption key storing method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020529758A (ja) * 2017-08-08 2020-10-08 シー−スカイ マイクロシステムズ カンパニー,リミテッド 記憶データの暗号化及び復号の機器及び方法
JP7222971B2 (ja) 2017-08-08 2023-02-15 シー-スカイ マイクロシステムズ カンパニー,リミテッド 記憶データの暗号化及び復号の機器及び方法

Also Published As

Publication number Publication date
CA2955144A1 (en) 2016-01-21
AU2015290223B2 (en) 2018-05-10
EP3170087A1 (en) 2017-05-24
EP3170087A4 (en) 2018-02-14
EP3170087B1 (en) 2019-05-01
JP6585153B2 (ja) 2019-10-02
US10025728B2 (en) 2018-07-17
CA2955144C (en) 2019-06-11
AU2015290223A1 (en) 2017-02-02
US20160232109A1 (en) 2016-08-11
WO2016010625A1 (en) 2016-01-21

Similar Documents

Publication Publication Date Title
JP6585153B2 (ja) 重要なまたは機密扱いの技術情報および他のデータを記憶するためのフラッシュメモリを用いたデバイス
JP4157595B2 (ja) セキュア処理装置、方法、プログラム
US20100058066A1 (en) Method and system for protecting data
US20080072071A1 (en) Hard disc streaming cryptographic operations with embedded authentication
US20160078252A1 (en) Address dependent data encryption
EP1056015A1 (en) Storage device, encrypting/decrypting device, and method for accessing nonvolatile memory
US20100058073A1 (en) Storage system, controller, and data protection method thereof
EP3007094B1 (en) Boot program, information processing apparatus, information processing system, information processing method, semiconductor apparatus, and program
JP4869337B2 (ja) データの安全な処理
JPWO2005004382A1 (ja) 暗号処理装置
US20170039397A1 (en) Encryption/decryption apparatus, controller and encryption key protection method
US10642984B2 (en) Secure drive and method for booting to known good-state
WO2015176531A1 (zh) 终端数据写入、读取的方法及装置
US9805186B2 (en) Hardware protection for encrypted strings and protection of security parameters
US11586775B2 (en) Securing data
US10880082B2 (en) Rekeying keys for encrypted data in nonvolatile memories
US9411984B2 (en) Cryptographic processing apparatus, cryptographic processing system, and cryptographic processing method
US10387662B2 (en) Flash memory device for storing sensitive information and other data
CN112703703B (zh) 用于存储敏感信息和其它数据的闪存设备
JP2011066926A (ja) データ漏洩防止システムおよびデータ漏洩防止方法
JP5055487B2 (ja) 半導体メモリおよび情報処理システム
JP2016045795A (ja) 不揮発性メモリ初期化システム及び不揮発性メモリ初期化方法
JP2011065669A (ja) 記憶装置およびデータ漏洩防止方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181211

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190904

R150 Certificate of patent or registration of utility model

Ref document number: 6585153

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250