Sto lavorando su un modulo di registrazione in cui ho bisogno di crittografare la password, ho sentito che mi consiglia di utilizzare la crittografia Blowfish per le password, Come si implementa una crittografia blowfish utilizzando PHP funzione crypt()? Inoltre, sto progettando di recuperare la password in seguito per effettuare il login.Utilizzo di Blowfish per la crittografia con PHP
risposta
La risposta breve è usare crypt
con un sale che inizia con i caratteri $ 2a $, a due cifre costo parametro, $, e 22 cifre dell'alfabeto ./0-9A-Za-z. Funziona solo su sistemi che supportano l'algoritmo di crittografia Blowfish. Tuttavia, PHP 5.3 lo implementa in modo nativo. Vedi PHP manual — crypt per maggiori dettagli.
Esempio:
crypt('rasmuslerdorf', '$2a$07$somesillystringforsalt')
La stringa sale innesca l'algoritmo appropriato. Il parametro a due cifre costato è il logaritmo in base 2 del conteggio iterativo per l'algoritmo di hashing basato su Blowfish sottostante e deve essere compreso nell'intervallo [04 – 31]. Nell'esempio 07 indica all'algoritmo di utilizzare 2 o 128 iterazioni. Più alto è questo numero, più tempo ci vorrà per eseguire BUT, nel contesto delle password utente hashing, cioè una cosa GOOD GOOD.
This answer to a similar question spiega in modo più dettagliato cos'è BCrypt, come si riferisce a Blowfish e perché è necessario utilizzarlo. Ci sono molti altri related topics here on Stack Overflow.
phpass è un ottimo facile da usare framework hashing, password che funziona su tutti i sistemi, utilizzando Blowfish se ’ s supportati, e ricadendo ad altri algoritmi se ’ non lo è.
Non dovresti mai avere bisogno di blowfish per crittografare una password come questa. Il modulo di registrazione dovrebbe essere su HTTPS, che gestirà la difesa contro un attaccante sul filo. La password deve essere hash (non crittografata mai). bcrypt è una buona funzione di hash della password basata su blowfish. Ma ci sono molti post relativi alla memorizzazione sicura delle password su SO.
- 1. Crittografia Blowfish in Android
- 2. Crittografia con PHP Phar
- 3. crittografia con php
- 4. Facile crittografia e la decrittografia con PHP
- 5. php crypt() Lunghezza sale Blowfish compatibile
- 6. SHA512 vs. Blowfish e Bcrypt
- 7. Utilizzo di PHP per creare la password salata TYPO3?
- 8. Utilizzo della macchina ASP.NETKey per la crittografia dei dati personali
- 9. Strategie per la crittografia con Django + Postgres?
- 10. Utilizzo di HTTPS in Java senza crittografia
- 11. C# codifica/decodifica di blowfish
- 12. Utilizzo della crittografia openssl per HTTP Live Streaming di Apple
- 13. Implementazione obiettivo-c Blowfish
- 14. Aiutami con la crittografia XOR
- 15. Metodo di crittografia implementato sia per PHP che per Java?
- 16. Come possiamo utilizzare la crittografia in modalità GCM in PHP?
- 17. C# Crittografia in PHP Decryption
- 18. Utilizzo di una chiave per Crittografia e HMAC
- 19. Politica per la firma e la crittografia
- 20. APNS con PHP che non ha abilitato l'errore di crittografia
- 21. Crittografia: utilizzo del tasto di inizializzazione vettoriale vs chiave?
- 22. Bcrypt è utilizzato per l'hashing o la crittografia? Un po 'di confusione
- 23. Utilizzo di swiftmailer di php con gmail
- 24. Utilizzo dell'autenticazione Windows con php?
- 25. Come generare la chiave di crittografia da utilizzare con attr_encrypted
- 26. metodi di crittografia PHP mcrypt corretti?
- 27. PHP: utilizzo di indentazione corretta con Heredocs
- 28. Come funziona la crittografia di Mega per la condivisione?
- 29. Utilizzo di R con Apache e PHP
- 30. Dove memorizzare la chiave privata per la crittografia in ambiente PHP
Dai un'occhiata a [questo] (http://www.chilkatsoft.com/p/php_blowfish.asp). –
Non si dovrebbero "cifrare" le password, ma usare una funzione di hashing unidirezionale. Vedi: [Come usi bcrypt per le password di hashing in PHP?] (Http://stackoverflow.com/q/4795385/911182) – Herbert
Leggi anche: [Come posso memorizzare le password dei miei utenti in modo sicuro?] (Http://stackoverflow.com/questions/1581610/how-can-i-store-my-users-passwords-safely/1581919#1581919) – Jacco