从登录页面传输登录名和密码时,我正在考虑提高安全性。我在 Internet 上找到了一个 javascript md5 函数,因此发送密码的第一种方法是使用 POST 方法发送 md5 哈希而不是密码。据我了解,这仍然存在许多问题,应该改进该方法。不存储数据库中的密码,仅存储 md5 哈希(还使用一些其他功能使其复杂化)。但是,我的问题是:选择托管服务提供商的 ssl 加密是否有意义或更好?它每年花费大约 100 美元(让我们假设关于我的问题的价格不错),而不是重新发明轮子。ssl 的缺点(如果我没记错的话)是:如果登录部分在主页上,主页会加载较慢(尽管 Yahoo!
如何使用(无 SSL)的想法:1)用户登录时,发送 md5(密码)而不是他的真实密码 2)服务器接收 md5(密码),使其成为 md5(md5(密码)+'kjhgkjhg' ) 并与存储在数据库中的哈希值进行比较。db 存储所有用户的 md5(md5(password)+'kjhgkjhg') 哈希值。结果,如果 md5(password) 被嗅探,获取 md5(md5(password)+'kjhgkjhg') 将无济于事,因为 'kjhgkjhg' 是未知的。确保登录页面安全的方法是否足够好?
谢谢你。