SSCrypto Framework for Cocoa を使用してテキストを暗号化し、C#/.NET で復号化できた人はいますか? または、誰かがガイダンスを提供できますか?
私の問題は暗号設定を正しくすることに関係していると確信していますが、私はCocoaに精通していないので、ライブラリでどの設定が使用されているかはわかりません. ただし、解読しようとすると、md5ハッシュ、CBCモード、ゼロでのパディングのように見え、IVが設定されているかどうかはわかりません...
私のC#コードは次のようになります:
public static string Decrypt( string toDecrypt, string key, bool useHashing )
{
byte[] keyArray;
byte[] toEncryptArray = Convert.FromBase64String( toDecrypt );
if( useHashing )
{
MD5CryptoServiceProvider hashmd5 = new MD5CryptoServiceProvider();
keyArray = hashmd5.ComputeHash( UTF8Encoding.UTF8.GetBytes( key ) );
hashmd5.Clear();
}
else
keyArray = UTF8Encoding.UTF8.GetBytes( key );
TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
tdes.Key = keyArray;
tdes.Mode = CipherMode.CBC;
tdes.Padding = PaddingMode.Zeros;
ICryptoTransform cTransform = tdes.CreateDecryptor();
byte[] resultArray = cTransform.TransformFinalBlock( toEncryptArray, 0, toEncryptArray.Length );
tdes.Clear();
return UTF8Encoding.UTF8.GetString( resultArray );
}
Cocoa 側で暗号化を実行すると、暗号化されたテキストが得られます。
UMldOZh8sBnHAbfN6E/9KfS1VyWAa7RN
ただし、同じキーを使用して C# 側で復号化することはできません。
どんな助けでも大歓迎です、ありがとう。