如今,许多手机都支持通过指纹识别进行解锁。但是,即使给出了授权的指纹,iOS和Android都要求用户在设备重启后输入密码。

我的问题是:为什么?

评论

我无法回答,因为这个问题受到保护,而且我只有5个合法要点,但是无论如何,您是否考虑过有人物理地将手指压在指纹读取器上的安全性,或更糟糕的是,为了切断手指而切断手指在手机上使用它?通过设备在启动时要求输入代码,如果您认为手机有危险,可以将其关闭,突然之间手指切断变得不再有趣...

@ErikE是的,这使我的手指更安全:)另外,每次重新启动电话时都强制键入密码,这使得有人忘记它的可能性较小。

我应该说终止不再那么有趣了,因为它没有主要目的。有人可能会扬言要折断手指以致折磨或使您解锁手机,但这与蜡球完全不同,而不是仅仅需要用手指从死者身上取下手机内容。

两者都不能回答,但是法律可能会保护您免遭被迫放弃密码给执法机构的责任,即使他们可能有权获取您的指纹。

@ErikE:当我受到愿意割断手指的威胁时,我真的无法想象拒绝在手机中输入密码。即使我拒绝了,现在他们也有兴趣切断我的任何手指以说服我合作,而不仅仅是解锁手机的手指。因此,如果这是真正的原因,那么这似乎是一个相当小众的功能:它不会使您的手指更安全,但是如果丢失了它,它确实可以确保数据安全:-)

#1 楼

首先:


密码用于访问全盘加密密钥
指纹用于解锁(已“解密”的)设备的屏幕

加密密钥的检索必须:


准确-在每个条目上,设备必须通过密钥派生功能将密码转换为唯一的正确加密密钥,否则设备将无法解密数据-通过单向功能获得的数据是安全的,不能通过将用户提供的数据与设备上存储的模式进行比较来“解锁”

指纹识别不满足上述要求,这是:


模糊-每次按下时,传感器都会为设备提供指纹的一部分的近似图像,该图像在一定程度上匹配准确性;每次验证尝试时,由于位置,偏斜,压力强度的不同,实际数据也会不同。
-不安全-通过将实际指纹与设备上存储的数据进行比较来进行识别-此数据必须可读且可修改使其容易受到攻击者的攻击


评论


@Bakuriu我在基于6.0.1的手机上使用OxygenOS 3.2.4,并根据设置使用加密。但是,我只使用指纹+模式,在证明模式之前可以接收通知,但手机在重启后首次解锁时不会让我通过指纹对其进行解锁。因为我可以收到通知,所以用户应用程序肯定可以在重新启动后首次解锁手机之前运行。

–UTF-8
16年8月20日在18:36

@OrangeDog即使使用某种形式的哈希,它也不是安全的哈希函数。我在回答中看不到任何不正确或不清楚的陈述。您能解释一下“ except”的用法吗?如果您了解用于指纹识别的加密安全哈希函数的知识,请回答此问题,我很乐意了解该领域的新发展。

– techraf
16年8月20日在21:14



@ UTF-8您阅读文档了吗?它提到在Android中,服务分为核心,主要和Late_start。核心服务在加密之前启动并保持运行。加密之前的主启动,解密之后重新启动,late_start仅在解密后启动。通知服务的某些部分可能位于核心或主要部分,因此在解密之前就已启动。

–巴库留
16年8月21日在7:54

我刚刚重启电话,在计算机上的浏览器中键入web.airdroid.com,它自动将我登录到airdroid,这使我可以访问存储在虚拟SD卡上的文件。为了确保它不只是文件名,我在解锁手机之前下载了一张照片。所以/ storage / emulated / 0几乎所有个人文件都没有加密,是吗? / etc中的文件也未加密。实际上,我还没有找到一个用于加密文件的文件夹(我看不到它们,或者它们仅包含难以理解的数据)。你能说一个吗?

