ios8 TouchID检测如果指纹被添加

前端之家收集整理的这篇文章主要介绍了ios8 TouchID检测如果指纹被添加前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我深入苹果的Touch ID,更准确地说是本地认证器.
现在的文档是相当稀疏的.
它主要是这样的:
LAContext *myContext = [[LAContext alloc] init];
NSError *authError = nil;
NSString *myLocalizedReasonString = <#String explaining why app needs authentication#>;

if ([myContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics    error:&authError]) {
[myContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
              localizedReason:myLocalizedReasonString
                        reply:^(BOOL success,NSError *error) {
        if (success) {
            // User authenticated successfully,take appropriate action
        } else {
            // User did not authenticate successfully,look at error and take appropriate action
        }
    }];
} else {
// Could not evaluate policy; look at authError and present an appropriate message to user
}

取自https://developer.apple.com/library/prerelease/ios/documentation/LocalAuthentication/Reference/LocalAuthentication_Framework/index.html

使用您的指纹进行认证的想法是不错的.但是如果我知道密码,我可以在设备中添加指纹.它很容易得到密码,就像你坐在列车旁的受害者旁边,看他/她输入密码.

我想使用指纹作为安全认证的一种方法,但是想要能够检测自从上次请求指纹以来是否添加了新的指纹.

苹果正在为AppStore做这件事.如果您想在AppStore中验证一笔交易,并且自上次交易以来添加了新的指纹,AppStore会请求您的AppleId-Password.这是一个理智的行为,因为手机可能已经被别人知道密码,并添加了自己的指纹来购买昂贵的东西.

我的问题:自从上次使用本地身份验证器以来,是否可以检测到是否添加了新的指纹?

解决方法

简而言之;没有.

多一点细节; LocalAuthentication框架是一个严密防护的黑匣子.你从中得到的信息非常有限.你与它的互动是这样的:

>询问它是否能够针对某种类型的策略进行身份验证(写入时只有1个可用) – Biometrics(Touch ID))
>如果可以的话,请问它实际上是这样做的
>系统接管实际认证
>它可以让你知道身份验证是否成功(如果没有,它告诉你为什么)

您没有实际身份验证过程的概念(例如使用手指).这当然是设计的.苹果不想要也不需要给你访问这些信息.

猜你在找的iOS相关文章