Аннотация
Согласно данным статистических исследований, нарушение лицензионных соглашений ежегодно приносит огромные убытки компаниям, занимающимся разработкой программного обеспечения. С одной стороны, создаются нелегальные копии программного продукта, с другой стороны, несанкционированно используются какие-либо фрагменты программ третьими лицами. Еще одной важной проблемой является нарушение целостности программы, например в части блокировки функций проверки лицензионного ключа. В этой связи задача разработки методов защиты интеллектуальной собственности в программных приложениях является весьма актуальной. Известные ранее методы решают данную задачу при помощи хрупких водяных знаков. Большое внимание исследователи уделяют способам внедрения в программу цифровых водяных знаков (ЦВЗ) и методам их построения. Ниже предлагается метод построения хрупкого цифрового водяного знака, применяемого в исполняемых файлах. Рассматривается модель коллектива разработчиков, создающих защищенный ЦВЗ программный продукт. Применение данного метода позволит выявить факт нарушения целостности контейнера и позволит автору при необходимости подтвердить свое участие в создании и внедрении ЦВЗ. В данном методе используются математические свойства систем линейных алгебраических уравнений, электронно-цифровая подпись и криптографические хэш-функции. Схема базируется на теореме Кронекера - Капелли. Для нахождения группового пароля соавтор, входящий в группу, находит один из корней совместной системы линейных алгебраических уравнений. Указанная система состоит из n уравнений и содержит n + 1 неизвестную. Для постороннего, не входящего в группу, система уравнений не имеет единственного решения. Соавтор, входящий в группу, способен вычислить одну неизвестную системы на основе своих паспортных данных. Следовательно, система уравнений для такого соавтора имеет единственное решение. Проанализированы различные атаки на защищенную таким образом программу, показана эффективность предлагаемого метода. Разработанный метод может применяться в компаниях с большим коллективом разработчиков.