Кто-нибудь смог использовать SSCrypto Framework для Какао для шифрования текста, а затем расшифровать его в C # /. NET? Или может кто-нибудь предложить какое-нибудь руководство?
Я почти уверен, что моя проблема связана с получением правильных настроек шифрования, но я не очень хорошо разбираюсь в Какао, поэтому не могу точно сказать, какие настройки используются в библиотеке. Однако моя попытка расшифровки выглядит как хеширование 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 );
}
Когда я запускаю шифрование на стороне Какао, я получаю зашифрованный текст:
UMldOZh8sBnHAbfN6E / 9KfS1VyWAa7RN
но это не расшифровывает на стороне C # с тем же ключом.
Любая помощь приветствуется, спасибо.