![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 16 Всего: 40 |
Здравствуйте, уважаемые.
Долгое время мучает вопрос защиты строковых данных в программе. А именно, если открыть класс даже в обычном редакторе, то можно заметь некоторые текстовые данные. А если заняться декомпиляцией, то можно понять в каком месте они используются... Существует ли какая-нибудь практика защиты таких данных? Или как вы боретесь с подобным явлением? Или, если совсем не боретесь, выслушиваю идеи ![]() Сам я думаю: тут дело будет завязано на шифровании строк на стадии исходного кода и компиляции, возможно вынос в отдельный файл, и механизма дешифрования на стадии работы программы. |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Выносишь все критичные данные в ресурсы и шифруешь их. Ключ шифрования хардкодишь в классы. Или даже раскидываешь его по разным классам и функциям и собираешь в рантайме.
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 5 Всего: 38 |
А еще можно критические данные, которые желаешь зашифровать, вообще положить в базу. И там зашифровать тоже можешь. а дальше естественно по ключу. Ключ можешь выдать вместе с лицензией на свое приложение
-------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
В любом случае - кому надо взломает.
Хотите более менее надежную защиту - выносите логику на сервер. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 16 Всего: 40 |
Vasay, натолкнуло на определенные мысли
![]() Только если не логику хранить на сервере, а данные? Данные в конкретном случае имеют большой вес. Стабильный сервер взломщикам тоже не по корману, а если по корману - с хостерами легко эту тему перетереть. Я правильно рассуждаю? Добавлено @ 16:40 Хотя я себе уже представляю подделку. Декомпилируют программу, изменяют адрес сервера на localhost. Делают на локалхосте иммитационный сервер с базой данных и все данные остаются/запрашиваются с локалхоста. Это сообщение отредактировал(а) Platon - 11.12.2008, 16:43 |
|||
|
||||
SoulKeeper |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.1.2007 Где: Ukraine, Lviv. Репутация: 11 Всего: 15 |
А чем плохо хранение логики на сервере?
Это сообщение отредактировал(а) SoulKeeper - 11.12.2008, 17:07 |
|||
|
||||
AxNe0 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 24.4.2006 Где: St. Petersburg Репутация: 4 Всего: 5 |
||||
|
||||
Zlatogorov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 18.12.2007 Где: BW,Stuttgart Репутация: нет Всего: 1 |
Тоже заморачивались с защитой софта как такогового, адекватного решения не нашли. Написал dll которая привязывает к железу и требует лицензию, на том и порешили.
Разбрасывание ключа по классам мало что даст, просто процесс взлома удлиннится минут на 20-30. |
|||
|
||||
Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 16 Всего: 40 |
SoulKeeper, довольно затратно поддерживать 3к+ клиентов, тем более в кустарных условиях.
AxNe0, увы нет. Zlatogorov, про привязку к железу тоже думал. Ничего если в ПМ пообщаемся? Только я думаю, при декомпиляции даже привязка к железу не поможет :( |
|||
|
||||
Vasay |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
Это точно.
Вопрос в том какую часть логики вынести на сервер. Можно несколько простых, но важных операций, Без которых работа программы невозможна. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |