Безопасное хранение ключей шифрования

296
01 марта 2017, 19:49

Существует ли в Java под android возможность хранить ключи шифрования безопасным образом, например защищенными паролем?

Раньше генерировал так:

final KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(4096, new SecureRandom());
final KeyPair key = keyGen.generateKeyPair();
Answer 1

Для хранения зашифрованных ключей можно использовать KeyStore. Ключ генерируется как обычно и помещается в хранилище.

final KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(4096, new SecureRandom());
final KeyPair key = keyGen.generateKeyPair();
SecretKey mySecretKey = key.getPrivate();
KeyStore.ProtectionParameter protParam =
    new KeyStore.PasswordProtection("password");
KeyStore.SecretKeyEntry skEntry =
    new KeyStore.SecretKeyEntry(mySecretKey);
keyStore.setEntry("MySecretKey", skEntry, protParam);
READ ALSO
ERROR StatusLogger No log4j2 configuration file found

ERROR StatusLogger No log4j2 configuration file found

Проект Maven с использованием HibernateПри запуске возникают ошибки:

560
Взять котировки с yahoo

Взять котировки с yahoo

Для того, чтобы скачать котировки с yahoo finance достаточно на пайтоне сделать такА как сделать тоже самое на джава?

318
Как поймать исключение и показать alert dialog

Как поймать исключение и показать alert dialog

Дано: диалоговое окно, при нажатии на которое появляется ошибка androiddatabase

255
Можно ли DIALOG_TIME добавить секунды?

Можно ли DIALOG_TIME добавить секунды?

В компоненте DIALOG_TIME не обнаружил секунд, а они мне нужныМожно ли как-то их добавить? Или есть какая нибудь альтернатива, для того чтобы осуществлялся...

193