본문 바로가기
IT/Java

Java 에서 Bcrypt 사용

by 성준하이 2024. 6. 5.
반응형

이전 포스팅에서 Bcrypt 에 대해 다룬 글이 있다.

Bcrypt 에 대한 설명이 필요하다면 참고 포스팅을 참고 바란다.

 

Bcrypt 를 Springboot에 적용하는 방법에 대해 다뤄볼 것이다.

 

library 추가

 

gradle 프로젝트 기준으로 Bcrypt를 사용하기 위해서는 Spring Security 를 받아와야한다.

implementation 'org.springframework.boot:spring-boot-starter-security'

 

import 하기

 

security 내에 사용할수 있는 클래스는 아래와 같이 import 작업을 해준다.

import org.springframework.security.crypto.bcrypt.BCrypt;

 

암호화 값 만들기

 

패스워드나 주민번호 처럼 민감 정보는 암호화 처리를 아래와 같이 해준다.

String convertPassword  = BCrypt.hashpw("testPassword", BCrypt.gensalt());

 

검증 작업하는법

 

패스워드가 맞는지 검증하기 위해서는 아래와 같이 비교를 진행한다.

..이상 생략
String loginPasswd = "thenicesj"; //로그인한 패스워드라고 가정

String dbPasswd = repositoryDto.getPassword(); // db에서 Bcrypt 암호화 된 값이라고 가정

boolean
loginStatus = BCrypt.checkpw(loginPasswd, dbPasswd);
..이하 생략

 

이렇게 하면 boolean 값으로 return 을 하여 로그인 진행을 할수 있다.


참고 포스팅

https://thenicesj.tistory.com/99

 

암호화란?(Sha256, Bcrypt)

먼저 해당 포스팅을 작성하기 앞서 나는 보안이나 암호화 관련된 전문 인력은 아니므로 , 어디까지나 얕은 지식이나 잘못된 지식이 있을수도 있습니다.틀린게 있다면 댓글을 통해서 알려주시면

thenicesj.tistory.com

https://thenicesj.tistory.com/930

 

NodeJS 에서 Bcrypt 사용

NodeJS 에서 Bcrypt를 사용하여 값을 암호화 하는 방법에 대해 소개한다. Bcrypt에 대한 내용은 아래 참고 포스팅 참고 바란다. 우선 사용을 위해서 npm install 을 진행해야한다. npm install bcrypt그리고

thenicesj.tistory.com

 

반응형

댓글