Пасхальные яйца как защита IP в программном обеспечении

11

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

Цель состоит в том, чтобы проверить, включено ли наше программное обеспечение в устройство. Это звучит как хорошая идея? У меня есть много аргументов против этого шага:

  • Что, если код конами слишком чувствителен и пользователь запускает его?
  • Имеет ли этот вид watermarkкакое-либо юридическое значение?
  • Что если эта «особенность» обнаружена клиентом?
  • Нарушение производительности должно быть очень маленьким, поскольку программно запускаются на небольших устройствах.
  • Я тот, кто разрабатывает этот триггер. Если что-то пойдет не так, какова моя ответственность?

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

Саймон Бергот
источник

Ответы:

8

Существует как минимум один прецедент, как описано в статье в Википедии о пасхальных яйцах :

Внедрение микропроцессора CVAX для процессора MicroVAX содержало в офортах русскую фразу в кириллице «VAX: когда вы заботитесь о том, чтобы украсть самое лучшее», чтобы привлечь потенциальных производителей клонов, крадущих интеллектуальную собственность, в советском блоке.

Немного подробнее об этом можно найти в этой статье на CVAX (которая является ссылкой на приведенную выше цитату):

Наконец, на полосе писцов был девиз кириллицы: «VAX: когда ты достаточно заботишься, чтобы украсть самое лучшее». В 1983 году Безымянное разведывательное управление дало мне формулировку, заявив, что они сняли ее с мошеннического VAX-11/780, на котором работал советский ракетный комплекс SS20. Зная, что некоторые CVAX окажутся в СССР, команда хотела, чтобы русские знали, что мы думаем о них.

Согласно вашим конкретным вопросам:

Что, если код конами слишком чувствителен и пользователь запускает его?

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

Имеет ли этот вид водяного знака какое-либо юридическое значение? Я тот, кто разрабатывает этот триггер. Если что-то пойдет не так, какова моя ответственность?

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

Что если эта «особенность» обнаружена клиентом?

Зависит от клиента. Кто-то может смеяться, кто-то может судиться. Мое мнение таково, что, поскольку пасхальное яйцо включено в качестве средства защиты интеллектуальной собственности, клиент должен быть проинформирован о каждой другой функции, которую вы создаете для него.

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

Да, это должно быть, очевидно. Если вы обнаружите, что реализация пасхального яйца имеет измеримое снижение производительности, это было бы лучшей причиной, чтобы не делать этого.


У меня нет мнения в любом случае. Если вы проконсультируетесь с юристом и охватите все свои юридические основания, пойдите на это, это, вероятно, будет бесполезно, но вы никогда не узнаете.


Обновление: пример CVAX, конечно, пример аппаратного обеспечения, но я думаю, что нет более подходящих примеров (для программного обеспечения и / или встроенного программного обеспечения), о которых я знаю. Я основал ответ вокруг этого главным образом, чтобы ответить на Has anyone tried itчасть вопроса. Я искал другие примеры, не нашел ни одного, и теперь у меня есть мнение:

Это, вероятно, не очень хорошая идея. (не часть пасхального яйца, means of IP protectionчасть). Поскольку идея не является ни оригинальной, ни инновационной (контексты могут быть разными, но похожими), если бы она работала, было бы по крайней мере несколько примеров.

Яннис
источник
Спасибо за ваш ответ. Я читал об истории MicroVAX, но контекст немного другой (аппаратный продукт). Я согласен с необходимостью информирования клиента.
Саймон Бергот
@ Симон Я думал, вы бы видели это, но основали мой ответ на этом, чтобы показать, что самый известный прецедент произошел давным-давно в совершенно ином контексте. Если вам не удастся найти более свежие примеры по программному обеспечению, вам следует подумать о том, чтобы передать управление: это случилось однажды давным-давно, никто с тех пор этого не делал, возможно, потому, что это плохая идея. , По моему опыту, когда руководство приходит с такими причудливыми идеями, доказательство того, что их идея не является ни оригинальной, ни инновационной, может быть лучшим оправданием для того, чтобы не реализовывать ее.
Яннис
Разница в том, что русский девиз не был функциональной частью чипа и, следовательно, не изменил его поведение. Я хотел бы быть осторожным со всем, что может вызвать непредсказуемый (для клиента) вывод во встроенном устройстве.
Дэвид Торнли
0

Если бы вы были поставщиком для производителя, я бы ожидал, что это будет раскрыто, поскольку это «за пределами нормального поведения программного обеспечения».

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

smp7d
источник
Мы продаем программное обеспечение OEM. Таким образом, мы должны быть прозрачными об этом.
Саймон Бергот
0

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

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

В одном проекте, который я унаследовал, я обнаружил гигантский вводящий в заблуждение класс C #, названный по имени, UIDataTableColumnRenderer, размер которого превышал 3 МБ. В этом классе я обнаружил целую мини-игру, изображения и все base64, закодированные в строки внутри класса. По сути, это был шутер, где разработчик ПК пытался сбить неослабевающий поток ошибок и плохо написанных требований, которые PM и владельцы продуктов бросали на программное обеспечение. Это было довольно забавно, потому что становилось все сложнее и сложнее, и вы никогда не выигрываете, в конечном итоге ошибки и плохие требования разрушают программное обеспечение, и ПК теряет свою работу.

Это было самое потрясающее пасхальное яйцо, которое я когда-либо нашел.

maple_shaft
источник
3
Я бы не посчитал, что пасхальное яйцо на встроенном устройстве 3 Мб безвредно.
Яннис
2
@YannisRizos - этого явно не было на встроенном устройстве, и если оно имело возможность использовать C #, то класс 3MB не представлял большой проблемы.
Ramhound
@Ramhound Да, я знаю, но вопрос в контексте встроенного программного обеспечения.
Яннис
0

Я тот, кто разрабатывает этот триггер. Если что-то пойдет не так, какова моя ответственность?

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

Джереми
источник