Повышение безопасности при входе в систему с использованием просто файла [закрыто]MySql

Форум по Mysql
Ответить
Anonymous
 Повышение безопасности при входе в систему с использованием просто файла [закрыто]

Сообщение Anonymous »

Я разработал страницу входа в систему, чтобы пользователь мог войти в систему:

1. С именем пользователя и паролем1:

Код: Выделить всё

$username = $_POST['username'];
$password1 = password_hash($_POST['password1'], PASSWORD_DEFAULT);
< /code>
[b] 2. Использование просто файла (Password2 = извлеченный пароль из файла): [/b]
$password2 = hash('sha3-512', $_POST['password2']);
< /code>
[b] Примечание: < /strong> Первый метод - это общий метод, который используется в настоящее время (нет обсуждения этого метода), но второй метод, где вход в систему выполняется с использованием просто файла, он обсуждается. и выполнить проверку. Но во втором методе невозможно сохранить пароль (пароль2) 
, используя функцию Secure Password_hash , а затем получить к нему доступ без имени пользователя (поскольку у нас просто есть файл). Поэтому я должен сохранить его, используя функцию хэш , чтобы иметь возможность получить к ней доступ. Я полагаю, что второй метод гораздо более безопасен от атак, однако, Мой основной вопрос: < /strong> я все еще хочу, чтобы пароль (пароль2) < /code> во втором методе хранится более надежно и по -прежнему доступен через запрос? ) < /code> получается во втором методе:

< /p>

Когда пользователь создает и входит в свою учетную запись, используя имя пользователя < /code> и пароль (пароль1) < /code>, у него есть опция в своей панели для регистрации файла в качестве файла входа. С тех пор они могут войти в свою учетную запись, используя только этот файл, без необходимости имени пользователя < /code> или пароля (пароль1) < /code>.

< /li>
Пароль (пароль2) < /code> извлекается из этого файла на стороне клиента и затем сохранено. class = "Snippet-Code">

Код: Выделить всё


document.getElementById("file").addEventListener("change", function (event) {

const filereader = new FileReader();
filereader.onload = function () {
var filedata = filereader.result.split(',')[1];
const datalength = filedata.length;
filedata = filedata.slice(Math.round(((datalength * 2) / 9)) - 100, Math.round(((datalength * 2) / 9)) + 100) + filedata.slice(Math.round(((datalength * 5) / 9)) - 100, Math.round(((datalength * 5) / 9)) + 100) + filedata.slice(Math.round(((datalength * 8) / 9)) - 100, Math.round(((datalength * 8) / 9)) + 100);
if (/^[a-zA-Z0-9+=/]*$/.test(filedata)) {
console.log(filedata);
//Sending filedata (password2) via Ajax
}
};
filereader.readAsDataURL(event.target.files[0]);
});


Из -за ограничений скорости в Интернете и слабого подключения, не практично загружать файл 3GB (пользователь может выбрать файл носителя любого размера, если он не делает этот файл общедоступным в Интернете), а затем извлечь пароль (пароль2)

Код: Выделить всё


Подробнее здесь: [url]https://stackoverflow.com/questions/79762036/improving-security-at-login-using-just-a-file[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»