Поскольку Armadilla больше не поддерживается, встал вопрос о протекторе на замену.
Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit.
Требования:
— 32 и 64 битность защищаемых бинарников.
— работа с командной строки.
— не требуется контроль триала/железа/лицензии и т.п., все это делается отдельно от протектора. нужен только контроль целостности бинарника, ради этого в начале main() готов вызвать функцию и скормить ей фиктивный ключ.
— крайне желательно иметь возможность макросами в исходниках помечать области, подлежащие криптованию/обфускации, желательно -- чтобы часть таких секций не работала после задания моего фиктивного ключа (вредный код против любителей расшифровать все зашифрованные секции).
— проект защиты не должен требовать модификации/вмешательства после любых изменений исходников.
Здравствуйте, K13, Вы писали:
K13>Поскольку Armadilla больше не поддерживается, встал вопрос о протекторе на замену. K13>Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit.
Я извиняюсь, что не отвечаю на вопрос, просто я тоже Обсидиум использую и хотелось бы поподробнее узнать про глюки.
А то может у меня тоже есть, а я не знаю. Я правда опций ставлю по-минимуму в протекторе.
Здравствуйте, bolide, Вы писали:
K13>>Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit.
B>64 бит — имеется виду защищаемый бинарник 64-битный или система?
K13>>Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit.
B>Я извиняюсь, что не отвечаю на вопрос, просто я тоже Обсидиум использую и хотелось бы поподробнее узнать про глюки.
Юзеры присылают креш-дампы, где падения -- внутри системных DLL при обращении к нулевому указателю.
Чаще всего -- внутри CreateWindowEx, но не только там.
Защищенные армадиллой, 32-битные варианты в 64-битной системе или тот же бинарник под семеркой в таких отчетах практически не встречаются.
Здравствуйте, K13, Вы писали:
K13>>>Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit. B>>Я извиняюсь, что не отвечаю на вопрос, просто я тоже Обсидиум использую и хотелось бы поподробнее узнать про глюки. K13>Юзеры присылают креш-дампы, где падения -- внутри системных DLL при обращении к нулевому указателю. K13>Чаще всего -- внутри CreateWindowEx, но не только там.
понятно, спасибо! Я только 32-битные бинарники защищаю, поэтому наверное с таким не сталкивался.
Если какие-то проблемы возникали, писал в поддержку и Мартин довольно оперативно исправлял баги
Здравствуйте, drVanо, Вы писали:
V>Здравствуйте, K13, Вы писали:
K13>>Кто что может посоветовать?
V>VMProtect
Пара вопросов:
желательно -- чтобы часть таких секций не работала после задания моего фиктивного ключа (вредный код против любителей расшифровать все зашифрованные секции).
1. Как это делается в VMProtect?
2. Когда будет фикс — обработка исключений для 64-битного кода?
Без ручного создания проекта защиты на каждую сборку? Если у меня в каждом бинарнике -- несколько десятков криптованных областей?
Т.е. максимум, на что я готов -- это указать входной/выходной путь и опции. После чего растиражировать результат на кучу продуктов, правя только имя файла. У меня не один бинарник на продукт, и продуктов не один десяток.
После чего любые изменения исходников, числа, размера и порядка шифруемых кусков не должны требовать какие-либо телодвижения, защита обязана накладываться с командной строки в полностью автоматическом режиме на билд-сервере.
Здравствуйте, K13, Вы писали:
K13>>>Кто что может посоветовать? V>>VMProtect
K13>Без ручного создания проекта защиты на каждую сборку? Если у меня в каждом бинарнике -- несколько десятков криптованных областей? K13>Т.е. максимум, на что я готов -- это указать входной/выходной путь и опции. После чего растиражировать результат на кучу продуктов, правя только имя файла. У меня не один бинарник на продукт, и продуктов не один десяток. K13>После чего любые изменения исходников, числа, размера и порядка шифруемых кусков не должны требовать какие-либо телодвижения, защита обязана накладываться с командной строки в полностью автоматическом режиме на билд-сервере.
и все это за 100 долларов пожизнено? ну-ну...
скорее всего придется делать самопис себестоимостью под 10к
Здравствуйте, K13, Вы писали:
K13>Без ручного создания проекта защиты на каждую сборку?
Да. Будут использовать опции по умолчанию.
K13>Если у меня в каждом бинарнике -- несколько десятков криптованных областей?
У нас есть собственные "криптованные секции", ключ для которых берется из серийника. Т.е. привязать к ключу какой-то код без нашего лицензирования не получится.
L>и все это за 100 долларов пожизнено? ну-ну... L>скорее всего придется делать самопис себестоимостью под 10к
Armadilla это умеет. Obsidium тоже. ASProtect в 32 битах точно умел -- много лет назад именно им пользовались.
Кроме того, я согласен на ежегодные 100 баксов -- думаю, в этом случае для автора все выглядит уже привлекательнее.
При условии, что автор будет вылизывать совместимость с новыми версиями винды.
V>У нас есть собственные "криптованные секции", ключ для которых берется из серийника. Т.е. привязать к ключу какой-то код без нашего лицензирования не получится.
Мне не нужно чужое лицензирование, только защита бинарника и шифрование секций кода.
Независимость лицензирования от протектора -- великая вещь. Сейчас бинарник может быть закрыт любым протектором (или даже собран с отключенной защитой) -- и при этом контроль лицензирования один и тот же.
Здравствуйте, K13, Вы писали:
V>>>VMProtect
S>>2. Когда будет фикс — обработка исключений для 64-битного кода?
K13>Стоп. А что, у VMProtect есть какие-то проблемы, если приложение использует исключения?
Да. VMProtect не поддерживает исключения в 64-bit приложениях.
S>Да. VMProtect не поддерживает исключения в 64-bit приложениях.
То есть как ? Каките исключения? SEH ? Что , их нельзя использовать в бинарнике или нельзя обфусциаровать ф-цию ?
Др. Вано, поясни плиз что можно что нельзя.
Здравствуйте, K13, Вы писали:
K13>Поскольку Armadilla больше не поддерживается, встал вопрос о протекторе на замену. K13>Сейчас использутся Obsidium, но у него много глюков при сочетании Windows 8.1 и 64 bit. K13>Требования:
K13>- 32 и 64 битность защищаемых бинарников. K13>- работа с командной строки. K13>- не требуется контроль триала/железа/лицензии и т.п., все это делается отдельно от протектора. нужен только контроль целостности бинарника, ради этого в начале main() готов вызвать функцию и скормить ей фиктивный ключ. K13>- крайне желательно иметь возможность макросами в исходниках помечать области, подлежащие криптованию/обфускации, желательно -- чтобы часть таких секций не работала после задания моего фиктивного ключа (вредный код против любителей расшифровать все зашифрованные секции). K13>- проект защиты не должен требовать модификации/вмешательства после любых изменений исходников.
K13>Кто что может посоветовать?
Здравствуйте, K13, Вы писали:
L>>и все это за 100 долларов пожизнено? ну-ну... L>>скорее всего придется делать самопис себестоимостью под 10к
K13>Armadilla это умеет. Obsidium тоже. ASProtect в 32 битах точно умел -- много лет назад именно им пользовались.
В этом-то и вопрос.
Аспротект умер и сгнить успел.
Армадилла фактически умер года три назад, а сейчас и формально умер.
Обсидиум глючит.
K13>Кроме того, я согласен на ежегодные 100 баксов -- думаю, в этом случае для автора все выглядит уже привлекательнее. K13>При условии, что автор будет вылизывать совместимость с новыми версиями винды.
Беда всех протекторов как раз в том, что за 100 баксов в год вылизывать совместимость так, чтобы было коммерчески пригодно в защите, оказывается слишком дешево. В разы дешево. Поэтому они долго не живут.