php教程 php手册 深入密码加salt原理的分析

深入密码加salt原理的分析

Jun 06, 2016 pm 08:31 PM
분석하다 원칙 비밀번호 깊이 들어가다

本篇文章是对密码加salt原理进行了详细的分析介绍,需要的朋友参考下

我们知道,服务器空间,如果直接对密码进行散列,那么黑客可以对通过获得这个密码散列值,然后通过查散列值字典(例如MD5密码破解网站),得到某用户的密码。

加Salt可以一定程度上解决这一问题。所谓加Salt方法,就是加点“佐料”。其基本想法是这样的:当用户首次提供密码时(通常是注册时),由系统自动往这个密码里撒一些“佐料”,然后再散列。而当用户登录时,系统为用户提供的代码撒上同样的“佐料”,然后散列,再比较散列值,已确定密码是否正确。

这里的“佐料”被称作“Salt值”,这个值是由系统随机生成的,并且只有系统知道。这样,即便两个用户使用了同一个密码,由于系统为它们生成的salt值不同,他们的散列值也是不同的。即便黑客可以通过自己的密码和自己生成的散列值来找具有特定密码的用户,虚拟主机,但这个几率太小了(密码和salt值都得和黑客使用的一样才行)。

下面以PHP示例,讲解md5($pass.$salt)加密函数。

复制代码 代码如下:


function hash($a) {
$salt=”Random_KUGBJVY”; //定义一个salt值,程序员规定下来的随机字符串
$b=$a.$salt; //把密码和salt连接
$b=md5($b); //执行MD5散列
return $b; //返回散列
}
?>


调用方式:$new_password=hash($_POST[password]); //这里接受表单提交值,并进行加密

下面详细介绍一下加Salt散列的过程。介绍之前先强调一点,前面说过,验证密码时要使用和最初散列密码时使用“相同的”佐料。所以Salt值是要存放在数据库里的。

用户注册时,

用户输入【账号】和【密码】(以及其他用户信息);系统为用户生成【Salt值】;系统将【Salt值】和【用户密码】连接到一起;对连接后的值进行散列,得到【Hash值】;将【Hash值1】和【Salt值】分别放到数据库中。
用户登录时,

用户输入【账号】和【密码】;系统通过用户名找到与之对应的【Hash值】和【Salt值】;系统将【Salt值】和【用户输入的密码】连接到一起;对连接后的值进行散列,得到【Hash值2】(注意是即时运算出来的值);比较【Hash值1】和【Hash值2】是否相等,香港虚拟主机,相等则表示密码正确,否则表示密码错误。
有时候,为了减轻开发压力,程序员会统一使用一个salt值(储存在某个地方),而不是每个用户都生成私有的salt值。
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Windows 11에서 계속하려면 관리자 사용자 이름과 비밀번호를 입력하라는 메시지가 표시되는 문제를 해결하는 방법은 무엇입니까? Windows 11에서 계속하려면 관리자 사용자 이름과 비밀번호를 입력하라는 메시지가 표시되는 문제를 해결하는 방법은 무엇입니까? Apr 11, 2024 am 09:10 AM

Win11 시스템을 사용할 때 관리자 사용자 이름과 비밀번호를 입력하라는 메시지가 표시되는 경우가 있습니다. 이 문서에서는 이 상황을 처리하는 방법에 대해 설명합니다. 방법 1: 1. [Windows 로고]를 클릭한 다음 [Shift+다시 시작]을 눌러 안전 모드로 들어가거나 이 방법으로 안전 모드로 들어갑니다. 시작 메뉴를 클릭하고 설정을 선택합니다. "업데이트 및 보안"을 선택하고 "복구"에서 "지금 다시 시작"을 선택한 후 옵션을 입력하고 - 문제 해결 - 고급 옵션 - 시작 설정 -&mdash를 선택하세요.

휴대폰을 사용하여 라우터 WiFi 비밀번호를 설정하는 방법(휴대폰을 도구로 사용) 휴대폰을 사용하여 라우터 WiFi 비밀번호를 설정하는 방법(휴대폰을 도구로 사용) Apr 24, 2024 pm 06:04 PM

