Я знаю, что многие задавались вопросом, как сохранить или экспортировать новый отпечаток и сохранить, и ответ был «нет». Мой вопрос заключается в том, где мои устройства Android хранят отсканированные данные отпечатков пальцев и в каком формате и как они совпадают с новыми отсканированными.
Я также знаю это: сканирование кончика пальца анализируется для определенных контрольных точек и генерирует токен, которыйкак хэш пароля.
Он генерирует хэш через это:
KeyStore mKeyStore;
String KEY_NAME = UUID.randomUUID().toString();
Cipher mCipher;
mKeyStore = KeyStore.getInstance("AndroidKeyStore");
keyGenerator = KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore");
keyGenerator.init(new
KeyGenParameterSpec.Builder(KEY_NAME,
KeyProperties.PURPOSE_ENCRYPT |
KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC)
.setUserAuthenticationRequired(true)
.setEncryptionPaddings(
KeyProperties.ENCRYPTION_PADDING_PKCS7)
.build());
keyGenerator.generateKey();
mCipher = Cipher.getInstance(
KeyProperties.KEY_ALGORITHM_AES + "/"
+ KeyProperties.BLOCK_MODE_CBC + "/"
+ KeyProperties.ENCRYPTION_PADDING_PKCS7);
SecretKey key = (SecretKey) mKeyStore.getKey(KEY_NAME, null);
mCipher.init(Cipher.ENCRYPT_MODE, key);
Я использовал это https://github.com/googlesamples/android-FingerprintDialog, но это обеспечивает соответствие только с ранее записанными данными.
Редактирует / извлекает или использует этот хэш и сохраняет его где-то еще и пытается сопоставить вновь сгенерированный хеш с этим, сохраняя этот ключ безопасности Android (при условии, что он одинаков для всех), возможно ли это или как-то иначе?