【发布时间】:2019-01-11 07:18:26
【问题描述】:
我正在尝试查看消息是否在中间损坏了我应该能够得到一个错误,但我看到的只是一个白页。
<?php
$keypair = hex2bin('66b70b4e93416f8a7a82a40a856fe9884fd7a6e5018837c5421f507307026b40b2c8fbaf820ee38198af1dcf23143ec7ae21da1c785f58d1053940b9f317180e');
$encrypted_text = hex2bin('de261df126463f57b6c38bf42b69252b2f9382267b51e137e20e27ace37c5853279b00c95536cc9a44945146376c5d94355ae0bab5c1eb0ceb9669002ee5dd13e7aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa');
$decrypted_text = sodium_crypto_box_seal_open($encrypted_text, $keypair);
echo $decrypted_text;
?>
如您所见,$encrypted_text 末尾有 aaaaaaaaaaaaaa 我应该得到一个错误但没有错误。
【问题讨论】:
-
为什么不检查
$decrypted_text是否为空?如果是抛出异常。 -
成功了,谢谢。
-
“但我所看到的只是一个白页” - 好吧,您并没有在显示的代码中发现异常,如果您稍后在某处不这样做,这将在脚本通过时导致致命错误。再加上 PHP 被不合适的错误报告设置堵住了,你得到的结果是一个空白页。