무선 네트워크는 오늘날의 디지털 세계에서 사람들의 삶에 없어서는 안 될 부분이 되었습니다. 그러나 개인 무선 네트워크의 보안을 보호하는 것은 특히 중요합니다. 강력한 비밀번호를 설정하는 것은 다른 사람이 WiFi 네트워크를 해킹할 수 없도록 하는 열쇠입니다. 네트워크 보안을 보장하기 위해 이 기사에서는 휴대폰을 사용하여 라우터 WiFi 비밀번호를 변경하는 방법을 자세히 소개합니다. 1. 공유기 관리 페이지 열기 - 모바일 브라우저에서 공유기 관리 페이지를 열고 공유기의 기본 IP 주소를 입력하세요. 2. 관리자 사용자 이름과 비밀번호를 입력하세요. - 액세스 권한을 얻으려면 로그인 페이지에 올바른 관리자 사용자 이름과 비밀번호를 입력하세요. 3. 무선 설정 페이지로 이동합니다. 라우터 관리 페이지에서 무선 설정 페이지를 찾아 클릭하여 들어갑니다. 4. 현재 Wi-Fi 찾기

잘못된 비밀번호입니다. BitLocker 경고에 주의하세요. 잘못된 비밀번호입니다. BitLocker 경고에 주의하세요. Mar 26, 2024 am 09:41 AM

이 문서에서는 잘못된 비밀번호 문제를 해결하는 방법, 특히 BitLocker 경고를 처리할 때 주의해야 할 필요성에 대해 설명합니다. 이 경고는 드라이브 잠금을 해제하기 위해 BitLocker에 잘못된 암호를 여러 번 입력한 경우 발생합니다. 일반적으로 이 경고는 시스템에 잘못된 로그인 시도를 제한하는 정책이 있기 때문에 발생합니다(일반적으로 3번의 로그인 시도가 허용됨). 이 경우 사용자는 적절한 경고 메시지를 받게 됩니다. 전체 경고 메시지는 다음과 같습니다. 입력한 비밀번호가 올바르지 않습니다. 계속해서 잘못된 비밀번호를 입력하면 계정이 잠길 수 있습니다. 이는 데이터 보안을 보호하기 위한 것입니다. 계정을 잠금 해제해야 하는 경우 BitLocker 복구 키를 사용해야 합니다. 비밀번호가 올바르지 않습니다. 컴퓨터에 로그인할 때 나타나는 BitLocker 경고에 주의하세요.

노흡의 기능 및 원리 분석 노흡의 기능 및 원리 분석 Mar 25, 2024 pm 03:24 PM

nohup의 역할과 원리 분석 nohup은 유닉스 및 유닉스 계열 운영체제에서 사용자가 현재 세션을 종료하거나 터미널 창을 닫아도 백그라운드에서 명령을 실행하는 데 일반적으로 사용되는 명령입니다. 아직도 계속 처형되고 있다. 이번 글에서는 nohup 명령의 기능과 원리를 자세히 분석해보겠습니다. 1. nohup의 역할: 백그라운드에서 명령 실행: nohup 명령을 통해 사용자가 터미널 세션을 종료해도 영향을 받지 않고 장기 실행 명령이 백그라운드에서 계속 실행되도록 할 수 있습니다. 이건 실행해야 해

휴대폰에서 Wi-Fi 비밀번호 변경 튜토리얼(간단한 조작) 휴대폰에서 Wi-Fi 비밀번호 변경 튜토리얼(간단한 조작) Apr 26, 2024 pm 06:25 PM

인터넷의 급속한 발전과 함께 무선 네트워크는 우리 삶에 없어서는 안 될 필수 요소가 되었습니다. 하지만 개인정보 보호와 네트워크 보안을 위해서는 Wi-Fi 비밀번호를 정기적으로 변경하는 것이 매우 중요합니다. 홈 네트워크 보안을 더욱 잘 보호할 수 있도록 이 문서에서는 휴대폰을 사용하여 WiFi 비밀번호를 변경하는 방법에 대한 자세한 튜토리얼을 소개합니다. 1. Wi-Fi 비밀번호의 중요성을 이해하세요. Wi-Fi 비밀번호는 개인정보와 네트워크 보안을 보호하는 첫 번째 방어선입니다. 인터넷 시대에 그 중요성을 이해하면 비밀번호를 정기적으로 변경해야 하는 이유를 더 잘 이해할 수 있습니다. 2. 휴대폰이 Wi-Fi에 연결되어 있는지 확인하세요. 먼저 Wi-Fi 비밀번호를 변경하기 전에 비밀번호를 변경하려는 Wi-Fi 네트워크에 휴대폰이 연결되어 있는지 확인하세요. 3. 휴대폰의 설정 메뉴를 열고 휴대폰의 설정 메뉴로 들어갑니다.

