2016-02-22 1 views
1

Я использую java KeyStore для хранения защищенной пользователем информации и блокировки (шифрования) хранилища ключей с паролем и получения информации с паролем при необходимости, которая работает нормально.Как сменить пароль файла KeyStore на Java?

Но я не знаю, как изменить пароль для того же файла ключей

я использую KeyStore.load(InputStream,Password) метод доступа к хранилищу ключей с паролем пользователя и keyStore.store(Keystore,password) для записи значений в хранилище ключей.

Есть ли способ изменить пароль файла keyStore. я проверил документацию апите дать здесь: http://docs.oracle.com/javase/7/docs/api/java/security/KeyStore.html

+1

вы пробовали переписывание хранилища ключей в тот же файл, но другой пароль, используя 'магазина (OutputStream, обугливается [])' метод? –

+0

это сработало для меня спасибо @ DanailAlexiev, я отправил код в свой ответ. –

ответ

1

Благодарности @Danail Alexiev своих работ, загрузки KeyStore со старым паролем и перезапись же keyStoreStream с новым паролем будет изменить пароль к хранилищу (шифровать содержимое хранилища с новым пароль)

здесь код для reffrence:

InputStream keyStoreStream = ontext.openFileInput (filename); 
KeyStore keyStore = KeyStore.getInstance (KeyStore.getDefaultType ()); 
keyStore.load (keyStoreStream, oldPass); 
FileOutputStream fileOutputStream = context.openFileOutput (filename, Context.MODE_PRIVATE); 
keystore.store (fileOutputStream, newPassword); 
fileOutputStream.close (); 
Смежные вопросы