Зависимость от железа

Тема в разделе "WASM.RESEARCH", создана пользователем Guest, 1 апр 2006.

  1. Guest

    Guest Guest

    Публикаций:
    0
    Хочу чтобы программа которую я написал запускалась только на компьютере человека, которому она досталась, 100% вариант понимаю что сделать невозможно, но чтобы прога была как нить зависима от железа... Поскажите как лучше сделать...
     
  2. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    привязка к железу

    чёрт название непрочитал)
     
  3. Guest

    Guest Guest

    Публикаций:
    0
    readme

    Как именно реализовать привязку к железу? у кого есть опыт и не жалко подсказать



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



    Вот нашел отличную статью по теме

    http://www.izcity.com/data/security/article944.htm

    но все ракно не пойму как записать в мой ехе этот самый ключ... или можно как то проще?
     
  4. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    ну оставь в любой секции буфер под это дело, а программа должна проверять и сравнивать его, или какойнибудь хэш от этих данных запиши в какую нибудь crc поле pe файла в option header

    и сравнивай его потом
     
  5. Guest

    Guest Guest

    Публикаций:
    0
    а писать как в самого себя то?

    из другого процесса?
     
  6. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    тебе надо один раз записать данные о железе в exe файл на диске и потом при запуске она должна эти данные проверять
     
  7. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    как вариант можно предварительно получить некий хеш от данных аппаратной конфигурации машины, а потом закриптовать прогу криптором с этим ключом. И привязываться не обязательно к винту - например, у многих сейчас есть сетевухи встроенные на материнках - если так, можно оттуда взять PCI Vital data - и строить хеш на нем.

    Т.к. диски и количество памяти - обычно подвергаются апгрейду гораздо чаще, чем материнка.

    В частности, у очень распространенных реалтековских чипов такая инфа достается на раз через конфиг спейс. (даташиты доступны на их сайте).
     
  8. Guest

    Guest Guest

    Публикаций:
    0
    Да вот думаю... я допустим буду давать программу в архиве, юзер запустит прогу, она сама себя пропатчит, но та, что в архиве-то... она то не пропатчена и ее могут распространять... Может есть вариант серийника+зависимость от железа?
     
  9. Guest

    Guest Guest

    Публикаций:
    0
    Да вот думаю... я допустим буду давать программу в архиве, юзер запустит прогу, она сама себя пропатчит, но та, что в архиве-то... она то не пропатчена и ее могут распространять... Может есть вариант серийника+зависимость от железа?
     
  10. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    давай ему программу вычисляющию хэш эт всего этого и потом изменяй на основе его главную прогу
     
  11. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    тебе очевидно на узкий круг пользователей надо это всё сделать, кстати вроде этот тип защит был реаризован а пакере орион но там эти действия на компе где он запускаться должно производиться должны наверна
     
  12. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    тебе очевидно на узкий круг пользователей надо это всё сделать, кстати вроде этот тип защит был реаризован а пакере орион но там эти действия на компе где он запускаться должно производиться должны наверна
     
  13. Guest

    Guest Guest

    Публикаций:
    0


    Много вопросов будет.





    Не обязательно...
     
  14. Ms Rem

    Ms Rem New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2005
    Сообщения:
    1.057
    Адрес:
    С планеты "Земля"
    Имхо привязка к железу всегда легко отламывается и доставляет легальным пользователям больше неприятностей чем нелегальным.

    Для более надежной защиты лучше использовть аппаратные ключи либо StarForce и привязку к CD.
     
  15. readme

    readme New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2005
    Сообщения:
    271
    Адрес:
    Russia
    CD возможна если есть налаженный выпуск или хотябы ты должен в живую общаться с этим человеком ну чтобы передать ему диск, к примеру через интернет его непошлёшь же) разве тока почтой, тоже сваи минусы
     
  16. Guest

    Guest Guest

    Публикаций:
    0
    Варианты с СД отпадают. В общем надо по любому сделать чтоб пользователи не распространяли мой софт. Эта моя главная задача. Когда найду выход - обязательно сообщу что именно предпринял. Вот уже даже мысли поскакивают насчет привязки к сайту...
     
  17. apple

    apple Виктор

    Публикаций:
    0
    Регистрация:
    26 апр 2005
    Сообщения:
    907
    Адрес:
    Russia
    А можно прогу на флешку записать?

    Тогда просто считываешь CreateFile() информацию о производителе и т.д.

    На ее основе генерируешь ключ и "подставляешь" в программу.

    То есть получается что-то наподобие "продал прогу вместе с жеским диском".

    Естественно, можно узнать генерируемый серийник.

    Но тут уже надо на боязни пользователей играть.

    Допустим, можешь соорудить простенькую программу хранения важных документов в зашифрованном виде.

    Если "подсядет", вряд ли кому-нибудь флешку отдаст.



    Вот уже даже мысли поскакивают насчет привязки к сайту...

    А если весь код будет выполняться на удаленном сервере?



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

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

    Потом начнется самое веселое.

    Главное, сделать незаметно.



    P.S.: Что за прога хоть?
     
  18. Guest

    Guest Guest

    Публикаций:
    0
    apple

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



    А что если так сделать! Только что мысль в голову пришла!

    Будет регистрация на сайте, логин и пароль выдаю юзеру я, После того как юзер залогинится я делаю хеш в кукис с его настройками браузера, винды и т.д. Затем пишу хещ в ехе и все! привязка готова! Потрет кукис - его проблемы!
     
  19. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    Пользователь может сменить браузер и-или поставить апдейт, сервис-пак или прочее - настройки изменятся.

    Есть у меня один вариант (подразумевает недорогую аппаратную часть).

    Если интересно - стучи: 192-294-138
     
  20. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Самый лучший вариант - использование общедоступных ключей при распространении программ. У меня где-то был образцовый пример, как это делается в принципе - все достаточно круто. Мне повезло, что я смог найти приватный ключ - ключ был короткий. Если найду, могу поместить сюда, но точно не обещаю.

    Второй хороший вариант - ключи, лучше всего с зашифрованием кода проги. Их сейчас много. На моей памяти остался Hardlock, достаточно круто!