Quando si gestiscono utenti e login, una regola fondamentale è:
❗ NON salvare mai le password in chiaro nel database
La soluzione è usare il password hashing.
L’hashing è un processo che trasforma una password in una stringa cifrata.
👉 La password originale non è più leggibile
👉 Non è possibile tornare indietro (irreversibile)
Password inserita:
123456
Password salvata:
$2y$10$e0NR...
👉 Anche se qualcuno accede al database, non vede la password reale 🔒
password_hash()Per creare un hash sicuro si usa:
password_hash() |
<?php |
👉 Ogni volta verrà generato un hash diverso (più sicuro 👍)
Per controllare se una password è corretta si usa:
password_verify() |
<?php |
❌ NON fare mai questo:
if($password == $hash) |
👉 Non funzionerà mai, perché l’hash è diverso dalla password!
<?php |
<?php |
🔐 usa algoritmi avanzati
🧂 include automaticamente un “salt”
🔁 ogni hash è diverso
🚫 impossibile ricostruire la password
❗ non salvare mai password in chiaro
🔐 usa sempre password_hash()
🔍 usa password_verify() per il login
⚙️ lascia PASSWORD_DEFAULT
le password devono essere hashate
si usa password_hash() per salvare
si usa password_verify() per controllare
non confrontare mai direttamente le password
è fondamentale per la sicurezza
Gestire correttamente le password è uno degli aspetti più importanti della sicurezza in PHP.
👉 Con password_hash() e
password_verify() hai già un sistema sicuro e moderno
👍
🎉 Con questo articolo il tuo tutorial fa davvero un salto di qualità!