2012-05-15 83 views
2
$key = "12345678876543211234567887654321"; 
$iv = "1234567887654321"; 
$plaindata = "String to be encrypted."; 

$enc = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $plaindata, MCRYPT_MODE_CBC, $iv)); 

echo($enc); 

輸出:加密在PHP中,解密在Perl

EIZDQJWOIepUeNjFL2wl3RYA5bDmFd05Xu6z4e0aiWQ= 

如何可以在Perl解密???

+0

Deja Vu。不久前,我看到一個問題:在PHP中加密,在Python中解密。 – Shubham

+0

我一直在嘗試使用Crypt :: CBC和Crypt :: OpenSSL :: AES – user812120

回答

2

看起來你需要的MIME::Base64MCrypt的組合。

+0

非常感謝Dave。我收到這個錯誤。在@INC中找不到Mcrypt.pm(@INC包含:C:/ xampp/perl/site/lib/C:/ xampp/perl/lib C:/ xampp/perl/site/lib。C:/ xampp/apache)在C:/xampp/htdocs/sites/test/hello.pl第5行。BEGIN失敗 - 編譯在C:/xampp/htdocs/sites/test/hello.pl第5行中止, – user812120

+0

當我複製Mcrypt .pm文件在這些目錄中並重新加載頁面,我得到無法找到可加載對象的模塊Crypt :: Rijndael in @INC(@INC包含:C:/ xampp/perl/site/lib/C:/ xampp/perl/lib C:/ xampp/perl/site/lib。C:/ xampp/apache)位於C:/xampp/htdocs/sites/test/hello.pl第5行編譯在C:/ xampp/htdocs/sites/test/hello.pl第5行。BEGIN失敗 - 編譯在C:/xampp/htdocs/sites/test/hello.pl第5行中斷, – user812120

+1

是的,您需要正確安裝它(通過「 cpan「/」cpanm「命令,通常情況下,谷歌的'安裝cpan模塊'的細節)。不要試圖手動複製文件不起作用。 –