비밀번호를 데이터 베이스에 저장하는 방법은 세가지이다.
1. 원본 비밀번호
1234 -> 1234 그대로 저장 => 데이터 베이스 털리면 끝
2. 비밀번호를 암호화 키와 함께 암화하하기
2-1. 양방향
ex) 1234 -> l6LOdzjKWGwzqAx5TNgS9Q==
근데 양방향이면 복호화도 가능
l6LOdzjKWGwzqAx5TNgS9Q== -> 1234
그래서 뚫릴 가능성이있다
https://www.devglan.com/online-tools/text-encryption-decryption
2-2. 단방향
단방향으로 할시?
1234 -> 03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4
근데 이렇게 하면 레인보우테이블을 만들어서 각각 암호화된 값과 내비번 같은것 찾아서 해킹할 수 있음
3. 솔트(salt) + 비밀번호
해시로 암호화 해서 저장, 암호화할 때 원래비번에 salt를 붙인 후 해시로 암호화를 함
Node.js 에시
bcrypts 모듈 사용
npm install bcryptjs --save