我正在用 PHP 编写一些服务器代码,并且我有一个用 Perl 编写的离线进程,它们需要通过加密字符串进行通信。在 PHP 中我一直在使用:
$encrypted_string = openssl_encrypt($my_string, "aes-128-cbc", "my_password", true, "1234567812345678");
我基本上想使用 Perl 实现完全相同的字符串输出。任何有关我将如何做到这一点的帮助表示赞赏。谢谢!
我想通了,现在可以重现在 Perl 和 PHP 中加密字符串的相同输出:
珀尔:
使用地穴::CBC; 使用 MIME::Base64; 我的 $cipher = Crypt::CBC->new( { 'key' => 'length16length16', '密码' => 'Crypt::OpenSSL::AES', 'iv' => '1234567812345678', 'literal_key' => 1, '标题' => '无', 键大小 => 128 / 8 } ); 打印 encode_base64($cipher->encrypt($my_string), "");
PHP:
echo openssl_encrypt($my_string, "aes-128-cbc", "length16length16", true, "1234567812345678");