I recently wanted to use a program for a short amount of time for personal use, but the trial period was only 7 days.
I used strace to find that it kept the timestamp of its first run in a text file, and would read that on startup. Deleting that completely reset the trial period.
I was pretty amazed - I know most people aren't computer savvy to bypass trial periods, but I figured there'd be third-party libraries a developer could use to effortlessly guard against this sort of thing?
(If I ever need it again I will buy it. I just literally needed it a couple of times for something personal and will likely never need it again)
Meh, it's common to let pirates get away with it because it helps adoption
Also good antipiracy software is like Financial/business software, usually surprisingly expensive
I think there’s an interesting parallel with “supercookies” on the web, or the long-running battle on iOS to permanently, uniquely identify phones.
Should the user be able to control their machine, and delete data that the app has written? Should they be able to ‘look like a new user’?
Or should companies/apps have the ability to keep persistent data on the user’s machine, and/or link them to a previously collected set of data about that user?
Most Mac-native apps operate pretty much (usually with binary plist, but MacOS includes CLI tools to operate them) like that today, and likely for ever. https://twitter.com/panic/status/679094045768073216
Ableton live used to give out 90 trials with a new “live” account. I used it for about half a year with various different emails. They stopped this from working on live 11 and I decided that the software wasn’t for me :)
I even used that on a piece of software last year to extend the trial period. It was good software, so I brought it afterward. But I was surprised that the old trick still worked.
I used strace to find that it kept the timestamp of its first run in a text file, and would read that on startup. Deleting that completely reset the trial period.
I was pretty amazed - I know most people aren't computer savvy to bypass trial periods, but I figured there'd be third-party libraries a developer could use to effortlessly guard against this sort of thing?
(If I ever need it again I will buy it. I just literally needed it a couple of times for something personal and will likely never need it again)