112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
||||||||||||||||
1 | ||||||||||||||||
Безопасность платного приложения18.07.2013, 12:44. Показов 1825. Ответов 17
Метки нет (Все метки)
Хочу поднять вопрос безопасности режимов работы платного приложения.
В данном случае рассматривается приложение, которое осуществляются покупки через StoreKit Если скажем что сам api storekit как бы дырок не содержит, то вот хранение "статусов" покупки в тех же NSUserDefaults вызывает беспокойство, что их можно подменить и заставить приложение думать что уже все куплено. Могу предложить лишь шифрование всех ключей покупок через md5 с солью, что может хоть както противостоять подмене NSUserDefaults, если она возможна. ---- Вопрос есть ли еще какие либо методы хранения данной информации кроме NSUserDefaults? И насколько NSUserDefaults являются надежным хранилищем впринципе? Добавлено через 33 минуты Так, тучи уже рассеиваются инструмент для получения уникальных ключей устройства
в ios6
Еще есть смесь из хеша названия бандла (папки) приложения и MAC адреса https://github.com/gekitz/UIDe... -for-iOS-5
-- можно проверять содержимое NSUserDefaults на соответствие хешей посоленных с uniqueDeviceIdentifier. Это существенно поднимает уровень сохранности данных на предмет взлома.
0
|
18.07.2013, 12:44 | |
Ответы с готовыми решениями:
17
Публичный ключ для платного приложения Безопасность приложения Безопасность приложения Безопасность приложения c#+.net |
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
18.07.2013, 12:57 | 2 |
KeyСhain подходит
0
|
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
|
|
18.07.2013, 13:15 | 3 |
Сообщение было отмечено как решение
Решение
Ай, скажите НЕТ хранению чего либо важного в NSUserDefaults!
Никогда, даже не думайте об этом. Прислушайтесь к mobidevelop'у. Но это "темная" сторона keyChain. Хранение чего-то там с appstore в keychain тоже имеет свои минусы. Ибо эта информация для приложения, но никак не для девайса. "хранение статусов" уже за вас сделано на сервере Apple под учеткой пользователя. Если вы переустановили приложение - есть функция restore. Если не Интернета - это проблемы пользователя. По хорошему - эта инфа не должна быть у пользователя. Если у Вас есть такие проблемы c хранением - значит ваше приложение должно иметь связть с Вашим же сервером, на котором вся инфа о покупках и лежит.
3
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
18.07.2013, 13:21 | 4 |
Кстати, да. zulkis прав. Статусы покупок хранятся яблочными серверами. И у них в любой момент можно осведомиться о том или ином айтеме. Или, может быть, мы вопрос неправильно поняли? Поясните задачу.
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|
23.07.2013, 21:17 [ТС] | 5 |
извиняюсь за долгое отсутствие,
заметь я не спрашиваю о хранении 10000 или 100000 элементов в массиве , а просто ключ из ~50 символов
0
|
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
|
|
24.07.2013, 07:19 | 6 |
Прислали 1 раз данные с сервера, программа преобразовала себе это в информацию, записала что-то. И юзер этим пользуется. И без разницы онлайн или оффлайн.
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|
24.07.2013, 09:36 [ТС] | 7 |
0
|
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
|
|
24.07.2013, 12:44 | 8 |
Да забудьте вы NSUserDefaults.
Например вы покупаете новые книжки. Вот купили вы книжку, которой у Вас физически на девайсе нет. Купили - скачали на сервер, положили ее pathUrl в базу, а саму книжку в cache. И все, работайте с ней, она у Вас есть. Неважно есть ли интернет. А если переустановите приложение - все равно нужен будет интернет. Хотя бы для скачивания самого приложения.
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|
24.07.2013, 13:02 [ТС] | 9 |
короче будь то книжки или ссылки, сохранение данных имеет место быть так или иначе.
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
|
24.07.2013, 15:14 | 10 |
для хранения данных используется база данных
для секьюрности - шифрование, а вообще на сервере все лежит, а вы юзаете какой-то снепшот и временное хранилище в виде бд
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|||||||||||||||||||||
26.07.2013, 13:29 [ТС] | 11 | ||||||||||||||||||||
короче, так как записи данных не избежать, то можно применить AES шифрование словаря
файлы NSData-AES.h
0
|
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
|
|
26.07.2013, 15:26 | 12 |
а можете объяснить, что вами движет, когда вы вместо простого статического метода, который принимал бы на вход NSData и ключ, создаете категорию?
насколько мне известно, категории лучше создавать в крайних случаях, когда это действительно необходимо, а за вами наблюдаю то, что вы всегда создаете категории для любой вспомогательной функциональности оно конечно красиво выглядит, но не всегда интуитивно понятно, что за какими-то утилитками можно лезть в сам объект, так как изначально там такой функциональности нету просто интересно
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|
26.07.2013, 16:49 [ТС] | 13 |
Все что выше это просто исходник, никто не мешает его переделать в более удобный вид.
0
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
26.07.2013, 16:51 | 14 |
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
||||||
26.07.2013, 16:56 [ТС] | 15 | |||||
0
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
26.07.2013, 16:59 | 16 |
Ой, ну зачем я спросил?
0
|
112 / 103 / 12
Регистрация: 01.05.2013
Сообщений: 603
|
|
26.07.2013, 17:04 [ТС] | 17 |
0
|
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
|
|
26.07.2013, 19:03 | 18 |
noname_club, ой, а чтож в коде все так... Красиво
cu_translit - Это не ку, это кю. (c) Добавлено через 2 минуты Vorona, А я вот люблю категории. И если категории хорошо именовать, например NSData+Crypto, то сразу понятно что и как. А потом можно NSString+Crypto сделать, а внутри использовать NSData+Crypto. Вообще класс, имхо.
1
|
26.07.2013, 19:03 | |
26.07.2013, 19:03 | |
Помогаю со студенческими работами здесь
18
Безопасность PHP приложения. Безопасность приложения: хранение в коде паролей к бд сервера Почта платного хостинга Использование платного шаблона Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |