これら 2 つの暗号化方法に違いがあるかどうか知りたいですか? 私は以前にこれらを使用したことがありません。クライアントから AES-128 暗号化を使用するように求められましたが、Google で検索すると、「aes-128-cbc」、「aes-128-ctr」、「aes-256-cbc」、または「aes-256-ctr」と表示されます「では、AES-128 のようなものを使用する必要があるか知りたいですか?
参照リンク :これは、暗号化方法を送信する必要がある場所です
これら 2 つの暗号化方法に違いがあるかどうか知りたいですか? 私は以前にこれらを使用したことがありません。クライアントから AES-128 暗号化を使用するように求められましたが、Google で検索すると、「aes-128-cbc」、「aes-128-ctr」、「aes-256-cbc」、または「aes-256-ctr」と表示されます「では、AES-128 のようなものを使用する必要があるか知りたいですか?
参照リンク :これは、暗号化方法を送信する必要がある場所です
3つのこと:
ここで、クライアントから AES-128 を使用して暗号化するように求められました。したがって、128 ビットのキー サイズで AES 暗号化を使用する必要があります。使用できるモードはどれでも好みになります。私はCBCの方が好きです。
CBC と ECB について簡単に説明します。ECB を使用して暗号化すると、128 ビットごと (ブロック サイズによって異なります) のデータが同じキーで暗号化されます。平文に何らかのパターンがある場合、暗号化アルゴリズムがどれほど優れていても、結果の暗号化テキストも予測可能になります。
ECB:
Plain text: aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa
---------------- ---------------- ----------------
Encrypted: bdefjakjapqeiowp bdefjakjapqeiowp bdefjakjapqeiowp
CBC を使用する場合、最初のブロックは IV (初期化ベクトル) で XOR され、キーで暗号化され、2 番目のブロックは最初のブロックで XOR されてからキーで暗号化され、3 番目は 2 番目のブロックで暗号化されます。結果として得られる暗号は、周波数分析に対して脆弱ではありません。
この画像は、無料のメディア リポジトリであるウィキメディア コモンズから取得したものです。
欠点は、前のブロックの結果が必要なため、暗号化/復号化を並列化できないため、遅くなる可能性があることです。しかし、実際には、実際の違いはありません。
あなたが含めたリンクを見ると、CBCを含むさまざまなモードを受け入れると書かれています. 使用しない特別な理由がない限り、AES-128-CBC を使用してください。CBC モードは、優れた汎用モードです。また、CBC モードが正しく機能するためには、パディング (PKCS#5 または PKCS#7 など、システムで許可されているものを使用) と初期化ベクトル IV の使用についても理解する必要があります。
ECB モードは安全ではなく、情報が漏洩するため、使用しないでください。