我正在尝试在 Mono C# 中加密一些数据,将其发送到 NodeJS 服务器并在那里解密。我试图弄清楚使用什么算法来匹配这两者。
我发送用 base64 编码的加密字符串。所以我在 Javascript 中做了类似的事情,我知道用于加密 C# 应用程序中数据的密钥:
var decipher = crypto.createDecipher('aes192',binkey, biniv);
var dec = decipher.update(crypted,'base64','utf8');
dec += decipher.final('utf8');
console.log("dec", dec);
在 Mono 中,我使用以下命令创建我的 Cypher:
using System.Security.Cryptography;
using (Aes aesAlg = Aes.Create("aes192"))
我需要将正确的字符串传递给 Aes.Create() 以便让它使用相同的算法,但我找不到它应该是什么。“aes192”似乎不正确。
我不需要 aes192 这只是一个试用。如果有意义,建议使用不同的加密方式。安全性不是什么大问题。
以下是 .NET 和 Nodejs 文档的链接:http: //msdn.microsoft.com/en-us/library/system.security.cryptography.aes.aspx http://nodejs.org/api/crypto.html