Охрана IT-решений в России

    Цель данного поста донести информацию о способах охраны ИТ-решений в России — патенты, авторское право, ноу-хау. Протестующих против интеллектуальной собственности – просьба не сюда. Не будем разводить дебатов, сотни их…

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

    Задача


    Пусть у нас есть задача, которую выдали программисту Валере, чей интеллектуальный труд мы собираемся охранять.
    Имеется последовательность целых чисел:
    1, 4, 0, 3, 7, 11
    Требуется упорядочить числа по возрастанию, т.е. привести их к виду
    0, 1, 3, 4, 7, 11
    Для решения этой задачи необходимо разработать алгоритм.
    Алгоритм — способ решения вычислительных и др. задач, точно предписывающий, как и в какой последовательности получить результат, однозначно определяемый исходными данными.

    Валера разработал алгоритм, который решает поставленную задачу. Для упрощения он «разработал/придумал» пузырьковую сортировку, блок-схема алгоритма которой выглядит так:


    И написал несколько реализаций данного алгоритма в виде программ ЭВМ.
    Программа ЭВМ — представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств в целях получения определенного результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ и порождаемые ею аудиовизуальные отображения (статья 1261 ГК РФ).

    Т.е. одну программу он написал на C:
    #define SWAP(A, B) { int t = A; A = B; B = t; }
     
    void bubblesort(int *a, int n)
    {
      int i, j;
     
      for (i = n - 1; i > 0; i--)
      {
        for (j = 0; j < i; j++)
        {
          if (a[j] > a[j + 1]) 
            SWAP( a[j], a[j + 1] );
        }
      }
    }
    


    Вторую на Python:
    def swap(arr, i, j):
        arr[i], arr[j] = arr[j], arr[i]
     
    def bubble_sort(arr):
        i = len(arr)
        while i > 1:
           for j in xrange(i - 1):
               if arr[j] > arr[j + 1]:
                   swap(arr, j, j + 1)
           i -= 1
    


    А третью – на ассемблере:
        mov bx, offset array
        mov cx, n
    for_i:
        dec cx
        xor dx, dx
    for_j:
        cmp dx, cx
        jae exit_for_j
        jbe no_swap
        mov ah, byte ptr bx[di]
        mov byte ptr bx[di], al
        mov byte ptr bx[si], ah
    no_swap:
        inc dx
        jmp for_j
    exit_for_j:
        loop    for_i
    


    Отсюда возникает следующее утверждение, довольно-таки банальное:
    У одного алгоритма может быть множество реализаций, как в рамках одного языка программирования, так и на разных языках программирования. И, наоборот, в любой программе ЭВМ (не берем вырожденные случаи) всегда есть какой-то алгоритм.
    И теперь встает вопрос: «Как и что из этого, и каким способом, мы можем защитить в рамках закона?»

    Охрана алгоритма


    Патенты


    На алгоритм программы ЭВМ можно получить патент на изобретение (на способ) при соблюдении всех условий, предъявляемых к изобретениям:
    • Наличие новизны;
    • Изобретательского уровня;
    • Промышленной применимости.

    И наличие технического результата.

    Примерами технических результатов могут быть:
    • ускорение доступа к релевантной информации
      патент RU2456661 “ЭФФЕКТИВНАЯ НАВИГАЦИЯ РЕЗУЛЬТАТОВ ПОИСКА”, МАЙКРОСОФТ КОРПОРЕЙШН (US)
    • повышение качества поиска
      патент RU2460131 “ОСНАЩЕНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА РАСШИРЕНИЕМ ПОИСКОВЫХ ЗАПРОСОВ”, ГУГЛ ИНК (US)

    Плюсы патентов:
    • Охраняют алгоритм и любые его реализации на любых языках программирования;
    • Действует 20 лет.

    Минусы патентов:
    • Национальный/региональный характер – охрана действует только на территории тех стран, куда подавалась заявка на патент;
    • Довольно ощутимо «бьют по карману» в случае патентования за рубежом;
    • Долгий срок получения патента (1.5 года в РФ, 3-4 года в США, больше 4-х лет в Европе).



    Из чего состоят расходы на патент (цены указаны примерно, для оценки):
    • Пошлины:
      1. РФ – ~10 000 руб.;
      2. США – ~3 000 USD;
      3. Европа с 1 апреля 2014 г. (унитарный патент) — ~4750 Euro (пошлина за подачу);
    • Патентные поверенные (для подачи заявки в другое государство) – ~2000 Euro для каждой страны;
    • Перевод заявки на др. язык – от 20 000 руб.;
    • Консалтинговые услуги – большой разброс цен от 20 000 до 200 000 руб. (если делать в заграничных компаниях, то еще дороже).


    Ноу –Хау или коммерческая тайна


    Так же, если нет денег, то можно ввести на предприятии/в организации режим коммерческой тайны.
    Подробно останавливаться не имеет смысла, т.к. эта тема широко расписана в интернете.
    Плюсы ноу-хау:
    • Недорогое внедрение
    • Защита от утечек идеи из коллектива

    Минусов у ноу-хау несколько:
    • Нет защиты от реверс-инжиниринга;
    • Нет защиты от разработки другой компанией вашего аналога;
    • Возможность «попасть» под патентные разборки, если кто-то ушлый запатентует схожее с вашим решением.


    Смешанный тип – Ноу-Хау + Патенты

    Очень распространенное решение. Патентами защищается основная часть системы, а все детали реализации, «тонкие настройки» охраняются в режиме ноу-хау.
    Плюсы:
    • Экономия денег, по сравнению с чисто патентной защитой;
    • Никто не может повторить полностью ваше решение (легальными способами), т. к. детали скрыты от посторонних, но при этом основной функционал покрыт патентами.

    Минусы:
    • Минусы комбинированные – часть, защищенная ноу-хау, имеет минусы как у ноу-хау, часть, защищенная патентами – минусы патентной защиты.


    Охрана программы ЭВМ



    Программы ЭВМ охраняются как литературные произведения нормами авторского права, и поэтому охраняют конкретную реализацию алгоритма, а не сам алгоритм.
    Чтобы заявить свое авторство, можно воспользоваться, как простым вариантом, из серии отправить письмо с распечаткой исходников самому себе через почту России, так и можно зарегистрировать программу ЭВМ в Роспатенте (депонирование), но, правда, не более 70 страниц – при этом приходится программы разбивать на части. Так же, при регистрации в Роспатенте можно к программе ЭВМ прикрепить аудиовизуальные отображения, а попросту – скриншоты программы, что в дальнейшем можно использовать для охраны интерфейса от подделок или прямого копирования.
    Плюсы:
    • Охрана программы от «утечки» исходников;
    • Охрана от копирования интерфейса (в разумных пределах).

    Минусы:
    • Охрана конкретной реализации, а не алгоритма (не получится зарегистрированную программу на Python’e защитить от реализации на ассемблере);
    • Частое изменение исходников требует частых «телодвижений».


    Собираем все вместе в виде FAQ


    Я хочу защитить свою идею от реализации конкурентами:
    Я хочу «застолбить» свой алгоритм за собой:
    Я разработал уникальные алгоритмы, которые могут украсть:
    Я боюсь, что мою идею украдут методом обратного проектирования:
    • Патент


    Что делать, чтобы идею не украли:
    Что делать, чтобы идея не утекла из компании вместе с сотрудниками:
    • Введение режима коммерческой тайны


    Как защититься от утечки исходников:
    Как застолбить авторство программы за собой:
    Как защитить интерфейс от подделок
    • Регистрация (депонирование) программы ЭВМ


    Вместо послесловия



    Пока наши разработчики спят… Крупные корпорации переходят на нацфазу в Россию. По статистике, Microsoft подает заявки в РФ более чем на 100 патентов ежегодно. Среди софтверных патентов отметились так же: VISA, AVG, MOTOROLA, FORD (см. патент), GOOGLE, FACEBOOK, INTEL… тысячи их.
    А что у нас?
    Большинство Российских софтверных компаний игнорируют интеллектуальную собственность. Из тех, кто успел засветиться на поприще интеллектуальной собственности – Abbyy (порядка 17 патентов РФ), Лаборатория Касперского (43 патента), да некоторые наши НИИ. Такой расклад немного печален по нескольким факторам – никто не застрахован от патентных исков со стороны выше перечисленных компаний, патентных троллей и все это может аукнуться на любом этапе проекта.

    Используемая литература и источники

    www.uspto.gov — сайт патентного ведомства США
    www1.fips.ru — сайт патентного ведомства России
    epo.org — сайт патентного ведомства Европы

    Вопросы/Пожелания/Уточнения?
    Метки:
    • +1
    • 11,1k
    • 1
    Поделиться публикацией
    Комментарии 1
    • 0
      Где-то читал, что программу можно защитить как полезную модель в связке устройство+способ. Сталкивались ли Вы с такими патентами и какие требования будут к устройству?

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.