Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

Связь ПО с ПК   Найти похожие ветки 

 
NightLord ©   (2005-11-23 23:17) [0]

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


 
Gero ©   (2005-11-23 23:33) [1]

Что значит «другой компьютер»?


 
NightLord ©   (2005-11-23 23:45) [2]

То и значит. Прогу поставили на комп, а перенести уже установленные данные нужно запретить. Я думал связать с какой-нибудь железкой, но если это устройство будет заменено, то прога не запустится даже на этом компе, что не есть гуд =(


 
Gero ©   (2005-11-23 23:51) [3]


> То и значит.

Это не определение.


 
Serg1981 ©   (2005-11-23 23:57) [4]

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


 
NightLord ©   (2005-11-23 23:57) [5]


> Gero ©   (23.11.05 23:51) [3]
>Это не определение.


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


 
NightLord ©   (2005-11-23 23:59) [6]


> Serg1981 ©   (23.11.05 23:57) [4]


Мне нужно проверять при каждом запуске "А на том ли ПК мы находимся?"


 
Serg1981 ©   (2005-11-24 00:02) [7]

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


 
NightLord ©   (2005-11-24 00:07) [8]


> Serg1981 ©   (24.11.05 00:02) [7]


А скаким устройством лучше всего связывать? см [2]
В принципе так можно сделать, если после каждой успешной проверки менять код проверки.


 
Gero ©   (2005-11-24 00:07) [9]


> NightLord ©   (23.11.05 23:57)

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


 
Serg1981 ©   (2005-11-24 00:13) [10]

Допустим, при текущем процессоре ПК первый код будет "abcd". Второй код допустим будет "efgh". Код "abcd" пусть известен всем, но программа не будет работать, пока ей не "подсунут" код "efgh". Пусть код "efgh" лежит в одном каталоге с программой в виде файла. Если сменить процессор, то первый код поменяется, он станет "wxyz" и этот кот не подойдёт к второму коду "efgh" и программа откажется запускаться. Для её запуска пользователю придется просить тебя сгенерировать новый второй код.


 
NightLord ©   (2005-11-24 00:20) [11]


> Serg1981 ©   (24.11.05 00:13) [10]
Для её запуска пользователю придется просить тебя сгенерировать новый второй код.

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


> Gero ©   (24.11.05 00:07) [9]

Чужой комп, так тебя устраивает?


>Ты скажи что считать другим компьютером. Что нужно поменять в
>компьютере, чтобы он стал другим?

Все =)


 
Gero ©   (2005-11-24 00:23) [12]


> >Ты скажи что считать другим компьютером. Что нужно поменять
> в
> >компьютере, чтобы он стал другим?
>
> Все =)

То есть если поменяли все, а оставили мышку, комптютер остался преждним?


 
NightLord ©   (2005-11-24 00:24) [13]


> Gero ©   (24.11.05 00:23) [12]

=)
Ах да забыл. у пользователя есть кошка. Так что мышка не поможет избежать изменений =)


 
Rem ©   (2005-11-24 09:34) [14]

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


Вы, все таки, определитесь, привязка ПО к ПК или ограничение доступа к данным. По сути - разные вещи.


 
Думкин ©   (2005-11-24 09:42) [15]

1. Надо проверять отпечатки пальцев. Но палец могут и отрезать... :(
2. Узнавать координаты по спутниковой навигации с точгстью жо сантиметра. Но что делать с ноутбуками и переносом?

Бяда.


 
NightLord ©   (2005-11-24 16:18) [16]


> Думкин ©   (24.11.05 09:42) [15]


Мне нужно запретить перенос программы на ЧУЖОЙ комп, а не на расположение компа в стране =)

