Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 24

Как лучше защитить приложение?

11.07.2016, 21:46. Показов 1940. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Я хочу сделать чтобы мое приложение можно было покупать, есть база данных с лиц. кодами, как сделать чтобы нельзя было просто активировать программу и скинуть другому человеку уже активированную, через что лучше привязать активацию к опр. компьютеру?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.07.2016, 21:46
Ответы с готовыми решениями:

Консольное приложение. Как лучше определить данные в файле конфигурации?
Добрый вечер! Вообщем есть товары А, В, С. В файле конфигурации нужно сохранить настройки штук товара и цену: Товар «А»: 1шт – 5р. ...

Как защитить свое приложение от перепродажи
Как можно сделать так чтобы, программу можно было продать и человек которому я ее продал не мог ее перепродать?

Не получается защитить C# приложение!
Раньше защищал свои C# програмульки разными протекторами, одним из которых являлся .NET Reactor. Теперь не получается это сделать, в виду...

20
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
11.07.2016, 23:38
Лучший ответ Сообщение было отмечено Farianit как решение

Решение

Цитата Сообщение от Farianit Посмотреть сообщение
через что лучше привязать активацию к опр. компьютеру?
Стандартный прием - привязка к железу. Но из-за особенностей .NET, это поможет только от не очень опытных.
Более надежный вариант - разнесение логики приложения. Но тогда оно будет работоспособно только при наличии Интернета.
1
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 24
12.07.2016, 00:12  [ТС]
Цитата Сообщение от insite2012 Посмотреть сообщение
Более надежный вариант - разнесение логики приложения.
Можно по-подробней, пожалуйста?
0
 Аватар для Detect
123 / 123 / 72
Регистрация: 11.05.2014
Сообщений: 331
12.07.2016, 01:07
В моём понимании, имеется в виду клиент-серверное приложение. На удалённом сервере вся логика, клиент работает как "интерактивный экран" на котором транслируются данные с сервера ( свалка графики итд. ) и который определенным образом может посылать запросы на сервер для изменения своего состояния.
0
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 24
12.07.2016, 01:09  [ТС]
Detect, Понял, спасибо за объяснение.
0
12.07.2016, 01:10

Не по теме:

Если я прав))) Лучше дождитесь большего количества информации.

0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
12.07.2016, 03:51
Цитата Сообщение от Detect Посмотреть сообщение
В моём понимании, имеется в виду клиент-серверное приложение.
Именно так. Этот способ самый надежный - ввиду того, что декомпилировать серверную часть невозможно, но привязан к наличию сети. Если это требование устраивает - то можно сделать именно так. Тогда защита будет самой высокой.
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
12.07.2016, 04:03
Хороший способ OAuth2, почитай, если осилишь: https://tools.ietf.org/html/rfc6749
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
12.07.2016, 04:43
Цитата Сообщение от DataPlanner Посмотреть сообщение
Хороший способ OAuth2
DataPlanner, мельком глянул, это для клиент-серверного варианта? Если так, то и в FCL достаточно способов. Можно для начала их использовать, а если что-то не устроит-перейти на сторонние продукты.
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
12.07.2016, 10:18
Цитата Сообщение от insite2012 Посмотреть сообщение
Если так, то и в FCL достаточно способов
OAuth2 это протокол, а не продукт, позволяет работать офлайн, как сервер лицензий, подобного решения в FCL что-то не припомню.
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
12.07.2016, 11:30
Цитата Сообщение от DataPlanner Посмотреть сообщение
позволяет работать офлайн, как сервер лицензий
То есть, сначала раздача, а потом работа оффлайн? Тогда надежность, естественно, падает. Или же лицензия перепроверяется периодически?
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
12.07.2016, 11:35
Вы не знаете как работает сервер лицензий? Ближайший пример лицензирование в windows, на хабре есть статья на русском.
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
12.07.2016, 12:06
Цитата Сообщение от DataPlanner Посмотреть сообщение
лицензирование в windows
Хм... Пример явно неудачный, судя по скорости взлома новых ОС от Microsoft.
Ну да ладно, вариантов масса. Пусть ТС выбирает то, что ему по вкусу.

