Мне нужно расшифровать некоторые данные во Flex, которые зашифрованы в C # и записаны в файл.Для простоты я остановился на blowfish, используя библиотеку as3crypto As3 и библиотеку Bruce Schneier C #.
AS3 as3crypto link
Bruce Schneier C # blowfish link
Я могу получить короткую строку для шифрования в C # и расшифровки в Flex Fine, однако более длинные строки просто не дают результатов, и я не знаю, что мне не хватает?
C #:
string reportstring = "watson?";
BlowFish b = new BlowFish("04B915BA43FEB5B6");
string cipherText = b.Encrypt_ECB(reportstring);
String plainText = b.Decrypt_ECB(cipherText);
AS3:
var txt:String = "watson?";
var key:ByteArray = Hex.toArray("04B915BA43FEB5B6");
var blowfish:BlowFishKey = new BlowFishKey(key);
var dataBytes:ByteArray = new ByteArray();
dataBytes=Hex.toArray(Hex.fromString(txt));
blowfish.encrypt(dataBytes);
blowfish.decrypt(dataBytes);
Обновление, некоторые образцы
работает
шифровать строку = "Ватсон? "
C # производит: 1514ea36fecfd5f5
AS3 производит: 1514ea36fecfd5f5
не работает
зашифрованная строка = "как дела, Уотсон?"
C # производит: 3ea9808a4b9f74aaa8e54fe682947673
AS3 производит: 3ea9808a4b9f74aa20776174736f6e3f
, что очень похоже, но не соответствует
, если я дешифрую шифр AS3 в C # I get:
как дела? `r ???
если я расшифрую C # шифр в AS3, я получу:
как делаOåO 悔 vs