Member 12986530 Ответов: 0

Как я могу войти в систему VB.NET. Хэшированный пароль, созданный в PHP


Я делаю форму входа в систему vb.net, но регистрация происходит на PHP (это своего рода обязательное условие в проекте).

Что я уже пробовал:

//register
$password = strip_tags($_POST['password'])
$password = $DBcon->real_escape_string($password);
$hashed_password = password_hash($password, PASSWORD_DEFAULT);

//login 
$query = $DBcon->query("SELECT id, username, password FROM users WHERE username='$username'");
$row=$query->fetch_array();

$count = $query->num_rows;

if (password_verify($password, $row['password']) && $count==1) {
    $_SESSION['session'] = $row['id'];
    header("Location: home.php");
    }



Как я могу войти в систему с помощью хэшированного пароля в моем VB?Чистая форма входа в систему?

Graeme_Grant

Разработчики жертвуют и жертвуют своим собственным временем бесплатно, чтобы помочь коллегам-разработчикам разрешить трудности. Важно, чтобы Вы были кристально ясны в том, что вы испытываете, с большим количеством информации, чтобы ваше и их время не было потрачено впустую. Чем яснее вопрос, тем больше шансов, что вы получите благоприятный ответ своевременно.

Пожалуйста, найдите время, чтобы просмотреть эти ссылки, прежде чем отправлять вопросы:
* Некоторые рекомендации по размещению вопросов на форумах[^]
* Сказки из Империи Зла-задавать вопросы-это навык[^]

Как только вы будете готовы обновить вопрос с четкими и краткими деталями, образцом кода, любыми сообщениями об ошибках (включая внутренние детали исключения) и т. д., Пожалуйста, нажмите на кнопку Улучшить вопрос чтобы добавить больше информации к этому вопросу.

F-ES Sitecore

Вы будете бороться, чтобы сделать это. Я не знаю PHP, но после того, как я нашел какую-то плохую документацию (это PHP, чего вы ожидаете), они, кажется, неохотно говорят вам, какой алгоритм используется, когда вы предоставляете PASSWORD_DEFAULT, и это намеренно, поскольку используемый алгоритм будет меняться с течением времени с новыми выпусками. Таким образом, в принципе, если вы не знаете алгоритм, вы не можете воспроизвести его в своем собственном коде. Однако это, кажется, использовать осуществляется

http://docs.php.net/manual/en/function.password-hash.php

Это проблема номер один у вас есть, проблема номер два заключается в том, что, поскольку вы не предоставили соль к паролю, он генерируется случайным образом для вас (опять же никаких подробностей о том, как это работает из-за плохой документации), и если вы не знаете, что такое соль, вы не можете воспроизвести хэш в другом месте.

Если вы действительно хотите это сделать, вам придется изменить свой PHP-код, чтобы использовать явный алгоритм, а не PASSWORD_DEFAULT, и Вам также придется использовать явную соль, а не случайную, которую вы получаете по умолчанию. Это будет означать обновление вашего существующего приложения, но при этом вам все равно придется обслуживать пользователей, у которых уже есть сгенерированные хэши.

0 Ответов