Guten Tag,
folgendes Problem: gerade neuere Magento Versionen setzen per Default nun auf die ARGON2ID13 Crypto Funktion. Die ARGON2 ist auch in allen Liveconfig PHP Versionen enthalten, nicht jedoch die ARGON2ID3, die benötigt mindestens libsodium 1.0.13., siehe auch: https://changelog.hypernode.co…install-updated-to-2-3-2/
Im veraltetem Jessie/8 war das auch der Fall:
~$ /opt/php-7.2/bin/php -i|grep 'libsodium library version'
libsodium library version => 1.0.15
Obwohl es dort garkein sodium in Debian gibt, da habt ihr dann wohl die embedded Version genutzt.
Entsprechend kann man die Funktion nutzen:
$ for i in /usr/bin/php /opt/php-*/bin/php ; do echo -n "VERSION $i: " && $i -r 'if(defined("SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13")){ echo "OK\n"; } else { echo "FALSE\n"; }' ; done
VERSION /usr/bin/php: FALSE
VERSION /opt/php-5.4/bin/php: FALSE
VERSION /opt/php-7.2/bin/php: OK
Nach einem Update zu Stretch/9 jedoch wird nicht mehr die Embedded Version genutzt, sondern die Version von Debian. An sich schön, jedoch haben wir dadurch die Funktion nicht mehr und können den Shop eher auf einer alten, als auf einer neuen Serverversion betreiben:
$ for i in /usr/bin/php /opt/php-*/bin/php ; do echo -n "VERSION $i: " && $i -r 'if(defined("SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13")){ echo "OK\n"; } else { echo "FALSE\n"; }' ; done
VERSION /usr/bin/php: FALSE
VERSION /opt/php-5.6/bin/php: FALSE
VERSION /opt/php-7.0/bin/php: FALSE
VERSION /opt/php-7.1/bin/php: FALSE
VERSION /opt/php-7.2/bin/php: FALSE
VERSION /opt/php-7.3/bin/php: FALSE
VERSION /opt/php-7.4/bin/php: FALSE
$ dpkg -l|grep libsodium
ii libsodium18:amd64 1.0.11-2 amd64 Network communication, cryptography and signaturing library
$ /opt/php-7.2/bin/php -i|grep 'libsodium library version'
libsodium library version => 1.0.11
Alles anzeigen
Ab Debian Buster/10 ist das wieder kein problem, da wird die Version 1.0.17 von Debian genutzt und unterstützt die Funktion.
Da TYPO3 unter Version 8 dazu auch nicht mit MySQL 8.0 / MariaDB ab 10.2 zurecht kommt, ist ein Upgrade auf Buster leider auch noch nicht möglich.. Könntet ihr daher bitte die Stretch Pakete auch auf die Embedded libsodium Library umstellen?