找回密码

网站要实现找回密码功能,请有经验的同志们谈一谈,首先是必须很安全。

我现在的想法是,用户提交email和用户名,然后发邮件,邮件里面有随机生成的20位验证码,过期时间设为1小时,但是总感觉不太安全,只要知道用户名和email就可以修改密码了,怕就怕在发邮件可拦截了。。。。
[b]问题补充:[/b]
密码是MD5加密存储的,无法还原。

直接把密码发送邮件就好了呀 呵呵 发送的方式采用ssl的方式就行。

邮件怕截的话干脆发短信给他咯,难就难在短信也有可能被截,干脆送信,但是送信也不安全。
要我说,你发就发了,他没收到就再发一次,失效时间短一点。email和用户名知道了没有email的密码一样看不到的,实在不行,在加个密码找回的问题,这样估计就可以了。别的再看看别人的回答吧。

给他个地址,一段时间内去这个地址重新设置密码就行了,地址用完就失效。重新设置的时候加上验证密码找回的问题,哪有直接把密码发过去的?都是重新设置的,银行不也这样的嘛?给有效身份验证就可以重新设置了。哪有告诉密码的?

随机产生一个新密码,然后强制更新user的password,然后将新密码发送邮件给用户。