Программирование - это просто
Advertisement
Главная arrow Уроки программирования arrow Разрабатываем систему защиты авторских прав. arrow Разрабатываем систему защиты авторских прав. Урок 1. Мозговой штурм
27.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Разрабатываем систему защиты авторских прав. Урок 1. Мозговой штурм Печать E-mail
Автор megabax   
13.12.2012 г.
Разрабатываем систему защиты авторских прав. Урок 1. Мозговой штурм

Разрабатываем систему защиты авторских прав. Урок 1. Мозговой штурм

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

Прежде чем разработать систему защиты вашей нетленки от несанкционированного копирования и юзанья, нужно поставить задачу. А для этого, надо как минимум, "родить" идею, как будете защищать свои авторские права, и уже от этого плясать. Вот поэтому сначала мы проведем мозговой штурм. Что это такое? Берем бумагу и ручку... нет, мы же продвинутые люди, берем компьютер, открываем тестовый редактор и пишем туда наши идеи, все, которые придут в голову, не анализируя их разумность, записываем даже самые бредовые и идиотские мысли, разбирать их будет потом, в следующем этапе:

  • Привязаться к реестру Windows. При переносе на другой компьютер потребует повторной активации.

  • Сделать аппаратный ключ.

  • При старте программа коннектиться к сайту, а там есть сведения, сколько лицензий.

  • Определенное количество запусков.

  • Сделать программный ключ.

  • Сделать ключевой диск или флэшку.

  • Определять, сколько человек пользуются программной.

  • Идентификация по отпечатку пальцев.

  • Идентификация по голосу.

  • Идентификация по лицу через вэб камеру.

  • Постоянно менять регистрационный ключ и сделать автоматическое обновление ключа с сайта.

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

Сделать ключевой диск или флэшку. Технология использования специальной дискеты с защитой от копирования (ключевой диск) давным давно устарела. Более того, сейчас даже не на всех компьютерах есть дисковод.  Как правило, дисковода нет на ноутбуках и даже не некоторых стационарах компьютерах, не говоря уже про нетбуки, на которых нет даже привода CD-ROM. Использовать флэшку? Ничего не даст. Поясню почему. Дело в том, что технология ключевой дискеты заключалась в том, что дискету умышленно портили, например, прокалывали в ней дырочку. Естественно, скопировать ее полностью стандартными средствами было невозможно. Но в начале дискеты находилась программа, которая "умела" читать остальную часть информации, обходя поврежденный участок. Как такое провернуть на флэшке, вообще непонятно. Мы не можем избирательно повредить часть ее микросхемы, можем только испортить ее полностью. Кстати защита, основанная на ключевом диске, она защитит только от ламеров. Мало мальский опытный пользователь легко взломает эту защиту, используя различные системные утилиты копирования.

Что насчет рационального звена? Может, использовать "хитрую" флэшку, которую нельзя скопировать? Электронный эмулятор флэшки? Но эта идя уже есть в списке: Сделать аппаратный ключ.

Идентификация по отпечатку пальцев. Ага, вместе с прогой продавать дактилоскопический девайс. Дорогая тогда будет программа. Конечно, если это супер пупер нетленка, которая очень нужна богатым покупателям и они согласны выложить за нее кругленькую сумму зелени, то почему бы и нет? Но, скорее всего, в одиночку вы не сможете написать дорогую инженерную программу типа AutoCAD или север баз данных Oracle. А если и сможете, то уже и так все знаете, и, значит, не читаете эту статью.  В общем, эту идею тоже вычеркиваем. Но у нас есть правило - найти рациональное звено. Как пользователь еще может идентифицировать себя? Паролем? Но пароль он может передать другому человеку. Можно, конечно, время от времени менять пароли. Вот тебе и рациональное звено: выдавать пользователю пароль, а через какое то время менять его и выдавать новый. Даже если он кому то скажет свой пароль, то по истечению какого то времени он перестанет действовать. Идея, конечно не ахти, у нее много недостатков, но, тем не менее, есть пища для размышлений.

Идентификация по голосу. Эту идею отвергаем по причине, что слишком сложно и дорого реализовать для рядового программиста. К тому, же, голос можно записать на диктофон. А рациональное зерно? Может, определять пользователя по манере работы с мышкой или нажимать на клавиши? Тоже как то не айс.  Но опять же, пища для размышлений, когда мы будет усовершенствовать защиту. А пока выберем чего попроще, для начала.

Идентификация по лицу через вэб камеру. Отвергаем по той же причине, что и предыдущий пункт. Сложно, хотя это уже почти не фантастика. Но, если мы не глава спецслужбы типа ФБС или ЦРУ, то реализовать такое нам не под силу. Кстати, сразу возникает мысль, а может, привязывать программу не к пользователю, а к компьютеру? Хотя подобна идея уже есть списке: прописаться в реестр Windows, но, как вариант, можно определять конфигурацию компьютера и привязаться к ней. Правда, тогда программа перестанет работать, если юзер апгредит свой комп. Нехорошо, пользователь то не виноват, что у нас приязка к конфигурации. Но, тем не менее, идея имеет право на существование.

В итоге у нас список идей становиться таким:

  • Привязаться к реестру Windows. При переносе на другой компьютер потребует повторной активации.

  • Привязаться к конфигурации компьютера. При переносе на другой компьютер прога так же потребует повторной активации.

  • Сделать аппаратный ключ.

  • При старте программа коннектиться к сайту, а там есть сведения, сколько лицензий.

  • Определенное количество запусков.

  • Сделать программный ключ.

  • Определять, сколько человек пользуются программной.

  • Постоянно менять регистрационный ключ и сделать автоматическое обновление ключа с сайта.

Его мы будем анализировать уже на следующем уроке.

1

Последнее обновление ( 15.12.2012 г. )
 
« След.
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги