в соответствии с вашим новым кодом: у вас есть дополнительный кронштейн, снова в , 256)));
.
Здесь:
INSERT INTO `user` (`username`, `salt`, `passwordhash`)
VALUES ('username', 'a1b2c3d4e5f6g', SHA2(CONCAT('password', 'a1b2c3d4e5f6g'), 256));
Это и со всеми комментариями я оставил там.
Edit: Далее, согласно происходит через руководство MySQL на SHA2()
может быть связан вопрос.
По https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html#function_sha2
Эта функция работает только, если MySQL сконфигурирован с поддержкой SSL. См. Section 6.4, “Using Secure Connections”. SHA2() можно считать криптографически более безопасным, чем MD5() или SHA1(). SHA2() был добавлен в MySQL 5.5.5.
Итак, убедитесь, что используемая вами версия MySQL соответствует ей или выше этого. Если он ниже 5.5.5, то SHA2()
недоступен для вас. Это или может быть проблемой sysadmin/security на сервере.
Обратитесь к sysadmin в вашей школе, если это то, от чего вы это делаете, поскольку, как видно из того, что вы сказали в комментариях, - «Я следую школьному учебному пособию, в котором говорится, что он использует SHA2». В любом случае, здесь важна версия MySQL.
Чтобы проверить версию MySQL установлен, используйте следующий синтаксис в PHPMyAdmin:
ВЫСТАВКАХ переменных типа "% версии%";
Вместо того, что вы использовали, было SELECT VERSION();
.
*** Вы не должны использовать [хэши паролей SHA1] (https://konklone.com/post/why-google-is-hurrying-the-web-to-kill-sha-1) *** или *** [хэши паролей MD5] (http://security.stackexchange.com/questions/19906/is-md5-considered-insecure) ***, и вы действительно должны использовать встроенные функции PHP (http: //jayblanchard.net/proper_password_hashing_with_PHP.html) для защиты паролей. Удостоверьтесь, что вы [не избегаете паролей] (http://stackoverflow.com/q/36628418/1011527) или используйте любой другой механизм очистки для них перед хэшированием. Выполнение этого * изменяет * пароль и вызывает ненужное дополнительное кодирование. –
Какие версии phpMyAdmin и MySQL вы используете? Как только я исправлю дополнительную закрывающую скобку, это отлично работает для меня, используя текущую версию phpMyAdmin (4.6.5.2). –
Кроме того, вы можете использовать вкладку «Вставка», в которой есть раскрывающиеся функции MySQL, которые могут быть вам полезны. –