您将如何实现匿名身份验证



我正在构建一个以安全、隐私和匿名为中心的基于web的应用程序。该应用程序的关键原则之一是用户可以匿名存储敏感数据。

因此,我希望将系统身份验证完全外包,最好使用OAuth或OpenID。

这可能吗?我希望避免将电子邮件地址或任何其他类型的用户身份信息存储在我这边。

我的一个朋友几年前就在做这项工作。他的想法是将电子邮件地址和拇指或指纹散列成一个独特的图像(生物特征数据只是一个比特流,理论上与"123456"这样的人工输入密码相比是一个相当独特的比特流)。

然后,该图像可以使用他们自己的密码或比特锁存储在此人的设备上,甚至可以打印出来并物理锁定。当向网络摄像头显示或上传时,图像将是关键,有点像二维码的反转。

当然,图像创建将是潜在的跟踪点。但是,如果这完全是在内存中完成的,或者使用一个免费且广泛分布的密钥生成工具,那么你可能会得到一些法律保护,避免被迫透露原始用户的数据或身份。(这一切都掩盖了广泛使用生物识别扫描仪和安全连接的必要性)

编辑:

每次采集的生物特征数据流略有不同。没有"密码恢复",如果你像这样对流进行哈希,它可能永远不会一样。大多数降维都会使它的安全性大大降低,而且可能仍会留下无法复制的机会。

首先,OAuth是一个完全不同的东西,与您的项目范围是分开的。

我想这取决于你对"匿名者"的定义。如果您使用OpenID,您将保存用户的OpenID URL。换句话说,您的系统将与用户的OpenID完全一样匿名。

一个更本质上匿名的解决方案可能是简单地让用户输入任意字符串来识别自己。返回的用户只需再次键入相同的字符串。如果你想显示用户的"身份",你可以通过散列函数运行该字符串。无需注册(与4chan的安全旅行码并无不同)。

相关内容

  • 没有找到相关文章

最新更新