古いコールドフュージョン コードを確認したところ、暗号化/復号化関数を介して CFMX_COMPAT アルゴリズムで暗号化されているデータのインスタンスがいくつか見つかりました。
しばらく探し回った後、これがどのようなアルゴリズムであるかを見つけることができませんでした。ドキュメントには、これが現在最も安全でない方法であると記載されていますが、その理由を知りたいです。
(別の場所にいる何人かは、MD5 だけだと示唆していますが、データが復号化されているため、あまり意味がありません。)
古いコールドフュージョン コードを確認したところ、暗号化/復号化関数を介して CFMX_COMPAT アルゴリズムで暗号化されているデータのインスタンスがいくつか見つかりました。
しばらく探し回った後、これがどのようなアルゴリズムであるかを見つけることができませんでした。ドキュメントには、これが現在最も安全でない方法であると記載されていますが、その理由を知りたいです。
(別の場所にいる何人かは、MD5 だけだと示唆していますが、データが復号化されているため、あまり意味がありません。)
これは XORベースのアルゴリズムですが、教科書のアルゴリズムではないため、包括的な XOR アルゴリズムの回答は正しくありません (過去にこれらの CFMX_COMPAT の質問に誤って適用されていました)。
この独自の XOR のソース コードの詳細については、「C# と ColdFusion の間でパスワード ハッシュを比較する」へのこの回答を確認してください。この回答では、@Leigh (これらの質問の 1 つにもコメントしています) がアルゴリズムの正確なポートを提供するのに役立ちました。 Railoソースから直接持ち上げました。
MD5 はハッシュ アルゴリズムであり、暗号化アルゴリズムではないため (ご指摘のとおり)、間違いなく MD5 ではありません。
どのアルゴリズムを使用しているかはわかりませんが、cfusion.jar 内の関連する Java クラスを逆コンパイルして確認できます。それよりも良い発見方法があるとは思えません。Adobe にサポート チケットを開いたとしても、彼らが実際に教えてくれるとは思えません。