C# Cookie的加密和编码

C# Cookie的加密和编码,c#,encryption,encoding,C#,Encryption,Encoding,我有一个字符串,我想用AES算法加密。然后我想将结果存储到web浏览器中的cookie中 AES加密的结果是字节数组。我想把它做成一个可以存储在cookie中的字符串。似乎所有的编码都不能正常工作 它将是很好的,能够加密特殊字符以及,如ë。。。目前,我正在加密字符串,然后使用基本64字符串编码并替换一些字符,如“=”、“+”和“/”。虽然这是可行的,但它似乎不是一个优雅的解决方案 有更好的方法吗?这是一种非常常见的方法 下面的类通过使用“-”和“-”来封装所有这些内容,同时省略填充。它比替换字符

我有一个字符串,我想用AES算法加密。然后我想将结果存储到web浏览器中的cookie中

AES加密的结果是字节数组。我想把它做成一个可以存储在cookie中的字符串。似乎所有的编码都不能正常工作

它将是很好的,能够加密特殊字符以及,如ë。。。目前,我正在加密字符串,然后使用基本64字符串编码并替换一些字符,如“=”、“+”和“/”。虽然这是可行的,但它似乎不是一个优雅的解决方案


有更好的方法吗?

这是一种非常常见的方法

下面的类通过使用“-”和“-”来封装所有这些内容,同时省略填充。它比替换字符效率更高,几乎与Convert.ToBase64String方法一样快:

用法示例:

byte[] data = new byte[10];
string encoded = Safe64Encoding.EncodeBytes(data);
...
data = Safe64Encoding.DecodeBytes(encoded);