Articles of шифрования

Какой смысл шифровать anyting в Android (или Java), если исходный код может быть изменен в обратном порядке?

Android и Java предоставляют криптографический API, который относительно прост в использовании для криптозащитных экспертов. Но так как мы знаем, что никакой код не может быть действительно защищен от обратной инженерии, особенно строковых констант, используемых в качестве семян или разделяемых секретов, мне интересно: какой смысл проходить испытание зашифрования и дешифрования в приложениях Android? Я что-то упускаю? […]

Обработать значение предпочтения перед сохранением в Android?

Мне нужно зашифровать мой пароль, прежде чем сохранять его в локальной базе данных Android. Все работает нормально без шифрования, у меня есть preferences.xml и так далее. Как я могу вызвать функцию после изменения значения предпочтения (например, пароль)? Вот мой код: public class Preferences extends PreferenceActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences); // […]

Как защитить общие настройки Android?

Общее место, где SharedPreferences хранятся в приложениях Android: /data/data/<package name>/shared_prefs/<filename.xml> Пользователь с привилегиями root может перейти к этому местоположению и может изменить его значения. Сохранение его защиты имеет большое значение. Сколько способов мы можем зашифровать весь shared_pref's xml файл shared_pref's xml ? Мы все знаем, что мы можем шифровать и сохранять данные в shared_pref's xml […]

Хорошая разработка программного обеспечения и безопасность

Руководства по безопасности и дизайну в значительной степени описывают различные методы, с тем чтобы злоумышленник мог скомпрометировать реализацию биллинга в приложении. Особенно примечательно то, насколько легко перепроектировать файл .apk , даже если он запутан через Proguard. Поэтому они даже рекомендуют модифицировать весь примерный код приложения, особенно «известные точки входа и точки выхода». То, что я […]

Android: как защитить данные в базе данных SQLite?

В настоящее время я разрабатываю Android-игру, которая сохраняет данные в базу данных SQLite. Это не «чувствительные» данные, но я не хочу, чтобы пользователи могли его модифицировать (по понятным причинам игрового баланса, так как это было бы обманом). И довольно легко получить доступ и изменить SQLite db, когда ваш телефон укоренен (на рынке есть много приложений). […]

Хранение RSA Private Key Android

Во время создания простого приложения для Android-сообщений, предназначенного для шифрования / дешифрования сообщений и отправки их через Интернет, я решил использовать шифрование с открытым / закрытым ключом RSA. Вопрос в том, как хранить секретный ключ, так что даже если телефон злонамеренно внедрен, ключ останется в безопасности? Насколько я понял, KeyStore используется для сертификатов и не […]

Шифрование и расшифровка имени пользователя с помощью KeyStore в Android M и более старой версии?

Я пытаюсь зашифровать и дешифровать имя пользователя в приложении с помощью KeyStore, Используя KeyPairGeneratorSpec для создания ключа в более старой версии, например, с 18 по 22, KeyPairGeneratorSpec был лишен версии 23 android M, но Android M поддерживает KeyGenParameterSpec. Поддерживает ли этот KeyGenParameterSpec обратную сопоставимость или как это сделать? Я пытаюсь что-то вроде этого, есть ли […]

Шифрование шифрования RSA в Android

Я использую демо для RSA Encryption and Decryption в Android. Я могу выполнить шифрование очень хорошо, но в расшифровке я получаю исключение: >>java.security.InvalidKeyException: unknown key type passed to RSA . KeyPairGenerator kpg; KeyPair kp; PublicKey publicKey; PrivateKey privateKey; byte [] encryptedBytes,decryptedBytes; Cipher cipher,cipher1; String encrypted,decrypted; public String RSAEncrypt (final String plain) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, […]