0

我目前正在构建一个web /桌面应用程序。用户可以在线创建帐户并通过在线或通过桌面客户端登录。 客户端将在Python中构建并导出到exe。Python和PHP的密码保护

由于网站没有https连接,我想在密码在线发送之前先对密码进行加密。

什么是最好的方法来做到这一点,所以哈希密码将是相同的Python和PHP?或者,他们是更好的方式,还是应该投资https?

我一直在使用简单的散列但是PHP md5("Hello")将返回到Python的hashlib.md5("Hello").hexdigest()

回答

9

忘掉这个想法不同的东西尝试。在客户端散列密码,将散列发送到服务器,然后将其与存储的散列进行比较相当于将简单密码存储在数据库中,因为散列成为密码

或者我应该只投资于https?

是的!

0

你能分享一个代码示例来重现这一点,以及两个不同的输出?

他们应该并且确实创建相同的输出。

你也应该要么使用HTTPS或查找使用质询响应机制(这里是一个例子,许多邮件服务器使用:http://en.wikipedia.org/wiki/CRAM-MD5

加密的密码已没有安全效果 - 任何人都可以截取密码,再利用它。密码仍然保密,但任何人仍然可以登录,就好像他们知道密码一样。