2

ColdFusion での暗号化にencrypt(string,key)andを使用しています。decrypt(string,key)今私がやりたいことは、ColdFusion で暗号化することですが、asp.net C# で復号化します。誰かがこれを行う方法を教えてもらえますか?

これが私の ColdFusion コードの場合:

encrypt("hello","abcdefgh")
decrypt(".....","abcdefgh"

asp.net の同等のコードはどのようになりますか? ありがとうございました。

4

2 に答える 2

3

Coldfusion のドキュメントによると、

ColdFusion の Standard Edition では、次のアルゴリズムを含む暗号化ライブラリがインストールされます。

CFMX_COMPAT: ColdFusion MX 以前のリリースで使用されていたアルゴリズム。このアルゴリズムは、最も安全でないオプションです (デフォルト)。

C# で CF 復号化アルゴリズムを実装しない限り、復号化できません。復号化するには、3DES などの別の暗号化アルゴリズムを指定する必要があります。

于 2012-05-30T15:07:01.757 に答える
2

Josh が指摘したように、アルゴリズムを指定しない場合、CF はデフォルトのアルゴリズムを使用しますcfmx_compat。AES、Blowfish などの標準アルゴリズムとは異なり、.NET にはそのためのライブラリがありません。C# で値を復号化するには、.NET 側でカスタム クラスを使用する必要があります。( Railo の cfmx_compat クラスの C# ポートについては、こちらを参照してください。)

cfmx_compatとはいえ、非常に弱いアルゴリズムであるため、使用しないことをお勧めします。下位互換性のために CF にのみ含まれています。ColdFusion で AES、Blowfish などの強力なアルゴリズムのいずれかを使用する方がはるかに優れています。これらのアルゴリズムは標準であるため、C# (またはその他の言語) との相互運用性ははるかに簡単になります。いくつかの例については、上記のコメントに投稿された Al のリンクを参照してください。

于 2012-05-30T18:32:13.313 に答える