web-dev-qa-db-ja.com

3DESアルゴリズムは安全ですか?

機密情報の交換に3DESアルゴリズムを使用できますか?私のプロジェクトで使用しています。セキュリティコードレビューアが、安全ではないというバグを報告しましたが、CMMIで保護されていると記載されていることがわかります。

9
Ekalavya

NISTは、NIST SP 800-20で説明されているように動作するように構成されている場合、安全な対称鍵暗号化アルゴリズムとして3DES(ANSI X9.52-1998)を引き続き認識します。暗号化アルゴリズム検証プログラム( CAVP)証明書は2016年に3DESに対して発行されました。ただし、多くのオープンソースプロジェクト(OpenSSLなど)および国際認証規格(Common Criteriaなど)はすでに3DESを非推奨にしています。

3DESが段階的に廃止されている理由は、さまざまな脆弱性(たとえば、sweet32のような衝突攻撃)によるものです。寿命を延ばすために相殺する方法(頻繁なキーの再生成、CBCモードの無効化など)はまだありますが、AESに切り替えない理由はありません。

それで、あなたは今すぐ脆弱ですか? 3DESを正しく実装および構成していない場合はそうではありません。 AESへの移行を計画する必要がありますか?絶対に! 3DESが壊れて安全であると見なされなくなるのは時間の問題です。

12
Kirill Sinitski

とにかく、3DESは、スローネス、中間の脆弱性などの多くの既知の抜け穴がある古いアルゴリズムです。世界では、今日、AESが採用されています。つまり、3DESを支持する議論に勝つことは困難です。しかし、何らかの理由で、それを実装する必要がある場合(レガシーまたは非互換性の問題)、NIST SP 800を確認することをお勧めします-67、これは3DES\3DEAチェックの使用ガイダンス(3.5使用ガイダンス)の推奨事項であり、同期していることを確認します。

次に、キーの推奨事項である "NIST Special Publication 800-57" を調べます。管理。 NISTは、このホワイトペーパーで述べた3DES-CBC(Cipher Block Chaining)を承認しています。

暗号化ライブラリを変更する場合は、FIPS 140検証ステータスを確認してください。これにより、ベストプラクティスが確実に実行されるようになります。 @Kirillによって提案されているCrypto ++は、一部のアルゴリズムに対していくつかのFIPS検証が渡されているようです。

2

3DESの公式ステータスは、2017年の秋にNISTによって格下げされました。 SP 800-67 Rev. 2 によると、単一の3キーセットによって暗号化されるデータの量は、 8 Gb。また、2つの一意のキーのみを使用する3DESのバージョンは完全に非推奨になりました。

特定のユースケースに対するアルゴリズムの適合性は、既知の攻撃に対するアルゴリズムの強度と、暗号化の強度を維持する必要がある期間の見積もりによって決まります。 3DESの強度は、有効な鍵の長さである112ビットに基づいて記述されています。これは、最も弱い許容可能な対称暗号化アルゴリズムです。複数の攻撃が実証されているため、その寿命は非常に疑わしいと見なす必要があります。今日、この点についてNIST FISMAが何を言っているのかはわかりませんが、IMPO、3DESは、長期間保持されるものに対する強力な保護とは見なされません。

2
JaimeCastells