Сервер проверки программного обеспечения в Python? - PullRequest
0 голосов
/ 17 августа 2010

Я уже давно работаю над огромным проектом, и он почти готов.Однако, чтобы предотвратить пиратскую программу (я уже знаю, что практически нет метода, который не может быть взломан), программное обеспечение должно иметь возможность проверки.Я не совсем уверен, как это сделать.Может ли какой-нибудь сервер проверки программного обеспечения быть написан на Python?Как программное обеспечение будет взаимодействовать с сервером?Будет ли программное обеспечение проверять каждый раз, когда оно запускается, чтобы убедиться, что оно действительно?В любом случае, для запуска программы требуется доступ в Интернет, поэтому проверка на валидацию при каждом запуске может быть не такой уж и плохой.

Я программирую на Python 2.6 под Windows 7. Любая помощь будет отличной!

Ответы [ 2 ]

2 голосов
/ 17 августа 2010

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

Конечно, любой компетентный хакер найдет и отключит частьваш код, куда вы отправляете запрос и отправляете ответ, но тогда вы уже делаете знаете, что все легко взломать; -).

менее легко взломанный подход будетсохранить некоторую важную часть функциональности на вашем сервере , чтобы клиент был в основном бесполезен (или, по крайней мере, менее полезен), если он не зарегистрировался на вашем сервере и не получил токен для использования вдругие «запросы функциональности» во время сеанса.

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

0 голосов
/ 17 августа 2010

Я действительно призываю вас не делать этого. Как вы сказали, что бы вы ни делали, это будет нарушено, и вы можете фактически заставить пиратские дополнительные копии вашего программного обеспечения включить этот барьер. Просьба к вашим пользователям не воровать, может быть лучше ...

Тем не менее, реализовать это способом, который препятствует наиболее случайному пиратству, легко: достаточно, чтобы программа отправила серийный номер, зашифрованный с помощью открытого ключа сервера, в ваш сценарий проверки, а сервер вернул версию зашифрованного номера используя свой закрытый ключ. Мгновенная проверка. Да, этот сервер может быть легко написан на Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...