相关疑难解决方法(0)

在C#中加密和解密字符串

在C#中满足以下内容的最现代(最佳)方式是什么?

string encryptedString = SomeStaticClass.Encrypt(sourceString);

string decryptedString = SomeStaticClass.Decrypt(encryptedString);
Run Code Online (Sandbox Code Playgroud)

但最小的涉及盐,键,与字节[]等混乱的大惊小怪等.

谷歌搜索和混淆我发现的东西(你可以看到类似的SO Q列表,看这是一个欺骗性的问题).

c# encryption

330
推荐指数
6
解决办法
57万
查看次数

为什么我的解密方法抛出“要解密的数据长度无效”加密异常

这是一个非常常见的异常,但显然我找到的解决方案都没有解决我的问题。

我有一个加密和一个解密方法;我加密一个字符串并将其写入文件,然后从文件中读取该字符串并解密(理论上)。事实上,我得到了一个

CryptographicException:要解密的数据长度无效

在该过程的解密方面。

这是Main()完成所有工作的方法:

public static void Main()
{
    var filename = "test.encrypted";
    var plainText = "Lorem Ipsum is simply dummy text of the printing and typesetting industry.";

    string password = "A better password than this";
    string salt = "Sodium Chloride";

    var padding = PaddingMode.Zeros; // I have tried every padding mode to no avail

    var encrypted = Encrypt<AesManaged>(plainText, password, salt, padding);
    File.WriteAllBytes(filename, encrypted);

    var fileBytes = File.ReadAllBytes(filename);
    var decrypted = Decrypt<AesManaged>(fileBytes, password, salt, padding);

    Console.ReadLine(); …
Run Code Online (Sandbox Code Playgroud)

c# encryption encryption-symmetric .net-3.5

3
推荐指数
1
解决办法
1379
查看次数

标签 统计

c# ×2

encryption ×2

.net-3.5 ×1

encryption-symmetric ×1