Как защитить свою программу от копирования понадежней?

vladan67

прога маленькая, на С

maggi14

заставь проходить активацию

durka82

Никому не давать - надежнее не бывает.

vall

никак. если она будет кому-то нужна её сломают.
можно продавать её вместе с настроенным компьютером, корпус которого заминирован и взрывается при открытии. других способов пока не изобрели.

vladan67

а как ее сделать? так чтобы не ломалось?

vall

при запуске программа соединяется с сервером и динамически получает куски уникального кода который страшно обфусцирован и жёстко привязан к конфигурации конкретной системы.

maggi14

чтобы не ломалась вообще - никак. Так не бывает.
Чтобы сложно было сломать - юзай, помимо обфускаторов, еще и нестандартные запаковщики.

Werdna

Жадина, других слов нет.

alexkravchuk

распространяй не саму прогу, а доступ к какому-либо сетевому сервису, чтобы твоя прорамма (полностью или частично) работала у тебя на машине, а не у клиентов. Правда если прога маленькая, то может вырасти в разы, и постоянный доступ в инет нужен. Но зачем защищать маленькую прогу - совсем не понятно. В крайнем случае, компилируй под каждого клиента, чтобы на заставке крупным шрифтом название фирмы-заказчика указывалось, и т.п.

migel

никак. если она будет кому-то нужна её сломают.
+1.
2автор: имхо, тебе лучше не на флокал, а на креклаб. если хочешь, могу попробовать найти ссылки - я с год назад интересовался похожими вопросами, мне там посоветовали пару дельных вещей.

migel

Но зачем защищать маленькую прогу - совсем не понятно.
опять же +1.
и опять же совет автору: поботай статейки с того же сайта - там много чего хорошего пишут

kruzer25

В крайнем случае, компилируй под каждого клиента, чтобы на заставке крупным шрифтом название фирмы-заказчика указывалось, и т.п.
Думаешь, не вломают?

suchkov

ASProtect, но эта защита платная.

alexkravchuk

> Думаешь, не вломают?
Если "правильно" написать, вшив текст в код - то нет, потому как это никому не нужно Программа ведь работает, но везде показывает логотипы фирмы-заказчика, заставки для неё и т.п. Здесь первичная цель - морально задавить Кроме того, переделать в нормальный вариант из такого варианта - довольно большая и сложная работа, если исходников нет.
То есть по-моему, если делать защиту, не основанную на сетевых технологиях, то единственный вариант, это создать такую программу, которая кроме как заказчику будет никому не нужна, а этого можно добиться тем, что просто многие константы, зависящие от заказчика, прописать в исходных код программы. В программировании это считается дурным стилем потому, что как раз трудно модифицировать, и не сделаешь модификацию без перекомпилирования - а здесь требуется как раз это. По-моему это лучше, чем делать защиту на основе всяких номеров материнских плат и т.п. И логичнее защита, и удобнее, и надёжнее.

kruzer25

Программа ведь работает, но везде показывает логотипы фирмы-заказчика, заставки для неё и т.п. Здесь первичная цель - морально задавить Кроме того, переделать в нормальный вариант из такого варианта - довольно большая и сложная работа, если исходников нет.
Смысл треда - как раз, в частности, и узнать, как написать свою программу так, чтобы переделывание её бинарника в нормальный вариант было большой и сложной работой.
и не сделаешь модификацию без перекомпилирования
Почему же?

NataNata

если даже правильно написать, то зависит от опыта взломщика и того, насколько нужно
переделать в нормальный вариант из имеющегося - не проблема при наличии определенных программ и знаний. все константы - все-все-все можно поменять и переделать. был такой опыт.
в предположении, что программу будут интенсивно пытаться сломать, самое толковое предложение здесь это - сделать работу через web-интерфейс. в предположении, что не очень интенсивно - юзать проги типа (кажется) armadillo

Papazyan

Найди сначала более-менее популярную программу, которую не взломали и сделай также. Если найдешь, напиши здесь, очень интересно посмотреть, что это за зверь.

maggi14

setuprsh.exe - поищи в Гугле

kruzer25

Лучший вариант (тут его уже упоминали) - действительно сделать, чтобы часть функций (выбирать надо те функции, без которых программа раобтать не будет - что-нибудь такое ядерное) исполнялась на твоём сервере (от клиента приходят данные на ввод функциям, от тебя - ответ).
Плюсы - если то, что делают функции, находящиеся на сервере, неочевидно - это не взломают.
Минусы - пользователю требуется постоянное подключение к интернету; если ввод и вывод достаточно большие (или эти функции вызываются достаточно часто) - канал должен быть широким.

kruzer25

Вроде бы как 1С с првязкой к HASP по-челоечески так и не сломалию

stm7884696

есть маза ее бесплатно распространять, а поддержку осуществлять платно.
Причем навернуть так, что бы обучение специалиста стоило дороже годового обслуживания.
Тогда будет все ОК.
Но правда есть ньюанс - для маленьких программ сложно привернуть необходимость обслуживания.

maggi14

Сомневаюсь, что это будет эффективно. Ведь придется содержать саппортера/деплойтера.

stm7884696

ну так надо посчитать, что выгоднее, терять N продаж при взломе, или саппортить K инсталяций.
Если саппортить - то можно как раз саппортеру на зарплату наскрести.

hoha32

Это с каким хаспом не сломали и какую версию?
Версия 8 до сих пор не доделана (афаик)
Против версии 7.7 неплохо работает Sable.
Оставить комментарий
Имя или ник:
Комментарий: