
В современном информационном обществе программное обеспечение (ПО) выступает не только в качестве технологического инструмента, но и представляет собой сложный объект интеллектуальной собственности, охраняемый нормами авторского права. Создание оригинального программного продукта требует значительных интеллектуальных, временных и финансовых затрат, что обусловливает высокую коммерческую ценность результатов труда разработчиков. Вместе с тем, развитие цифровой экономики сопровождается ростом числа правонарушений, связанных с незаконным заимствованием, копированием и переработкой чужого программного кода, то есть с плагиатом. Выявление данных правонарушений и их доказательство в суде представляют собой сложную междисциплинарную задачу, находящуюся на стыке юриспруденции и инженерии программного обеспечения. Единственным научно обоснованным методом получения объективных доказательств в данной сфере выступает компьютерная экспертиза программного обеспечения на предмет плагиата.
АНО «Центр инженерных экспертиз» обладает многолетним опытом проведения исследований в области информационных технологий. Настоящая статья представляет собой научно-практическое исследование, посвященное теоретическим основам, методологическому аппарату и прикладным аспектам проведения компьютерная экспертиза программного обеспечения на предмет плагиата. В работе рассматриваются правовые основания назначения данного вида экспертизы, классификация методов выявления заимствований, процессуальные особенности подготовки заключения, а также типичные сложности, возникающие в ходе исследования.
Раздел 1. Правовые и теоретические основы компьютерной экспертизы программного обеспечения на предмет плагиата
- 1. Программное обеспечение как объект авторского права
Согласно положениям Гражданского кодекса Российской Федерации, программы для электронных вычислительных машин (программы для ЭВМ) приравниваются к литературным произведениям и являются объектами авторского права. Правовая охрана возникает в силу факта создания программы и не требует соблюдения каких-либо формальностей, хотя добровольная регистрация в федеральном органе исполнительной власти по интеллектуальной собственности возможна и желательна для упрощения доказывания.
Объектом охраны выступает не только сама программа в объективной форме (исходный текст, объектный код), но и подготовительные материалы, полученные в ходе ее разработки, а также порождаемые ею аудиовизуальные отображения. Автору или иному правообладателю принадлежит исключительное право использовать программу любым не противоречащим закону способом, включая воспроизведение, распространение, переработку, доведение до всеобщего сведения.
Плагиат применительно к программам для ЭВМ представляет собой умышленное присвоение авторства на чужую программу или ее часть, а также незаконное использование, копирование, распространение или переработку охраняемой программы без согласия правообладателя. В отличие от литературных произведений, где плагиат часто проявляется в форме дословного заимствования текста, в сфере программного обеспечения формы заимствования могут быть значительно более сложными и завуалированными, что требует применения специальных методов выявления.
- 2. Понятие и сущность компьютерной экспертизы программного обеспечения на предмет плагиата
Под компьютерная экспертиза программного обеспечения на предмет плагиата понимается процессуальное действие, назначаемое судом или проводимое в досудебном порядке, заключающееся в исследовании программных продуктов специалистом, обладающим специальными знаниями в области программирования, теории алгоритмов, архитектуры программного обеспечения и защиты интеллектуальной собственности, с целью установления факта и объема заимствования чужого программного кода.
Данный вид экспертизы относится к классу инженерно-технических экспертиз и имеет свою специфику, обусловленную нематериальной природой объекта исследования и необходимостью применения специализированных методов анализа. Ключевая задача, решаемая в ходе компьютерная экспертиза программного обеспечения на предмет плагиата, заключается в выявлении признаков, свидетельствующих о том, что одна программа создана не самостоятельно, а путем копирования (полного или частичного) другой программы.
- 3. Правовые основания назначения экспертизы
Назначение и проведение компьютерная экспертиза программного обеспечения на предмет плагиата в рамках судебного процесса регламентируется Гражданским процессуальным кодексом РФ, Арбитражным процессуальным кодексом РФ, а также Федеральным законом «О го сударственной судебно-экспертной деятельности в Российской Федерации». Суд назначает экспертизу по ходатайству лиц, участвующих в деле, или по собственной инициативе, если для разрешения возникших вопросов требуются специальные знания.
В определении о назначении экспертизы суд формулирует вопросы, подлежащие разрешению, выбирает экспертную организацию или конкретного эксперта, предупреждает эксперта об уголовной ответственности за дачу заведомо ложного заключения. Материалы, необходимые для проведения исследования (дистрибутивы программ, исходные коды, техническая документация), предоставляются в распоряжение эксперта.
- 4. Классификация видов плагиата в программном обеспечении
Для целей компьютерная экспертиза программного обеспечения на предмет плагиата представляется целесообразным выделить следующие основные виды заимствований:
- Полное копирование исходного кода. Наиболее очевидная форма плагиата, при которой программа ответчика представляет собой точную копию программы истца, возможно, с незначительными изменениями (например, изменением названий, удалением комментариев).
- Частичное копирование исходного кода. Заимствуются отдельные фрагменты кода, функции, модули. Остальная часть программы может быть написана самостоятельно. Данный вид заимствования требует более тщательного анализа для выявления.
- Копирование с модификацией (обфускация). Злоумышленник предпринимает усилия по маскировке факта заимствования путем переименования переменных и функций, изменения порядка следования блоков кода, добавления «пустых» или неработающих операторов, удаления комментариев. Выявление такого плагиата представляет значительную сложность и требует применения специальных методов нормализации кода.
- Копирование архитектуры и структуры программы. Заимствуется не сам код, а уникальная архитектура программы, иерархия классов, взаимосвязи модулей, структура баз данных. Данный вид плагиата может быть осуществлен даже при переписывании программы на другом языке программирования.
- Копирование алгоритмов. Заимствуются уникальные, нетривиальные алгоритмы, реализованные в программе истца. Выявление такого заимствования требует глубокого анализа логики работы обеих программ.
Раздел 2. Методология проведения компьютерной экспертизы программного обеспечения на предмет плагиата
- 1. Общие принципы методологии
Методология компьютерная экспертиза программного обеспечения на предмет плагиата базируется на общенаучных принципах объективности, всесторонности, полноты и научной обоснованности исследования. Эксперт обязан использовать апробированные, научно признанные методы, обеспечивающие воспроизводимость и проверяемость полученных результатов. Выбор конкретных методов определяется характером поставленных вопросов, объемом и формой представления исследуемых объектов (наличие исходных кодов, объектных кодов, только дистрибутивов).
- 2. Методы анализа исходных кодов
При наличии исходных кодов обеих программ исследование проводится с использованием следующих методов:
- Прямое сравнение текстов (diff-анализ). Метод заключается в построчном или побайтовом сравнении файлов исходного кода с целью выявления идентичных или практически идентичных фрагментов. Используются специализированные программные средства (утилиты сравнения файлов), позволяющие визуализировать различия. Данный метод эффективен для выявления полного или частичного копирования без существенной модификации.
- Структурный анализ кода. Метод основан на сравнении не самих текстов, а структурных элементов программ: графа вызовов функций, иерархии классов, диаграмм потоков данных. Выявление сходства на структурном уровне может свидетельствовать о заимствовании даже при значительной модификации текста кода.
- Анализ метрик программного кода. Метод предполагает вычисление и сравнение различных метрик, характеризующих сложность, объем, структуру кода (например, цикломатическая сложность, количество строк кода, количество функций, глубина вложенности). Статистически значимое сходство метрик может указывать на общее происхождение программ.
- N-граммный анализ. Метод, заимствованный из области компьютерной лингвистики, заключается в разбиении текстов программ на последовательности лексем (n-граммы) и сравнении частот их встречаемости. Высокая степень совпадения n-грамм свидетельствует о наличии заимствования.
- Поиск уникальных идентификаторов. Анализ направлен на выявление в коде ответчика специфических, уникальных для программы истца идентификаторов (названий переменных, функций, классов, констант), особенно если они не являются общеупотребительными и не диктуются предметной областью. Обнаружение таких идентификаторов является сильным доказательством заимствования.
- Анализ комментариев. Исследуются комментарии в коде ответчика на предмет наличия фрагментов, идентичных комментариям в коде истца, включая специфические формулировки, орфографические и пунктуационные ошибки.
- 3. Методы анализа объектного кода и дизассемблирования
В ситуациях, когда исходный код ответчика отсутствует, а доступна только скомпилированная программа (объектный код), применяются более сложные методы:
- Дизассемблирование и декомпиляция. Процесс преобразования машинного кода в текст на языке Ассемблера (дизассемблирование) или в код на языке высокого уровня (декомпиляция). Полученный таким образом текст подвергается анализу с использованием методов, описанных выше. Следует отметить, что результат декомпиляции не полностью эквивалентен исходному коду, однако позволяет выявить существенные совпадения в логике и структуре.
- Сравнительный анализ сигнатур. Метод заключается в выделении из объектного кода уникальных последовательностей байт (сигнатур) и их сравнении с сигнатурами, полученными из программы истца. Совпадение сигнатур свидетельствует о заимствовании.
- Анализ потока управления. Исследуется граф потока управления программы, восстановленный из объектного кода. Сравнение графов потока управления двух программ позволяет выявить структурное сходство, сохраняющееся даже после компиляции и оптимизации.
- 4. Методы анализа метаданных и цифровых следов
Важным источником доказательств при проведении компьютерная экспертиза программного обеспечения на предмет плагиата служат метаданные, содержащиеся в файлах программы:
- Анализ метаданных файлов. Исследуются свойства файлов (дата создания, дата последнего изменения, автор, название организации, инструменты компиляции). Обнаружение метаданных, указывающих на истца или его сотрудников, в файлах ответчика является прямым доказательством.
- Анализ путей компиляции. В исполняемых файлах часто сохраняются пути к исходным файлам на компьютере разработчика (например, C:\Users\Ivanov\Project\source. c). Обнаружение такого пути, содержащего имя пользователя или организации истца, в программе ответчика свидетельствует о заимствовании.
- Анализ отладочной информации. Наличие в программе ответчика отладочных символов, строк, имен функций, идентичных таковым в программе истца, также может служить доказательством.
- 5. Функциональный анализ и тестирование
Данный метод применяется для выявления заимствований на уровне поведения программы, особенно когда доступ к исходным или объектным кодам ограничен:
- Сравнительное тестирование. Проводится тестирование обеих программ на одни и те же входные данные. Идентичные реакции, особенно на редкие, нестандартные или граничные значения входных данных, а также идентичные ошибки и сбои могут свидетельствовать о том, что программы имеют общее происхождение или одна создана на основе другой.
- Анализ протоколов обмена. Если программа взаимодействует с внешними системами по сети, анализируются протоколы обмена. Идентичные последовательности запросов и ответов, форматы данных могут указывать на заимствование.
Раздел 3. Процессуальные аспекты и особенности подготовки заключения
- 1. Этапы проведения компьютерной экспертизы
Процесс проведения компьютерная экспертиза программного обеспечения на предмет плагиата в АНО «Центр инженерных экспертиз» включает следующие этапы:
- Этап 1: Получение и изучение материалов. Эксперт получает определение суда или договор на проведение досудебного исследования, а также все необходимые материалы: дистрибутивы программ, исходные коды (при наличии), техническую документацию, договоры, акты, переписку сторон. На данном этапе оценивается достаточность материалов для ответа на поставленные вопросы.
- Этап 2: Предупреждение об уголовной ответственности. В случае судебной экспертизы эксперт дает подписку о том, что он предупрежден об уголовной ответственности по статье 307 Уголовного кодекса РФ за дачу заведомо ложного заключения.
- Этап 3: Разработка методики исследования. На основе анализа поставленных вопросов и предоставленных материалов эксперт выбирает и обосновывает применение конкретных методов исследования (из числа описанных выше). Разрабатывается детальный план исследования.
- Этап 4: Проведение исследования. Эксперт выполняет все необходимые действия в соответствии с разработанной методикой. Результаты каждого этапа фиксируются в рабочих записях. При необходимости используются специализированные программные инструменты.
- Этап 5: Подготовка заключения. Составляется письменное заключение, содержащее подробное описание хода исследования, примененных методов, полученных результатов и сделанных выводов. Заключение должно соответствовать требованиям, предъявляемым к данному виду доказательств.
- Этап 6: Направление заключения заказчику или в суд. Готовое заключение направляется лицу или органу, назначившему экспертизу.
- 2. Структура и содержание заключения эксперта
Заключение эксперта по результатам компьютерная экспертиза программного обеспечения на предмет плагиата должно содержать следующие разделы:
- Вводная часть. Указываются сведения об эксперте (образование, стаж, квалификация), основания для проведения экспертизы, перечень поступивших материалов, вопросы, поставленные на разрешение эксперта.
- Исследовательская часть. Подробно описывается ход исследования: какие методы применялись, какие программные инструменты использовались, какие действия выполнялись, какие промежуточные результаты получены. Исследовательская часть должна быть иллюстрирована скриншотами, схемами, таблицами, распечатками кода, что обеспечивает наглядность и проверяемость выводов.
- Выводы. Содержат краткие, четкие и недвусмысленные ответы на каждый из поставленных перед экспертом вопросов. Выводы должны быть научно обоснованы и логически следовать из исследовательской части. В случае невозможности ответить на какой-либо вопрос эксперт указывает причины.
- 3. Типичные вопросы, решаемые компьютерной экспертизой на предмет плагиата
При назначении компьютерная экспертиза программного обеспечения на предмет плагиата перед экспертом могут быть поставлены следующие вопросы:
- Содержатся ли в коде (исходном или объектном) программы для ЭВМ, принадлежащей ответчику, фрагменты, тождественные или сходные до степени смешения с фрагментами кода программы истца?
• Если да, то каков объем такого заимствования (в процентном или ином выражении)? Является ли заимствование существенным?
• Является ли программа ответчика переработкой (модификацией, адаптацией, производным произведением) оригинальной программы истца?
• Использованы ли при создании программы ответчика алгоритмы, структуры данных, архитектура, охраняемые авторским правом истца?
• Имеются ли в представленных на исследование программах общие уникальные признаки (ошибки, идентификаторы, пути к файлам, метаданные), свидетельствующие об их едином происхождении?
• Создана ли программа ответчика самостоятельно (независимо) или путем копирования (заимствования) программы истца?
Раздел 4. Типичные сложности и проблемы при проведении компьютерной экспертизы на предмет плагиата
Проведение компьютерная экспертиза программного обеспечения на предмет плагиата сопряжено с рядом объективных трудностей, которые необходимо учитывать при планировании исследования и оценке его результатов.
- Отсутствие исходных кодов ответчика. Данная проблема возникает наиболее часто. Ответчик, опасаясь неблагоприятных выводов, может отказаться предоставлять исходные коды, ссылаясь на коммерческую тайну. Суд может истребовать коды, но если они не будут предоставлены, эксперту придется довольствоваться анализом объектного кода или дистрибутива, что значительно усложняет исследование и снижает достоверность выводов по некоторым вопросам.
- Использование открытых библиотек и фреймворков. Современная разработка программного обеспечения практически всегда предполагает использование открытых библиотек. Наличие в двух программах одинаковых фрагментов кода может объясняться не плагиатом, а одновременным и правомерным использованием одной и той же сторонней библиотеки. Задача эксперта — отличить такое санкционированное использование от неправомерного копирования оригинального кода истца. Это требует от эксперта глубокого понимания экосистемы разработки и лицензионных условий используемых компонентов.
- Умышленная маскировка плагиата (обфускация). Недобросовестные разработчики применяют различные методы для сокрытия факта заимствования: переименование переменных и функций, изменение порядка следования блоков кода, вставка «мусорного» кода, разделение и слияние функций, удаление комментариев. Для выявления плагиата в таких условиях необходимо применение методов нормализации кода и структурного анализа, которые позволяют привести сравниваемые программы к сопоставимому виду.
- Разные языки программирования. Ответчик может переписать заимствованную программу с одного языка программирования на другой, чтобы затруднить идентификацию плагиата. В этом случае прямое сравнение текстов становится невозможным. Эксперт вынужден опираться на анализ архитектуры, алгоритмов и поведения программы, что требует еще более высокой квалификации и не всегда позволяет сделать однозначный вывод.
- Огромный объем кода. Современные программные комплексы могут содержать миллионы строк кода. Ручной анализ такого объема невозможен. Эксперт вынужден использовать автоматизированные средства, но даже с ними проведение полного и всестороннего исследования требует значительного времени и ресурсов. Возникает проблема репрезентативной выборки и обоснования достаточности проведенного анализа.
- Разграничение охраняемых и неохраняемых элементов. Авторским правом охраняется форма выражения, а не идеи, методы, концепции. Не все элементы программы могут быть признаны объектами авторского права (например, общеизвестные алгоритмы, стандартные приемы программирования, элементы, обусловленные функциональным назначением). Эксперт должен учитывать это при формулировании выводов.
- Недостаточность или противоречивость исходных данных. Если предоставленные эксперту материалы не позволяют провести полноценное исследование (например, отсутствуют необходимые версии программ, неполная документация), эксперт обязан указать на это в заключении и, по возможности, ограничиться частичными выводами.
Раздел 5. Роль АНО «Центр инженерных экспертиз» в проведении компьютерной экспертизы на предмет плагиата
АНО «Центр инженерных экспертиз» является признанным лидером в области проведения сложных инженерно-технических экспертиз, включая компьютерная экспертиза программного обеспечения на предмет плагиата. Наши преимущества обусловлены следующими факторами.
- Высокая квалификация экспертов. В штате организации работают эксперты, обладающие глубокими теоретическими знаниями и многолетним практическим опытом в области программирования, теории алгоритмов, архитектуры программного обеспечения, компиляторов, а также в сфере защиты интеллектуальной собственности. Многие эксперты имеют ученые степени и регулярно повышают квалификацию.
- Независимость и объективность. АНО «Центр инженерных экспертиз» является некоммерческой организацией и не зависит от участников спора. Наши заключения базируются исключительно на результатах научного исследования, проведенного в строгом соответствии с утвержденными методиками. В случае проведения судебной экспертизы наши эксперты предупреждаются об уголовной ответственности за дачу заведомо ложного заключения.
- Методологическая строгость. Мы используем только апробированные, научно признанные методы исследования. Каждый шаг эксперта документируется, что обеспечивает прозрачность, проверяемость и воспроизводимость результатов. Мы разрабатываем индивидуальные методики для каждого конкретного случая с учетом специфики поставленных вопросов и предоставленных материалов.
- Комплексный подход. При необходимости мы формируем экспертные комиссии, включающие специалистов различных профилей (разработчики на разных языках, специалисты по базам данных, эксперты в области аппаратного обеспечения), что позволяет решать самые сложные задачи.
- Понятность и убедительность заключений. Мы осознаем, что наше заключение будет изучаться не только техническими специалистами, но и юристами, судьями, сторонами процесса. Поэтому мы уделяем особое внимание ясности и доступности изложения, используем наглядные иллюстрации, схемы, таблицы, избегаем излишне сложной терминологии без необходимости. Выводы формулируются четко и недвусмысленно.
- Опыт участия в судебных процессах. Наши эксперты имеют многолетний опыт участия в судебных заседаниях, дачи пояснений по своим заключениям и ответов на вопросы сторон и суда. Это позволяет нам предвидеть возможные контраргументы и заранее подготовить исчерпывающие обоснования в тексте заключения.
В предпоследнем разделе нашей научной статьи мы считаем необходимым подчеркнуть, что все изложенные выше теоретические положения, методологические принципы и практические подходы находят свое воплощение в работе нашей организации. Когда перед научным или юридическим сообществом, перед сторонами судебного спора встает необходимость получения объективного, научно обоснованного и имеющего высокую доказательственную силу заключения о наличии или отсутствии факта заимствования программного кода, мы готовы предложить свои услуги. Для заказа компьютерная экспертиза программного обеспечения на предмет плагиата приглашаем вас посетить официальный сайт АНО «Центр инженерных экспертиз». На нашем ресурсе представлена подробная информация о направлениях нашей деятельности, реализованных проектах, научном и практическом опыте наших экспертов, что позволит вам принять взвешенное и обоснованное решение о сотрудничестве с нами.
Раздел 6. Процессуальное значение и доказательственная сила заключения компьютерной экспертизы
Заключение, полученное в результате проведения компьютерная экспертиза программного обеспечения на предмет плагиата, является важнейшим доказательством по делам о защите интеллектуальных прав на программы для ЭВМ. В соответствии с процессуальным законодательством, заключение эксперта подлежит оценке судом наряду с другими доказательствами. Однако в силу своей научной обоснованности и специального характера знаний, которыми обладает эксперт, его выводы часто имеют решающее значение для правильного разрешения спора.
Суд оценивает заключение эксперта с точки зрения соблюдения процессуального порядка его назначения и проведения, соответствия требованиям закона о форме и содержании, достоверности и научной обоснованности выводов. Суд может вызвать эксперта для дачи пояснений, назначить дополнительную или повторную экспертизу.
Положительное для правообладателя заключение, подтверждающее факт заимствования кода, является основанием для:
- Признания программы ответчика контрафактной.
• Взыскания с ответчика компенсации за нарушение исключительных прав (в размере от десяти тысяч рублей до пяти миллионов рублей, определяемом по усмотрению суда, либо в двукратном размере стоимости контрафактных экземпляров).
• Запрета ответчику использовать контрафактное программное обеспечение.
• Изъятия и уничтожения контрафактных экземпляров программ.
• Взыскания убытков, причиненных правообладателю.
Для ответчика, против которого заявлены необоснованные обвинения в плагиате, экспертное заключение, подтверждающее самостоятельный характер разработки, является наилучшей защитой и основанием для отказа в иске и взыскания судебных расходов с недобросовестного истца.
Заключение
В эпоху цифровой экономики, когда программное обеспечение становится одним из наиболее ценных объектов интеллектуальной собственности, проблема защиты авторских прав на программы для ЭВМ приобретает особую актуальность. Плагиат, незаконное заимствование и переработка чужого кода наносят правообладателям значительный ущерб и подрывают основы добросовестной конкуренции. Эффективно противостоять этому явлению можно только с помощью современных научных методов, объединенных в рамках компьютерная экспертиза программного обеспечения на предмет плагиата.
Данный вид экспертизы представляет собой сложное междисциплинарное исследование, требующее от эксперта глубоких знаний в области программирования, теории алгоритмов, архитектуры программного обеспечения, методов компиляции и дизассемблирования, а также понимания правовых аспектов защиты интеллектуальной собственности. Только научно обоснованное, методологически строгое и процессуально безупречное заключение эксперта может служить надежным фундаментом для судебного решения и эффективной защиты нарушенных прав.
АНО «Центр инженерных экспертиз» обладает всеми необходимыми компетенциями для проведения компьютерная экспертиза программного обеспечения на предмет плагиата любого уровня сложности. Наши эксперты, опираясь на многолетний опыт и передовые научные методы, готовы оказать квалифицированную помощь правообладателям, заказчикам и разработчикам в разрешении самых сложных споров, связанных с защитой интеллектуальной собственности в сфере информационных технологий. Обращение к нам — это гарантия получения объективного, полного и научно обоснованного заключения, способного выдержать самую строгую проверку в суде и обеспечить справедливое разрешение спора.





Задавайте любые вопросы