sha256 non è progettato per le password hash. Per le password hash, si consiglia di utilizzare le funzioni hash create per questo utilizzo. Di seguito troverai tutte le informazioni richieste in un'altra domanda che risponde a una richiesta simile: Algoritmo di hash della password più sicuro (s)? .
Nella domanda di cui sopra, imparerai perché le funzioni hash di uso generico come sha256 non hanno le proprietà giuste per garantire una memorizzazione sicura delle password (anche se applicate un gran numero di volte su se stessa), e troverai anche una classifica delle funzioni hash più raccomandate dedicate alla gestione sicura delle password:
-
scrypt : che è ancora abbastanza nuovo (pubblicato nel 2012), ma è progettato per garantire una sicurezza migliore rispetto al suo predecessore bcrypt,
-
bcrypt : è stato progettato specificamente per l'archiviazione delle password ed è stata la scelta consigliata per un lungo periodo di tempo,
-
PBKDF2 : In realtà è progettato come una funzione di allungamento chiave, ad es. un modo sicuro per ricavare una chiave crittografica da una determinata password, ma le sue proprietà lo rendono adatto anche all'archiviazione della password.
Nella tua domanda hai menzionato la funzione PHP password_hash () . Questa funzione non è un algoritmo hash di per sé. Infatti, questa funzione viene utilizzata per consentire a PHP di selezionare l'algoritmo hash della password più affidabile disponibile senza dover modificare il codice.
Come indicato nella documentazione, come da PHP 5.5.0, bcrypt è selezionato per impostazione predefinita.