개발이야기

[TIL]25.bcrypt로 암호화를 해보자!

무서운승태 2023. 11. 16. 20:21
728x90

개인정보를 DB에 저장할 때 비밀번호 같은 중요한 정보를 그대로 저장하는 것은 상당히 위험한 행위이다. 저장 전 암호화를 해주는 bcrypt 패키지 사용법에 대해 알아보자

 

https://www.npmjs.com/package/bcrypt

 

bcrypt

A bcrypt library for NodeJS.. Latest version: 5.1.1, last published: 3 months ago. Start using bcrypt in your project by running `npm i bcrypt`. There are 4218 other projects in the npm registry using bcrypt.

www.npmjs.com

사용법

1.npm을 이용하여 설치를 진행한다.

npm install bcrypt

 

2.사용하는곳에서 import 해준다.

import bcrypt from 'bcrypt';

 

3.hashSync(data, salt) 함수를 이용하여 데이터를 암호화한다. 여기서 salt란 간단하게 원문에 임의의 문자열을 덧붙이는 행위를 말한다. 횟수가 높을수록 보완이 강화되지만 높을수록 속도저하가 있다.

bcrypt.hashSync("data", "salt"),
ex) bcrypt.hashSync("123455", 10),

 

4.compare(입력받은 데이터, 암호화된 데이터) 함수를 이용하여 데이터가 맞는지 확인할수 있다.

// 일치하면 true, 아니면 falas를 반환한다.
bcrypt.compare(user_password, selectUser.dataValues.user_password)