django 자동 암호화
from django.contrib.auth.hashers import make_password, check_password
소스를 볼 수 있습니다.
def make_password(password, salt=None, hasher='default'):
"""
Turn a plain-text password into a hash for database storage
Same as encode() but generates a new random salt. If
password is None or blank then UNUSABLE_PASSWORD will be
returned which disallows logins.
"""
if not password:
return UNUSABLE_PASSWORD
hasher = get_hasher(hasher)
password = smart_str(password)
if not salt:
salt = hasher.salt()
salt = smart_str(salt)
passwd = make_password(text, None, 'pbkdf2_sha256') #text:
주의: 이passwd는 수시로 변합니다. 체크password에서 테스트를 진행합니다.
check_password(text, passwd) # true / false
암호화 유형은 다음과 같습니다.
pbkdf2_sha256 pbkdf2_sha1 bcrypt_sha256 bcrypt sha1 unsalted_md5 crypt
Django 1.5 이전에 Django가 사용자 비밀번호에 대한 암호화 방식은 SHA1이었지만 Django 1.5 이후 비밀번호의 암호화 방식은 기본적으로 PBKDF2 알고리즘과 SHA256 해시 값으로 바뀌었다.bcrypt,crypt는 라이브러리를 따로 설치해야 합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
역암호화된gem lockbox의 버튼 연결에 걸려 넘어진 일안녕하세요. 최근 프로젝트에서는 은밀한 정보를 처리해 데이터베이스에 역암호화해 저장하기로 했다. 최초 사용 예정 나는 기술 고문과 상의했다 "Message Enceryptor를 사용하는 것이 좋을 것 같지만 요소안 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.