Имеется ввиду,
— покупатель платит за месяц.
— покупатель получает серийный ключ на месяц
— через месяц программа не должна работать с просроченным серийным ключом
Если тупо брать системное время, то покупатель может просто переставить его на год назад и пользоваться бесконечно.
Если брать время с тайм-серверов в глобальной сети, то программа перестанет работать при отсутствии доступа.
Как быть?
Есть где-нибудь в системе тикающее время, которое юзер не может поменять руками?
Если вы параноик — это еще не значит, что за вами никто не следит
Здравствуйте, garant, Вы писали:
G>04.09.2012 11:02, c3p0 написал: >> Если тупо брать системное время, то покупатель может просто переставить его на год назад и пользоваться бесконечно.
G>Запоминай время предыдущего запуска. Если переставлено, ты это отследишь.
А если пользователь отмотает время на несколько лет назад и будет переставлять время перед каждым запуском с инкрементом? Кстати есть программки, которые выставляют нужное время перед запуском нужной программы автоматически.
В ключе надо прописать время не только окончания сроки действия ключа, но и его начало.
Re[3]: Как технически организовать подписку на софт?
Здравствуйте, c3p0, Вы писали:
C>Имеется ввиду, C>- покупатель платит за месяц. C>- покупатель получает серийный ключ на месяц C>- через месяц программа не должна работать с просроченным серийным ключом
C>Если тупо брать системное время, то покупатель может просто переставить его на год назад и пользоваться бесконечно. C>Если брать время с тайм-серверов в глобальной сети, то программа перестанет работать при отсутствии доступа. C>Как быть?
Использовать электронный ключ с собственным таймером внутри
Re[4]: Как технически организовать подписку на софт?
E>>В ключе надо прописать время не только окончания сроки действия ключа, но и его начало. E>Ну и время последнего запуска запоминать конечно.
Кстати, еще подумал, что надо как-то обрабатывать ситуацию когда время последнего запуска отличается от времени текущего запуска на несколько секунд или даже миллисекунд и таких перезапусков будет много. Повторюсь, что есть специальные программки, которые выставляют нужное время с инкрементом.
Re[2]: Как технически организовать подписку на софт?
Здравствуйте, c3p0, Вы писали:
C>Имеется ввиду, C>- покупатель платит за месяц. C>- покупатель получает серийный ключ на месяц C>- через месяц программа не должна работать с просроченным серийным ключом
C>Если тупо брать системное время, то покупатель может просто переставить его на год назад и пользоваться бесконечно. C>Если брать время с тайм-серверов в глобальной сети, то программа перестанет работать при отсутствии доступа. C>Как быть? C>Есть где-нибудь в системе тикающее время, которое юзер не может поменять руками?
1. Взломать можно все, что угодно. Плохой софт защищать не нужно, хороший софт взломают все-равно.
2. От хитрых лицензий в конечном итоге страдают _лицензионные_ пользователи (вспоминайте 1С).
3. Единственная защита: он-лайн сервис. В век облачных технологий делать что-то для десктопа...?! При этом, можно сделать так, чтобы временные проблемы с интернетом самого пользователя не огорчали.
Re[2]: Как технически организовать подписку на софт?
Здравствуйте, Utandr, Вы писали:
U>1. Взломать можно все, что угодно. Плохой софт защищать не нужно, хороший софт взломают все-равно. U>2. От хитрых лицензий в конечном итоге страдают _лицензионные_ пользователи (вспоминайте 1С). U>3. Единственная защита: он-лайн сервис. В век облачных технологий делать что-то для десктопа...?! При этом, можно сделать так, чтобы временные проблемы с интернетом самого пользователя не огорчали.
Ну одно дело пыхтеть и ломать, а другое переставить дату на год назад.
Цена высока, соблазн велик.
Где будут облачные технологии без десктопа? в унылом браузере? evernote, kaspersky, skype — desktop если что.
Думаю облако NTP серверов мне поможет. А если у пользователя нет интернета — пусть не покупает подписку, пусть берёт unlimited.
Если вы параноик — это еще не значит, что за вами никто не следит
Re[3]: Как технически организовать подписку на софт?
C>Имеется ввиду, C>- покупатель платит за месяц. C>- покупатель получает серийный ключ на месяц C>- через месяц программа не должна работать с просроченным серийным ключом
Без онлайн сервиса верификации или синхронизации времени — никак.
C>Если тупо брать системное время, то покупатель может просто переставить его на год назад и пользоваться бесконечно. C>Если брать время с тайм-серверов в глобальной сети, то программа перестанет работать при отсутствии доступа. C>Как быть? C>Есть где-нибудь в системе тикающее время, которое юзер не может поменять руками?
Даже железо может меняться...
Делай онлайн активацию и заставляй комп хотя бы раз в месяц проверять лицензию на сервере. Если все еще оплачено, ключ не блокируй. Если не заплатили — все ключ в блек лист (в следующем месяце). Пусть по новой подписываются.
Если у чела нет инета, пусть каждый месяц руками запрашивает временный ключ ну или откручивает дату на компе без инета
Здравствуйте, drVanо, Вы писали:
V>Здравствуйте, edton, Вы писали:
V>>>Использовать электронный ключ с собственным таймером внутри
E>>Это как
V>Ну например есть Senselock, у которого есть свои часы внутри.
Уф, понятно о каких ключах речь, а то как представишь файл ключа с тикающим таймером внутри...