Практика показала, что для защиты программ от копирования и для организации системы лицензирования можно использовать несколько методов.
Как правило и опытные шароварщики и компании которые продают тиражируемое программное обеспечение выбирают самый простой и беспроблемный вариант — купить протектор у тех, кто на этом собаку съел.
Некторые же начинающие шароварщики при выборе способа защиты руководствуются парадигмой:
«Только самостоятельно, только хардкор!» 🙂
При этом первый способ совсем не исключает того, что покупную защиту можно улучшить. Можно добавить хитрых ловушек, реализовать проверку целостности цифровой подписи, и.т.п.
Протекторы
{… процесс выбора удалён из-за потери актуальности … я не угадал с выбором протектора — продажи протектора Armadillo временно приостановлены дополнение от 07.2013) }
Короткие ключи
Одним из главных критериев для окончательного выбора оказалась поддержка коротких ключей, т.е. таких ключей вида:
000AB-CCCDD-EEEFF-MMMM3
которые можно при желании записать на бумажку, и набрать руками, в отличие от длинных ключей которые невозможно ввести руками.
Преимуществ у коротких ключей полно:
- Их можно напечатать на бумажке на память (я так делаю)
- Их можно напечатать на диске в случае распространения дисков
- Можно отправить пользователю с помощью SMS если вдруг до пользователя не доходят email-ы
- Можно отправить регистратору список ключей и не парится с онлайновыми и другими генераторами (и это поддерживают ВСЕ регистраторы)
- Отсутствие аттачей в письмах — короткие ключи легко помещаются в email-ы.
- Не нужно дополнительных усилий по переносу ключа в программу, достаточно обычного диалога
- Они привычней длинных ключей или файлов для пользователей (Все продукты MS, VMWare, Acronis, практически все игрушки ), а переучивать пользователей — это дело не благодарное.
Альтернативным вариантом для использования длинных ключей является схема когда короткий КлючАктивации вводится пользователем, отправляется на сервер, берет там длинный ключ и активирует программу.
Но поразмыслив, я пришел к выводу, что не хочу связываться с обязательной интернет активацией, т.к. у неё целый ряд минусов. Начиная от того, что не везде в компаниях есть интернет, и заканчивая тем, что на попытку полезть в интернет может заорать антивирус и предложить пользователю удалить программу.
В общем я выбрал Armadillo / Software Passport.
Прямо сразу после оплаты по карте, выдается код для активации и 14 дневная ссылка на скачивание файла. Как в последствие оказалось это был временный код на 30 дней. А постоянный пришел по почте чуть позднее.
К слову, чтобы получить Custom Build — специальную индивидуальную версию защиты отличающеюся от защиты которая генерится общей версией Software Passport, надо щелкнуть меню: Help/Get Custom Builds.
Кстати эти трюки (скачивание полной версии только после покупки и отсылка автоматом временного ключа) параноики могут использовать при продаже своих программ. Хотя я признаться не очень паранойю по поводу защиты от взлома. Гораздо важнее ИМХО удобство лицензирования и хорошая совместимость с тысячами компьютеров и отсутствие ложных тревог от антивирусов.
Дополнение от 08.07.2013: Хакеры вроде как из Туниса выпустили взломанную версию программы. Но большой беды не случилось, так как взлом был не полный. Мне помогли дополнительные механизмы защиты.
Вот я по тем же соображением выбрал SoftwarePassport. К тому же у плимуса встроенная ключегенерилка для него, пользователь получает ключ сразу же.
И к тому же он бесплатен для вендоров RegNow.
Вроде бы бесплатна для вендоров RegNow только какая-то обрезанная версия, с привязкой к RegNow, нет?
Не знаю как в данный момент, но прошлым летом мне дали полную.
А как можно получить эту версию у регнау? Нашел в хелпе ссылку, написал им на мыло, жду 🙂 но может я не тот путь выбрал. Спасибо.
Если подписывать exe, то у меня VMProtect никем не детектится. Ключигенерилка вроде интегрирована в PayPro. Но я ключи формирую с помощью HardKey (это от разработчиков ExeCryptor). Благодаря этому легко пережил переезд с ExeCryptor. Но есть проблема, сама софтина для первичного формирования закрытого ключа не запускается под Win7 😦
Я сумел подружить Windows 8 и Execryptor. По умолчанию параметр Delay DLL loading включается, независимо от того включал/отключал его ранее и проблема как раз в нем. На x86 никогда такой проблемы не возникало. 64-bit ошибка появлялась всегда.
Спасибо за идею. Попробую.
К слову вот тут https://github.com/tordex/armkeys YuryKobets выложил исходники для проверки ключей зверька «Броненосца». За что ему почёт и уважение.