Kingston の暗号化 USB フラッシュ ドライブに AES-XTS ブロック暗号モードを使用

XTS 暗号化

USB ドライブ向けの最もセキュアな暗号化を確保する場合、単なる証明書だけでは不十分です。DataTraveler® 4000G2 および DataTraveler Vault Privacy 3.0 は、Kingston のウルトラセキュア暗号化技術を採用した USB Flash ドライブであり、XTS ブロックサイファーモードで 256 ビット AES ハードウェアベースの暗号化機能を発揮します。XTS は、CBC や ECB など、他のブロックサイファーモードよりもデータ保護機能に優れています。

USB Flash ストレージデバイスの暗号化に DT4000G2 および DTVP30 を使用することで、以下のようなセキュリティ上のメリットが得られます。

フルディスク暗号化 AES ブロックサイファーモードでのデータ処理

AES (Advanced Encryption Standard) は、データブロックを 128 ビットで暗号化するブロックサイファーです。128 ビットを超えるデータを暗号化する場合、AES はブロックサイファーモードを使用します。AES 仕様には、多数のブロックサイファーモードがあります。なかでも最もシンプルなブロックサイファーモードは ECB (Electronic Code Book) です。ECB に見られるセキュリティ上の脆弱性に対処する CBC (Cipher Block Chaining) は 、ポータブル暗号化フラッシュドライブに一般的に使用されています。XTS は最近リリースされたモードの 1 つであり、ECB や CBC でのデータ保護で強力な機能を発揮します。これらのブロックサイファーモードについて以下に簡単に説明します。

ECB (Electronic Code Book)。このサイファーモードは、各 128 ビット データブロックの AES 暗号化を繰り返します。図 1 は ECB モードを使ったデータ暗号化の例です。AES により、ブロックは同じ暗号鍵でそれぞれ個別に暗号化されます。復元時はこのプロセスが逆に実行されます。ECB では、暗号化されていない同一データブロック (プレーンテキスト) が同じプロセスで暗号化された後、暗号化された同一データブロック (暗号文) になります。このサイファーモードはデータパターンの隠匿機能に劣るため、理想的なモードとは言えません。図 2 は、このサイファーモードの主なセキュリティ上の脆弱性を示しています。

Figure 1, ECB

Electronic Code Book (ECB)
図 1

左側の画像は暗号化されていません。右側の画像は、CBC や XTS など、他の暗号化モードを使った場合、テキストがどのようになるかを示したものです。ECB に関連する脆弱性を表しているのが中央の画像です。暗号化ブロック内にある画像の同一ピクセルパターンは、同一サイファーブロックが生成されるように暗号化されるので、オリジナルの画像は滲んでいます。

この例から、同じ暗号文を生成する方法で同一ブロックデータを暗号化してはならないことが分かります。したがって ECB ブロックサイファーモードはセキュリティが脆弱であり、使用に適していません。

Original Image Encrypted using ECB mode Encrypted using other mode

オリジナルの画像

ECB モードを使用した暗号化例

その他のモードを使用した暗号化例

図 2

CBC (Cipher Block Chaining)上述した ECB の主な脆弱性は、同一ブロックデータを同一暗号文が生成される方法で暗号化されることが原因です。したがって、同じ暗号鍵を使って各ブロックを暗号化しながら、複数のブロックのプレーンテキストが同一であっても、異なる暗号文を生成する方法が必要となります。それを実現するのが CBC です。図 3 は CBC サイファーモード例です。

128 ビットの IV (Initialization Vector - 初期化ベクトル) が生成されると、セクター内で最初のブロックのプレーンテキストと組み合わされます。このデータは XOR (Exclusive OR - 排他的論理和) 演算を使って組み合わされた後、128 ビットのデータが AES 暗号化アルゴリズムで暗号化され、メディアに保存されます。生成された暗号文は次のブロックに渡され、そのブロックのプレーンテキストと組み合わされた後、暗号化、保存のプロセスを辿ります。このチェーンプロセスはセクター内のブロックごとに繰り返されます。このプロセスにより、同一のデータブロックが完全に異なる暗号文になります。したがって ECB と較べて CBC の方が遥かにセキュアであることから、ほとんどのセキュリティアプリケーションに適しています。CBC はさまざまな暗号化 Flash ドライブに広く使用されています。

Figure 3, ECB

Electronic Code Book (ECB) - Encryption
図 3

AES-XTS ブロックサイファーモードXTS は当初 IEEE Std 1619-2007 に指定されていましたが、2010 年に AES ブロックサイファーモードのリストに追加されました。これは最新のブロックサイファーモードであり、DataTraveler 4000G2 および DataTraveler Vault Privacy 3.0 に使用されています。CBC など、他のブロックサイファーモードよりも強力な選択肢として開発され、他のモードに見られる脆弱性を利用した高度サイドチャネル攻撃に関連する潜在的な脆弱性を取り除きます。図 4 は XTS モードのブロック簡略図です。

XTS は 2 つの AES キーを使います。そのうちの 1 つは AES ブロック暗号化に使用し、もう 1 つのキーは "Tweak Value" を暗号化するときに使用します。この暗号化された Tweak はさらに GF (Galois polynomial Function) で変更が加えられ、XOR (排他的論理和) 演算にて各ブロックのプレーンテキストと暗号文と組み合わされます。GF 演算により、さらに拡散されるので同一のデータブロックが同一の暗号文を生成することはなくなります。つまり同一プレーンテキストを初期化ベクトル (IV) やチェーニングを使用せずに各ブロックで独特の暗号文の生成が可能になります。実際、2 つの独立したキーを使うのでテキストはほぼ二重暗号化に近い状態です。復元するときはこのプロセスが逆に実行されます。各ブロックは独立しており、チェーニングがないので、保存された暗号文が壊れたりした場合、復元不可能になるデータはそのブロックのみに制限されます。一方、チェーニングモードでは、復元時にこうしたエラーが他のブロックにも波及します。

Figure 4

図 4

Conclusion

AES-XTS は DT4000G2 および DTVP30 に対して、他社の製品よりも優れたデータセキュリティを提供します。 セキュリティ機能はすべてオンボード セキュリティ プロセッサのみに搭載されているのでセキュリティと携帯性で勝っています。

これらのデバイスは複雑なパスワード保護機能を備えているほか、無効なパスワードを指定回数試行するとロックダウンします。しかも函体は頑丈で防水効果があるため、データのセキュリティと保護が最大限に追求されています。企業用および軍用グレードの Kingston® 暗号化ドライブには、すべて 5 年保証と無料サポートが付随します。