C#使用System.Security.Cryptography.Aes进行AES256加密的示例
我需要实现AES 256加密/解密,我无法找到一个正常工作的示例。
MSDN建议我应该使用AES类。
Rijndael类是Aes算法的前身。 您应该使用Aes算法而不是Rijndael。 有关更多信息,请参阅.NET安全博客中的Rijndael和AES之间的条目。
有没有人能指出我使用AES类AES2的一个很好的例子?
为了增加一点清晰度:
我有一个密码文件,其中包含共享密钥和一串加密文本。 我需要解密文本然后validation它。
我见过的所有例子都希望至少有2个参数来执行加密/解密。
我是否能够从密码文件中的文本推断初始化向量和密钥?
这是我的密码文件中保存的文本示例:
ÊÚḱÌráƒ@†²;Ä;öDWnªóª©¨¨L
也许这里列出的这个例子可以帮助你。 作者的陈述
大约24行代码加密,23行解密
一旦我发现了我的客户端如何处理加密/解密的所有信息,就可以直接使用dtb建议的AesManaged示例 。
最终实现的代码如下所示:
try { // Create a new instance of the AesManaged class. This generates a new key and initialization vector (IV). AesManaged myAes = new AesManaged(); // Override the cipher mode, key and IV myAes.Mode = CipherMode.ECB; myAes.IV = new byte[16] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; // CRB mode uses an empty IV myAes.Key = CipherKey; // Byte array representing the key myAes.Padding = PaddingMode.None; // Create a encryption object to perform the stream transform. ICryptoTransform encryptor = myAes.CreateEncryptor(); // TODO: perform the encryption / decryption as required... } catch (Exception ex) { // TODO: Log the error throw ex; }