> 데이터 베이스 > MySQL 튜토리얼 > 데이터베이스 저장소를 해싱하기 전에 비밀번호를 정리해야 합니까?

데이터베이스 저장소를 해싱하기 전에 비밀번호를 정리해야 합니까?

Patricia Arquette
풀어 주다: 2025-01-25 17:07:09
원래의
848명이 탐색했습니다.

데이터베이스 비밀번호 스토리지는 안전합니다 : 사전 처리 없음 Should I Cleanse Passwords Before Hashing for Database Storage?
사용자 비밀번호 해시를 데이터베이스에 저장하면 개발자는 종종 사전 프로세싱을 위해 Escape_string () 또는 addslashhes ()와 같은 기술을 사용하는 것을 고려합니다. 그러나이 접근법은 필요하지 않으며 숨겨진 안전 위험을 유발할 수 있습니다.

왜 비밀번호를 전송할 필요가 없습니까? <..> 해시 전에 암호를 전송하면 보안이 향상되지 않습니다. 해시 프로세스 자체는 콘텐츠에 관계없이 비밀번호의 보안 저장을 보장합니다. 해시 알고리즘은 특정 문자를 특수 문자로 간주하지 않으며 암호를 정리하기 위해 트라이가 허점에 도입 될 수있는 모든 동작이 있습니다.

암호의 잠재적 보안 위험 사전 처리 청소 비밀번호는 추가 보안 문제가 발생할 수 있습니다 불필요한 복잡성 :

불필요한 코드를 청소하면 오류 또는 취약점을 도입 할 수 있습니다.

호환성 문제 :

청소 방법이 해시 비밀번호를 저장하는 데 사용되는 메소드와 일치하지 않으면 암호 확인이 실패 할 수 있습니다.

암호 처리의 모범 사례

해시 전에 암호를 정리하지 마십시오.

보안 해시에 대한 password_hash () 및 password_bcrypt 알고리즘.

해시 후 Varchar (255) 또는 텍스트 후에 비밀번호를 저장하여 향후 다른 해시 방법에 적응할 수 있도록 텍스트. 청소 방법 및 그 영향 예

"나는"디저트 토핑 "& a

!"과 같은 암호에 공통 청소 방법을 적용합니다! td align = "left"> trim () htmlentities ()
method 결과
"나는"디자인 토핑 "& a
    !" >
"나는"디저트 토핑 ""a & lt; "(특수 문자가 인코딩 됨)
htmlspectchars () htmleentities ()
addSlashes () "i \ 'm a \"디저트 토핑 \ "& a
  • ! "(이미 대중 교통 문자를 추가)
  • strip_tags () "I I 'm a " "& a!" 결론 해시 전에 사용자가 제공 한 비밀번호를 전송하는 것은 불필요하며 보안 위험을 초래할 수 있습니다. 위의 모범 사례를 따르면 개발자는 암호가 안전하고 효율적으로 저장되도록 할 수 있습니다.

    위 내용은 데이터베이스 저장소를 해싱하기 전에 비밀번호를 정리해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    저자별 최신 기사
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