Demystifying Apple's Touch ID (http://fabianstiehle.com/Touch-ID) - статья о другом биометрическом сенсоре iPhone, датчике отпечатков пальцев, а точнее о том, как реализована система безопасного хранения отпечатков. Три ключевых момента:
* "Хеширование" отпечатка. Как и в случае Face ID система не хранит изображение отпечатка. Она сохраняет только математическую модель, с помощью которой можно подтвердить, что два отпечатка совпадают, но нельзя восстановить оригинальный отпечаток. Концептуально такой подход схож с тем, что применяется для хранения паролей в современных системах аутентификации: пароль хранится в виде sha-хеша, который можно только сравнить с хешем другого пароля, но не восстановить оригинал.
* Безопасная передача "хеша" в Secure Enclave. iPhone сохраняет математическую модель отпечатка в зашифрованную область памяти, контролируемую процессором Secure Enclave. Канал коммуникации между датчиком отпечатка и Secure Enclave защищен с помощью ключа шифрования, прошитого еще на заводе. Это значит, что установленный в кустарных условиях датчик отпечатка не сможет получить доступ к Secure Enclave, а пользователь увидит знаменитую ошибку 53;
* Secure Enclave - центральная часть системы безопасности продуктов Apple. Это выделенный процессор со своей операционной системой, оперативной и постоянной памятью, к которой не может получить доступ основной процессор. И та и другая память зашифрованы, а единственный способ общения с Secure Enclave - через систему сообщений. В iPhone Secure Enclave ответственен за все криптографические операции, включая шифрование данных и хранение ключей шифрования, а также математической модели отпечатка и лица.
* "Хеширование" отпечатка. Как и в случае Face ID система не хранит изображение отпечатка. Она сохраняет только математическую модель, с помощью которой можно подтвердить, что два отпечатка совпадают, но нельзя восстановить оригинальный отпечаток. Концептуально такой подход схож с тем, что применяется для хранения паролей в современных системах аутентификации: пароль хранится в виде sha-хеша, который можно только сравнить с хешем другого пароля, но не восстановить оригинал.
* Безопасная передача "хеша" в Secure Enclave. iPhone сохраняет математическую модель отпечатка в зашифрованную область памяти, контролируемую процессором Secure Enclave. Канал коммуникации между датчиком отпечатка и Secure Enclave защищен с помощью ключа шифрования, прошитого еще на заводе. Это значит, что установленный в кустарных условиях датчик отпечатка не сможет получить доступ к Secure Enclave, а пользователь увидит знаменитую ошибку 53;
* Secure Enclave - центральная часть системы безопасности продуктов Apple. Это выделенный процессор со своей операционной системой, оперативной и постоянной памятью, к которой не может получить доступ основной процессор. И та и другая память зашифрованы, а единственный способ общения с Secure Enclave - через систему сообщений. В iPhone Secure Enclave ответственен за все криптографические операции, включая шифрование данных и хранение ключей шифрования, а также математической модели отпечатка и лица.