내 Win10 암호가 암호 정책 요구 사항을 충족하지 않으면 어떻게 해야 합니까? 내 컴퓨터 암호가 정책 요구 사항을 충족하지 않으면 어떻게 해야 합니까? 내 Win10 암호가 암호 정책 요구 사항을 충족하지 않으면 어떻게 해야 합니까? 내 컴퓨터 암호가 정책 요구 사항을 충족하지 않으면 어떻게 해야 합니까? Jun 25, 2024 pm 04:59 PM

Windows 10 시스템에서 비밀번호 정책은 사용자가 설정한 비밀번호가 특정 강도 및 복잡성 요구 사항을 충족하는지 확인하는 일련의 보안 규칙입니다. 시스템에서 비밀번호가 비밀번호 정책 요구 사항을 충족하지 않는다는 메시지가 표시되는 경우 이는 일반적으로 비밀번호는 복잡성, 길이 또는 문자 유형에 대한 Microsoft 표준 요구 사항을 충족하지 않습니다. 그렇다면 이를 방지할 수 있는 방법은 무엇입니까? 사용자는 로컬 컴퓨터 정책에서 비밀번호 정책을 직접 찾아 작업을 수행할 수 있습니다. 비밀번호 정책 사양을 준수하지 않는 솔루션: 비밀번호 길이 변경: 비밀번호 정책 요구사항에 따라 원래 6자리 비밀번호를 8자리 이상으로 변경하는 등 비밀번호 길이를 늘려볼 수 있습니다. 특수 문자 추가: 비밀번호 정책에는 @, #, $ 등과 같은 특수 문자를 포함해야 하는 경우가 많습니다. 나

엑셀 비밀번호 설정하는 방법 엑셀 비밀번호 설정하는 방법 Mar 21, 2024 am 09:00 AM

며칠 전 사촌이 와서 엑셀을 이용해서 열심히 데이터를 작성했는데 나중에 동료들이 수정해서 보내줬다고 하소연을 하더군요. 그의 상사는 꾸중을 들었습니다. 정말 답답합니다. 어떤 사람들은 당신을 좋아하지 않고 고의로 당신을 벌하고 싶어합니다. 학교를 떠나 사회에 들어가면 점점 더 많은 사람들이 당신을 뒤흔드는 것을 알게 될 것입니다. 사촌에게 몇마디 위로의 말과 함께 조언도 해주었습니다. 앞으로 이런 일이 다시 일어날까 두렵다면 엑셀 양식에 비밀번호를 설정해 다른 사람이 열 수 없도록 하세요. 너. 네티즌 여러분, 귀하의 Excel 스프레드시트가 다른 사람에 의해 비밀리에 수정될까 봐 걱정된다면 비밀번호도 설정해야 합니다. 엑셀 비밀번호 양식에 비밀번호를 설정하는 방법은 무엇입니까? 저와 함께 알아보세요! 1.

win10 컴퓨터 시동 암호를 잊어버린 경우 시스템에 들어가는 방법_win10 컴퓨터 시동 암호를 잊어버린 경우 수행할 작업 win10 컴퓨터 시동 암호를 잊어버린 경우 시스템에 들어가는 방법_win10 컴퓨터 시동 암호를 잊어버린 경우 수행할 작업 Mar 28, 2024 pm 02:35 PM

1. Xiaobai의 원클릭 시스템 재설치 도구를 다운로드하여 다른 컴퓨터에 설치하고, 빈 USB 디스크를 삽입하여 USB 부팅 디스크를 생성하려면 다음을 참조하십시오. 2. 변경해야 하는 컴퓨터에 USB 부팅 디스크를 삽입합니다. 비밀번호를 입력하고 시작 단축키를 누르세요. 일반적으로 시작 단축키는 F12, F8, F9, F10, ESC 중 하나입니다. 그런 다음 시작 인터페이스가 나타나면 U 디스크 옵션을 선택하고 Enter를 눌러 들어갑니다. 3. [1]을 선택하여 win10x64PE를 시작하고 Enter를 눌러 확인합니다. 4. 바탕 화면에서 비밀번호 수정 도구를 선택하고 두 번 클릭하여 엽니다. 5. 그러면 계정 이름 목록이 나타나면 비밀번호를 변경해야 하는 계정을 선택하고 엽니다. 6. 아래 비밀번호 변경 명령을 클릭하고 새 비밀번호를 두 번 입력한 후 확인을 클릭하여 변경 사항을 저장합니다. 7. 마지막으로 USB 플래시 드라이브를 분리하고 컴퓨터를 다시 시작하면 정상입니다.

See all articles