Понадобилось реализовать шифрование базы данных приложения на iOS. При этом критично, чтобы к нему нельзя было получить доступ как из других приложений, так и через утерянное устройство. Конечно, хочется использовать удобный, короткий, цифровой пин-код вместо надежного 12+ символьного пароля на хорошем алфавите.
Для разблокировки самой iOS такое реализовано в виде 6-ти цифрового пин-кода, а в приложении Тинькофф банка вообще обошлись 4-мя цифрами. Вопрос в том, как такие ключи могут обеспечить надежное шифрование даже при сложной функции деривации ключа? Ведь по идее все варианты не так уж долго брутфорсятся.
Дело в том, что пин к айфону нельзя перебрать програмно. 3 раза неправильно - блокировка на несколько минут и т.д. вплоть до полной блокировки. Т.е. брутфорсить не очень реально.