본질적으로 질문은 SHA1 해시를 사용하여 중복 해시가 거의 발생하지 않는 새 사용자에게 확인 이메일을 보낼 수 있습니까? 그들에게이 emai을 보내 반대로 www.example.com/verify.php?hash=[40 digit sha1 hash]
SHA1을 사용하여 사용자의 이메일 확인 -
: www.example.com/verify.php?user=123456&hash=[40 digit sha1 hash]
내가 두 번째 사용자 파라미터 전송을 방지 할
나는 사용자에게 이메일을 보내려고합니다.
해시 같은 생성 : $uid
고유
$verifyHash = sha1[$uid.$email.date('r')];
, $email
는 고유하며 date('r')
유닉스 타임 스탬프 가능한 고유.
중복 된 해시가 생성 될 가능성은 무엇이라고 생각하십니까?
내 값에 mt_rand를 추가 하시겠습니까? '$ verifyHash = sha1 [$ uid. $ email.date ('r'). mt_rand()];'? –
여전히 이메일에? user = 12345 매개 변수를 추가 하시겠습니까? 또는 무작위 sha1 해시로 verify.php에 홍수를내는 사람을 보지 않겠습니까? –
예 ('mt_rand()'를 추가하는 것), 아니요 (추가 할 필요는 없습니다), 아니요 (sha1 해시를 매우 추측합니다. 있을 것 같지 않게). – Phillip