1. Надо проверять отпечатки пальцев. Но палец могут и отрезать... :(

Оригенально.


 
Gero ©   (2005-11-24 16:47) [17]


> Мне нужно запретить перенос программы на ЧУЖОЙ комп

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


 
Труп Васи Доброго ©   (2005-11-24 16:49) [18]

Не, ну ты трудный... Тебя спрашивают: в каком случае комп считать другим??? Если я поменял проц, эдо тот же комп или нет? А если только мамку поменял? А если и проц и мамку? Или только винт? Судя по твоим ответам ты считаешь комп другим, если у него поменяли корпус! :)))
И вообще всё это фигня! Вон винда имеет такую привязку, ну и что? - взломана за нефиг делать. Но ты же круче чем мелкомягкие.
Другой пример - Консультант плюс привязывается в мат плате, тоже не идиоты делали - вскрыт за милую душу.
А всё почему - да потому что эти проги шибко нужны людям. Если и твоя прога из того же ряда, то и её вскроют без усилий, а если она и даром никому не нужна кроме 10-15 человек, то не стоит и заморачиваться.
Да и вообще, общий принцип защиты сводится не к невозможности её взломать - такой защиты в принципе создать невозможно, а к тому чтобы усилия (затраты) на вскрытие были больше чем усилия (затраты) на создание такой же программы.


 
Гость1   (2005-11-24 17:03) [19]


> NightLord ©   (23.11.05 23:57) [5]
>
> > Gero ©   (23.11.05 23:51) [3]
> >Это не определение.
>
>
> В обшем прога предназначена не для массового использования,
>  а для определенных кругов. Это необходимо для того, чтобы,
>  например, когда хозяин компьютера отлучится другие люди
> не смогли, скопировав программу, воспользоваться ей на своем
> ПК. Прога содержит немного секретные данные.


Это уже ограничение доступа.

Храни БД на удаленном хосте (например, в штатах),
информацию о хосте (ip или имя и порт) в реестре,
при запуске еще спрашивай логин и пароль.
А доступ на хосте отключай, когда время нерабочее.

Также, при каждом запуске, пусть прога ломится на другой хост с уведомлением, что мол я запущена оттуда-то и только после этого пытаться соединиться с хостом, на котором лежит БД (который должен браться из реестра, а если нет ничего там, то ничего не делать).

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

Тогда точно, скопировав прогу первый раз ее не запустят нигде.
Но это если админу не заплатят и он не расскажет всю правду. :)


 
oldman ©   (2005-11-24 17:07) [20]

Уж сколько раз твердили миру - привязка ПО к ПК вредна, нерентабольна и глупа...


 
NightLord ©   (2005-11-24 19:36) [21]

Чужой - это когда владелец компа другой человек.

Ну да ладно. Пропишу в реестре и не буду дурью маятся. Всем спасибо.


 
Гарри Поттер ©   (2005-11-24 20:56) [22]

NightLord ©   (23.11.05 23:45) [2]
Я думал связать с какой-нибудь железкой, но если это устройство будет заменено, то прога не запустится даже на этом компе, что не есть гуд


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


 
Gero ©   (2005-11-24 21:23) [23]


> Чужой - это когда владелец компа другой человек.

Тогда только варианты вроде [15], по-другому никак. Если будешь реализовывать такую защиту, рекомендую остановится на сетчатке глаза — более надежно, чем, например, отпечатки пальцев. Плюс к этому при каждом запуске программы еще придется показывать документы о владении компьютером.

Гарри Поттер ©   (24.11.05 20:56)
> Например, если привяжешь к винчестеру, то если юзер поменяет
> винчестер, он будет переустанавливать систему

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


 
Гарри Поттер ©   (2005-11-24 22:07) [24]

Gero ©   (24.11.05 21:23) [23]
> винчестер, он будет переустанавливать систему

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


Ну, а какие варианты? Ставить с образа диска? По своему опыту сужу, я купил Acronis True Image и ни разу ей не пользовался. Если уж ставить систему, то ставить заново, наверняка большинство юзеров так и поступает.
Еще, как часто юзер меняет винчестер? Даже если раз в полгода(!), то не переломится написать попросить регистрацию.
имхо, если нужна привязка, делать к винчестеру.


 
Anatoly Podgoretsky ©   (2005-11-24 22:24) [25]

