На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
Дорогие друзья! Поздравляем вас с днём Победы!
msm.ru
  
> Практический алгоритм по защите ПО
    Немного поразмыслив, все же пришел к выводу, что надо свои программы как-то защищать. Один из самых лучших способов (на мой взгляд) это привязка к железу.
    Так довайте напишем алгоритм, который позволял бы это реализовать.
      А если привязывать к железу - возникает
      другая проблема, что, если пользователь сделал
      апгрейд ? Апгрейд нынче делают очень часто...
        Это самая ужасная, в смысле удобства, защита. Ее надо только ставить в какие-нибудь офисные приложения. Т.е. в офисах конфигурация PC крайне редко меняется. (IMHO).
        Лучше тогда уж использовать аппаратный ключ(но это дороже).
          Ет крякнуть можно запросто  ;)
            Товарищи, а чем вас не устраевает использование файла-ключа?
              Вот довайте представим, я написал нейкую программу, и хочу чтобы она распостронялась за небольшую плату. Следовательно, ее нужно регистрировать. Но надо это зделать так, чтобы для каждого компьютера был свой регистрационный ключ. А как хранить его - это другой вопрос.
              Сообщение отредактировано: LeonCrew -
                А на чем писать будешь ?
                  пишем все дружно!  ;D у меня вот только экстремально времени нехватает...  :-/
                  http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=asm;action=display;num=1055698395
                    Присылай свои наработки. Может поможем. Если время тоже будет (
                    Сообщение отредактировано: rcz -
                      Цитата Clane, 25.06.03, 16:42:05
                      А на чем писать будешь ?

                      Пишу на C++/Asm по винду.
                        Цитата rcz, 25.06.03, 21:59:26
                        Присылай свои наработки. Может поможем. Если время тоже будет (

                        ;D У меня много чего написано, но пока еще не защищено.
                        А вот алгоритм на разработать.
                          Я посмотрел схожую тему (Асм\Пишем защиту) и немного разочаровался. Там народ обсуждает КАК препятствовать взлому. Но никто не думает как заставить заплатить юзера за программу. Ведь как защита ни была хороша, я могу попросить ключь у кого-нибудь и зарегистрировать программу на его имя. Какая мне разница, на чье имя будет зарегистрирована программа, если эти данные будут фигурировать только в разделе About !!! Надо как-то регистрационный код привязать к программе так, что бы пользователю было выгодно (или невозможно было бы ввести чужие данные) регистрировать на себя.

                          У кого какие мысли?
                            сделай регистрацию через инет!
                            после удачной регистрации на твоём сервере будет храниться имя зарегестрировавшегося и код, сгенереный твоей прогой (по которому генерится ключик для разблокирования программы)
                            таким образом можно почти полностью исключить повторную регистрацию

                            зы. имхо
                              Всё ломается... А рег. через инет ограничит распостраняемость программы (скажем, у юзера нет инета дома, а скачал он программу в инет-кафе; или он её на ноуте гонять хочет)...
                                Нет, инет это не самый лучший способ, надо как-то локально, можно через мыло. НО КАК ЗАСТАВИТЬ ЗАРЕГИСТРИРОВАТЬ!!!

                                Уже неделю думаю, но что-то хороший алгоритм в голову так и не приходит  :(
                                  О препятствии взлому. :) Такое ломается, обходится регистрация. Единственное, что может заставить зарегистрироваться, это возможность установки обновлений только зарагистрированным юзерам, Тех. поддержка и т.п. Остально все ломается и надо думать как не дать сломать.
                                    Цитата
                                    я могу попросить ключь у кого-нибудь

                                    а ты прогу (или ее часть) обновляй почаще (каждую минуту ;D). Чем чаще обновляешь, тем меньше шансов, что чужой ключ подойдет. Или вообще сделай скрипт, который добавляет в программу время скачивания
                                      Гм, что-то тут никто не горит желанием помрчь :(, ладно...
                                      Через пару дней, думаю выложу некоторый алгоритм, который я тут надумал, может тогда у кого-то желание появится написать что-нибудь.
                                        Помоч то все хотят. Вот только это действительно просто ключом ты не заставишь юзера купить программу.  Программы редко воспринимаются как товар. Тогда надо приложить к ней что-то материальное...
                                        А ключ - определяется программно - следовательно так же его можно найти. Или у соседа попросить. :) Так все у нас и распространяется.
                                        По себе посудите, все ли на вашем PC лицензионное? Очень сомневаюсь. И посудите, что лично вам надо, чтобы вы купили ПО, и что вас может остановить(ключ? - найдете в инете, у друга, взломаете)?

                                        А привязка к железу не всегда удобна. Взят ХР. Все равно, даже те, у кого лицензионные, ставят кряки, чтобы не мучаться при апгрейде.

                                        З.Ы. Free Software, Open Source forever. И не надо мучаться с написанием защиты(все равно найдется тот, кому будет интересно ее взломать). Лучше потратить это время на что-то полезное... помочь потребителям и они отблагодарят.
                                          Кстати о защите файла.... Читал[а] как-то статью о кряканьи какой-то проги.... Собсно прога была защищена... Прога смотрела саму себя во время запуска и если находила в себе изменения, то стирала саму себя с винта.
                                            Цитата rcz, 27.06.03, 22:26:07

                                            З.Ы. Free Software, Open Source forever. И не надо мучаться с написанием защиты(все равно найдется тот, кому будет интересно ее взломать). Лучше потратить это время на что-то полезное... помочь потребителям и они отблагодарят.


                                            Вот тут я не согласен, я написал программу, которая нужна многим, но я ее писал как коммерческий продукт. Но за небольшую плату. А писать как open sources меня не устраивает, так как я этим занимался 3 года, а что я получил в результате? НИЧЕГО, вернее сказать, я видел СВОИ АЛГОРИТМЫ В ЧУЖИХ КОММЕРЧЕСКИХ ПРОГАХ!
                                              Да. Может быть кому-то это обидно. Но чаще всего Open Source не является источноком доходов.
                                              Простой вопрос. А часто ли сам берешь фрагменты кода из инета, MSDN, других источников. А много ли получают авторы, которые за эти примеры. Чаще всего - ничего. И в этом нет ничего плохого. Просто обмен опытом и знаниями.

                                              А плата за коммерчески проект правда должна быть разумной. И способ оплаты  не должен быть геморойным. Иначе... действительно становится обидно. Ни себе, ни людям. Все взломают, и код не увидят.
                                                To RCZ
                                                Знаешь, я чужими кодами редко, очень редко пользуюсь, в основном я читаю о чем-то и на основе этого пишу что-то. А моими алгоритмами пользуются и очень часто, даже видел из у одной солидной фирмы, которая поленилась убрать мои комментарии, только убрали мой копирайт  :(. А насчет таких сайтов как MSDN - это электронная книга, где показано, как надо использовать функции.
                                                Плата за мои продукты дешовая, в 3-4 раза дешевле чем у аналогичных продуктов, но в моих есть новшества. Плата за них довольна проста, заполнил анкету, заплатил, получил ключ. Все довольно прозрачно, так что не стоит особо волноваться покупателю, что его "надуют".
                                                  1) Чужим кодом сложно воспользоваться, его все равно где-то надо переделать.
                                                  Те же сэмплы из  MSDN
                                                  2)  Некоторые могут расценить использование быстрой сортировки без ссылки на автора как плагиат :)
                                                  3) Лично я практически не купил/заригестрировал ни одной программы по причинам:
                                                    - не чувствовал необходимость. Смысл платить больше, если результат один.
                                                   - всегда лень регистрировать. Сложные долгие процедуры. Не говоря уже о том, какие проблемы вызывает апгрейд при защите привязкой к оборудованию. Легче и проще найти крак.
                                                    - регистрация через инет - он не всегда и не у всех есть.
                                                    - жалко денег.
                                                  Не та культура в этой стране. Ну не воспринимается программа как товар.

                                                  Поэтому, чтобы заставить кого-то заплатить надо постараться(в частности решить все эти проблемы... минимизировать). И защита ключом- совершенно не выход. Даже если сделаешь кучу разных билдов - на каком-то диске окажется один с работающим ключом. Хотя \% купивших увеличится.

                                                  Можно выпускать с привязкой к CD(ломается копированием с Clone CD).  Или  диски StarForce - ломаются сложнее, но дороже.

                                                  О разочаровании в теме обсуждения "КАК препятствовать взлому". Не очень согласен. Считаю, что благодаря этому, можно увеличить срок до появления первго кряка(или ключа у соседа). Поэтому есть шанс, что купят побольше.



                                                  З.Ы. А  ута фирма точно стащила алгоритм и убрала копирайт, или все ж дошла до него сама?
                                                  З.З.Ы. Как можно потом доказать, что нарушили авторские права в этом случае? (вспоминая о конфликте SCO с IBM). Практически невозможно, поэтому из GNUсам чем-то приходится жертвовать. Хоть их лицензия подразумевает неиспользования их кода в комерческих проектах, но ведь они распространяются с закрыиыми кодами и не определишь.


                                                    Цитата rcz, 30.06.03, 00:14:16
                                                    3) Лично я практически не купил/заригестрировал ни одной программы по причинам:
                                                      - не чувствовал необходимость. Смысл платить больше, если результат один.
                                                    А в моей программ есть необходимость, так как она позволяет обновлять ее бесплатно, уже реализованы некоторые функции, которые зависят от данных пользователя. (Вообще-то это тема была создона для разработки алгоритма, как заставить пользователя зарегить программу, вот уже реализовал сам несколько своих идей, жалко что никто больше помоч не хочет)

                                                    Цитата rcz, 30.06.03, 00:14:16
                                                     - всегда лень регистрировать. Сложные долгие процедуры. Не говоря уже о том, какие проблемы вызывает апгрейд при защите привязкой к оборудованию. Легче и проще найти крак.
                                                    Я уже об этом говорил, регистрация проста. И она не привязана к железу (хотя, раньше думал так зделать).

                                                    Цитата rcz, 30.06.03, 00:14:16
                                                    - регистрация через инет - он не всегда и не у всех есть.
                                                    А прога то сетевая, так что кому она надо, у того инет есть, да и полюбому он нужен, надо же как-то ключ доставить (почта - долго и дорого, для покупателя).

                                                    Цитата rcz, 30.06.03, 00:14:16
                                                      - жалко денег.
                                                    Ну это русская душа.

                                                    Цитата rcz, 30.06.03, 00:14:16
                                                    З.Ы. А  ута фирма точно стащила алгоритм и убрала копирайт, или все ж дошла до него сама?
                                                    Стащила. Просматривая исходники программы, там все осталось так, как я сам писал (это программа снифер) Я писал этот код показывая как надо перехватывать сообщения по сети. Также указал копирайт и строку "Этот код только для понимания работы программы. Использования в коммерческих целях запрещено" и указал свои координаты. Но на них никакова запроса не приходило. А вот программа такая появилась с моим алгоритмом.
                                                      Вот мои Вам всем вопросы:
                                                      1) Продавал ли кто РЕАЛЬНО свои программы?
                                                      2) Продал ли кто РЕАЛЬНО когда-нибудь свои программы?
                                                      3) Пытался ли кто анализировать, кто купил программы?

                                                      А теперь мои ответы на те же вопросы:
                                                      1) нет, но собираюсь
                                                      2) нет, но надеюсь
                                                      3) пока нет, но стараюсь задумываться наперёд; анализ даёт следующие результаты для продукта, стоимостью <30$ ;D:
                                                      a) >98\% потенциальных покупателей проживают в Западной Европе и Северной Америке;
                                                      b) >99\% потенциальных покупателей не умеют ломать софт;
                                                      c) ~50\% потенциальных покупателей лучше купят продукт, вместе с тех-поддержкой (даже если её и нет, они просто к этому привыкли), чем будут использовать ломанный и сомнительный;
                                                      d) ~25\% потенциальных покупателей лучше купят продукт, чем будут искать в Инете ломанную шару или ждать, что она там появится;

                                                      Так что моё мнение - во многих случаях и для многих програмных продуктов алгоритм может быть любой!!!

                                                      А вот если вы делаете софт для РАЗРАБОТЧИКОВ или на рынок СНГ....

                                                      Вот другие вопросы:
                                                      1) Покупал ли кто из Вас софт через Инет?
                                                      2) Ломал ли кто из вас софт?
                                                      3) Какой алгоритм показался вам заслуживающим внимания?
                                                      Вот мои ответы на те же вопросы:
                                                      1) Пока нет, но желание возникало, жду когда возникнет потребность :)
                                                      2) Да, но под Макинтош.
                                                      3) Да уж не тот, что на Асме был написан!!! это уж точно!!! Есть такая програмулька на Mac OS X - GLTerm - обычный терминал с прикольными и полезными фичами. И СУПЕР КРАСИВОЙ ЗАЩИТОЙ! Не регистрированная версия работает так:
                                                      a) через 36 часов (!!!) после запуска программа не предупредив никого просто выходит, убивая все порождённые потоки; тоесть - для тяжеловесных задач её не проюзаешь;
                                                      b) каждые 1.8 часа программа инициирует в системе диалог с оповещением (Notification): "вы используете не лицензионное ПО" - достаёт - ужасно!!!
                                                      c) в диалоге регистрации пользователю разрешается вбить любую чухню;
                                                      d) ф-ция, отвечающая за безопасность - ОДНА (!!!), но занимает ~4-8Kb кода (1-2 тысячи Асм операций);
                                                      Я думаю не стоит говорить о том, что потратив 1ч на составление карты этой ф-ции (а там любой кусок кода когда-нить да и выполняется, - кроме лицензирования эта ф-ция делала ещё какую-то ПОЛЕЗНУЮ работу - отключить её вызов нельзя), и оценив, что взлом будет стоить ещё 3ч работы, я (и не один я) решил, что ПРОЩЕ ПОТРАТИТЬ ТЕ НЕCЧАСТНЫЕ 15$, чем пудрить себе мозги :)

                                                      А вот мои рекомендации для алгоритма защиты.
                                                      1) N различных алгоритмов приводящих к одному результату;
                                                      2) запуск проверки в отдельном потоке. Лучше с задержкой - по таймеру, для Винды подойдёт Media Timer (timeSetTime, кажется);
                                                      3) на этапе выполнения ф-ции проверки выбирается, какой алгоритм выполнять;
                                                      4) каждый алгоритм должен делать также и полезнуу работу, чтобы его НЕ выполнение приводило К СБОЯМ, желательно без крэшей!
                                                      5) по окончанию выполнения проверки следует убедиться - сколько времени программа провела внутри ф-ции, если >2sec - вас ломают под дебагером! Здесь нужно предпринять действия в духе п. 6, но отличные от тех, которые вы предпринимаете в случае отсутствия лицензии; Хотя можно и просто подло закрешить программу...
                                                      6) отсутстве лицензии должно НАЗОЙЛИВО МЕШАТЬ пользователю, а не прекращать его работу с продуктом; лучше всего в результате проверки Кода переводить модули продукта в определённое состояние, при котором они будут вести себя неадекватно, но только после определённых действий пользователя (например: при вызове диалога сохранения документа в файл, кнопка "Сохранить" будет не доступна);
                                                      7) пользователь должен быть предупреждён о возможных последствиях нелицензированного использования и(или) взлома, что бы у него не возникло подозрения в неполноценности продукта;

                                                      И моё твёрдое IMHO: каждый должен делать это сам для своего продукта.
                                                        В бщем ты прав, даже можно сказать, что ты написал то, что я сам собирался написать. Но вот общего алгоритма пока нет, хотя уже что-то имеется из наработак...
                                                          Цитата

                                                          1) Продавал ли кто РЕАЛЬНО свои программы?

                                                          Ага...
                                                          Цитата

                                                          2) Продал ли кто РЕАЛЬНО когда-нибудь свои программы?

                                                          Ага...
                                                          Цитата

                                                          3) Пытался ли кто анализировать, кто купил программы?

                                                          Я не анализировал. Я свои 'творения' продаю четырем-шести фирмам, которые являются
                                                          постоянными заказчиками и, естесственно, постоянным 'левым' доходом деньгов.
                                                          Цитата

                                                          1) Покупал ли кто из Вас софт через Инет?

                                                          Ага...
                                                          Только через неделю я увидел у друга ту же самую версию, только прокряченную.
                                                          Абыдно! =)
                                                          Цитата

                                                          2) Ломал ли кто из вас софт?

                                                          Из нас - не знаю. Я - да.
                                                          Цитата

                                                          3) Какой алгоритм показался вам заслуживающим внимания?

                                                          В NjWIn
                                                          Прога при обнаружении в себе изменений просто стирала себя с винта.
                                                          Цитата

                                                          А вот мои рекомендации для алгоритма защиты.
                                                          1) N различных алгоритмов приводящих к одному результату;
                                                          2) запуск проверки в отдельном потоке. Лучше с задержкой - по таймеру, для Винды подойдёт Media Timer (timeSetTime, кажется);
                                                          3) на этапе выполнения ф-ции проверки выбирается, какой алгоритм выполнять;

                                                          В этот момент ее можно поймать. Гемморно, но можно.
                                                          Хотя смотря на п.5... Я вот помню, что SoftIce грузится в Ring0 и при брейкпоинте
                                                          останавливает все процессы, кроме системных.
                                                          Следовательно, нужно сделать так, что бы прога сама грузилась в Ring0 и при обнаружении всяких известных отладчиков просто выкидывала их из памяти.
                                                          Цитата

                                                          4) каждый алгоритм должен делать также и полезнуу работу, чтобы его НЕ выполнение приводило К СБОЯМ, желательно без крэшей!
                                                          5) по окончанию выполнения проверки следует убедиться - сколько времени программа провела внутри ф-ции, если >2sec - вас ломают под дебагером! Здесь нужно предпринять действия в духе п. 6, но отличные от тех, которые вы предпринимаете в случае отсутствия лицензии; Хотя можно и просто подло закрешить программу...
                                                          6) отсутстве лицензии должно НАЗОЙЛИВО МЕШАТЬ пользователю, а не прекращать его работу с продуктом; лучше всего в результате проверки Кода переводить модули продукта в определённое состояние, при котором они будут вести себя неадекватно, но только после определённых действий пользователя (например: при вызове диалога сохранения документа в файл, кнопка "Сохранить" будет не доступна);
                                                          7) пользователь должен быть предупреждён о возможных последствиях нелицензированного использования и(или) взлома, что бы у него не возникло подозрения в неполноценности продукта;

                                                          И моё твёрдое IMHO: каждый должен делать это сам для своего продукта.

                                                          Мммм.... А как на счет защиты от УЖЕ готовых кряков? Думается о полиморфности кода.
                                                          Ну вот вдруг найдется такой мега-извращенец, который возьмет и поломает все это на корню.... Да еще и кряк выпустит =))
                                                            Так вот!
                                                            1. Если есть ДОРОГОСТОЯЩАЯ идея, то это ОЧЕНЬ хорошо... для того, у кого она есть и кто в состоянии её продать в количестве 4-6 копий! Большинство идей стоят ГОРАЗДО меньше, но и продать их можно НА МНОГО БОЛЬШЕ! Если кто-нить из 4-6 заказщиков попытается взломать твои творения и не заплатить, то они, я не без основательно надеюсь, отдают себе отчёт в том, что ты им больше НИХ...НА делать не будешь, и если что случится -то никаких гарантий, ни каких фиксов багов! А если ещё и авторские права есть, то даже понятно на кого в суд подавать. Такие идеи можно продавать даже и в СНГ!!! Это их преимущество!

                                                            2. Если есть идея, стоящая 5-25$, то тут всё на много сложнее... Нужно оценивать время жизни этой идеи по сравнению со временем взлома. Предположим, что мы пишем КУЛЬНЫЙ скрин сэйвер. Наивно предполагать, что вы его будете продавать бесконечно. ВОзможно, если он действительно КУЛЬНЫЙ, вы продадите в первые 1.5 месяцев 500 копий, но, самое интересное, что в последующие 10 месяцев, дай Бог, чтоб бы набрали и половину этих продаж! И не из-за того, что кто-то взломал код! (Ессно, если кто-то звломал код, то продаж будет ещё меньше). Это потому, что рынок заинтересованых в вашем продукте заказщиков насытился вашей идеей. ОК! Какова вероятность, что при мало-мальски хорошей защите и низкой цене продукта кто-то взломает ваше "творение" за 2 месяца и успеет донести до всех остальных информацию о взломе? Я думаю, что когда эта информация станет доходить до Масс, вы уже выпустите новую версию продукта, учтя все промахи защиты, допущенные в первой версии. И самое главное - не нужно жадничать!!! Чем дешевле будет стоить продукт, тем больше вероятности, что его купят, даже не смотря на то, что где-то есть его хак! Такие идеи можно продавать только ЗА БУГРОМ! Это их недостаток.

                                                            3. И наконец по поводу алгоритма: в С++ есть такая классная штука, как шаблоны... Я как-то анализировал мат-ф-ции, получившиеся в результате их использования... надо сказать, что Асм кода получается столько! он на столько не предсказуем (особенно в случае наличия частичной специализации константами различных типов и с включённым многоуровневым инлайн), что очень трудно понять, какой же результат ожидается.

                                                            4. Если прога вытирает себя с диска - я такую юзать не буду!!! Мало ли чего ещё взбредёт в воспалённые мозги вечно не досыпающего экс-ламера... Вдруг он мой винчестер в следующий раз форматнёт? Я думаю, что моё мнение не одиноко!!!

                                                            Выводы:
                                                            1. "Денежными" и "надёжными от взлома" являются только "Крупные, но полезные" и "Мелкие, но ходовые" идеи и программы.
                                                            2. Всегда нужно знать, когда стоит жадничать.
                                                            3. Защита от взлома не должна пугать ползователя, она должна пугать хакера.
                                                            4. Защита должна доказывать хакеру его профессионализм в хакерстве и несостоятельность в маркетинге - должно быть проще купить, чем ломать!
                                                              Эх....... читая ваши тексты, приходишь к одной мысли, а не лучше было бы строить защиту не от непосредственного взлома, а от попытки взломать. То есть, до раскрытия кода программы, проверить, есть ли в памяти проги, которые как-то отслеживают твою программу.
                                                              Я уже могу с достоверностью 95\% сказать, загрежен ли SoftIce или нет...
                                                              Осталось только боле точный и быстрый алгоритм придумать, а желательно и более универсальный.
                                                                Вот ёлы-палы! Зачем же так параноидально ко всему этому относиться?
                                                                Ведь и так понятно, что когда кто-нить напишет (или проюзает) аналог SoftIce, ты будешь вынужден писать свою защиту заново! Расслабся и подумай о самом продукте  ;D
                                                                  Когда напишут, моя программа устареет, вернее появятся другие версии, где этот отладчик будет учтен. Ведь чтобы написать хорошее, на подобе SoftIce, надо очень много времени.
                                                                    господа! приобщаемся к анализу прграммы. требуются ноые идеи

                                                                    http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=asm;action=display;num=1055698395;start=30
                                                                      иии... эта тема нам интересна только мне и rcz чтоли...
                                                                      LeonCrew написал бы хоть что-нибудь....  :-/
                                                                        Цитата _IX0DeS, 14.07.03, 17:14:41
                                                                        иии... эта тема нам интересна только мне и rcz чтоли...
                                                                        LeonCrew написал бы хоть что-нибудь....  :-/

                                                                        Хе :).....Я пишу алгоритм, вернее написал кое-что и этим очень рад. Пока никто не смог взломать :)....
                                                                        Он довольно приметивен (по смыслу защиты), но очень эффективен по тому кодированию, что там используется. Осталось отладить сам процесс защиты и можно на обозрение выкладывать. Если все будет хорошо, то опубликую статейку в журнале.
                                                                          Цитата LeonCrew, 14.07.03, 20:27:23

                                                                          Хе :).....Я пишу алгоритм, вернее написал кое-что и этим очень рад. Пока никто не смог взломать :)....

                                                                          выложи пожалуйста куданибудь это дело. или пришли по e-mail. plz!!
                                                                            Цитата _IX0DeS, 15.07.03, 16:22:51

                                                                            выложи пожалуйста куданибудь это дело. или пришли по e-mail. plz!!

                                                                            Если некуда выложить, то вышли и мне :)

                                                                            Здоровую критику - гарантирую :)
                                                                              2 Shaman здоровая критика приветствуется вот тут!

                                                                              http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=asm;action=display;num=1055698395;start=30
                                                                              ::)
                                                                              Сообщение отредактировано: _IX0DeS -
                                                                                Больную критику гарантирую и я. Пришли и МНЕ!!!.
                                                                                  Гм....прямь как малые дети :)
                                                                                  ....Ок, вышлю, но чуть позже.......
                                                                                    вот так всегда...  :'( :'(
                                                                                      Приветствую.
                                                                                      По моим заметкам ситуация такая. Если программа Shareware и толкается через инет, лучше всего использовать для показа Демо версию с урезаными фишками, а при регистрации высылать полную с так называемым ключиком. Или вообще делать простую защиту, чтобы просто была регистрация.Почему?
                                                                                      exUSSR юзеры наврядли будут покупать программу, сломают и будут пользоваться ломалкой.Этого не избежать.
                                                                                      А вот юзеры с Западной Европы и США купят в 99\% случаев если софт понравится. Потерь никаких не будет.
                                                                                      Если софтина серьезная, то лучше ее защищать USB ключем и подписывать договор с фирмой. Тоесть тут лучше все на бумаге оформить. (например бух-программы...)
                                                                                      С играми не связывался... может кто поделится опытом?
                                                                                        господи... мы тут про теорию говорим. а ты сразу usb ключ... бух программы и договора... вот блин..
                                                                                          Это и есть теория, а господь тут не причем. Нужно сначала выяснить что нужно и зачем нужно, а уж потом делать что-то.
                                                                                            Цитата _IX0DeS, 16.07.03, 03:25:58
                                                                                            вот так всегда...  :'( :'(

                                                                                            Зачем же плакать, я программу выложу, вернее небольшую демку, которую народ попробует взламать. У меня сейчас стоит задача, как сделать так, чтобы демка была сложна в защите, но неиспользовать там некоторые приемы. Т.к. я собираюсь защищать этим алгоритмам свои программы и мне не хочется, чтобы после взлома демки взломали мою программу.......
                                                                                              Лучше знать слабые места своей защиты, чтобы вовремя это исправить. Поэтому лучше провести тестирование именно той защиты, котораю будет использоваться в готовом варианте.
                                                                                                Цитата rcz, 16.07.03, 18:48:45
                                                                                                Лучше знать слабые места своей защиты, чтобы вовремя это исправить. Поэтому лучше провести тестирование именно той защиты, котораю будет использоваться в готовом варианте.

                                                                                                У меня в данный момент нет идей, как и что там можно переделать.....
                                                                                                А проверять готовую защиту будут люди, которые связаны с криптографией и проверкой подлиности уже не один десяток лет.....
                                                                                                  Я думаю, что программы лучше всего получать код активации через интернет, т.к. за последние годы он достаточно быстро развивается в России. Или по телефону, в крайнем случае по почте. А сам код генерировать по какой-либо информации пользователя, например: Ф.И.О, телефон, адресс. Разумеется настоящие. Придётся, конечно, проверять, что не так просто, зато, по моему мнению, купив программу, пользователь уже вряд ли отдаст её другому, тем более не знакомому. Я бы не отдал.
                                                                                                  А что вы думаете по этому поводу?

                                                                                                  И ещё скажите дорого ли стоит производство электронного ключа?
                                                                                                    А я бы отдал!. Но только знакомому. Хотя если она мне больше мне не нужна - то первому встречному.

                                                                                                    О проверке. - Проверять паспортные данные? Весело. ФСБ по всюду.
                                                                                                      Ага, проверять паспорт, отпечатки пальцев и сетчатку глаза :)
                                                                                                        Скажу, точнее пейстану, вот это:

                                                                                                        "If you think that technology can solve your information security problems,
                                                                                                        you don't understand the technology and you don't understand your problems."
                                                                                                        (Bruce Schneier)

                                                                                                        ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D

                                                                                                        Я тоже долго думал над этим вопросом, много всего перечитал :) Понял что нереально это сделать, а потом набрел на эту фразу и совсем успокоился :) Так что предлагаю раслабиться :)
                                                                                                          Была у меня программа, показывающая скорость DownLoading'а и UpLoading'a, но требовала 12$, иначе через 30 дней вырубалась. Мне такие ОГРОМНЫЕ деньги платить нехотелось и я скачал генератор ключей (Дети!!! Ни в коем случае не делайте так!) и зарегистрировался. Но программа (гадина) оказалась не такой тупой - при входе в инет она проверила регистрационную информацию в базе на сервере и, не обнаружив меня там, отказалась работать (хорошо хоть вирус никакой не закачала).
                                                                                                          Вот такая нехитрая защита, но давольно продуктивная.
                                                                                                            Был тут вопрос о реальных разроботчиках и продаже софта за реальные деньги. Я являюсь реальным разработчиком (точнее, командиром раб. группы), делаю софт для России, продаю его в Росси, и реально за реальные деньги. И не 3 коп., а примерно эдак от $200 до ~$2000. Однако софт мы пишем ВЕСЬМА специфический и воровать его проблемно и бессмысленно. Темой защиты тоже весьма интересуюсь. Если у кого-то есть что-то свежее, эффективное, простое и ненапрягающее юзера, пишите на мыло [email]jobleemouse@mail.ru[/email] , возможно договоримся на комм. основе. В частности это может быть заинтересует LenCrew
                                                                                                              То есть пользователя под ником LeonCrew
                                                                                                                2leemouse: вот ссылочка на проектец... http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=Projects;action=display;num=1057133485

                                                                                                                Он пока что в анабиозе, по причине встречных предложений :)

                                                                                                                И по поводу "не напрягающей" защиты - посты ##25-28 в данном треде.
                                                                                                                  Идеальная защита - это чугунный сейф в штабе КГБ.
                                                                                                                  Никто не взломает.
                                                                                                                  А защищать ПО - дело почти безнадёжной.
                                                                                                                  Для чайников (коих 99\%) пойдёт и простая фигня.
                                                                                                                  А кому надо тот любую защитк обойдёт и выложит кряк.
                                                                                                                  Вот так ;)
                                                                                                                    Вполне с вами согласен, коллега ;D ;D ;D
                                                                                                                    Существуют различные домены пользователей:
                                                                                                                    ExpandedWrap disabled
                                                                                                                      домохозяйки,<br>дети,<br>программисты,<br>бизнесмены,<br>бухгалтера...

                                                                                                                    Для каждого домена пользователя должна быть своя защита. Я никогда не куплю своему ребёнку продукт, демо версия которой постоянно будет выбрасывать диалог: "Эта функциональность недоступна в демо версии...". Убил бы за такое! ;)

                                                                                                                    Так вот! Может быть будем продолжать? Мне, допустим, была бы интересна защита для детских програм. Собственно говоря - не защита, а способ оформления бета-версии, как оформить программу так, чтобы не нагружать ребёнка (2-5 лет) "взрослыми" проблемами?
                                                                                                                      ..А действительно ли нужно защищать программы?
                                                                                                                      Это сколько усилий лишних тратится, и большое поле для внесения дополнительных багов.
                                                                                                                      Кроме того, open source защищать вообще не понятно как.
                                                                                                                        Цитата nvm, 06.09.03, 00:23:31
                                                                                                                        ..А действительно ли нужно защищать программы?

                                                                                                                        да нужно... нафига тему тогда заводили.. эт. раз. а второе, мы ПО наше продавать собираемся  ;)
                                                                                                                        Цитата

                                                                                                                        Это сколько усилий лишних тратится, и большое поле для внесения дополнительных багов.

                                                                                                                        пиши без багов...
                                                                                                                        Цитата

                                                                                                                        Кроме того, open source защищать вообще не понятно как.

                                                                                                                        его не нужно защищать тк название open source говорит само за себя
                                                                                                                          Защищать нужно всё ;) Даже масло в холодильник ставят 1 - что бы не испортилось 2 от тараканов прячут ;D

                                                                                                                          1. Если вы заметили - у опен сорс тоже есть лицензия. И это уже своего рода защита. Некоторые проекты (в основном либы) разрешают использовать код в других опен сорс проектах, но не разрешают в коммерческих и, поверте мне, это очень хорошая защита! Серьёзная контора не будет нарушать закон, а от не серьёзной - много выгоды не получишь ;) И почти во всех таких проектах есть требование - включить в коммерческий продукт ссылку на используемый опен сорс. А это 1 - реклама опен сорс, 2 - бесплатное размещение резюме для участников проекта ;)

                                                                                                                          Вот вам и защита ;D

                                                                                                                          2. Мне очень нравятся программы аля Маковский BBEdit - супер редактор на все случаи жизни почти для любого программиста (только вот под Mac OS X он чё-=то тормозит). Распространяется бесплатно - юзай на здоровье.  Лайт - версию. А хочешь Профешнел - денюжку плати ;) Хотя и не много. Вот вам с одной стороны реклама (лай версия), а с другой - защита (зачем хакеру ломать проф версию, если есть лайт? а если он её и сломает - и нехай! Серьёзная контора заплатит 20-50 баксов что бы получить тех-суппорт)

                                                                                                                          Вот вам и вторая защита ;D
                                                                                                                            Shaman : Правильно заметил. Нужно делать несколько версий программы, такие как Light и Pro (или кто-то там по своему придумает). Суть в Light заключается в том, что она полностью бесплатна, а про за мани. И лучше делать так, что бы она без регистрации вообще не запускалась, так будет тяжелее ее взломать.
                                                                                                                              Привязка к железу - плохая затея. Наиболее совершенны методы защиты с использованием криптографии.  Я когда-то делал так: необходимые для жизни полной версии программы помещал в DLL и шифровал ключом:)
                                                                                                                                А почему плохая? Объясни, плиз ;)
                                                                                                                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                                                                                                0 пользователей:


                                                                                                                                Рейтинг@Mail.ru
                                                                                                                                [ Script execution time: 0,1112 ]   [ 15 queries used ]   [ Generated: 10.05.24, 07:31 GMT ]