JP6109441B1 - ラウンド削減型暗号を採用するxts暗号化システムとともに使用するための動的暗号化鍵 - Google Patents
ラウンド削減型暗号を採用するxts暗号化システムとともに使用するための動的暗号化鍵 Download PDFInfo
- Publication number
- JP6109441B1 JP6109441B1 JP2016555574A JP2016555574A JP6109441B1 JP 6109441 B1 JP6109441 B1 JP 6109441B1 JP 2016555574 A JP2016555574 A JP 2016555574A JP 2016555574 A JP2016555574 A JP 2016555574A JP 6109441 B1 JP6109441 B1 JP 6109441B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- modified
- round
- block
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
- H04L9/16—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
Abstract
Description
本出願は、内容全体が参照により本明細書に組み込まれる、2014年3月11日に米国特許商標庁に出願された、米国非仮特許出願第14/205,230号の優先権および利益を主張する。
いくつかの新規の特徴は、記憶デバイスに記憶してデータの秘密性を維持するために、データを暗号化することに関係する。新規の特徴は、システムオンチップ(SoC)デバイスにおいて使用されてもよいが、幅広いシステム、装置、およびデバイスにおいて、また様々な目標を達成するために適用可能である。
図1は、様々な新規の特徴が活用されてもよい一例による、モバイル通信デバイスのシステムオンチップ(SoC)プロセッサデバイス100を示す。SoCプロセッサは、Qualcomm Incorporatedによって製造されるSnapdragon(登録商標)プロセッサであってもよい。SoCプロセッサ100は、マルチコアCPU112を含むアプリケーションプロセッサ110を含む。アプリケーションプロセッサ110は、通常、モバイル通信デバイスのすべての構成要素の動作を制御する。一態様では、アプリケーションプロセッサ110は、上述の動的に生成されるK1'鍵などの、動的に生成される鍵を採用する修正されたXTS暗号化/解読を実行するように装備された、暗号化/解読構成要素150を含む。アプリケーションプロセッサ110は、SoCプロセッサ100の様々な構成要素のためのブートシーケンス命令を記憶するブート読取り専用メモリ(ROM)118を含んでもよい。SoCプロセッサ100は、アプリケーションプロセッサ110によって制御される1つまたは複数の周辺サブシステム120をさらに含む。周辺サブシステム120は、ストレージサブシステム(たとえば、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM))、ビデオ/グラフィックスサブシステム(たとえば、デジタル信号プロセッサ(DSP)、グラフィックスプロセッサユニット(GPU))、オーディオサブシステム(たとえば、DSP、アナログデジタル変換器(ADC)、デジタルアナログ変換器(DAC))、電力管理サブシステム、セキュリティサブシステム(たとえば、暗号化、デジタル著作権管理(DRM))、入出力(I/O)サブシステム(たとえば、キーボード、タッチスクリーン)、ならびに有線およびワイヤレスの接続性サブシステム(たとえば、ユニバーサルシリアルバス(USB)、全地球測位システム(GPS)、Wi-Fi、グローバルシステムモバイル(GSM(登録商標))、符号分割多元接続(CDMA)、4Gロングタームエボリューション(LTE)モデム)を含んでもよいが、これに限定されない。モデムサブシステムである例示的な周辺サブシステム120は、DSP122、様々なハードウェア(HW)およびソフトウェア(SW)構成要素124、ならびに様々な無線周波数(RF)構成要素126を含む。一態様では、各周辺サブシステム120はまた、関連する周辺サブシステム120のプライマリブートイメージ(図示せず)を記憶するブートROM128を含む。
図2は、図1のSoC処理回路、または他の適切に装備されたデバイス、システム、もしくは処理回路によって採用されてもよい、データを暗号化するために静的なK1鍵204および静的なK2鍵206と組み合わせて完全ラウンド暗号化ブロック暗号202を使用する例示的な手順200を示す。この実装形態は、たとえば、暗号化とその後の解読の両方の間にわたり完全ラウンド暗号が採用されてもよいような、解読の間にわたり読取りレイテンシが問題でないシステムにおいて使用されてもよい。再び、IEEE規格1619-2007を参照のこと。このモードでは、ページインデックス210(128ビットであってもよい)をK2鍵206の下で暗号化するために、完全ラウンドブロック暗号208が使用される(ここで、ページインデックスが「微調整(TWEAK)」と呼ばれる場合もある)。Vで示されるとともにK2の修正されたバージョンと見なされてもよいブロック暗号208の出力は、212においてαj214と乗算されて入出力白色化値をもたらし、ここで、αは定数であり、jはブロックインデックス(暗号化されるべきデータのページ内でのオフセットであってもよい)を表す。暗号化されるべきデータ216は、次いで、218において白色化値と排他的論理和がとられ、「白色化された」データとして完全ラウンド暗号化暗号202に入力される。白色化されたデータは、次いで、完全ラウンド暗号化暗号によってK1の下で暗号化される。XOR関数212によって生成された入出力白色化値は、次いで、220において完全ブロック暗号からの出力データと排他的論理和がとられて最終暗号文222をもたらし、最終暗号文222は、たとえば、図1に示すタイプのオフチップ記憶デバイス、またはいくつかの他の適切なストレージロケーションに記憶されてもよい。完全ラウンド解読暗号を使用して暗号文を平文に戻して解読するために、これらの手順が逆転されてもよい。
図4は、図1のSoC処理回路、または他の適切に装備されたデバイス、システム、もしくは処理回路によって採用されてもよい、XTS暗号とともに使用するための動的に生成される(または、そうでなければ動的に取得される)鍵K1'を採用することによってデータ秘密性を改善するための手順400の概要を示す。ステップ402において、修正された第1の鍵K1'を生成またはそうでなければ取得するために、データ単位インデックスが、第1のブロック暗号を使用して第1の鍵(K1)の下で(または、「に基づいて」もしくは「を使用して」など)動的に暗号化される。ステップ404において、データが、完全ブロック暗号よりもラウンドが少ないラウンド削減型暗号化暗号を使用して、修正された第1の鍵(K1')の下で暗号化される。ステップ406において、暗号化されたデータ(たとえば、暗号文)が、オフチップメモリデバイスなどの記憶デバイスに記憶される。静的な鍵ではなく動的に生成された鍵K1'をラウンド削減型暗号化暗号とともに使用することによって、K1'鍵が攻撃者によって開示または取得される場合、データ単位インデックスに関連付けられたアドレス空間内の、すなわち、アドレス空間のすべてのページ内のデータのすべてではなく、K1'鍵を生成するために使用されたインデックスと関連したデータ単位内のデータだけが危険な状態にある。ステップ408に示すように、その後、概して同じ鍵およびインデックスを用いてプロセスを逆転させることによって、データが解読されて元のデータ(たとえば、平文)を明らかにし、または再生成してもよい。
図8は、その後、暗号文を解読する際に使用するための例示的な解読手順を示し、ここでやはり、手順は、図1のSoC処理回路、または他の適切に装備されたデバイス、システム、もしくは処理回路によって採用されてもよい。図8の手順800は、解読されるべきデータがオフチップDDR RAMなどの記憶デバイスからフェッチされるステップ801において開始する。ステップ802において、データがフェッチされながら、処理回路が、nビットのデータ単位インデックスを暗号化し、ここで、インデックスは解読されるべきデータのページに対応し、nは暗号のブロックサイズである。修正された第1の鍵(K1')を生成またはそうでなければ取得するために、データ単位インデックスは、完全ラウンドブロック暗号を使用して第1の鍵(K1)の下で暗号化される。ステップ804において、データがフェッチされながら、Vと示される修正された第2の鍵を生成またはそうでなければ取得するために、処理回路が、同じ完全ラウンドブロック暗号の第2のインスタンスを使用して第2の鍵(K2)の下でnビットのデータ単位インデックスを暗号化する。ステップ806において、依然としてフェッチしながら、処理回路が、白色化鍵を生成するために、Vをαjと乗算することによってブロックインデックスjをVに適用し、ここで、αはやはり定数値であり、jは解読されるべきデータのページ内でのブロックインデックスオフセットを表す。ステップ808において、処理回路は、次いで、白色化鍵を解読されるべきデータと排他的論理和をとることによって、(データをラウンド削減型解読暗号に入力する前に)白色化鍵をフェッチされた解読されるべきデータに適用する。ステップ810において、処理回路は、ラウンド削減型解読暗号を使用して、修正された第1の鍵の下で、白色化されたデータを解読し、ここにおいて、ラウンド削減型解読暗号は、やはり完全ブロック暗号に比べて削減された数のラウンドを採用する「分解された」暗号である。ステップ812において、処理回路が、解読された平文データを生成するために、白色化鍵をラウンド削減型解読暗号から出力されるデータと排他的論理和をとることによって、白色化鍵をラウンド削減型解読暗号の出力に再適用して、平文を取得し要求元に伝える。この点について、平文は、デバイスの構成要素による使用のために、SRAMなどのオンチップ記憶デバイスに記憶されてもよい。ストレージは、やはり一時的または過渡的であってもよい。
図10は、図1〜図9の構成要素および方法が実装されてもよい全体的なシステムまたは装置1000を示す。本開示の様々な態様によれば、要素、または要素の任意の部分、または要素の任意の組合せは、図1のSoC処理回路などの1つまたは複数の処理回路1004を含む処理システム1014を用いて実装されてもよい。たとえば、装置1000は、モバイル通信システムのユーザ機器(UE)であってもよい。装置1000は、無線ネットワークコントローラ(RNC)とともに使用されてもよい。SoCに加えて、処理回路1004の例は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、ステートマシン、ゲート論理、ディスクリートハードウェア回路、および本開示全体にわたって説明する様々な機能を実行するように構成される他の適切なハードウェアを含む。すなわち、装置1000において利用されるような処理回路1004は、上述され図1〜図9に示されるプロセス(および、以下で説明する図13〜図16において要約されるもの)のうちの1つまたは複数を実施するために使用されてもよい。詳細には、処理回路1004は、修正された第1の鍵を生成またはそうでなければ取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化することであって、データ単位インデックスが、ラウンド削減型暗号化暗号によって暗号化されるべきデータに対応する、暗号化することと、ラウンド削減型暗号化暗号を使用して、修正された第1の鍵に基づいてデータを暗号化することと、暗号化されたデータを記憶デバイスに記憶することとを行うように構成されてもよい。処理回路1004は、修正された第1の鍵を生成またはそうでなければ取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化することであって、データ単位インデックスが、ラウンド削減型解読暗号によって解読されるべきデータに対応する、暗号化することと、ラウンド削減型解読暗号を使用して、修正された第1の鍵に基づいてデータを解読することと、解読されたデータを記憶デバイスに記憶することとを行うように構成されてもよい。
110 アプリケーションプロセッサ
112 マルチコアCPU
118 ブート読取り専用メモリ
120 周辺サブシステム
122 DSP
124 ハードウェアおよびソフトウェア構成要素
126 無線周波数構成要素
128 周辺ブートROM
130 内部共有HWリソース
132 内部共有ストレージ
140 外部共有HWリソース
142 外部共有記憶デバイス
144 永久的データストレージ
150 暗号化/解読構成要素
202 完全ラウンド暗号化ブロック暗号
204 K1鍵
206 K2鍵
208 完全ラウンドブロック暗号
210 ページインデックス
212 XOR関数
216 暗号化されるべきデータ
222 最終暗号文
302 ラウンド削減型暗号化暗号
304 K1鍵
306 K2鍵
308 完全ラウンドブロック暗号
310 ページインデックス
316 暗号化されるべきデータ
322 最終暗号文
602 ラウンド削減型ブロック暗号化暗号
604 K1鍵
606 K2鍵
608 完全ラウンドブロック暗号
610 ページインデックス
612 乗算関数
616 暗号化されるべきデータ
619 完全ラウンド暗号
622 最終暗号文
700 記憶デバイス
704 データ単位
706 データ単位インデックス
902 ラウンド削減型解読暗号
904 K1鍵
906 K2鍵
908 完全ラウンドブロック暗号
910 ページインデックス
912 乗算関数
916 解読されるべきデータ
919 完全ラウンド暗号
922 最終平文
1000 システムまたは装置
1002 バス
1004 処理回路
1005 記憶デバイス
1006 非一時的プロセッサまたはコンピュータ可読媒体
1008 バスインターフェース
1010 トランシーバ
1012 ユーザインターフェース
1014 処理システム
1100 データ単位インデックス暗号化構成要素
1102 データ単位暗号化構成要素
1103 データ単位解読構成要素
1104 データ記憶および取出しコントローラ
1110 XTS完全ラウンド暗号
1112 ラウンド削減型暗号化暗号
1113 ラウンド削減型解読暗号
1114 白色化構成要素
1200 データ単位インデックス暗号化命令
1202 データ単位暗号化命令
1203 データ単位解読命令
1204 データ記憶および取出し命令
1205 記憶デバイス
1210 XTS完全ラウンド暗号命令
1212 ラウンド削減型暗号化暗号命令
1213 ラウンド削減型解読暗号命令
1214 白色化命令
Claims (32)
- ラウンド削減型暗号化ブロック暗号処理デバイスとともに使用するための、データを暗号化するための方法であって、
修正された第1の鍵を取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化するステップであって、前記データ単位インデックスが、前記ラウンド削減型暗号化ブロック暗号処理デバイスによって暗号化されるべきデータのページに対応するnビットのインデックスである、暗号化するステップと、
修正された第2の鍵を取得するために、第2のブロック暗号を使用して第2の鍵に基づいて前記データ単位インデックスを暗号化するステップと、
前記データを修正するために、前記修正された第2の鍵を前記データに適用するステップと、
暗号化されたデータを取得するために、前記ラウンド削減型暗号化ブロック暗号処理デバイスを使用して、前記修正された第1の鍵に基づいて前記修正されたデータを暗号化するステップと、
前記暗号化されたデータを電子的記憶デバイスに記憶するステップと
を備える、方法。 - 前記データを修正するために前記修正された第2の鍵を前記データに適用するステップが、
白色化鍵を取得するために、ブロックインデックスを前記修正された第2の鍵に適用するステップと、
前記データを前記ラウンド削減型暗号化ブロック暗号処理デバイスに適用する前に、暗号化されるべき前記データに前記白色化鍵を適用するステップとをさらに備え、
前記修正されたデータを暗号化するステップが、前記暗号化されたデータを取得するために、前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスの出力に再適用するステップをさらに備える、
請求項1に記載の方法。 - 前記第1および第2のブロック暗号が完全ブロック暗号である、請求項1に記載の方法。
- 前記データ単位インデックスが、前記第1および第2のブロック暗号に適用され、nが前記第1および第2のブロック暗号のブロックサイズである、請求項1に記載の方法。
- 前記白色化鍵を取得するために前記ブロックインデックスを前記修正された第2の鍵に適用するステップが、前記修正された第2の鍵をαjと乗算するステップを備え、αが定数であり、jが前記ブロックインデックスである、請求項2に記載の方法。
- 前記データを前記ラウンド削減型暗号化ブロック暗号処理デバイスに適用する前に前記白色化鍵を前記データに適用するステップが、前記白色化鍵を前記データと排他的論理和をとるステップを備える、請求項5に記載の方法。
- 前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスの前記出力に再適用するステップが、前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスから出力されるデータと排他的論理和をとるステップを備える、請求項6に記載の方法。
- 前記データ単位インデックスがページ番号に対応する、請求項1に記載の方法。
- 前記ラウンド削減型暗号化ブロック暗号処理デバイスが、オフチップ記憶デバイスに結合されるシステムオンチップデバイス内に実装されるとともに、暗号化されたデータを前記オフチップ記憶デバイスに記憶するステップをさらに備える、請求項1に記載の方法。
- データを記憶するための電子的記憶デバイスと、
前記記憶デバイスに結合される処理回路であって、
修正された第1の鍵を取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化することであって、前記データ単位インデックスが、ラウンド削減型暗号化ブロック暗号処理デバイスによって暗号化されるべきデータのページに対応するnビットのインデックスである、暗号化することと、
修正された第2の鍵を取得するために、第2のブロック暗号を使用して第2の鍵に基づいて前記データ単位インデックスを暗号化することと、
前記データを修正するために、前記修正された第2の鍵を前記データに適用することと、
暗号化されたデータを取得するために、前記ラウンド削減型暗号化ブロック暗号処理デバイスを使用して、前記修正された第1の鍵に基づいて前記修正されたデータを暗号化することと、
前記暗号化されたデータを前記記憶デバイスに記憶することと
を行うように構成される処理回路と
を備える、デバイス。 - 前記処理回路が、
白色化鍵を取得するために、ブロックインデックスを前記修正された第2の鍵に適用し、
前記データを前記ラウンド削減型暗号化暗号に適用する前に、暗号化されるべき前記データに前記白色化鍵を適用する
ことによって、前記データを修正するために前記修正された第2の鍵を前記データに適用するように構成され、
前記処理回路が、前記暗号化されたデータを取得するために、前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスの出力に再適用するようにさらに構成される、請求項10に記載のデバイス。 - 前記処理回路によって使用される前記第1および第2のブロック暗号が完全ブロック暗号である、請求項10に記載のデバイス。
- 前記処理回路によって使用される前記データ単位インデックスが、前記第1および第2のブロック暗号に適用され、nが前記第1および第2のブロック暗号のブロックサイズである、請求項10に記載のデバイス。
- 前記処理回路が、前記白色化鍵を取得するために、前記修正された第2の鍵をαjと乗算することによって、前記ブロックインデックスを前記修正された第2の鍵に適用するようにさらに構成され、αが定数であり、jが前記ブロックインデックスである、請求項11に記載のデバイス。
- 前記処理回路が、前記データを前記ラウンド削減型暗号化ブロック暗号処理デバイスに適用する前に、前記白色化鍵を前記データと排他的論理和をとることによって、前記白色化鍵を前記データに適用するようにさらに構成される、請求項14に記載のデバイス。
- 前記処理回路が、前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスから出力されるデータと排他的論理和をとることによって、前記白色化鍵を前記ラウンド削減型暗号化ブロック暗号処理デバイスの前記出力に再適用するようにさらに構成される、請求項15に記載のデバイス。
- 前記処理回路によって使用される前記データ単位インデックスがページ番号である、請求項10に記載のデバイス。
- 前記処理回路が、オフチップ記憶デバイスに結合されるシステムオンチップデバイスの構成要素であり、前記処理回路が、暗号化されたデータを前記オフチップ記憶デバイスに記憶するようにさらに構成される、請求項10に記載のデバイス。
- ラウンド削減型解読ブロック暗号処理デバイスとともに使用するための、データを解読するための方法であって、
修正された第1の鍵を取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化するステップであって、前記データ単位インデックスが、前記ラウンド削減型解読ブロック暗号処理デバイスによって解読されるべきデータのページに対応するnビットのインデックスである、暗号化するステップと、
修正された第2の鍵を取得するために、第2のブロック暗号を使用して第2の鍵に基づいて前記データ単位インデックスを暗号化するステップと、
前記データを修正するために、前記修正された第2の鍵を前記データに適用するステップと、
解読されたデータを取得するために、前記ラウンド削減型解読ブロック暗号処理デバイスを使用して、前記修正された第1の鍵に基づいて前記修正されたデータを解読するステップと、
前記解読されたデータを電子的記憶デバイスに記憶するステップと
を備える、方法。 - 前記データを修正するために、前記修正された第2の鍵を前記データに適用するステップが、
白色化鍵を取得するために、ブロックインデックスを前記修正された第2の鍵に適用するステップと、
前記データを前記ラウンド削減型解読ブロック暗号処理デバイスに適用する前に、解読されるべき前記データに前記白色化鍵を適用するステップとをさらに備え、
前記修正されたデータを解読するステップが、前記解読されたデータを取得するために、前記白色化鍵を前記ラウンド削減型解読暗号処理デバイスの出力に再適用するステップをさらに備える、
請求項19に記載の方法。 - 前記第1および第2のブロック暗号が完全ブロック暗号である、請求項19に記載の方法。
- 解読されるべきデータを記憶デバイスから取得するステップをさらに備え、前記修正された第1の鍵を取得するために前記第1のブロック暗号を使用して前記第1の鍵に基づいて前記データ単位インデックスを暗号化するステップと、前記修正された第2の鍵を取得するために前記第2のブロック暗号を使用して前記第2の鍵に基づいて前記データ単位インデックスを暗号化するステップとの両方が、前記ラウンド削減型解読ブロック暗号処理デバイスによって解読されるべき前記データを取得するための動作と並行に実行される、請求項19に記載の方法。
- データを記憶するための電子的記憶デバイスと、
前記記憶デバイスに結合される処理回路であって、
修正された第1の鍵を取得するために、第1のブロック暗号を使用して第1の鍵に基づいてデータ単位インデックスを暗号化することであって、前記データ単位インデックスが、ラウンド削減型解読ブロック暗号処理デバイスによって解読されるべきデータのページに対応するnビットのインデックスである、暗号化することと、
修正された第2の鍵を取得するために、第2のブロック暗号を使用して第2の鍵に基づいて前記データ単位インデックスを暗号化することと、
前記データを修正するために、前記修正された第2の鍵を前記データに適用することと、
解読されたデータを取得するために、前記ラウンド削減型解読ブロック暗号処理デバイスを使用して、前記修正された第1の鍵に基づいて前記修正されたデータを解読することと、
前記解読されたデータを記憶デバイスに記憶することと
を行うように構成される処理回路と
を備える、デバイス。 - 前記処理回路が、
白色化鍵を取得するために、ブロックインデックスを前記修正された第2の鍵に適用し、
前記データを前記ラウンド削減型解読ブロック暗号処理デバイスに適用する前に、解読されるべき前記データに前記白色化鍵を適用する
ことによって、前記データを修正するために前記修正された第2の鍵を前記データに適用するように構成され、
前記処理回路が、前記解読されたデータを取得するために、前記白色化鍵を前記ラウンド削減型解読ブロック暗号処理デバイスの出力に再適用するようにさらに構成される、
請求項23に記載のデバイス。 - 前記処理回路によって使用される前記第1および第2のブロック暗号が完全ブロック暗号である、請求項23に記載のデバイス。
- 前記処理回路が、解読されるべきデータを記憶デバイスから取得するようにさらに構成され、前記修正された第1の鍵を取得するために前記第1のブロック暗号を使用して前記第1の鍵に基づいて前記データ単位インデックスを暗号化することと、前記修正された第2の鍵を取得するために前記第2のブロック暗号を使用して前記第2の鍵に基づいて前記データ単位インデックスを暗号化することとの両方が、前記ラウンド削減型解読ブロック暗号処理デバイスによって解読されるべき前記データを取得するための動作と並行に実行される、請求項23に記載のデバイス。
- 前記修正された第1の鍵を取得するために前記第1のブロック暗号を使用して前記第1の鍵に基づいて前記データ単位インデックスを暗号化するステップと、前記修正された第2の鍵を取得するために前記第2のブロック暗号を使用して前記第2の鍵に基づいて前記データ単位インデックスを暗号化するステップとが、並行に実行される動作である、請求項1に記載の方法。
- 並行に実行される前記動作が、前記第1の鍵の下で前記データ単位インデックスを暗号化するステップであって、nが前記ラウンド削減型解読ブロック暗号処理デバイスの前記ブロックのサイズであるステップと、前記修正された第2の鍵を取得するために、前記第2の鍵の下で前記nビットのデータ単位インデックスを暗号化するステップとをさらに備える、請求項27に記載の方法。
- 前記処理回路が、並行動作で、前記修正された第1の鍵を取得するために前記第1のブロック暗号を使用して前記第1の鍵に基づいて前記データ単位インデックスを暗号化することと、前記修正された第2の鍵を取得するために前記第2のブロック暗号を使用して前記第2の鍵に基づいて前記データ単位インデックスを暗号化することとを行うようにさらに構成される、請求項10に記載のデバイス。
- 前記処理回路によって並行に実行される前記動作が、前記第1の鍵の下で前記データ単位インデックスを暗号化することであって、nが前記ラウンド削減型解読ブロック暗号処理デバイスの前記ブロックのサイズである、暗号化することと、前記修正された第2の鍵を取得するために、前記第2の鍵の下で前記nビットのデータ単位インデックスを暗号化することとをさらに備える、請求項29に記載のデバイス。
- 解読されるべき前記データを取得するステップが、前記データを前記記憶デバイスからフェッチするステップを備え、前記データがフェッチされながら、前記データ単位インデックスが前記第1の鍵の下で暗号化され、nが前記ラウンド削減型解読ブロック暗号処理デバイスの前記ブロックのサイズであり、前記修正された第2の鍵を取得するために、前記nビットのデータ単位インデックスが前記第2の鍵の下で暗号化され、白色化鍵を生成するために、ブロックインデックスが前記修正された第2の鍵に適用され、前記ブロックインデックスが、解読されるべきデータのページ内でのオフセットである、請求項22に記載の方法。
- 前記処理回路が、前記データを前記記憶デバイスからフェッチすることによって、解読されるべき前記データを取得するようにさらに構成され、前記データがフェッチされながら、前記データ単位インデックスが前記処理回路によって前記第1の鍵の下で暗号化され、nが前記ラウンド削減型解読ブロック暗号処理デバイスの前記ブロックのサイズであり、前記修正された第2の鍵を取得するために、前記nビットのデータ単位インデックスが前記処理回路によって前記第2の鍵の下で暗号化され、白色化鍵を生成するために、ブロックインデックスが前記修正された第2の鍵に適用され、前記ブロックインデックスが、解読されるべきデータのページ内でのオフセットである、請求項26に記載のデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/205,230 US9405919B2 (en) | 2014-03-11 | 2014-03-11 | Dynamic encryption keys for use with XTS encryption systems employing reduced-round ciphers |
US14/205,230 | 2014-03-11 | ||
PCT/US2015/018357 WO2015138179A1 (en) | 2014-03-11 | 2015-03-02 | Dynamic encryption keys for use with xts encryption systems employing reduced-round ciphers |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6109441B1 true JP6109441B1 (ja) | 2017-04-05 |
JP2017511900A JP2017511900A (ja) | 2017-04-27 |
Family
ID=52684702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016555574A Expired - Fee Related JP6109441B1 (ja) | 2014-03-11 | 2015-03-02 | ラウンド削減型暗号を採用するxts暗号化システムとともに使用するための動的暗号化鍵 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9405919B2 (ja) |
EP (1) | EP3117558A1 (ja) |
JP (1) | JP6109441B1 (ja) |
KR (1) | KR101767655B1 (ja) |
CN (1) | CN106105089B (ja) |
TW (1) | TWI570590B (ja) |
WO (1) | WO2015138179A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102376506B1 (ko) * | 2014-10-20 | 2022-03-18 | 삼성전자주식회사 | 암복호화기, 암복호화기를 포함하는 전자 장치 및 암복호화기의 동작 방법 |
US10346318B2 (en) * | 2016-09-13 | 2019-07-09 | Intel Corporation | Multi-stage memory integrity method and apparatus |
US11349668B2 (en) | 2017-02-21 | 2022-05-31 | Mitsubishi Electric Corporation | Encryption device and decryption device |
WO2018182666A1 (en) * | 2017-03-31 | 2018-10-04 | Intel Corporation | Gate for a transistor |
US10298553B2 (en) | 2017-03-31 | 2019-05-21 | Sprint Communications Company L.P. | Hardware trusted data communications over system-on-chip (SOC) architectures |
US10608822B2 (en) * | 2017-04-26 | 2020-03-31 | Nxp B.V. | Efficient calculation of message authentication codes for related data |
US11630920B2 (en) * | 2018-06-29 | 2023-04-18 | Intel Corporation | Memory tagging for side-channel defense, memory safety, and sandboxing |
US11349639B2 (en) | 2018-12-28 | 2022-05-31 | ePIC Blockchain Technologies Inc. | Circuit and method for overcoming memory bottleneck of ASIC-resistant cryptographic algorithms |
US11574079B2 (en) * | 2021-05-27 | 2023-02-07 | Nuvoton Technology Corporation | Multi-stage provisioning of secret data |
US20230094171A1 (en) * | 2021-09-25 | 2023-03-30 | Intel Corporation | Memory assisted incline encryption/decryption |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3658004B2 (ja) * | 1993-07-20 | 2005-06-08 | キヤノン株式会社 | 通信システム |
US6052466A (en) * | 1997-08-28 | 2000-04-18 | Telefonaktiebolaget L M Ericsson (Publ) | Encryption of data packets using a sequence of private keys generated from a public key exchange |
TW375721B (en) * | 1998-06-17 | 1999-12-01 | Ind Tech Res Inst | DES chip processor capable of executing data encryption standard (DES) operation |
JP2005505069A (ja) * | 2001-10-03 | 2005-02-17 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | メモリ暗号化 |
US20060195402A1 (en) * | 2002-02-27 | 2006-08-31 | Imagineer Software, Inc. | Secure data transmission using undiscoverable or black data |
WO2003101020A1 (en) * | 2002-05-23 | 2003-12-04 | Atmel Corporation | Advanced encryption standard (aes) hardware cryptographic engine |
US7472285B2 (en) | 2003-06-25 | 2008-12-30 | Intel Corporation | Apparatus and method for memory encryption with reduced decryption latency |
US7321659B2 (en) * | 2003-10-01 | 2008-01-22 | International Business Machines Corporation | Simple universal hash for plaintext aware encryption |
JP4884976B2 (ja) * | 2003-12-11 | 2012-02-29 | イルデト・コーポレート・ビー・ヴイ | 各暗号化ラウンドのコア暗号化関数を隠蔽するために置換を用いたブロック暗号化システム |
US7697681B2 (en) * | 2004-02-06 | 2010-04-13 | Nortel Networks Limited | Parallelizable integrity-aware encryption technique |
US8155306B2 (en) | 2004-12-09 | 2012-04-10 | Intel Corporation | Method and apparatus for increasing the speed of cryptographic processing |
FR2893796B1 (fr) * | 2005-11-21 | 2008-01-04 | Atmel Corp | Procede de protection par chiffrement |
US8189770B2 (en) * | 2006-08-10 | 2012-05-29 | Nec Corporation | Tweakable block encryption apparatus, method, and program |
US8036377B1 (en) * | 2006-12-12 | 2011-10-11 | Marvell International Ltd. | Method and apparatus of high speed encryption and decryption |
US7890565B2 (en) * | 2007-04-30 | 2011-02-15 | Lsi Corporation | Efficient hardware implementation of tweakable block cipher |
EP2186250B1 (en) | 2007-08-31 | 2019-03-27 | IP Reservoir, LLC | Method and apparatus for hardware-accelerated encryption/decryption |
US8121294B2 (en) * | 2008-10-21 | 2012-02-21 | Apple Inc. | System and method for a derivation function for key per page |
US9336160B2 (en) * | 2008-10-30 | 2016-05-10 | Qualcomm Incorporated | Low latency block cipher |
JP5272751B2 (ja) | 2009-01-26 | 2013-08-28 | 富士通セミコンダクター株式会社 | プロセッサ |
US20120314857A1 (en) | 2010-02-24 | 2012-12-13 | Kazuhiko Minematsu | Block encryption device, block decryption device, block encryption method, block decryption method and program |
JP2012009928A (ja) | 2010-06-22 | 2012-01-12 | Toshiba Corp | 暗号演算装置、記憶装置および暗号演算方法 |
US8966279B2 (en) | 2010-12-21 | 2015-02-24 | Apple Inc. | Securing the implementation of a cryptographic process using key expansion |
US8966285B2 (en) * | 2011-01-10 | 2015-02-24 | Apple Inc. | Securing implementation of a cryptographic process having fixed or dynamic keys |
JP5167374B2 (ja) * | 2011-01-21 | 2013-03-21 | シャープ株式会社 | データ暗号化装置、及び、メモリカード |
TWI475879B (zh) * | 2011-12-06 | 2015-03-01 | Ind Tech Res Inst | 數位版權管理物件之加密/解密方法、數位版權管理物件加密/解密裝置 |
CN102779251B (zh) * | 2012-06-29 | 2016-04-13 | 鸿富锦精密工业(深圳)有限公司 | 电子设备及其加密/解密方法 |
-
2014
- 2014-03-11 US US14/205,230 patent/US9405919B2/en active Active
-
2015
- 2015-03-02 JP JP2016555574A patent/JP6109441B1/ja not_active Expired - Fee Related
- 2015-03-02 EP EP15710355.7A patent/EP3117558A1/en not_active Withdrawn
- 2015-03-02 CN CN201580011361.9A patent/CN106105089B/zh not_active Expired - Fee Related
- 2015-03-02 WO PCT/US2015/018357 patent/WO2015138179A1/en active Application Filing
- 2015-03-02 KR KR1020167024413A patent/KR101767655B1/ko active IP Right Grant
- 2015-03-05 TW TW104107072A patent/TWI570590B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
WO2015138179A1 (en) | 2015-09-17 |
EP3117558A1 (en) | 2017-01-18 |
CN106105089A (zh) | 2016-11-09 |
KR20160122180A (ko) | 2016-10-21 |
TW201546648A (zh) | 2015-12-16 |
KR101767655B1 (ko) | 2017-08-11 |
US20150261965A1 (en) | 2015-09-17 |
US9405919B2 (en) | 2016-08-02 |
JP2017511900A (ja) | 2017-04-27 |
TWI570590B (zh) | 2017-02-11 |
CN106105089B (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6109441B1 (ja) | ラウンド削減型暗号を採用するxts暗号化システムとともに使用するための動的暗号化鍵 | |
US11088846B2 (en) | Key rotating trees with split counters for efficient hardware replay protection | |
CN109564553B (zh) | 多阶段存储器完整性方法和装置 | |
US10044703B2 (en) | User device performing password based authentication and password registration and authentication methods thereof | |
US8036379B2 (en) | Cryptographic processing | |
US10027640B2 (en) | Secure data re-encryption | |
US20120260106A1 (en) | System and method for binary layout randomization | |
JP2016517241A (ja) | ストレージデバイスによって支援されるインライン暗号化および暗号化解除 | |
JP6320558B2 (ja) | メッセージ認証コードタグを用いたシステムとともに使用するためのロールバック攻撃からのデータの完全性の保護 | |
US11239997B2 (en) | Techniques for cipher system conversion | |
JP2012212138A (ja) | 暗号化プログラム、復号化プログラム、暗号化方法、復号化方法、システムおよびコンテンツの生成方法 | |
US20210006391A1 (en) | Data processing method, circuit, terminal device and storage medium | |
Alomari et al. | A framework for GPU-accelerated AES-XTS encryption in mobile devices | |
US20150212951A1 (en) | Low-latency, low-overhead hybrid encryption scheme | |
US20200076591A1 (en) | Systems and Methods for Automated Generation and Update of Cipher Parameters | |
WO2019184741A1 (zh) | 应用程序信息的存储、处理方法及装置 | |
KR20180059217A (ko) | 메모리 데이터 보안 처리 장치 및 방법 | |
US20220014381A1 (en) | Message authentication code (mac) generation for live migration of encrypted virtual machiness | |
KR20150105405A (ko) | 컴퓨팅 가능하고, 대형이며, 가변적이며 안전한 치환 박스를 위한 방법 및 장치 | |
JP2018517921A (ja) | ファイルセグメントを並列に解読するための装置および方法 | |
WO2011096073A1 (ja) | メモリ管理方法 | |
Gleeson et al. | GPU Encrypt: AES Encryption on Mobile Devices | |
JP2020145656A (ja) | 情報処理装置、情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161003 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161003 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20161003 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170120 |
|
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: 20170206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6109441 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |