Устаревшее приложение (ColdFusion) использует шифрование Blowfish/CBC/PKCS5Padding
.Как мы можем зашифровать и расшифровать эти данные, используя библиотеку BouncyCastle?
Для других полей, зашифрованных в ColdFusion, используя это:
encrypt( data, key, 'BLOWFISH', 'HEX')
Мы используем этот код
BlowfishEngine engine = new BlowfishEngine();
PaddedBufferedBlockCipher cipher = new PaddedBufferedBlockCipher(engine);
cipher.Init(false, new KeyParameter(Convert.FromBase64String(keyString)));
byte[] out1 = Hex.Decode(name);
byte[] out2 = new byte[cipher.GetOutputSize(out1.Length)];
int len2 = cipher.ProcessBytes(out1, 0, out1.Length, out2, 0);
cipher.DoFinal(out2, len2);
return Encoding.UTF8.GetString(out2);
Проблема в том, как расшифровать что-то, зашифрованное в ColdFusion, например:
encrypt( data, Key, "Blowfish/CBC/PKCS5Padding", "base64", IV )