C# 使用c从coldfusion解密加密字符串#

C# 使用c从coldfusion解密加密字符串#,c#,asp.net,coldfusion,coldfusion-8,C#,Asp.net,Coldfusion,Coldfusion 8,我在ColdFusion中使用加密(字符串,密钥)和解密(字符串,密钥)进行加密。现在我想做的是在ColdFusion中加密,但在asp.net C#中解密。有人能告诉我怎么做吗 如果这是我的ColdFusion代码: encrypt("hello","abcdefgh") decrypt(".....","abcdefgh" asp.net中的等效代码是什么样的?谢谢。根据Coldfusion的 ColdFusion的标准版安装了具有以下算法的加密库: CFMX_COMPAT:ColdFus

我在ColdFusion中使用
加密(字符串,密钥)
解密(字符串,密钥)
进行加密。现在我想做的是在ColdFusion中加密,但在asp.net C#中解密。有人能告诉我怎么做吗

如果这是我的ColdFusion代码:

encrypt("hello","abcdefgh")
decrypt(".....","abcdefgh"
asp.net中的等效代码是什么样的?谢谢。

根据Coldfusion的

ColdFusion的标准版安装了具有以下算法的加密库:

CFMX_COMPAT:ColdFusion MX和以前版本中使用的算法。此算法是最不安全的选项(默认)


除非在C#中实现CF解密算法,否则无法对其进行解密。您必须指定不同的加密算法,如3DES,才能对其进行解密。

正如Josh所指出的,如果不指定算法,CF将使用默认算法
cfmx\u compat
。与AES、Blowfish等标准算法不同,在.NET中没有它的库。要解密C#中的值,.NET端需要使用自定义类。(有关我的详细信息,请参见此处。)


也就是说,我建议不要使用
cfmx\u compat
,因为它是一个非常弱的算法。它仅包含在CF中用于向后兼容性。在ColdFusion中使用AES、Blowfish等更强大的算法会更好。由于这些算法是标准的,因此与C#(或任何其他语言)的互操作性将更加容易。有关一些示例,请参见上面评论中的链接。

另请参见:+1。如果可能,使用更标准的算法。更高的安全性和更好的互操作性。