Просмотр полной версии : [Вопрос] Хеширование паролей
У меня в моде стоит хеширование паролей SHA256_PassHash, как мне создать ucp сайт?
Shaolinka
16.05.2023, 17:09
Приходишь ты такой в магазин, а продавец тебе в ответ: чего желаете? А ты такой: магазин. Просто одно слово, без каких-либо объяснений или чего-либо. Одно дело использовать функцию, хеширующую пароли по принципу: пароль + соль. Другое же создание UCP, которое требует не только базовых познаний в области HTML, но и обработки в плане серверной части, то бишь как минимум PHP. Не думаю, что тут есть энтузиасты, разрабатывающие такие столь увесистые в плане реализации системы за отзыв, поэтому Тебе, судя по всему, в стол заказов
Я имею ввиду, мне нужен только код хеширования для паролей для сайта ucp.
Мне даже только нужен файл, куда вставить код, сам код у меня есть, но я не знаю в какой файл именно его нужно вставить и как.
- - - Добавлено - - -
Или как вообще убрать это хеширование из мода?
Shaolinka
16.05.2023, 19:50
Если объяснять в кратце, то достаточно записывать в массив, хранящий пароль не хеш, созданный при помощи Sha256PassHash, а, непосредственно, сам пароль. Ну и к тому же, элемент перечисления, хранящий соль также стоило бы удалить, ну или, если у тебя отсутствует структура с метаданными игрока, то в таком случае соль хранится в двумерном массиве на MAX_PLAYERS и размер соли, который нужно снести. Такую же перспективу нужно проворачивать и с сохранением в таблицу, удаляя столбец, хранящий соль
Shaolinka
16.05.2023, 20:17
Я не знаю каким образом объяснить иначе. Предоставь имеющийся код, возможно, на основе этого, смогу подкорректировать под нужные тебе реалии. Однако учти, что если отказаться от хеширования в угоду обыкновенных паролей, то, если пренебречь экранированием входящей строки(в нашем случае пароля) присутствует риск поймать SQL инъекцию. Да и в целом, практика использования хешированных паролей свидетельствует о том, что тебе важна защита данных твоих игроков, которая может запутать часть пользователей, воспользовавшихся данными из твоей таблицы(если она вдруг окажется в общем доступе) в своих, корыстных целях
$password = $_POST['password'];
$salt = 'ZGxt3MSEE'; //запишу соль (для примера)
$hashed = hash('sha256', $password . $salt);
$hash = '1AEDF41427A95F6A041E2FF8C0F50B4E6ADC97F2EA6B5863E5FBC42CA3287310'; //наша хэш сумма из бд (для примера)
if (strcasecmp($hashed, $hash) == 0) {
//пароль верный, выполняем нужные действия
}
else {
//выводим сообщение о неверном пароле
}
Что-то такое, нужно переделать, и понять куда ставить.
Shaolinka
16.05.2023, 22:28
Тебе бы для начала сформировать эту самую авторизацию/регистрацию, а уж потом, исходя из имеющегося функционал, доделывать наиболее важную составляющую. Проще говоря, нужно понимать что и куда вставлять, всему есть своё место. Как минимум можно, посредством использования html тэгов сотворить некие кнопки, при нажатии на которые, будет выводиться соответствующий функционал.
У меня сам сайт есть, только куда вот вставить это, хз...
Shaolinka
16.05.2023, 23:01
Нужно объективно смотреть на вещи: методом тыка это провернуть не удастся, ибо, как выше подмечалось, всему есть место и в случае, если свернуть не туда, система сгенерирует соответствующую ошибку/ошибки. Начни с малого: узнай, какой ЯП для разработки использует твой сайт. И, тогда уж, исходя из этой информации, пытайся искать документацию к нему, познавая его базовые вещи. Лишь усвоив суть дела, можешь начинать править код
Вы сможете мне помочь, не разбираюсь.
Shaolinka
17.05.2023, 15:24
Я не программирую в веб направлении, потому не умею оперироваться ЯП, ответственными за это. Тебе, логичнее всего, если не хочется тратить деньги на поиск нужного человека, необходимо самому пойти путём, описанном мною выше. Иных вариантов у меня нет
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot