BCrypt 대신 Laravel에 SHA1 암호화를 통합하는 방법은 무엇입니까?
BCrypt 대신 Laravel에 SHA1 암호화를 통합하는 방법
많은 사람들이 원하는 경우에도 Laravel에서 SHA1 암호화를 사용해야 할 필요가 있을 수 있습니다. 알고리즘은 BCrypt입니다. 그러나 Laravel은 본질적으로 SHA1을 지원하지 않습니다. 이 기사에서는 소스 코드를 변경하지 않고 SHA1 암호화를 Laravel에 원활하게 통합하는 방법을 살펴봅니다.
문제:
개발자는 AAC(자동 계정 생성기)를 위해 SHA1 암호화를 요구합니다. . 서버는 SHA1을 지원하지만 BCrypt는 지원하지 않습니다. 등록 시 SHA1을 직접 구현하는 것만으로는 인증에 충분하지 않습니다.
해결책:
해시 모듈 다시 작성
Laravel IoC(Inversion of Control) 및 종속성 주입 원칙을 준수합니다. 이를 통해 사용자 정의 해시 모듈을 쉽게 생성할 수 있습니다.
SHAHash 클래스
HasherInterface를 구현하는 SHAHasher 클래스를 생성합니다. 세 가지 필수 메소드인 make, check 및 needRehash를 구현합니다.
SHAHashServiceProvider
SHAHashServiceProvider를 등록합니다. 기본 해시 공급자를 사용자 정의 SHAHasher로 교체합니다.
app.php 수정
app/config/app.php에서 공급자 배열을 수정합니다. BCrypt 공급자를 제거하고 SHAHashServiceProvider를 삽입하세요.
추가 참고 사항:
- Laravel 5를 사용하는 경우 IlluminateHashingHasherInterface 대신 Illuminate/Contracts/Hashing/Hasher를 구현하세요.
- composer.json의 autoload.classmap에 app/libraries 폴더가 포함되어 있는지 확인하세요.
이 접근 방식의 장점:
- 핵심 Laravel 프레임워크를 수정하지 않고도 SHA1 암호화를 사용할 수 있습니다.
- 모듈 확장성을 위한 IoC 설계 원칙을 유지합니다.
사용 예:
등록 컨트롤러에서:
<code class="php">$password = sha1($request->input('password'));</code>
인증 컨트롤러에서:
<code class="php">$credentials = array('email' => $email, 'password' => $sha1Password);</code>
이 방법을 사용하면 개발자는 SHA1 암호화를 Laravel 애플리케이션에 원활하게 통합할 수 있습니다. 프레임워크의 기본값은 BCrypt입니다.
위 내용은 BCrypt 대신 Laravel에 SHA1 암호화를 통합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Laravel Back End : Part 2, React가있는 React 앱 구축

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법
