Thread: Program Piracy? (How to protect against it?)

  1. #1
    #junkie
    Join Date
    Oct 2004
    Posts
    240

    Program Piracy? (How to protect against it?)

    Well basically i'v got a personal program that i may share with a friend or two. Its not that amazing but if i share it with someone i dont trust for sure i dont want it to be freely given out.

    Is there anyway to like compile the program specifically for someones computer? ie they give me some special unique computer ID, and i compile that INTO the program?

    Somethin, seeing as i will not be releasing this to many, compiling it for each computer is no problem. But please tell me what you think the best way would be and how to achieve that.

    Thanks!
    01110111011000010110110001100100011011110010000001 11000101110101011010010111010000100000011011000110 10010110011001100101001000000111100101101111011101 0100100000011011100111010101100010

  2. #2
    Registered /usr
    Join Date
    Aug 2001
    Location
    Newport, South Wales, UK
    Posts
    1,273
    For an example, look at Microsoft's XP activation technology. That generates something like a hash from information about the computer's hardware (Motherboard, hard drives (number of), graphics, etc.) which effectively uniquely identifies the machine.

    This means that if people change some specific types of hardware in their computer they'll need to re-activate XP as the hash will have changed, akin to using the same copy of the OS on a "new" machine. It can be incredibly inconvenient but it generally works.

    The first thing you should consider though is just how important it is to keep this program "between friends". Are you willing to spend months working on a nearly secure system (People who want to know how your program works are likely to disassemble it anyway) for something simple?

    If you've got a spare computer that's usually connected to the internet, perhaps you could go with your software connecting to it and verifying the machine it's on? Of course, that's contingent on the willingness of your friends to be on the net when they're running it.

    Just some thoughts for you.

  3. #3
    #junkie
    Join Date
    Oct 2004
    Posts
    240
    well i was just looking for a simple unique ID, the nature of my program is the only reason i dont want it everywhere.

    Its no giant secret, nor any big project, none the less i would like to take small (but effective) steps to making it use only the computer i designate.

    Is it possible to draw that hash from just one command?
    And how would i draw other system info? ie System, ect.
    01110111011000010110110001100100011011110010000001 11000101110101011010010111010000100000011011000110 10010110011001100101001000000111100101101111011101 0100100000011011100111010101100010

  4. #4
    Chief Code Coloniser!
    Join Date
    Apr 2005
    Posts
    121
    Hello,

    If this is available to a few people, that I'm guessing you know, then the easiest option is to work on trust Unless this is a particularly well known application that lots and lots of people want, investing time into copy protection probably isn't a great idea.

    If your friends are friends, they won't copy your program and dish it out to other people if you ask them not to.

    Just a meagre $0.02 from me

  5. #5
    Shibby willc0de4food's Avatar
    Join Date
    Mar 2005
    Location
    MI
    Posts
    378
    you could always do something simple that requires a little of your friends' participation.. have them tell you their Windows Product ID's (right click on my computer > properties, lol) and then hard code those ID's right into the program. When the program starts, have it check those ID's against the ID at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr ent Version\ProductID (ProductID being the entries name, not a folder) and if it doesn't match, the program exits.
    Registered Linux User #380033. Be counted: http://counter.li.org

  6. #6
    Chief Code Coloniser!
    Join Date
    Apr 2005
    Posts
    121
    Very easy to break

  7. #7
    former member Brain Cell's Avatar
    Join Date
    Feb 2004
    Posts
    472
    Quote Originally Posted by SMurf
    For an example, look at Microsoft's XP activation technology.
    yea right , i know many people here who use pirated WinXP with the same serial number.
    My Tutorials :
    - Bad programming practices in : C
    - C\C++ Tips
    (constrcutive criticism is very welcome)


    - Brain Cell

  8. #8
    Registered /usr
    Join Date
    Aug 2001
    Location
    Newport, South Wales, UK
    Posts
    1,273
    I've never said it was perfect, only that it was an option that historically worked better than the previous protection system MS used.

    All protection methods have a weakness, the best idea would just be to create a compound protection from everything you can lay your hands on and hope that the crackers will get tired.

  9. #9
    #junkie
    Join Date
    Oct 2004
    Posts
    240
    lol, ya as i said before.. i should have held out the word friend, as they are more... people i know lol. None the less i doubt anyone would want to "crack" my program and if they went through the trouble, they can have the source for all i care lol.

    Its more of just a small step, and the windows registration or hardware hash sounds like something i may give a try if needed. I was sure that there wasent a surefire way of making a program safe, or i wouldent have so much expensive programs on my computer lol...

    Thanks All
    01110111011000010110110001100100011011110010000001 11000101110101011010010111010000100000011011000110 10010110011001100101001000000111100101101111011101 0100100000011011100111010101100010

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Issue with program that's calling a function and has a loop
    By tigerfansince84 in forum C++ Programming
    Replies: 9
    Last Post: 11-12-2008, 01:38 PM
  2. Need help with a program, theres something in it for you
    By engstudent363 in forum C Programming
    Replies: 1
    Last Post: 02-29-2008, 01:41 PM
  3. Replies: 4
    Last Post: 02-21-2008, 10:39 AM
  4. My program, anyhelp
    By @licomb in forum C Programming
    Replies: 14
    Last Post: 08-14-2001, 10:04 PM