0

次の関数でいくつかの文字列を保護します。

public static string ProtectString(string input)
{
    System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
    return enc.GetString(MachineKey.Protect(enc.GetBytes(input), null));
}

文字列を暗号化すると、攻撃者は (ユーザー名など)、暗号化および復号化された値を使用してマシン キーを抽出できますか?

4

2 に答える 2

1

いくつかの調査を行ったところ、使用されているアルゴリズムはDES、3DES または AESのいずれかであることがわかりました。そして、そのアルゴリズムはプレーンテキスト攻撃に対して非常に耐性があります。

Chris のコメントによると、DES は非常に弱いため、可能であれば AES を選択してください。

しかし、それは攻撃者に平文の値を贈る理由ではありません:)

于 2013-11-04T12:40:55.707 に答える
-1

ハッカーに暗号文と平文を渡せば、それだけで暗号鍵を総当たり攻撃できます。それと高性能コンピューターのファーム。

クリア テキストとプレーン テキストを同時に送信する理由はほとんどありません。やらないでください。クリア テキストの改ざんを防止する場合は、代わりに HMAC と共にクリア テキストを渡します。

于 2013-11-05T03:22:23.620 に答える