1

これが私のC#コードです。どうすればこれを Perl で復号化できますか? または、OpenSSL のために Perl で復号化できませんか?

RijndaelManaged RijndaelAlg = new RijndaelManaged();
FileStream fStream = File.Open(FileName, FileMode.OpenOrCreate);
byte[] initVectorBytes = Encoding.ASCII.GetBytes("11B2c3D4e5F6g7H8");
RijndaelAlg.IV = initVectorBytes;
string password = "11111111";
Rfc2898DeriveBytes key = new Rfc2898DeriveBytes(password, Encoding.ASCII.GetBytes("22222222"));
RijndaelAlg.Key = key.GetBytes(RijndaelAlg.KeySize / 8);
fStream = File.Open(FileName, FileMode.OpenOrCreate);
cStream = new CryptoStream(fStream, RijndaelAlg.CreateEncryptor(RijndaelAlg.Key, RijndaelAlg.IV), CryptoStreamMode.Write);
StreamWriter sWriter = new StreamWriter(cStream);
sWriter.Write(input);

sWriter.Close();
cStream.Close();
fStream.Close();

どうもありがとう。

4

2 に答える 2

3

Crypt::OpenSSL::AES を見てください。

もちろん、Perl コードは何らかの方法で正しいキーを取得する必要があります。

于 2009-12-22T00:55:13.357 に答える
1

Rijndael/CBC を使用する場合は、Crypt::Rijndaelを使用します。または、コードをより適切に説明してください。

于 2009-12-22T00:57:25.320 に答える