[ticket/16266] More code optimizing

PHPBB3-16266
This commit is contained in:
rxu 2019-12-28 01:04:13 +07:00
parent 5dfba1b064
commit a750372a03
No known key found for this signature in database
GPG key ID: 955F0567380E586A
2 changed files with 6 additions and 4 deletions

View file

@ -37,9 +37,11 @@ class argon2i extends base_native
{ {
parent::__construct($config, $helper); parent::__construct($config, $helper);
// For Sodium implementation, set special cost factor values (since PHP 7.4) /**
// See https://wiki.php.net/rfc/sodium.argon.hash and PHPBB3-16266 * For Sodium implementation of argon2 algorithm, set special cost factor values (since PHP 7.4)
// Otherwise don't allow cost factors to be below default settings * See https://wiki.php.net/rfc/sodium.argon.hash and PHPBB3-16266
* Don't allow cost factors to be below default settings where possible
*/
$this->memory_cost = ($this->is_sodium()) ? max($memory_cost, 256*1024) : max($memory_cost, 1024); $this->memory_cost = ($this->is_sodium()) ? max($memory_cost, 256*1024) : max($memory_cost, 1024);
$this->threads = ($this->is_sodium()) ? 1 : max($threads, 2); $this->threads = ($this->is_sodium()) ? 1 : max($threads, 2);
$this->time_cost = ($this->is_sodium()) ? max($time_cost, 3) : max($time_cost, 2); $this->time_cost = ($this->is_sodium()) ? max($time_cost, 3) : max($time_cost, 2);

View file

@ -68,7 +68,7 @@ abstract class base_native extends base
{ {
static $is_sodium; static $is_sodium;
if (empty($is_sodium)) if (!isset($is_sodium))
{ {
$is_sodium = defined('PASSWORD_ARGON2_PROVIDER') && PASSWORD_ARGON2_PROVIDER == 'sodium'; $is_sodium = defined('PASSWORD_ARGON2_PROVIDER') && PASSWORD_ARGON2_PROVIDER == 'sodium';
} }