laravle5.4修改成MD5验证加密方式

今天在做laravel项目的时候,需要做成md5加密的方式验证,那如何在不修改已有的源码去重构一下呢。

注:下面修改的代码做法,会把整个框架的加密方式全部修改,请根据自己的项目需求而定。

如果只要修改登录注册看这篇文章《laravel5.4登录注册MD5加密验证方法

转载请注明(B5教程网)原文链接:http://www.bcty365.com/content-153-5884-1.html

1. 在app/下创建一个MD5/文件夹。里面创建一个MD5Hasher类(MD5Hasher.php):

<?php 
namespace App\MD5; 
use Illuminate\Contracts\Hashing\Hasher as HasherMD5; 
//后添加MD5验证 
class MD5Hasher implements HasherMD5 

public function make($value, array $options = []) 

return md5($value);//根据后面加密规则来设置 

public function check($value, $hashedValue, array $options = []) 

if(emptyempty($hashedValue)){ 
return true; 

return $this->make($value) === $hashedValue; 

public function needsRehash($hashedValue, array $options = []) 

return false; 


2. 命令行:

php artisan make:provider MD5HashServiceProvider

在这个文件的register()方法写上:
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider; 
use App\MD5\MD5Hasher; 
class MD5HashServiceProvider extends ServiceProvider 

//后添加MD5验证 
/** 
* Bootstrap the application services. 

* @return void 
*/ 
public function boot() 

// 
}

/** 
* Register the application services. 

* @return void 
*/ 
public function register() 

$this->app->singleton(‘hash‘, function () { 
return new MD5Hasher; 
});



3.修改配置

config/app.php,注释下面这一行:

Illuminate\Hashing\HashServiceProvider::class,

加上你的:

App\Providers\MD5HashServiceProvider::class, //后添加MD5验证

4.测试如下:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request; 
use Auth; 
class CeshiController extends Controller 
{

public function login(){ 
Auth::attempt([‘users_mobile‘=>‘15250735031‘,‘password‘=>‘‘]); 
dd(Auth::user()); 

}

时间: 2024-11-09 06:18:09

laravle5.4修改成MD5验证加密方式的相关文章

Liferay 6.2 改造系列之二十四:修改liferay密码的加密方式

为了便于后期与Cas集成过程中使用数据库用户的方便,将liferay密码的加密方式改为SHA. 在/portal-master/portal-impl/src/portal.properties配置文件中,有如下配置: #passwords.encryption.algorithm=BCRYPT/10 #passwords.encryption.algorithm=MD2 #passwords.encryption.algorithm=MD5 #passwords.encryption.algo

laravel5.4 登录注册MD5加密方式教程

上次写过一篇文章<laravle5.4修改成MD5验证加密方式>,这样做有一个缺点,是把整个框架的加密方式都修改了,今天分享的是针对注册登录的MD5加密方式,不影响其他hash加密. 转载请注明(B5教程网)原文链接:http://www.bcty365.com/content-153-5886-1.html 具体步骤如下 1.在app目录下,新建一个文件Libraries,在Libraries目录下新建一个MD5.php文件,里面代码如下: <?php namespace App\Li

mysql8修改密码加密方式

mysql8用navicat可视化连接会报错加密方式错误,想要连接mysql8有两种方式 1:安装MySQL8客户端 2:修改MySQL8的密码加密方式 我采用的是第二种,因为服务器上是MySQL8,而我本地是MySQL5,不想在装一个MySQL8,要是换电脑还要在装一个MySQL8,觉得有点麻烦. 以下是通过查资料总结出来的修改方法以及修改过程中可能会出现的问题.时间有点久了,查到的资料地址忘记了,就剩了个修改记录. // 登陆 mysql -uroot -p // 更改加密方式 mysql>

extmail 密码加密方式修改为plain-md5的方法

extmail默认密码加密方式是md5crypt,但是有些时候会遇到这样的问题--老的邮件系统中的用户密码是md5加密的. 此时需要将extmail的密码加密方式修改为md5,通过官方解释(md5和md5crypt没有区别),修改为plain-md5即可.但是,这只解决了web登陆的验证问题,没有解决smtp以及pop3的验证问题. 通过 http://www.extmail.org/forum/viewthread.php?tid=3175 帖子解决了验证问题,内容摘录如下: courier-

修改servu数据库密码 servu加密方式

项目要求可以有用户自行修改servu密码.servu可以通过odbc访问access\mysql\sqlserver数据库.我们直接通过创建web来修改就可以了. 不过问题来了,密码是加密的...通过网上搜索找到了.net版本的加密方式...自己验证没问题... 下面贴出简单的测试代码(引用他人博客) servu加密:using System;using System.Collections.Generic;using System.Linq;using System.Web;using Sys

Shiro自定义realm实现密码验证及登录、密码加密注册、修改密码的验证

一:先从登录开始,直接看代码 @RequestMapping(value="dologin",method = {RequestMethod.GET, RequestMethod.POST},produces="text/html;charset=UTF-8") @ResponseBody public ResultJson systemUserdologin(XXX xxx,HttpServletRequest request,HttpServletRespons

《Java知识应用》Java加密方式(MD5)详解

1. 应用 使用MD5加密 因为:因为MD5的不可逆性,也可以保证你的key 是安全的,黑客无法通过原文和密文知晓你的key. 案例: import java.math.BigInteger; import java.security.MessageDigest; public class MD5Util{ /** * 使用MD5加密 * @param plainText * @return */ public static String encryptionByMD5(String plain

MD5加密方式

MD5加密是一种安全系数比较高的加密方式,具有不可逆的加密特征,就是很难进行破解,现在对MD5加密进行破解的方式还是采用跑数据库的方式,时间比较长,耗费性能比较大,所以一般的破解都是要收费的. C#中的MD5加密使用微软提供的MD5加密的类进行实现,具体如下: public class MD5Encrypt { public static string Encrypt(string str) { MD5 md5 = MD5.Create(); byte[] bytes = Encoding.UT

PHP比md5更安全的加密方式--哈希密码

传统加密方式: md5(密码+盐值); $passwordString='your password';//你的密码 $salt="your salt value";//盐值,增加复杂度(随机字串) $md5Password=md5($passwordString.$salt); 从理论上来说,md5不可逆,算是一种比较安全的加密方式.但是我要提醒的是,md5早在04年的时候就被中国人破解(请自行搜索山东大学王小云).一旦被人拖库的化,密码泄漏的可能性极大. 现在推荐一种新的处理方式: