热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

node中如何比对Laravel加密过的密码

数据库中的用户部分是用php的框架laravel存的,salt为64位用md5加密过的日期字符串,之后调用框架的::make方法生成加密后的密码在另一应用中用node取到salt和加密后的password,分别试了bcrypt和crypto都无从...
数据库中的用户部分是用php的框架laravel存的,salt为64位用md5加密过的日期字符串,之后调用框架的 ::make 方法生成加密后的密码

在另一应用中用node取到salt和加密后的password,分别试了bcrypt和crypto都无从下手,求指导lavarel的make的方法的具体实现和node中是否有对应的模块解密

Thanks!

回复内容:

数据库中的用户部分是用php的框架laravel存的,salt为64位用md5加密过的日期字符串,之后调用框架的 ::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()

解密应该是不可能的,具体如何正向验证,你可以去看下PHP的文档。

md5为哈希函数,不可逆

面向高并发的应用最好不要使用password_hash加密,效率非常低。

推荐阅读
author-avatar
死了才能爱_403
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有