数据库中的用户部分是用php的框架laravel存的,salt为64位用md5加密过的日期字符串,之后调用框架的 ::make 方法生成加密后的密码
::make
在另一应用中用node取到salt和加密后的password,分别试了bcrypt和crypto都无从下手,求指导lavarel的make的方法的具体实现和node中是否有对应的模块解密
Thanks!
业精于勤,荒于嬉;行成于思,毁于随。
用户密码的存储是不可能解密的。
密码只能用于鉴权,就是只能单向计算。
从代码里看Laravel用的是Bcrypt,具体的代码实现在:
vendor/laravel/framework/src/Illuminate/Hashing/BcryptHasher.php public function make(){ ... } 用的是PHP的基础函数 password_hash()。
vendor/laravel/framework/src/Illuminate/Hashing/BcryptHasher.php
public function make(){ ... }
用的是PHP的基础函数 password_hash()。
password_hash()
解密应该是不可能的,具体如何正向验证,你可以去看下PHP的文档。
md5为哈希函数,不可逆
面向高并发的应用最好不要使用password_hash加密,效率非常低。
密码只能用于鉴权,就是只能单向计算。
从代码里看Laravel用的是Bcrypt,具体的代码实现在:
解密应该是不可能的,具体如何正向验证,你可以去看下PHP的文档。
md5为哈希函数,不可逆
面向高并发的应用最好不要使用password_hash加密,效率非常低。