android - 我应该如何检查用户是否正确?
问题描述
我开始编写我的第一个 Android 应用程序。
我试图创建一个简单的系统,如果他将使用指纹进行身份验证,它将允许用户获取信息。
如果用户已在手机中注册,我编写了指纹身份验证系统以获得确认,但我的问题是:是否有任何选项可以获取指纹的“哈希”并将其存储为 ex。在数据库中检查用户是否应该有权访问该应用程序?
我是说:
数据库密钥:123123123123ASDASDASDASD
指纹密钥:123123123123ASDASDASDASD
用户有权访问该应用程序。
如果读取的指纹密钥不等于存储在数据库中,则用户无权访问该应用程序。
这甚至可能吗?- 是否有任何其他选项来创建像上面这样的系统?
解决方案
DB,你说的是本地数据库还是远程数据库?如果远程-这是一个可怕且不安全的想法。您永远不应该使用指纹来授权远程设备上的某人——我需要做的就是获取某人指纹的副本,假装它是我的,然后将其作为哈希发送以获取访问权限。指纹采集和身份验证需要在同一设备上完成。
如果本地它仍然是一个坏主意。您需要的所有功能都内置在指纹和帐户 API 中。使用它们。不要将人们的私人生物数据存储在不安全的存储中(数据库是不安全的存储)。
推荐阅读
- sql - 循环遍历表中的每个值并将该值作为参数提供给函数
- django - AttributeError:'str'对象没有属性'state_forwards'与django迁移migrations.RunSQL(
- java - JPA/Hibernate 使用参数的默认值调用 SQL Server 存储过程
- python - 有没有办法在没有引用字段的 csv 文件上使用 Python 的 csv.reader() ?
- sql - 由于查询限制而丢失信息
- sql - 数据对比查询,如何优化?
- node.js - 如果 Firestore 在指定路径的更新失败,firebase 会向我们收取写入或读取费用吗?
- javascript - 获取数据并推送到数组
- pdf - 由inkscape创建的PDF包含通过虚线的细灰线
- python - 如何简化具有两个不等式的表达式:如果 x <= y 和 x >= n