Можно ли жестко закодировать пароль моего хранилища ключей в моем приложении? - PullRequest
1 голос
/ 04 марта 2011

Я полный новичок в том, что касается SSL и безопасности в целом.Я нашел следующий пример о том, как загрузить хранилище ключей для доверения пользовательских сертификатов SSL (это использует Apache HTTPClient, кстати):

private SSLSocketFactory newSslSocketFactory() {
  try {
    KeyStore trusted = KeyStore.getInstance("BKS");
    InputStream in = context.getResources().openRawResource(R.raw.mystore);
    try {
      trusted.load(in, "ez24get".toCharArray());
    } finally {
      in.close();
    }
    return new SSLSocketFactory(trusted);
  } catch (Exception e) {
    throw new AssertionError(e);
  }
}

Я полагаю, что вам потребуется доступ к устройству, чтобы изменитьхранилище ключей, но все же ... разве нет проблемы с тем, что пароль хранилища ключей ("ez24get") легко доступен в коде?Что потребуется для компрометации приложения, содержащего этот код?

1 Ответ

1 голос
/ 04 марта 2011

Если это риск, на который вы готовы пойти.

Любой, у кого достаточно решимости декомпилировать ваш код, может получить его.Даже если вы запутываете свой код, вы все равно рискуете, так как все, что им нужно сделать, это найти строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...