让应用在iOS设备上使用Touch ID是否安全?


21

有些应用程序允许通过Touch ID登录(例如银行应用程序)。

我知道,只要没有人可以非法访问我的指纹并且不实际访问该设备,使用此功能是相对安全的。

但是,如果应用程序的数据库遭到破坏怎么办?

什么样的信息会泄露?掌握这些信息可以采取什么行动?iOS是否保护此信息以防泄漏?这是在某处记录的吗?

我可以猜测,该应用程序将无法直接访问指纹照片,应该存在某种哈希值,该哈希值不允许恢复原始指纹。在理想情况下,iOS甚至不允许该应用访问哈希,而是提供某种授权方式。


5
只要没有人都可以非法获取我的指纹,那么酒保完成品脱啤酒后,任何调酒师都可以做到...
Bakuriu

Answers:


38

该应用程序无权访问存储在设备上的指纹数据。Apple提供的API通过简单的yes / no值告诉应用程序认证过程是否成功。没有提供哈希。这是文档

指纹数据也存储在设备的“安全区域”中,无法访问。

Secure Enclave是A7和用于Touch ID的较新芯片的一部分。在Secure Enclave中,指纹数据以加密形式存储,根据Apple的说法,只能通过Secure Enclave可用的密钥解密,从而使指纹数据与其余的A7芯片和iOS的其余部分隔离。

资料来源:iPhone Wiki


4
对于用户开发人员而言,这确实是最好的方法。我既不需要访问实际指纹数据的安全麻烦,也不需要将存储的数据与扫描结果进行比较的责任。如果实际上为我们提供了图像或类似图像,则比较会很痛苦,并且如果它只是一对哈希值,那么它将是微不足道的,以至于系统没有理由先不这样做。根本没有充分的理由要让Touch ID让应用看到指纹。
jscs

13

是的,在iPhone上使用Touch ID是绝对安全的。

使用Touch ID的应用程序无权访问您的指纹,也无法访问由指纹生成的任何哈希。该应用程序实际上并不会自行处理指纹匹配,而是会调用Touch ID API(系统),然后将结果发送回该应用程序。因此,该应用程序将收到的全部为truefalse,具体取决于它是否成功。

因此,该应用无需访问任何哈希,整个Touch ID流程由iPhone的系统(iOS)完成,类似于使用Touch ID解锁手机的方式。

正如9to5mac解释的那样

当开发人员希望应用程序用户进行身份验证时,他们不会参与如何执行身份验证的所有细节。他们只是使用要求iOS为其执行代码的代码 -苹果称之为本地身份验证框架。

(强调我的)

AppleInsider网站解释说:

苹果通过不向应用提供对iPhone安全区域中存储的任何指纹数据的访问权限,来确保Touch ID 的安全。出现的提示与Apple已用于授权iTunes和App Store购买的提示相同。

(强调我的)


实际上,在iOS 11中,Apple Pay的提示已更改,但对于许多应用程序,提示并未更改。实际上,不需要提示-一些应用程序具有自己的动画
Tim

2

是的-完全安全。

您的Touch ID数据存储在本地设备上,Apple或其他任何第三方都无法访问。

例如,当您将Touch ID用于第三方应用程序时,它将在本地授权您的访问,而该应用程序将看不到您的指纹数据,只有您的iPhone已授权它。

我个人为我的PayPal应用以及其他一些可信赖的服务使用了Touch ID。

(如果您担心的话,也许不要将其用于您不完全信任的公司,即使他们实际上无法看到您的Touch ID数据。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.