毫無疑問,Laravel是一個優雅和強大的框架。我是初學者。據我所知,Laravel的加密器使用OpenSSL提供AES-256和AES-128加密。我的擔心是 - 如果有人訪問我的數據庫並收集我的加密密碼。由於我使用了Laravel內置的加密方法,因此黑客無法解密該密碼。如果在Laravel文檔中討論了加密和解密方法,那麼我認爲這是可能的。請讓我知道這有可能嗎?黑客有可能使用Laravel解密方法輕鬆解密Laravel項目的密碼嗎?
回答
Laravel的密碼未加密,它們被散列 - 請參閱https://laravel.com/docs/5.5/hashing。這是兩種完全不同的技術 - 哈希和加密。
- 加密是可逆的。 Laravel爲您想要安全存儲的內容提供內置加密功能,並且可以稍後解密。
- 哈希是單向完成的。沒有人 - 不是你,不是系統管理員,不是黑客可以解密用戶表中的密碼。你只能蠻力 - 你可以逐個嘗試不同的密碼,對它們進行哈希和比較散列。
然後當我嘗試登錄時,Laravel如何定義和匹配哈希密碼。 –
@MosharofHossain哈希方法可以實現這一點。一個簡單的方法來看它,它是讓你的密碼輸入你的登錄表單,Laravael計算它中的字符數並將它分隔到你的數據庫中的哈希(它也包含這個例子中的字符數)。如果這個用戶的日誌數是相同的,但是如果你有這個散列值(例如「12」),你就不能得到沒有散列的密碼。 這是一個例子,真正的Hash方法真的更復雜 –
@MosharofHossain當您嘗試登錄時,Laravel接收到您輸入的純文本密碼(您在表單中輸入的密碼),然後使用相同的哈希算法對其進行哈希處理,將結果與數據庫中的結果進行比較 - 如果兩個哈希匹配,則假定兩個源字符串(密碼)也是相同的。這是今天保護密碼的最常見方式 –
- 1. 加密解密Laravel 5.4
- 2. 如何在laravel中解密密碼
- 3. 解密有一項密碼
- 4. Laravel 5.4更改密碼加密方法
- 5. Laravel加密,iOS版的Android解密
- 6. 解密Laravel外部的加密值
- 7. Laravel/encrypt解密用戶tabel
- 8. 使用Spring的密碼加密/解密
- 9. 使用md5.js和PHP解密的客戶端密碼加密
- 10. 密碼laravel 5.2
- 11. Laravel用於ios/android應用程序的密碼加密/解密機制
- 12. 使用TripleDES加密解密密碼
- 13. 使用Jasypt加密和解密密碼
- 14. 使用php加密和解密密碼
- 15. 使用node.js加密/解密密碼
- 16. 解密方法
- 17. 帶密碼的密碼重置laravel 4.2
- 18. PHP - 解密加密密碼
- 19. 密碼加密/解密
- 20. 加密和解密密碼
- 21. 使用解密密鑰解密數據
- 22. 解密OpenLDAP密碼
- 23. 解密ASPNET_Membership密碼
- 24. PHP解密密碼
- 25. MD5密碼解密
- 26. 解密aspnetdb密碼
- 27. 解密liferay密碼
- 28. 用NoPadding解密DESede密碼
- 29. 無法解密AES的黑莓中的php代碼密文
- 30. 在aspnet_Membership表中有沒有解密密碼的方法?
密碼應存儲與鹽+散列,而不是加密。 –