bcryptの適用


$pip install bcrypt 
bcryptを使用してインストール

bcrypt構造

$2b$[cost]$[22 character salt][31 character hash]
2b : 알고리즘 식별자 cost : Cost의 크기는 2^10 salt : 랜덤하게 만든 salt hash : 패스워드. Salt와 패스워드를 묶어서 해시
import bcrypt

en_pw = bcrypt.hashpw(password.encode('utf-8'), bcrypt.gensalt()) 
#회원 가입시 password를 encode로 byte형으로 변환 후 salt를 통해 암호화
en_pw.decode('utf-8') 
#DB저장을 위해 str형으로 변환후 DB저장
#예) $2b$12$IQX7xM0q54uGIJ74CRCcmODW4W6ZH0bjWwjaZwGUpXpxmeBo3On.G
bcrypt.checkpw(en_pw,'입력받은 비밀번호'.encode('utf-8)
#해당 DB와 입력 받은 비밀번호를 동일한지 check True, False 반환