Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. S/W Copy Protection & Time Crippling?

S/W Copy Protection & Time Crippling?

Scheduled Pinned Locked Moved The Lounge
questionannouncement
29 Posts 15 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N NormDroid

    I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

    _ Offline
    _ Offline
    _Magnus_
    wrote on last edited by
    #3

    Norm Almond wrote: Whats the best software protection Get sponsored by hells angels. :) /Magnus

    C B 2 Replies Last reply
    0
    • N NormDroid

      I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

      P Offline
      P Offline
      peterchen
      wrote on last edited by
      #4

      depends on how much protection you expect, who are your users, and if you have a few clues of how crackers work. No chance to prevent everything, the game is to require more work than the cracker is willing to do. - Never use functions like bool IsRegistered(), unless you're sure they are inlined (rather use macros that expand to reall weird code) - never display an "Registration failed" message bo immediately after doing the check (unless there are other checks) - store the "is registered" flag at different locations, evaluate differnet ones on different places - protect both the UI options, and the actual execution of the "registered users only" features - Interlace protection checks with some in-program operations if possible - use "two layers" : one user friendly, that uses very simple checks, and does all the "normal" UI handling (like "Your blah has expired. Please contact us for blah options..". Use a second better hidden layer to double-check the registration, perform additional checks that are not in the "friendly layer", and that acts _lazily_ (i.e. no immediate warning, etc.) - Do NOT get destructive when you believe someone cracked your app (or tries to). You will loose more customers than you win. - interlace "dummy checks" (check for debugger, for Boundschecker) at places that don't have to do anything with your protection. It is very easy for a cracker to: - find the place where a message box is called, and go a few steps back in code (even if it's a function return) - change a if (registered) into a if (!registered) or if (true) - find the place where a single variable is referenced - "crack" binary encoding like rot, xor... Modulo 23 is much more tiresome In general, forget your good coding manners. Use globals where you would use locals, use heap variables and multiple indirections, use macros, etc. Have fun!


      We are ugly but we have the music Leonhard Cohen   [sighist]

      _ N C 3 Replies Last reply
      0
      • N NormDroid

        I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

        realJSOPR Offline
        realJSOPR Offline
        realJSOP
        wrote on last edited by
        #5

        I agree with Tim. However, at that point, is it really worth the hassle of trying to com up with your own unbreakable system. Anyone that tries hard enough can spoof anything you might come up with. "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002 Please review the Legal Disclaimer in my bio.

        T 1 Reply Last reply
        0
        • P peterchen

          depends on how much protection you expect, who are your users, and if you have a few clues of how crackers work. No chance to prevent everything, the game is to require more work than the cracker is willing to do. - Never use functions like bool IsRegistered(), unless you're sure they are inlined (rather use macros that expand to reall weird code) - never display an "Registration failed" message bo immediately after doing the check (unless there are other checks) - store the "is registered" flag at different locations, evaluate differnet ones on different places - protect both the UI options, and the actual execution of the "registered users only" features - Interlace protection checks with some in-program operations if possible - use "two layers" : one user friendly, that uses very simple checks, and does all the "normal" UI handling (like "Your blah has expired. Please contact us for blah options..". Use a second better hidden layer to double-check the registration, perform additional checks that are not in the "friendly layer", and that acts _lazily_ (i.e. no immediate warning, etc.) - Do NOT get destructive when you believe someone cracked your app (or tries to). You will loose more customers than you win. - interlace "dummy checks" (check for debugger, for Boundschecker) at places that don't have to do anything with your protection. It is very easy for a cracker to: - find the place where a message box is called, and go a few steps back in code (even if it's a function return) - change a if (registered) into a if (!registered) or if (true) - find the place where a single variable is referenced - "crack" binary encoding like rot, xor... Modulo 23 is much more tiresome In general, forget your good coding manners. Use globals where you would use locals, use heap variables and multiple indirections, use macros, etc. Have fun!


          We are ugly but we have the music Leonhard Cohen   [sighist]

          _ Offline
          _ Offline
          _Magnus_
          wrote on last edited by
          #6

          Looks like good points all of them, but i agree with john that it's not worth spending to much time because it will evidently get cracked. All points above will not do anyhing good if they do a key generator instead. /Magnus

          P 1 Reply Last reply
          0
          • N NormDroid

            I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

            T Offline
            T Offline
            Todd Smith
            wrote on last edited by
            #7

            You just want to prevent casual copying of your software and try to sell your software during the trial period. I would do the following: - require registration where you collect a user's info - prevent casual copying with a simple install key (sent automatically via email is nice) - show a splash screen during startup with the # of days left in the trial - optionally show some sales pitches for your software - after the trial is over I would add a startup delay to your software so that it becomes more and more unusable and maybe pop a web page where they can buy the software. anything beyond that is a waste of time IMHO Todd Smith

            1 Reply Last reply
            0
            • N NormDroid

              I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

              W Offline
              W Offline
              Wouter Dhondt
              wrote on last edited by
              #8

              Simple thing to do: if the user enters a key, sleep a second before checking it. Raw key generators will have lots of fun... New and improved: kwakkelflap.com

              1 Reply Last reply
              0
              • N NormDroid

                I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

                C Offline
                C Offline
                Christopher Duncan
                wrote on last edited by
                #9

                Don't protect it! Piracy is a great form of free advertising. People will steal it, pass it around to others, and your name will get out, eventually resulting in some who will actually pay you for it because they like it. I mean, that's the theory with Napster sites & mp3s. Why wouldn't it apply to software? Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                J T 2 Replies Last reply
                0
                • P peterchen

                  depends on how much protection you expect, who are your users, and if you have a few clues of how crackers work. No chance to prevent everything, the game is to require more work than the cracker is willing to do. - Never use functions like bool IsRegistered(), unless you're sure they are inlined (rather use macros that expand to reall weird code) - never display an "Registration failed" message bo immediately after doing the check (unless there are other checks) - store the "is registered" flag at different locations, evaluate differnet ones on different places - protect both the UI options, and the actual execution of the "registered users only" features - Interlace protection checks with some in-program operations if possible - use "two layers" : one user friendly, that uses very simple checks, and does all the "normal" UI handling (like "Your blah has expired. Please contact us for blah options..". Use a second better hidden layer to double-check the registration, perform additional checks that are not in the "friendly layer", and that acts _lazily_ (i.e. no immediate warning, etc.) - Do NOT get destructive when you believe someone cracked your app (or tries to). You will loose more customers than you win. - interlace "dummy checks" (check for debugger, for Boundschecker) at places that don't have to do anything with your protection. It is very easy for a cracker to: - find the place where a message box is called, and go a few steps back in code (even if it's a function return) - change a if (registered) into a if (!registered) or if (true) - find the place where a single variable is referenced - "crack" binary encoding like rot, xor... Modulo 23 is much more tiresome In general, forget your good coding manners. Use globals where you would use locals, use heap variables and multiple indirections, use macros, etc. Have fun!


                  We are ugly but we have the music Leonhard Cohen   [sighist]

                  N Offline
                  N Offline
                  NormDroid
                  wrote on last edited by
                  #10

                  Very helpful, I'm after something somewhat simple, but these points and good for developing my own software protection stuff. Normski. - Professional Windows Programmer

                  1 Reply Last reply
                  0
                  • _ _Magnus_

                    Norm Almond wrote: Whats the best software protection Get sponsored by hells angels. :) /Magnus

                    C Offline
                    C Offline
                    Christopher Duncan
                    wrote on last edited by
                    #11

                    Magnus H wrote: Get sponsored by hells angels. :laugh: :laugh: :laugh: The only dependable form of copy protection out there! Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                    1 Reply Last reply
                    0
                    • C Christopher Duncan

                      Don't protect it! Piracy is a great form of free advertising. People will steal it, pass it around to others, and your name will get out, eventually resulting in some who will actually pay you for it because they like it. I mean, that's the theory with Napster sites & mp3s. Why wouldn't it apply to software? Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                      J Offline
                      J Offline
                      Jeremy Falcon
                      wrote on last edited by
                      #12

                      Christopher Duncan wrote: I mean, that's the theory with Napster sites & mp3s. Why wouldn't it apply to software? And WinAmp! It always cost $10 (but didn't have restrictions) until AOL bought it for just a mere $8 million because everyone uses it. Jeremy L. Falcon Homepage : Sonork = 100.16311
                      "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002

                      C 1 Reply Last reply
                      0
                      • realJSOPR realJSOP

                        I agree with Tim. However, at that point, is it really worth the hassle of trying to com up with your own unbreakable system. Anyone that tries hard enough can spoof anything you might come up with. "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002 Please review the Legal Disclaimer in my bio.

                        T Offline
                        T Offline
                        Tim Smith
                        wrote on last edited by
                        #13

                        I agree with John. :) Our CP system is like a lock on a house. I prevents honest people from entering your house. IMHO, very facny CP system aren't worth the trouble. Because it is a never ending cycle of updating systems as they are broken. You wouldn't believe the simple method we use for file encryption. My goal when I created it was to just prevent the casual hacker from breaking it. So I spent 5 minutes writing the code. Tim Smith I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?

                        1 Reply Last reply
                        0
                        • C Christopher Duncan

                          Don't protect it! Piracy is a great form of free advertising. People will steal it, pass it around to others, and your name will get out, eventually resulting in some who will actually pay you for it because they like it. I mean, that's the theory with Napster sites & mp3s. Why wouldn't it apply to software? Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                          T Offline
                          T Offline
                          Tim Smith
                          wrote on last edited by
                          #14

                          Chris, I forwarded your message to Bill Gates. Maybe he will try this with his new OS. :) Tim Smith I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?

                          C 1 Reply Last reply
                          0
                          • J Jeremy Falcon

                            Christopher Duncan wrote: I mean, that's the theory with Napster sites & mp3s. Why wouldn't it apply to software? And WinAmp! It always cost $10 (but didn't have restrictions) until AOL bought it for just a mere $8 million because everyone uses it. Jeremy L. Falcon Homepage : Sonork = 100.16311
                            "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002

                            C Offline
                            C Offline
                            Christopher Duncan
                            wrote on last edited by
                            #15

                            So what does it cost now? Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                            J 1 Reply Last reply
                            0
                            • C Christopher Duncan

                              So what does it cost now? Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                              J Offline
                              J Offline
                              Jeremy Falcon
                              wrote on last edited by
                              #16

                              It's free, but in another situation you could leave it costing an amount and the ones that would pay will and the ones that won't wouldn't anyway. So, you're not loosing that much money. Jeremy L. Falcon Homepage : Sonork = 100.16311
                              "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002

                              C 1 Reply Last reply
                              0
                              • N NormDroid

                                I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

                                R Offline
                                R Offline
                                Remco V
                                wrote on last edited by
                                #17

                                The best copy protection is just don't compile some functionality. When the user registers the application, you can send the binary. It's much more difficult to get the registered binary then cracking the shareware version. Good luck, Remco

                                1 Reply Last reply
                                0
                                • J Jeremy Falcon

                                  It's free, but in another situation you could leave it costing an amount and the ones that would pay will and the ones that won't wouldn't anyway. So, you're not loosing that much money. Jeremy L. Falcon Homepage : Sonork = 100.16311
                                  "Half the reason people switch away from VB is to find out what actually goes on.. and then like me they find out that they weren't quite as good as they thought - they've been nannied." - Alex, 13 June 2002

                                  C Offline
                                  C Offline
                                  Christopher Duncan
                                  wrote on last edited by
                                  #18

                                  Jeremy Falcon wrote: ones that would pay will and the ones that won't wouldn't anyway. Absolutely. I'm fortunate in that the software I plan on releasing early next year is for controlling concert stage lighting. You have to have a hardware interface between the computer and the lighting rig, without it the software doesn't do you any good. So, I'll be able to put the full version up for download and let people play around with the UI and explore the functionality as much as they like, and then order the full package only if they like it. Although frankly, if it didn't have a hardware gadget, I probably wouldn't copy protect it anyway. That stuff just irritates the crap out of me when I've already paid for the software. Besides, it's impossible to completely protect an app. My time is better spent elsewhere. Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)

                                  1 Reply Last reply
                                  0
                                  • N NormDroid

                                    I looking to *protect* ( laugh ) my software before I release it as shareware. Whats the best software protection, ie. request a unique reg. number. and time crippling (30day trial stuff). Is it worth developing my own? Normski. - Professional Windows Programmer

                                    M Offline
                                    M Offline
                                    Mustafa Demirhan
                                    wrote on last edited by
                                    #19

                                    If you are not gonna implement your own protection system, I recommend you to try Armadillo,ASProtect and ProActivate I have not tried the last one but heard its name in many forums... Mustafa Demirhan http://www.macroangel.com

                                    N 1 Reply Last reply
                                    0
                                    • M Mustafa Demirhan

                                      If you are not gonna implement your own protection system, I recommend you to try Armadillo,ASProtect and ProActivate I have not tried the last one but heard its name in many forums... Mustafa Demirhan http://www.macroangel.com

                                      N Offline
                                      N Offline
                                      NormDroid
                                      wrote on last edited by
                                      #20

                                      Thanks Mustafa, I take a look at these links Normski. - Professional Windows Programmer

                                      M 1 Reply Last reply
                                      0
                                      • N NormDroid

                                        Thanks Mustafa, I take a look at these links Normski. - Professional Windows Programmer

                                        M Offline
                                        M Offline
                                        Mustafa Demirhan
                                        wrote on last edited by
                                        #21

                                        no problem :) Mustafa Demirhan http://www.macroangel.com Sonork ID 100.9935:zoltrix

                                        1 Reply Last reply
                                        0
                                        • T Tim Smith

                                          IMHO, it is worth the trouble to develop your own stuff. Pratically all common systems have been broken. Tim Smith I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?

                                          J Offline
                                          J Offline
                                          John M Drescher
                                          wrote on last edited by
                                          #22

                                          Tim Smith wrote: Pratically all common systems have been broken. I agree with this 100%. The problem with common systems is that since they are widely used there are many more hackers tyring to crack the system. Once they figure out how to break the CP system it is usually easy to break all programs that use that system. John

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups