指纹安全性研究:有待完善
具体实施参考
1、用户切换设备 应该把之前开通的指纹和手势关闭 需要用户重新开启 或者 引导用户开启(用户切换设备方案讨论)
2、iOS9几以上系统,采用系统认证成功 返回的
TouchIDKeychain:keychain公私钥生成教程
指纹破解可能性
指纹密码是否可破解?基本所有密码都可以被破解,只是难度不同。已经有人成功硬性破解了 Touch ID ,靠的是一张指纹的模型。普通人是否应该为此担心?答案是否定的,因为这种模型需要很高的技术来打造,并且仍然有着很高的失败率,但 Touch ID 只允许尝试不超过 5 次,所以必须把指纹模型做到极为精密和逼真,但没人愿意付出如此代价来解锁 iPhone。
Touch ID 指纹识别的原理
Touch ID 如何识别指纹呢?在如此快速的识别过程中,Home 按钮上的一圈金属环起到了感应手指的功能,通知 Touch ID 来读取指纹。Touch ID 置于该按钮中,传感器的厚度只有 170 微米,拥有 500 ppi 高分辨率,可读取极小的指纹细节。传感器可从皮肤皮下层指纹的一些小部分拍摄高分辨率图像,然后会分析该信息,根据三种基本指纹类型(弧形纹、箕形纹或斗形纹)将指纹分类,它会绘制比人眼不可见的纹路细节,确保指纹读取准确无误。
指纹密码是否可破解?基本所有密码都可以被破解,只是难度不同。已经有人成功硬性破解了 Touch ID ,靠的是一张指纹的模型。普通人是否应该为此担心?答案是否定的,因为这种模型需要很高的技术来打造,并且仍然有着很高的失败率,但 Touch ID 只允许尝试不超过 5 次,所以必须把指纹模型做到极为精密和逼真,但没人愿意付出如此代价来解锁 iPhone。
Touch ID 如何识别指纹呢?在如此快速的识别过程中,Home 按钮上的一圈金属环起到了感应手指的功能,通知 Touch ID 来读取指纹。Touch ID 置于该按钮中,传感器的厚度只有 170 微米,拥有 500 ppi 高分辨率,可读取极小的指纹细节。传感器可从皮肤皮下层指纹的一些小部分拍摄高分辨率图像,然后会分析该信息,根据三种基本指纹类型(弧形纹、箕形纹或斗形纹)将指纹分类,它会绘制比人眼不可见的纹路细节,确保指纹读取准确无误。
Touch ID 可从 360 度方向读取指纹,随后创建指纹的某种 数学表达式,并将其与已注册的数据进行比较,以确定是否匹配。如果匹配,便可替代密码来解锁设备或通过某个令牌。
此外,根据苹果官方的描述,Touch ID 会向以注册的指纹数据里持续的添加新的特征数据,随着时间的推移,这能不断提高匹配准确度,也能进一步的提高安全性。
指纹信息数据存储的安全性
指纹对于每个人来说都极其重要,因为它不能更改,所以如果泄漏了指纹图案,相当于是损失了一个天然的强有力的安全密码。问题是,我的指纹数据在 iOS 设备上是否安全,iOS 是否会泄露我的指纹图像?这些是我们最应该关心的问题。
首先,苹果声明指纹的图案不会被保存,存储于设备中的是指纹特征的数学表达式,而且从这些表达式直接反推出指纹图像也是不可能的。因此即使丢失设备并被人把它拆解开来,也不会丢失指纹的图形。
其次,指纹的验证运算独立于主要处理器芯片(例如 A7、A8),芯片内有称为 “Secure Enclave” 的高级安全架构,专用于密码指纹数据,并使用 Secure Enclave 的专用密钥加密,以及每次启动以随机的 UID 进行管理。指纹数据仅能被 Secure Enclave 处理和使用,正因为此架构独立于其它设备部件,仅有 Touch ID 使用它,且不能将它用于匹配其他指纹数据库,所以存储的指纹数据不会由 iOS 或其他应用访问,也不会被存储到 Apple 服务器或备份到 iCloud 等地方。
以上皆是苹果官方的说明。从硬件上来看指纹特征数据尚不能被 “Secure Enclave” 和 Touch ID 以外的部件访问到,并且两者芯片互相隔离开来,所有软件都没有权利获得指纹数据,仅能得到指纹是否错误的回馈。因为架构的核心秘密仅仅只有苹果公司知道,所以目前几乎没有第三方软件可以访问到这部分敏感信息。这里也要感谢 iOS 的封闭性以及对应用程序严格的约束,才能打造出最安全的系统。
那么苹果公司是否会自己上传利用这部分数据呢?从官方的声明来看是不会的。