抱歉我的英语不好!
我从这里使用了php-blowfish实现: http://www.php-einfach.de/diverses/php-verschluesselung-mittels-blowfish/ - 或 - http://www.php-einfach.de/wp-content/uploads/scripts/blowfish.zip
一切正常,我可以像我想的那样对文件进行加密和解密 - 但现在我将加密文件转移到另一台服务器,在这里大约1%的时间内解密出错了。
这是相关的测试代码:
require("blowfish.class.php");
$key = "ad31acd6f0a1eda8a3f54a94622bc9a3";
$cipher = "WZKcvwAEMEXkANZRfoES8xJmArzAwDbCNCskd0ve83OT6ubO1rZvRdzYb5h2qbhvHVklu4ZduBA";
$blowfish = new Blowfish( $key );
$DECfilename = $blowfish->Decrypt( $cipher );
密钥或密码中没有可疑的字符 - 也没有正确的字符结果(“ 2017-08-07_1053-Seebuehne_Bregenz_Selfie.jpg ”)
原始服务器是:
PHP Version 5.6.30, SunOS 5.10 Generic_150400-09 sun4u
有问题的服务器是:
PHP Version 5.6.31, Linux 5dcbb2e6ba8c 4.11.12-041112-generic #201707210350 SMP Fri Jul 21 07:53:15 UTC 2017 x86_64
和另一个:
PHP Version 5.6.28, Linux ubuntu 3.13.0-101-generic #148-Ubuntu SMP Thu Oct 20 22:08:32 UTC 2016 x86_64
这两个交替服务器在故障中是相同的,将上面的例子解密为类似
2017-08-f+ Y���+Seeb� 4�1[Ɵ z#Z 6�` �� ����� R
这是环保的事吗?就像我说的,99%的其他服务器可以解密文件,只有极少数人能够抵抗。但是,由于主机之间的转移,我认为测试代码是如此减少以至于不会出现问题。