安全地存储生物识别信息以进行比较

时间:2010-07-29 00:57:01

标签: security authentication encryption cryptography biometrics

我正在使用带有SDK的生物识别指纹扫描仪,可以让我比较指纹的两个图像。我的问题是,如果我想在本地存储其中一个图像以供以后比较,最安全的方法是什么?

我的想法是,当使用密码做同样的事情时,一种简单安全的方法是将原始密码哈希存储,然后比较哈希而不是明文密码。显然,使用指纹图像是不可能的,因为它们每次都会产生略微不同的结果。那么存储原始图像最安全的方法是什么?

提前致谢

1 个答案:

答案 0 :(得分:2)

生物识别技术依赖于模糊比较。为了实现这一点,您必须拥有原始图像。根据定义,散列是单向操作,因此不适合。

为了安全地存储这些凭据,您应该使用对称密码。 AES-256具有CBC模式和随机IV,以及c ryptographic nonce作为关键是一个非常好的选择。虽然IV在这个具体实现中不那么重要,因为2个相同的指纹是不可能的,因此2个相同的密文不应该发生,但是我仍然会实现随机IV。对称密码的冲突可能会出现很多错误,并且有一些图书馆会照顾它Jasypt,尽管我不知道你正在使用什么平台。

如果攻击者能够检索用于比较的原始指纹,那么他将能够绕过此安全系统。例如The MythBusters where able to break 2 off the shelf fingerprint readers using this attack。鉴于此攻击,您可能需要考虑Two-Factor Authentication