Даже у меня есть правильная версия: Текущая версия PHP: 7.4.11 простая реализация libsodium, подобная этой:
<?php
$key = random_bytes(SODIUM_CRYPTO_SECRETBOX_KEYBYTES); // 256 bit
?>
не работает с сообщением об ошибке ниже:
[09-Jan-20...] PHP Warning: Use of undefined constant SODIUM_CRYPTO_SECRETBOX_KEYBYTES - assumed 'SODIUM_CRYPTO_SECRETBOX_KEYBYTES' (this will throw an Error in a future version of PHP) in ../crypto.php on line 3
[09-Jan-20...] PHP Fatal error: Uncaught TypeError: random_bytes() expects parameter 1 to be int, string given in .../crypto.php:3
Stack trace:
#0 .../crypto.php(3): random_bytes('SODIUM_CRYPTO_S...')
#1 {main}
thrown in .../crypto.php on line 3
Похоже, PHP не распознает пакет libsodium, как указано в документации:
Шифрование PHP с помощью Libsodium Разработчики могут использовать Sodium для шифрования и дешифрования PHP с PHP 7.2 и новее без расширения.
Должен ли я установить что-то еще на свой PHP (который поставляется с cpanel), чтобы иметь возможность использовать libsodium?