2010-09-01 2 views
5

확인을 클릭하십시오. 즉, 데이터베이스에 해시 된 비밀번호를 저장해야한다는 것을 분명히하지만 사용자가 비밀번호를 기억하지 않고 다시 검색하려는 경우 해시 된 비밀번호를 갖고 싶지 않습니다. 암호가 md5 또는 salt 및 sha1과 같은 추가 암호로 해시 된 경우 암호를 다시 검색하는 방법.PHP dehashing the password

+3

해시는 고기 분쇄기와 같습니다. 암소를 쇠고기로 바꿀 수는 있지만 쇠고기를 암소로 바꿀 수는 없습니다. –

답변

17

간단한 대답 하나만 있습니다. 할 수 없습니다.

글쎄, 이론적으로는 가능하지만 충분히 길다면 암호 당 수년이 걸릴 수 있습니다. 즉, 데이터를 공격자가 효과적으로 쓸모 없게 만들거나 중요한 데이터 인 사용자의 일반 텍스트 비밀번호를 보호해야합니다.

사이트에 해당 사용자가 자신의 비밀번호를 변경할 수있는 페이지로 연결되는 링크가 포함 된 "비밀번호 변경"이메일 이것이 대부분의 전문 사이트가 이러한 딜레마를 처리하는 방법입니다.

+6

그리고 이것이 대부분의 전문 사이트의 비밀번호 강도가 가입에 사용하는 이메일 계정의 비밀번호 강도와 같은 이유입니다! –

+0

그건 사실이야 :) 그래도 여전히 보안 질문을 이길. – hb2pencil

+1

http://tools.benramsey.com/md5/ md5 해시 리버스 도구 그러나 좋은 암호는 아마도 db에 존재하지 않을 것입니다. –

3

암호를 암호화하는 대신 해시를 보안하면 해시를 되돌릴 수 없습니다. 암호를 해쉬하고 사용자에게 일반 텍스트 암호를 제공 할 수있는 경우 해커는 등록에 사용하는 해쉬 된 암호를 역전하고 로그인하여 "dehash"하여 사용자의 암호를 얻을 수 있습니다.
이것은 기능이 아니며 버그입니다.

1

해싱 자체는 "다시 검색 할 수 없습니다"를 나타냅니다.

사용자가 암호를 기억할 수 없으면이 암호가 필요하지 않습니다.
다른 임의의 하나를 만들어 보내십시오.
큰 문제는 아닙니다.

0

예 .. 누군가 암호를 잊어 버렸을 수 있습니다. 해시 암호를 사용하는 동안 암호를 잊어 버린 사용자는 암호를 재설정하려는 계정의 전자 메일 주소를 입력하면됩니다. 사용자 암호 및 생성 된 다른 암호 해시 된 암호와 같은 MD5는 해시 된 암호에서 원래 암호를 검색하는 것이 거의 불가능합니다.

0

사용하는 암호를 전자 메일로 보낼 수있는 사이트를 항상주의하십시오. 즉, 암호 데이터베이스에 액세스 할 수있는 사람은 누구나 쉽게 암호를 볼 수 있습니다. 이는 암호를 다시 사용하면 특히 위험합니다.

비밀번호 재설정의 경우 '안전한 질문'과 함께 답변도 암호화하는 것이 좋습니다.

웹 사이트를 운영하는 모든 사람들은 해커로부터 고객을 합리적으로 안전하게 보호해야합니다.