Гарри Поттер ©   (24.11.05 22:07) [24]
Что значит попросить, покупателю должен быть предоставлен дистрибутив, лицензия и серийный номер. Все остальное лохотрон.


 
Serg1981 ©   (2005-11-24 22:28) [26]


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

.... и больше ни одной копии программы не будет продано, т.к. она разойдётся милионным тиражом по всем ларькам :)


 
Anatoly Podgoretsky ©   (2005-11-24 22:31) [27]

Gero ©   (24.11.05 00:07) [9]
По классификации Микрософт это материнская плата и корпус. При том это относится только к OEM, поскольку продается как программно-аппаратный комплекс. Во всех остальных случаев ни как, компьютер ни причем, с ним не заключается договор и ему не продается программа (лицензия), а продается конкретному человеку и использование (возможность создания копий или установки более чем на одном компьютере) определяется лицензией. Все основано на доверии, нельзя апприори считать покупателя вором.


 
Gero ©   (2005-11-24 22:33) [28]


> Ставить с образа диска?

Да.

> я купил Acronis True Image и ни разу ей не пользовался.

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


 
Гарри Поттер ©   (2005-11-24 22:43) [29]

Anatoly Podgoretsky ©   (24.11.05 22:24) [25]
покупателю должен быть предоставлен дистрибутив, лицензия и серийный номер


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


 
Anatoly Podgoretsky ©   (2005-11-24 22:43) [30]

NightLord ©   (24.11.05 19:36) [21]
Это правильно, защита должна работать против нелицензионных пользователей и не приносить вредя легальным, они должны иметь возможность переинсталировать ее даже при выходе из строя винчестера, не обращаясь за особым разрешением к продавцу, они ее купили (право на использование, в воде лицензии).


 
Serg1981 ©   (2005-11-24 22:48) [31]

[30]:
это всё верно, но как тогда защититься от нелегального тиражирования ?


 
Anatoly Podgoretsky ©   (2005-11-24 23:01) [32]

Serg1981 ©   (24.11.05 22:48) [31]
От тиражирования дистрибутива защищаться нельзя, а от передачи или кражи серийного номера защититься невозможно.
Досточно защитититься от копирования папки с программой и переноса ее на другой компьютер, минуя инсталяцию.
Именно по этому пути двигается индустрия, особенно шареваре, там за фокусы с железом и милостивым разрешением на переинсталяцию бьют жестко. Конечно речь про цивилизованый мир.


 
Германн ©   (2005-11-25 02:44) [33]


> Anatoly Podgoretsky ©   (24.11.05 23:01) [32]
> ...
> Именно по этому пути двигается индустрия


Да. Особенно если вспомнить Sony с её rootkit. :-)


 
Gydvin ©   (2005-11-25 06:48) [34]

Я уже, как-то постил......

Можно завести типа сервака, на котором пользователь мог получить серийник. А привязку делать к процу, там мамке, харду и еще чему либо.
Генерить для них общий ключ, (при покупке ПО - этот первый ключ заносить в базу), так же у пользователя есть номер лицензии. При поломке чего либо из выше перечисленых, пользователь может на сервере получить новую регистрацию. Тоесть, вводит новый ключ, номер лицензии, на сервере идет сравнение со старым и если они совпадают хотябы на 50%, выдаем новый ключ активации.

Хотя, вся эта защита до первого Крекера соответственно.


 
NightLord ©   (2005-11-25 19:49) [35]

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



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.014 c
14-1132584437
ychenick
2005-11-21 17:47
2005.12.18
Огромный WinAPI справочник?


1-1132889105
beglec
2005-11-25 06:25
2005.12.18
Как загрузить банер в программу?


11-1114235176
BelchonokH
2005-04-23 09:46
2005.12.18
Создание МСК компонентов из чисто КОЛовских


2-1133224859
nickmas
2005-11-29 03:40
2005.12.18
Проблема с процедурой OnDrawCell


1-1132749046
Stanislav
2005-11-23 15:30
2005.12.18
Регистрация типов файлов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский