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