【发布时间】:2012-05-04 11:38:53
【问题描述】:
这就是我所拥有的:
$password = openssl_random_pseudo_bytes(245);
$passwdtemp = tempnam('/tmp', mt_rand());
file_put_contents($passwdtemp, $password);
passthru('openssl aes-256-cbc -salt -in infile.png -out outfile.png -kfile ' . $passwdtemp;
每隔一百次左右,passthru 会给我一个错误“零长度密码”,从 OpenSSL 传递。这与文件不存在时发生的错误“无法从 /private/tmp/7503675258rhTiX 读取密钥”不同。
我觉得这与 openssl_random_pseudo_bytes 生成的密码有关。有什么办法让它正常工作?
谢谢!
【问题讨论】:
-
$password生成后会发生什么? -
@AdamLiss 哎呀。我不小心一条线和许多调试线一起。它是使用 file_put_contents 保存的