【问题标题】:How to do Image based authentication如何进行基于图像的身份验证
【发布时间】:2015-04-01 05:42:18
【问题描述】:

我计划进行基于图像的身份验证,其中用户首先通过上传图像进行注册,并在登录我的应用程序时使用相同的图像。我在互联网上尝试找出我们可以遵循的方法,但没有合适的解决方案我可以从哪里开始。

有人可以提供一些关于我们如何在 Java 中进行基于图像的身份验证的指示吗?我们可以在这里使用任何第三方 API 吗?

【问题讨论】:

  • 据我所知,这个问题太笼统了,需要个人意见而不是客观性。
  • @Vipar,是的,我同意,但我正在寻找一些建议,以便我可以朝着正确的方向开始。
  • @Tiny,这是一个要求。
  • 图片如何被用户保密?

标签: java


【解决方案1】:

我还没有听说过这样的身份验证机制,但如果我要实现这样的事情,我会选择以下方法之一:

  1. 使用图像作为校验和算法的输入。在这种情况下,它与基于普通密码的身份验证没有太大区别。
  2. 如果您需要提供一些灵活性,例如您将允许用户通过提供相同对象的照片进行身份验证,但不要求照片相同 - 我建议您使用基于特征点的图像比较。为此,OpenCV 是一种可行的方法(它们还提供 Java API)。

【讨论】:

【解决方案2】:

我不确定是否有 API 或 lib 可以做这样的事情,但是需要如何为图像选择一些特征并在比较过程中使用它们,

1- 图像宽度

2- 图像高度

3-图像文件大小

4- 图像的一些文件校验和

5- 比较两个图像中的像素 (getRGB) 可能针对每个像素

如果选择的条件匹配,则授权。

编辑: 抽象地,您需要寻找图像比较技术或库 有人here有东西

也检查this question

【讨论】:

    【解决方案3】:

    您可能希望在该图像上计算 SHA-1 或 SHA-3。见this。 首先,您需要将图像读取为字节数组here。 毕竟,你只是比较两个哈希值,如果它们相等,用户就可以登录了。

    【讨论】:

      猜你喜欢
      • 2015-08-12
      • 2017-07-02
      • 1970-01-01
      • 2017-11-08
      • 1970-01-01
      • 2019-04-23
      • 2016-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多