0

我刚刚完成了一个教程,该教程告诉我使用 hash_hmac 来散列我的密码,并将设置“true”以二进制格式输出。然后将其保存为我的 MySql 数据库中的 varbinary(32) 格式。

我花了最后一个小时处理用户登录表单,我一直难以比较输入中的散列密码和数据库中的散列密码,因为我认为我对十六进制/二进制的差异感到困惑某处。

我的问题是:以二进制格式存储密码有什么好处?它仅仅是一种节省空间的措施吗?或者它是否以某种方式提高了安全性?

如果这只是一种节省空间的措施,我想我会将它们存储为十六进制,因为对我来说它更容易使用。

谢谢

4

1 回答 1

1

它仅仅是一种节省空间的措施吗?或者它是否以某种方式提高了安全性?

将其以二进制形式存储在 a 中,varbinary(32)而不是将文本存储在 a 中,无疑是一种节省空间的措施char()。以一种或另一种方式存储它不会影响安全性。

于 2013-03-27T16:50:55.420 回答