因此,iOS 8
我们可以检查当前用户IS
设备所有者,因为他具有完全相同的指纹。iOS
给我们true
或false
价值。
但是我们如何使用这个值作为PIN-code
App 的授权呢?例如,我们可以在哪里存储用户的login and password
,我们可以阅读然后在互联网服务中使用?
因此,iOS 8
我们可以检查当前用户IS
设备所有者,因为他具有完全相同的指纹。iOS
给我们true
或false
价值。
但是我们如何使用这个值作为PIN-code
App 的授权呢?例如,我们可以在哪里存储用户的login and password
,我们可以阅读然后在互联网服务中使用?
如本地身份验证的 Apple 文档中所述(以及您提到的):
代码:
- (void)evaluatePolicy:(LAPolicy)policy
localizedReason:(NSString *)localizedReason
reply:(void (^)(BOOL success,
NSError *error))reply
策略评估完成时执行的回复块。在未指定的线程上下文中,在框架内部的私有队列上评估此块。您不能在此块中调用 canEvaluatePolicy:error:,因为这样做可能会导致死锁。
成功:如果策略评估成功,则为 YES,否则为 NO。
因此,无法将您的 PIN、登录/密码或 auth-token 基于指纹。但是,您可以对其进行加密并将其存储在应用程序的存储空间中。因此,如果指纹身份验证成功,您可以使用它来授权访问应用程序及其资源。当然,这种权衡完全取决于您的应用程序的安全限制。
本地身份验证 API 的好处是能够知道用户更新(更改)的指纹,以便您可以请求用户再次进行身份验证。不幸的是,没有这样的 API。
我们也可以推测苹果是否会为指纹引入哈希;但我认为如果有人窃取哈希可能会造成安全威胁,因此我不相信我们可以看到这样的 API 函数。
我相信为了将 TOUCH ID 用于应用程序是不可能的。所有其他 ios 3rd 方应用程序都有自己的 3rd 方指纹扫描软件。出于“安全原因”,iOS 上的 TouchID 软件无法用于其他应用程序。安全原因是 TouchID 将其所有指纹数据保存在 A7 或 A6 芯片中。并且不会将该信息提供给第 3 方应用程序。