–UTF-8
16年8月21日在9:27

如果我尝试访问/ data,无论是否解锁手机,Airdroid都会显示一个空文件夹。这可能是因为需要root访问权限才能查看/ data的内容,而airdroid没有root访问权限。无论如何,“全盘加密”听起来非常大胆,甚至没有加密虚拟SD卡上的数据。 (我想它是经过加密的,但是模式不是密钥的一部分,但是不知道。该密钥对于手机是已知的。至少如果使用以下命令,则将无法访问已售出设备的数据:恢复出厂设置会更改密钥。)

–UTF-8
16年8月21日在9:29



#2 楼

由于指纹仅用于身份验证,而密码也用​​于加密,这些都是不同的过程,它们的要求非常不同。


您可能知道,加密的主要功能锁屏是为了确保访问您设备的人是您。这称为身份验证。如果有人在锁屏上插入正确的PIN码/密码/指纹,则设备会知道该人可能是您,并授予您对系统的访问权限。

除身份验证外,屏幕还会询问您的身份开机时输入密码也有其他用途。现代电话具有称为“磁盘加密”的功能。这意味着,存储在设备上的所有用户数据都受到加密算法的保护。设备本身!为此目的使用的对称加密类型使用秘密密钥,出于安全目的,该密钥永远不会由设备存储。取而代之的是,必须告知设备正确的密钥才能访问您的数据。

现在,由于该算法的性质,秘密密钥需要具有一些重要的属性:


它必须很长

它必须准确。不幸的是,事实证明,与生物密钥几乎完全相同的密钥完全没有用。他们提供的信息量通常很小且不准确。

这就是您需要输入密码的原因-这是我们知道的唯一能够正确满足要求的机制。这是通过密钥派生功能输入密码来完成的。

在启动并被告知您的密码后,手机会将派生的加密密钥保留在易失性内存中,因此它无需再次询问-只需对您进行身份验证即可。这有一些缺点,例如使其容易受到冷启动攻击,但被认为是安全性和可用性之间的良好折衷。

评论


我想准确地说,您必须说该密码用于身份验证和加密,而不仅仅是加密。

– ErikE
16年8月22日在17:04

@ErikE很好,我已更改了介绍性句子

– goncalopp
16年8月24日在21:30

#3 楼

AFAIK,在启动时,您首先必须解锁SIM卡,这需要数字密码。接下来的操作只是解锁屏幕,为此您需要使用不同的身份验证方法(并非所有设备都实现了所有身份验证方法):


数字或字母数字密码
指纹
手势
什么都没有(只需在其上移动手指即可解锁屏幕)

所有这些方法均由手机直接处理,但第一种方法由SIM卡本身处理,因此比电话功能强大得多,它仅接受数字密码。当然,电话肯定可以拦截该代码,但是它看起来像是处于中间攻击状态的人,而且电话制造商和OS提供商都不希望实现它。

评论


我认为SIM锁比设备加密要少得多(也不太有用)。

–马修·雷德(Matthew Read)
16年8月22日在16:25

@MatthewRead,取决于位置。在此附近,所有SIM卡默认都要求在启动时要求输入PIN,而大多数电话都不默认使用加密。因此,SIM卡锁非常普遍。

– Jan Hudec
16年8月23日在6:48

如果小偷拥有来自同一提供商的另一部电话,则未锁定的SIM卡将允许小偷使用您的帐户来转接任何电话。

– Serge Ballesta
16年8月24日在15:38

#4 楼

尽管其他人提到的主要问题是准确的,但密码的准确性和准确性远高于指纹,但我认为值得一提的是驱动程序和算法。

,也就是说,您的大多数硬盘驱动器在未对驱动器进行加密之前,空间和代码不可用,读取和解释指纹的代码几乎肯定比读取密码的代码复杂(大)。取消加密之前的任何代码都可以攻击,并且添加那么多代码本身就是安全风险。