Предложения по защите программного обеспечения - PullRequest
1 голос
/ 09 ноября 2011

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

В настоящее время мы связываем пользователя по имени пользователя / MACадрес, и это очень плохой способ защиты программного обеспечения из-за проблем с док-станциями для ноутбуков или Wi-Fi.

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

- Не нужно быть полностью защищенным, просто нужно иметь меньшую частоту отказов

Это будет среда только для windows из xp-> windows 7это может быть что угодно, от ноутбука до серверов и виртуальных машин.

Спасибо

Ответы [ 2 ]

0 голосов
/ 12 ноября 2011

(Раскрытие - я работаю на Agilis Software, поставщика систем защиты программного обеспечения систем).

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

  • Что если параметр изменится из-за обновления пользователем своей системы? Хотите ли вы, чтобы лицензия перестала работать, или чтобы у вас были небольшие отклонения от системных изменений, чтобы она продолжала работать?
  • Как вы получите параметры блокировки? Любое участие человека может привести к ошибкам и неудобствам для пользователя (опечатки, прописные и строчные буквы, ввод «1» для «l» или «O» для «0» и т. Д.)
  • Что если пользователь захочет перенести свою лицензию на другой компьютер? Могут ли они сделать это без неудобств, но без того, чтобы вы открывали множество копий, работающих под одной лицензией?
  • Смежная тема - что вы будете делать, когда пользователь звонит и говорит: «Помогите, моя система вышла из строя, и мне нужно установить лицензию на другом компьютере!». Вы получите эти звонки ...
  • Вы упомянули виртуальные машины. Основной подход здесь заключается в привязке к инвариантным логическим параметрам виртуальной машины. Для дополнительной безопасности вы также можете периодически запускать приложение «Телефон домой».

Надеюсь, это поможет.

0 голосов
/ 09 ноября 2011

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

Редактировать: (если вы привязываетесь к одному MAC-адресу, вы все равно можете работать довольно хорошо, если предположить, что выВы используете встроенный (ые) интерфейс (ы) локальной сети, а не активный) (для серверов это сложнее, поскольку они обычно имеют несколько локальных сетей, если вам нужен список идентификаторов)

...