Apple Touch ID作为应用程序中的PIN码

时间:2014-07-14 17:54:15

标签: ios authorization touch-id

因此,iOS 8我们可以检查当前用户IS设备所有者,因为他的指纹完全相同。 iOS为我们提供truefalse值。

但我们怎样才能将此值用作PIN-code以获取App的授权?例如,我们可以在哪里存储用户login and password,我们可以阅读然后在互联网服务中使用?

2 个答案:

答案 0 :(得分:2)

Apple documentation for Local Authentication中所述(和你提到的那样):

代码:

- (void)evaluatePolicy:(LAPolicy)policy
       localizedReason:(NSString *)localizedReason
                 reply:(void (^)(BOOL success,
                                 NSError *error))reply
  

策略评估完成时执行的回复块。这个   在一个框架内部的私有队列中评估块   未指定的线程上下文。你不能打电话   canEvaluatePolicy:错误:在这个块中,因为这样做可能会导致   僵局。

     

成功:如果政策评估成功,则为YES,否则为否。

因此无法在指纹上建立PIN,登录/传递或授权。但是,您可以加密它并存储在应用程序存储中的某个位置。因此,如果指纹认证成功,您可以使用它来授权访问应用程序及其资源。当然,这种权衡完全取决于您的应用程序的安全限制。

在本地身份验证API中有什么好处是能够知道用户更新(更改)指纹,以便您可以请求用户再次进行身份验证。不幸的是,没有这样的API。

我们还可以推测Apple是否可能引入指纹哈希值;但我认为如果有人窃取哈希值可能会导致安全威胁,因此我不认为我们可以看到这样的API功能。

答案 1 :(得分:-1)

我认为,为了将TOUCH ID用于应用程序是不可能的。所有其他ios第三方应用程序都有自己的第三方指纹扫描软件。对于“安全原因”,其他应用程序无法使用ios上的TouchID软件。安全原因是TouchID将其所有指纹数据保存在A7或A6芯片中。并且不会将该信息提供给第三方应用程序。