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関数は、注釈を単純に未知の暗号化に変換することができる.
  • 最初のパラメータ
  • bcrypt.hashpw ( account_password.encode('utf-8') , bcrypt.gensalt())
    hashpw関数の最初のパラメータは、入力したコメントのパスワードです.ただし、hash関数は、平織りstringではなくバイトstringタイプのみをパラメータとして受け入れるため、上述したencode(「utf-8」)関数でbytestypeに変換してパラメータに入れる.
    Pythonでは文字列をバイト(進化)に符号化し、バイトを文字列に復号する.
  • 第2因子
  • bcrypt.hashpw(account_password.encode('utf-8'), bcrypt.gensalt() )
    2番目のパラメータはbcyptです.gensalt()は、既存のパスワード値をソリューションで作成した値と混合して使用できます.
    パスワードを解析しにくい状態に暗号化し、データベースに保存します.これは登録コストでよく使われるロジックです.
    また、ログイン時に入力したパスワードを同様に暗号化し、データベースに既存の暗号化パスワードをインポートして比較すると、ログインするロジックを構成できます.
    Salt (cryptography)