暗号解読AESまたは3DES(パフォーマンスに関係なく)を破る可能性が最も低く、安全なのはどちらですか?
銀行口座、ソートコード、サードパーティのデータ関連銀行などの機密情報を保存および保護するには、プロジェクトに暗号化を使用する必要があります。現在、CFBモードで3DESを使用することを検討していますが、それが最良のオプションであるかどうか、および他の選択肢は何かわかりません。
タイトルでは、質問の内容があまりわかりません。しかし、これ以上のことは考えられませんでした。
回答
AESに移行してください。
AES は、米国連邦組織の標準対称暗号化アルゴリズムとしてDESの後継です。AESは128、192、または256ビットのキーを使用しますが、128ビットキーは今日十分な強度を提供します。128ビットブロックを使用し、ソフトウェアとハードウェアの両方の実装で効率的です。数年間に数百人の暗号学者が参加する公開競争を通じて選択されました。
DES は、70年代の以前の「データ暗号化標準」です。キーサイズが短すぎて適切なセキュリティを確保できません。56有効ビットはbrにすることができますute-forced、そしてそれは10年以上前に行われています。 DESは64ビットブロックを使用します。これは、同じキーで数ギガバイトのデータを暗号化するときにいくつかの潜在的な問題を引き起こします。
3DES は、DESの3つのインスタンスを異なるキーでチェーンすることにより、DES実装を再利用する方法です。 3DESは、予測可能なテクノロジーでは達成できない2 112 の操作を必要とするため、依然として安全であると考えられています。 3DESは、ハードウェアでのパフォーマンスを目的として設計されているため、特にソフトウェアの実装では非常に低速です。
リソース:
http://www.differencebetween.net/technology/difference-between-aes-and-3des http://www.icommcorp.com/downloads/Comparison%20AES%20vs%203DES.pdf (オフライン、まだWebアーカイブにあります)
コメント
- AESおよびその他のNIST標準aren 'ソフトウェアはあまり得意ではありません
- @AndreyBotalov:AESの場合、これはかなり偏った見方です。 AES選択プロセスの時点で(私はそこにいました!)、15人の候補者のうち13人が"堅実に見えるように多くの分析を集めた後"、多くのパフォーマンス測定が行われ、Rijndaelは" fast "暗号の1つでした。実際、それは多くのアーキテクチャで最も一貫して高速であり、その選択に非常に役立ちました。 RC6は PC上で高速でしたが、PCは実際の暗号化パフォーマンスの問題を抱えている最後のプラットフォームです。 AESは、スマートカードや小さなARM / MipsでRC6に勝っています。
- さらに、最新のプロセッサにAES拡張機能が搭載され、暗号の速度を大幅に向上させることができます。
回答
3DESもAESも、現在のテクノロジー(および予測可能なテクノロジー)では壊れません。ただし、1つのキーで約32ギガバイトを超えるデータを暗号化すると、3DESでセキュリティの問題が発生する可能性がありますが、AESでは制限がはるかに高くなります(これはブロックサイズによるものです。3DESは64ビットブロックを使用します。 2 64/2 ブロック、つまり32ギガバイトの処理後に問題が発生する可能性があります。AESは128ビットブロックを使用し、2 128/2 ブロック、つまり2 68 バイト。「かなりの量のデータ」とも呼ばれます。
AESは3DESよりも著しく高速であるため、新しい設計に3DESを使用する理由はほとんどありません。
コメント
- ありがとう、今日は新しい専門用語を学びました。 "かなりの量のデータ"
- +1 for "かなりの量のデータ。" WolframAlphaによると、2 ^ 68バイトのデータは"すべての人間の知識の情報コンテンツ。"
- @AndreyBotalov:2 ^ 64 ブロックです、各ブロックは16バイト(2 ^ 4)であるため、2 ^ 68 バイトです。
- 誰かがトラブル" 64ビットのブロックサイズで2 ^(64/2)の後に遭遇しますか?
- @FahadYousuf誕生日のため問題、sqrt(2 ^ n)ブロックを暗号化すると、衝突の可能性が50%になります