Witam! Mam kilka pytań o bezpieczeństwo formularzy/logowania się na stronie. Rozdzialanie ich na pojedyncze pytania myślę, że nie miałoby sensu, więc piszę w jednym, a zatem do rzeczy:
1) Czy funkcja password_hash() w PHP w zupełności wystarczy i hasło będzie bezpieczne w bazie danych czy trzeba np. dodać sól, pieprz czy zaszyfrować to z użyciem jeszcze innego algorytmu?
2) Co jest bardziej użyteczne, bezpieczne i lekkie: ASP.NET czy PHP? I co warto stosować na stronach?
3) Co jest bardziej skuteczne, przyszłościowe i bezpieczne: recaptcha v2 czy recaptcha v3?
4) Czy po wykonaniu zbyt dużej ilości zapytań przez użytkownika np. 50, 100, 200 w krótkim czasie powinno się zablokować go na stronie? Mówię o czymś takim jak ban na IP np. na 15 minut.
5) Czy weryfikacja logowania z użyciem
$_SESSION['logged'] = true;
jest bezpieczna i jest dobrym rozwiązaniem? Czy lepiej stosować inne metody?
6) Jak sprawdzić czy strona jest bezpieczna, nigdzie nie powoduje żadnych błędów, jest odporna na ataki i jest responsywna na większości urządzeń?
7) Edit: Jeszcze jedno pytanie bo zapomniałem, czy jeżeli zrobię coś takiego:
<!DOCTYPE html>
<html lang="<?php echo $_SESSION['lang']; ?>">
<head>
<?php
require_once 'head.php';
?>
</head>
<body>
</body>
</html>
To strona będzie miała takie same SEO i zostanie dobrze zaindexowana przez przeglądarki, czy spowoduje to problemy? (moja strona będzie mieć 2 języki, a odpowiedni język będzie zapisywany do tablicy $_SESSION['lang'])
Zapraszam do kulturalnej dyskusji ;)