Добавлено через 19 минут
Посмотрел повнимательнее. На мой взгляд, обычная трехуровневая архитектура, все как обычно. По крайней мере, вот начало документа, там так и указано. Ну и далее тоже.
The OAuth 2.0 authorization framework enables a third-party
application to obtain limited access to an HTTP service, either on
behalf of a resource owner by orchestrating an approval interaction
between the resource owner and the HTTP service, or by allowing the
third-party application to obtain access on its own behalf. This
specification replaces and obsoletes the OAuth 1.0 protocol described
in RFC 5849.
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
13.07.2016, 02:32
Цитата Сообщение от insite2012 Посмотреть сообщение
Хм... Пример явно неудачный
Не поверишь, у меня есть приложение, лицензия на которое выдается именно по этому протоколу, стоимость лицензии почти 5 тыс в месяц. Пока еще никто не сломал )
0
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 24
13.07.2016, 03:03  [ТС]
DataPlanner, Если не сложно, объясните пожалуйста как пользоваться им? В английском не особо силен.
0
 Аватар для Detect
123 / 123 / 72
Регистрация: 11.05.2014
Сообщений: 331
13.07.2016, 03:26
Цитата Сообщение от DataPlanner Посмотреть сообщение
Пока еще никто не сломал
Как мне кажется, оперативно ломают только то, что востребовано большой категорией пользователей.
Если KMS существует на машине заказчика, то при должном уровне желания, ресурсов и времени, это будет декомпилировано / воспроизведено с большей вероятностью, нежели удаленный вариант.
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
13.07.2016, 09:37
Цитата Сообщение от Farianit Посмотреть сообщение
объясните пожалуйста как пользоваться
Чтобы понять операции взаимодействия нужно досконально вникнуть в протокол, почитайте что-нибудь.
Кратко все выглядит так - пользователь обращается на сервер лицензий, от имени которого сервер лицензий обращается на сервер русурсов и получает токен на доступ, который потом шифрует и отправляет пользователю. Пользователь может работать офлайн в период действия ключа (в моем случае на период оплаченного времени), если лицензия годовая ключ периодически меняется, когда машина подключена к интернету.
Сервер лицензий также автоматически меняет токен на сервере ресурсов. Все это в комплексе абсолютно исключает любые попытки взломать или читить, т. к. это бессмысленно.
0
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
21.09.2016, 12:09
Цитата Сообщение от insite2012 Посмотреть сообщение
защита будет самой высокой.
Не силен в Web, но я так полагаю, что клиент отсылает свои данные серверу. Получается, можно купить одну копию, узнать какие правильные данные нужно отсылать и подменить код на клиенте. Правильно?
0
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
21.09.2016, 12:13
Цитата Сообщение от Serg34 Посмотреть сообщение
я так полагаю, что клиент отсылает свои данные серверу.
Да, отсылает.
Цитата Сообщение от Serg34 Посмотреть сообщение
можно купить одну копию, узнать какие правильные данные нужно отсылать и подменить код на клиенте. Правильно?
Нет. Если сделать доступ с безопасностью, логин+пароль+сертификат, то не имея этого, даже полностью открытая программа ничего не даст, поскольку данных для аутентификации и авторизации не будет.
0
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
21.09.2016, 12:15
А что за сертификат? Как создается, как защищен?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.09.2016, 12:15
Помогаю со студенческими работами здесь

Как лучше делить приложение при программировании в WF? А то кодовая каша получается. Вообще читать невозможно
Как лучше делить приложение при программировании в WF? А то кодовая каша получается. Вообще читать невозможно.

Как защитить приложение
Доброго времени суток! Пишу диплом тесно связанный с безопасностью. Функциональную часть моего андроид приложения я уже реализовал и...

Как защитить приложение?
*.apk без проблем открывается винраром, *.dex, содержащий весь код, также легко декомпилируется с помощью соответствующего софта. Как...

Как защитить приложение от распространения
Как это лучше всего сделать. Может привязка к ID устройства, но тогда надо заранее перед компиляцией знать его. Или может серийный номер,...

Как защитить мое приложение?
Здравствуйте! Скажите как защитить созданное мною приложение от взлома и кражи информации? Читал про обусфакцию, но опять же вопросы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru