您可能不需要存储用户电子邮件

2020-11-02 17:01:29

今年早些时候,当我在Wishy.Gift上从只有Facebook登录到允许使用电子邮件和密码注册时,我担心的一个问题是如何实现这一点,这是一种保护用户数据和隐私的方式。我在这个网站上没有任何广告或分析,用户可以选择他们想要的任何显示名称,而且我从来没有存储过用户注册或登录时从Facebook收到的电子邮件-只有散列的ID版本。另一方面,电子邮件和密码完全是另一回事,数据库泄露的后果要严重得多。

考虑到我唯一需要发送的电子邮件是事务性的-没有时事通讯或其他类型的通知-我唯一需要存储它们的是标识符,并且可以安全地散列。

对于我需要发送出去的每一封事务电子邮件-注册、帐户恢复和电子邮件更改验证-用户总是通过提交他们的电子邮件来启动这一过程,届时它将可供后端执行所需的操作。

总而言之,如果您只将电子邮件用于事务性电子邮件,则可能只能存储它们的散列版本。对于Wishy.Gift,我使用带有固定盐的SHA512,这自6月份实施以来一直运行良好。

感谢您阅读这篇文章!我也很想听听你的想法和想法。加入黑客新闻的讨论,或者随时给我发电子邮件给我,地址是这个博客所在的域的Daniel。

我发现,即使这个ID对于我的fb-app是唯一的,仍然可以访问facebook.com/{id}并被重定向到用户的fb-profile。↩︎