Да я в программе поковырялся, вообщем конкретного нечего не нашел...
Вот эту всю информацию я вытащил с запросов...ну и с бплиста...
Поставил снифер, отловил пакеты, посмотрел содержания и куда они идут...
В bplist'е хранятся данные лицензии...
Вот пример общение программы с сервером... Сама программа посылает GET запрос серверу через 80 порт по http протоколу.
Далее после возврата сервером странички, гребаються результаты программой... У программы 3 вопроса...Программа может спросить Триал(пробование программы на протяжении 2 дней без каких либо ограничений функционал. проги), новая лицензия(при вводи кода отсылается запрос), продолжение лицензии(то же, практически что и предыдущее, только используется если программа уже была зарегистрирована... даже триально)... Сервер может ответить, при триальном, "Хорошо, даю триал", либо чо-то вроде, лицензия подписана, ну и последние, ошибка... 2 виды ошибки (код уже кем-то используется, код неверный)...
Примеры запросов... (их можно просмотреть любым браузером... авторы даже не удосужились сделать фильтр, хотя бы по User-Agent)
Триальный!
GET /trial/1/com.ripdev.caterpillar/1.1/mfc103c8942e1/12345678 HTTP/1.1..User-Agent: CFNetwork/152.4..Accept: */*..Accept-Language: ru-ru..Accept-Encodin
g: gzip, deflate..Cookie: session=4c9ed63647d1b4282ae86..Connection: keep-alive..Host: styx.ripdev.com....
далее буду кидать запросы сокращено...
Новая лицензия...
GET /authorize/1/com.ripdev.caterpillar/1.1/mfc103c8942e1/12345678
Продолжение лицензии
GET /extend/
1/com.ripdev.caterpillar/
1.1i/
mfc103c8942e1/
12345678
Где...
12345678 - серийный ключик при вводи в программу... Восьмизначный...
mfc103c8942e1 - "уникальная" строка от каждого телефона... возможно IMEI или MAC адрес соединен с еще каким-то значениям...
1.1i или 1.1 - понятия не имею... при изменении этой переменой никакие значения не меняются... можно это считать коментом...
com.ripdev.caterpillar - это приложение caterpillar, о которым я и упоминал...
1 - без понятия… вообщем 1 так 1... значение не меняется программой...
ну и дальше думаю ясно...
Давайте запросим триал,...(при триале кстати, серийный код не обязателен... это уже примеры после моих фейковый запросов... сервер просто игнорирует последнею переменою, т.е. код.) в ответ сервер отдаст нам
...
Код HTML:
<key>Success</key>
<true/>
<key>Trial</key>
<true/>
<key>TrialDaysLeft</key>
<integer>1</integer>
<key>PersonalizationData</key>
<data>
Ioz/1R05oECTbsteezXInA==
</data>
</dict>
...
что на счет ключа
TrialDaysLeft, он юзается только для того, чтоб в ПопАпе показать в программе, сколько осталось дней... на саму лицензию это не влияет... можно поставить хоть 9999, но регистрация триала так и останется 2 дня... А вот хеш, уже интересно... он был сгенерирован от "
mfc102c8942e1"... В него включается 100% дата(программа регистрируется на несколько месяцев)... При ответе не триала, а продления лицензии, возвращается подобный пакет... Собственно, если узнать что это за хеш, можно его будет подделать... а дальше форвардить до styx.ripdev.com на другой любой хост...