cancel
Showing results for 
Search instead for 
Did you mean: 

Magento 2.4.2 Update Admin Error

SOLVED

Magento 2.4.2 Update Admin Error

PS..I am not a developer, this may not be presented properly

 

I updated Magento 2.4.1 to 2.4.2 using Composer.  Front end is fine.  Logging into admin produces the following error in exception log:

 

[2021-02-09 23:19:50] main.CRITICAL: This is not implemented, as it is not possible to implement Argon2i with acceptable performance in pure-PHP {"report_id":"1b45dc13c4604a67b4369c1284d06c8fa30b7d3716f98ca4dd17474bc0d0b9b7","exception":"[object] (SodiumException(code: 0): This is not implemented, as it is not possible to implement Argon2i with acceptable performance in pure-PHP at /home/baysidesoapworks/bayside/public_html/vendor/paragonie/sodium_compat/src/Compat.php:1927)"} []

 I am unsure what this means or how to fix.  Any help is appreciated.

2 ACCEPTED SOLUTIONS

Accepted Solutions

Re: Magento 2.4.2 Update Admin Error

I found that a PHP ext is needed.  I have cPanel on my server and it was not listed as something to add in WHM.  I found this info, logged in to SSH as root and did this install.

 

My admin is working.  From what I read it has to do with the password hash.

 

I really haven't got much of an idea of most of this, but after I installed, I switched to PHP 7.3 checked admin and it worked fine, then switched back to 7.4 and worked as well.  So at least it is fixed for now. 

 

cd /usr/src/
wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz
tar -zxvf libsodium-1.0.18.tar.gz 
cd libsodium*

./configure
make && make check
make install
make check

 

/opt/cpanel/ea-php72/root/usr/bin/pecl install libsodium
/opt/cpanel/ea-php73/root/usr/bin/pecl install libsodium

 /opt/cpanel/ea-php74/root/usr/bin/pecl install libsodium

View solution in original post

Re: Magento 2.4.2 Update Admin Error

Install PHP-extension sodium will fix this. 

Non fpm user can use into terminal and restart apache/nginx 
yum install php-sodium

 

Into multi PHP environment if you want to install for php7.3 
yum install php73-php-sodium

 

Ubuntu users can do like
sudo apt install php-libsodium

 

Into WHM you can install via easyapache

 

View solution in original post

23 REPLIES 23

Re: Magento 2.4.2 Update Admin Error

Hi,

 

I am also getting the same error on installing a fresh copy of Magento 2.4.2 via command line.

 

In Compat.php line 1927:

This is not implemented, as it is not possible to implement Argon2i with ac
ceptable performance in pure-PHP

Re: Magento 2.4.2 Update Admin Error

I am also having this error only after admin login - I put the store into dev mode to get the error reporting and saw this.

 

1 exception(s):
Exception #0 (SodiumException): This is not implemented, as it is not possible to implement Argon2i with acceptable performance in pure-PHP

Exception #0 (SodiumException): This is not implemented, as it is not possible to implement Argon2i with acceptable performance in pure-PHP
<pre>#1 sodium_crypto_pwhash() called at [vendor/magento/framework/Encryption/Encryptor.php:594]
#2 Magento\Framework\Encryption\Encryptor->getArgonHash() called at [vendor/magento/framework/Encryption/Encryptor.php:225]
#3 Magento\Framework\Encryption\Encryptor->getHash() called at [vendor/magento/module-user/Model/User.php:731]
#4 Magento\User\Model\User->_getEncodedPassword() called at [vendor/magento/module-user/Model/User.php:293]
#5 Magento\User\Model\User->beforeSave() called at [generated/code/Magento/User/Model/User/Interceptor.php:23]
#6 Magento\User\Model\User\Interceptor->beforeSave() called at [vendor/magento/framework/Model/ResourceModel/Db/AbstractDb.php:412]
#7 Magento\Framework\Model\ResourceModel\Db\AbstractDb->save() called at [vendor/magento/framework/Model/AbstractModel.php:655]
#8 Magento\Framework\Model\AbstractModel->save() called at [vendor/magento/framework/Interception/Interceptor.php:58]
#9 Magento\User\Model\User\Interceptor->___callParent() called at [vendor/magento/framework/Interception/Interceptor.php:138]
#10 Magento\User\Model\User\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153]
#11 Magento\User\Model\User\Interceptor->___callPlugins() called at [generated/code/Magento/User/Model/User/Interceptor.php:581]
#12 Magento\User\Model\User\Interceptor->save() called at [vendor/magento/module-user/Observer/Backend/AuthObserver.php:149]
#13 Magento\User\Observer\Backend\AuthObserver->execute() called at [vendor/magento/framework/Event/Invoker/InvokerDefault.php:88]
#14 Magento\Framework\Event\Invoker\InvokerDefault->_callObserverMethod() called at [vendor/magento/framework/Event/Invoker/InvokerDefault.php:74]
#15 Magento\Framework\Event\Invoker\InvokerDefault->dispatch() called at [vendor/magento/framework/Event/Manager.php:66]
#16 Magento\Framework\Event\Manager->dispatch() called at [generated/code/Magento/Framework/Event/Manager/Proxy.php:95]
#17 Magento\Framework\Event\Manager\Proxy->dispatch() called at [vendor/magento/module-user/Model/User.php:603]
#18 Magento\User\Model\User->authenticate() called at [generated/code/Magento/User/Model/User/Interceptor.php:140]
#19 Magento\User\Model\User\Interceptor->authenticate() called at [vendor/magento/module-user/Model/User.php:653]
#20 Magento\User\Model\User->login() called at [generated/code/Magento/User/Model/User/Interceptor.php:158]
#21 Magento\User\Model\User\Interceptor->login() called at [vendor/magento/module-backend/Model/Auth.php:162]
#22 Magento\Backend\Model\Auth->login() called at [vendor/magento/framework/Interception/Interceptor.php:58]
#23 Magento\Backend\Model\Auth\Interceptor->___callParent() called at [vendor/magento/framework/Interception/Interceptor.php:138]
#24 Magento\Backend\Model\Auth\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153]
#25 Magento\Backend\Model\Auth\Interceptor->___callPlugins() called at [generated/code/Magento/Backend/Model/Auth/Interceptor.php:59]
#26 Magento\Backend\Model\Auth\Interceptor->login() called at [vendor/magento/module-backend/App/Action/Plugin/Authentication.php:205]
#27 Magento\Backend\App\Action\Plugin\Authentication->_performLogin() called at [vendor/magento/module-backend/App/Action/Plugin/Authentication.php:157]
#28 Magento\Backend\App\Action\Plugin\Authentication->_processNotLoggedInUser() called at [vendor/magento/module-backend/App/Action/Plugin/Authentication.php:125]
#29 Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch() called at [vendor/magento/framework/Interception/Interceptor.php:135]
#30 Magento\Backend\Controller\Adminhtml\Index\Index\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153]
#31 Magento\Backend\Controller\Adminhtml\Index\Index\Interceptor->___callPlugins() called at [generated/code/Magento/Backend/Controller/Adminhtml/Index/Index/Interceptor.php:32]
#32 Magento\Backend\Controller\Adminhtml\Index\Index\Interceptor->dispatch() called at [vendor/magento/framework/App/FrontController.php:186]
#33 Magento\Framework\App\FrontController->processRequest() called at [vendor/magento/framework/App/FrontController.php:118]
#34 Magento\Framework\App\FrontController->dispatch() called at [vendor/magento/framework/Interception/Interceptor.php:58]
#35 Magento\Framework\App\FrontController\Interceptor->___callParent() called at [vendor/magento/framework/Interception/Interceptor.php:138]
#36 Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}() called at [vendor/magento/framework/Interception/Interceptor.php:153]
#37 Magento\Framework\App\FrontController\Interceptor->___callPlugins() called at [generated/code/Magento/Framework/App/FrontController/Interceptor.php:23]
#38 Magento\Framework\App\FrontController\Interceptor->dispatch() called at [vendor/magento/framework/App/Http.php:116]
#39 Magento\Framework\App\Http->launch() called at [generated/code/Magento/Framework/App/Http/Interceptor.php:23]
#40 Magento\Framework\App\Http\Interceptor->launch() called at [vendor/magento/framework/App/Bootstrap.php:263]
#41 Magento\Framework\App\Bootstrap->run() called at [pub/index.php:29]
</pre>

PHP 7.4 installed.

 

Re: Magento 2.4.2 Update Admin Error

For fix it recommended to install sodium PHP-extension (needs libsodium), but I'm not sure what can help us.

Re: Magento 2.4.2 Update Admin Error

I found that a PHP ext is needed.  I have cPanel on my server and it was not listed as something to add in WHM.  I found this info, logged in to SSH as root and did this install.

 

My admin is working.  From what I read it has to do with the password hash.

 

I really haven't got much of an idea of most of this, but after I installed, I switched to PHP 7.3 checked admin and it worked fine, then switched back to 7.4 and worked as well.  So at least it is fixed for now. 

 

cd /usr/src/
wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz
tar -zxvf libsodium-1.0.18.tar.gz 
cd libsodium*

./configure
make && make check
make install
make check

 

/opt/cpanel/ea-php72/root/usr/bin/pecl install libsodium
/opt/cpanel/ea-php73/root/usr/bin/pecl install libsodium

 /opt/cpanel/ea-php74/root/usr/bin/pecl install libsodium

Re: Magento 2.4.2 Update Admin Error

Same error here - trying libsodium update......

Thanks for the info!

Re: Magento 2.4.2 Update Admin Error

Install PHP-extension sodium will fix this. 

Non fpm user can use into terminal and restart apache/nginx 
yum install php-sodium

 

Into multi PHP environment if you want to install for php7.3 
yum install php73-php-sodium

 

Ubuntu users can do like
sudo apt install php-libsodium

 

Into WHM you can install via easyapache

 

Re: Magento 2.4.2 Update Admin Error

Hi there,

 

I can confirm installing Sodium on the Apache Server works - I rolled back to 7.3 and then back to 7.4 using multi PHP then I'm back in the game.

 

Thanks, Everyone For Their Answers - 

Re: Magento 2.4.2 Update Admin Error

Hi,

 

According to php.net  all the versions greater than and equal to PHP 7.2, lib sodium is bundled in itself.

 

Do we still need to explicitly install sodium extension on php 7.3 ?

 

Re: Magento 2.4.2 Update Admin Error

I am getting the same error. unable to login Magento admin and not able to create a new one via command line. did anyone solve this issue?