bcryptを使用してパスワードを暗号化
def hash_password(account_password):
if account_password:
return bcrypt.hashpw(account_password.encode('utf-8'), bcrypt.gensalt())
encryption_password = hash_password(account_password)
上のコードはbcryptを用いてユーザのパスワードを暗号化するコードである.hash passwordという関数を使用してユーザーが受け取ったパスワード値をパラメータとして実行すると、暗号化されたパスワードが返されます.パスワードをencryption passwordとして宣言し、データベースに保存します.パスワードで暗号化されたコードを使用する場合に適用することが望ましい.
暗号化セクションは、3行目に返される行です.コードの意味をさらに理解したい場合は、次の記事を参照してください.暗号化の意味を理解し、コードの意味を一つ一つチェックしてみましょう.
bcrypt
bcrypt
.hashpw(account_password.encode('utf-8'), bcrypt.gensalt())bcryptはpythonでloginおよびsignup機能を実装する際によく使用される
단방향 algorithm 암호화
ライブラリの1つです.たんほうこう暗号化アルゴリズム
暗号化アルゴリズムには、双方向暗号化と一方向暗号化が含まれます.
双方向暗号化技術は、入力した値を簡単に暗号化値に変更したり、暗号化値を平文に変更したりすることができます.これは、復号できることを意味します.
この双方向暗号化方法とは異なり、一方向暗号化ではコメントを暗号化値に変更できますが、暗号化値をコメントに復号することはできません.
したがって,暗号化には,双方向アルゴリズムではなくbcryptの一方向アルゴリズムが主に用いられ,bcryptは
Hash기법
が用いられる.hashpw
bcrypt.
hashpw
(account_password.encode('utf-8'), bcrypt.gensalt())hashpwは、ハッシュbcryptが提供するパスワードに使用される関数です.hash関数は、注釈を単純に未知の暗号化に変換することができる.
account_password.encode('utf-8')
, bcrypt.gensalt())hashpw関数の最初のパラメータは、入力したコメントのパスワードです.ただし、hash関数は、平織りstringではなくバイトstringタイプのみをパラメータとして受け入れるため、上述したencode(「utf-8」)関数でbytestypeに変換してパラメータに入れる.
Pythonでは文字列をバイト(進化)に符号化し、バイトを文字列に復号する.
bcrypt.gensalt()
)2番目のパラメータはbcyptです.gensalt()は、既存のパスワード値をソリューションで作成した値と混合して使用できます.
パスワードを解析しにくい状態に暗号化し、データベースに保存します.これは登録コストでよく使われるロジックです.
また、ログイン時に入力したパスワードを同様に暗号化し、データベースに既存の暗号化パスワードをインポートして比較すると、ログインするロジックを構成できます.
Salt (cryptography)
Reference
この問題について(bcryptを使用してパスワードを暗号化), 我々は、より多くの情報をここで見つけました https://velog.io/@welshcoding/bcrypt를-이용하여-비밀번호-암호화하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol